selfishprimate / seekter
git clone https://github.com/selfishprimate/seekter.git
v0.8.0 · 1d ago
A job-search agent for Claude Code. It searches job sources every day, filters postings against your rules (location, visa, salary, sectors, seniority, language), fills application forms in your own Chrome, and keeps every application and skip as a markdown file you can read, grep and diff.
—
stars, 24h
—
stars, 7 days
+75
stars, 30 days · #2,971
75
★ total
13
forks · 0 open issues
Star history starts 2026-10-20; the chart appears after the second daily snapshot.
LanguagePython
LicenseMIT
Created2026-09-22 (28d ago)
Last push1d ago
Watchers0
OwnerUser
GitHub topics
aiai-agentai-agentsatsclaudeclaude-aiclaude-codeclaude-skillsjob-boardjob-portaljob-searchjob-trackerjobsjobsearchresumeskill-mdskills
Links
- GitHub: github.com/selfishprimate/seekter
- Homepage: seekter.dev
- Releases · Issues · Hacker News mentions
README excerpt
# Seekter A job-search agent for Claude Code. It searches job sources every day, filters postings against **your** rules (location, visa, sectors, seniority, language), fills application forms in your own Chrome, and keeps every application and skip as a markdown file you can read, grep and diff. It was built over a month of daily use by one job seeker and then emptied of personal data, so it's opinionated where the lessons were expensive: dedup before every form, never guess an answer, never invent an anecdote, never touch a CAPTCHA or a password. **Nothing in the tracked files assumes a field**: the titles, queries, boards and filters all come from your profile, and `/seekter-init` builds them from your answers. The measurements in `reference/` were taken in one discipline and say so where it matters. Why it exists, and the principles it is built on, are in MANIFESTO.md: employers already automate how applications are read, and a candidate may use tools for their side too, as long as what they send is true and they stay within the rules. > [!IMPORTANT] > **Before you run it** > - Every application goes out in your name, and you are responsible for what it says. > - Seekter never fills LinkedIn Easy Apply. Reading LinkedIn is off by default; switching it on is against LinkedIn's terms and puts your account at risk. > - Seekter is free, but running it needs a paid Claude plan or an Anthropic API account. > > Read DISCLAIMER.md for the details. ## Quick start [code] Then, inside Claude Code: [code] Requirements: Claude Code (a paid Claude plan or an Anthropic API account; Seekter itself is free, running it is not), the Claude in Chrome extension, Python 3.9+ and `curl`. No packages. ## Commands | Command | What it does | |---|---| | `/seekter-init` | Interviews you and writes your profile: contact details, CVs, target roles, where you can work, salary bands, standard form answers, sectors you won't touch, a fact bank for free-text answers, your writing voice, and the search queries. Resumable. Can import an existing tracker from a Notion/Sheets CSV. | | `/seekter-run` | The daily run. Four sources in a fixed order (links you bring, freehire API, LinkedIn, other boards), filtering, dedup, form filling, tracker update, and a report with a per-source table. Applies without asking when a posting fits; stops only for things only you can decide. | | `/seekter-log` | Records what happened next: rejections, interviews, offers, applications you made by hand, or a sweep of your inbox. | | `/seekter-report` | Funnel and response rate by source and by location track, top skip reasons, open hand-offs, and at most two suggested changes. | | `/seekter-git` | Ships the kit. Branches, commits and pushes the shareable files (skills, references, scripts) after a run has taught Seekter something, and scans the diff for your personal details first so they never leave your machine. Your profile, applications and runs are never committed. Once you have merged, it ca