Design Engineer
Northwind · Remote (US) · Application
CareerWeaver filled it. You pressed submit.
Reading the posting…
It is free, MIT, and it runs on their laptop. Nothing to sign up for — pick whichever link fits where you are sending it.
One line, whichever tool you already have open.
The CLI and the MCP server, straight onto your PATH.
uv tool install careerweaver
Plugin marketplace — bundles the MCP config for you.
claude plugin marketplace add idea‑torx/CareerWeaver claude plugin install careerweaver@careerweaver
Same plugin, same nine tools, inside Codex.
codex plugin marketplace add https://github.com/idea‑torx/CareerWeaver.git codex plugin add careerweaver@careerweaver
Clone it, read every line, change what you like. MIT.
git clone https://github.com/idea‑torx/CareerWeaver.git cd CareerWeaver && uv sync
Python 3.11+. Then weaver init and you are running.
CareerWeaver reads every resume already on your computer, rewrites it for whatever job you're looking at, then opens Chrome and fills the application in — Greenhouse, Ashby, Lever. You wake up to finished applications and press submit. That's the whole thing.
Old resumes, half-finished ones, the one you wrote for a job you didn't get. Whatever format they're in, wherever they are on your machine.
The real jobs, the real numbers, the real dates — reconciled from all those files into a single graph of facts you can actually check.
Same facts, re-weighted for the posting in front of it. Nothing is invented, which is why the resume is always correct.
Greenhouse, Ashby and Lever. Every field is read back after it's typed, then the application is parked — finished, unsent, waiting for you.
Potentially the last setup you ever do: point a cron job, a Claude Code routine or a Codex routine at weaver cycle and the whole loop runs on a schedule — new postings found, resumes rebuilt, applications filled — before you are awake.
Six years building customer-facing tooling end to end — shipped a design system used by 40 engineers, then embedded with three enterprise accounts to take their integrations live.
You point it at the resumes already sitting on your computer. You go to bed. It opens a real Chrome window and works through the tabs one by one. You wake up and the applications are filled in, waiting for you to press submit.
You went to bed at midnight. At 03:14 CareerWeaver opens a real Chrome window on your laptop, loads the Stripe posting, and types in a resume it rebuilt for this job out of the files already on your machine.
Same six years, re-weighted for Linear. Nothing here is invented — every line traces back to a file you actually wrote, which is why the resume is always correct.
Greenhouse, Ashby and Lever. One job or twenty, back to back, in the same window. Every field is read back after it’s typed, so “filled” really means filled.
By morning three applications are sitting there, finished and unsent. You read them over coffee and press submit — the only click in the whole thing. It has no submit button of its own.
It reads Greenhouse, Ashby and Lever end to end, every night, and comes back with the handful that are actually you.
Or tell it exactly what you want, and it goes looking for that instead.
Six lenses ship with it; three are shown here. Same facts underneath — every line traces to something you actually did. Only the emphasis moves.
There's no back-and-forth, no prompting, no sitting there watching a cursor move. From the moment you hand it a list of jobs, every step below happens on its own until the applications are sitting there finished.
A folder of old resumes and some links. This is the entire amount of work you do.
weaver seed-import --dir ./my_old_resumes weaver jobs add https://boards.greenhouse.io/...
Picks the right angle for each posting and rebuilds your resume around it. Every claim traced back to a real fact.
weaver run --all › job 1 tailored · lens: fde · 0 unverified › job 2 tailored · lens: sre · 0 unverified
Greenhouse, Ashby, Lever. Every field is read back after it's typed, so "filled" means filled. You're not in the room for this part.
› greenhouse · 11/11 fields verified › ashby · 14/14 fields verified › lever · 9/9 fields verified
Every application parked, filled, unsent. You read them over coffee and press submit. That click is the only one you make.
weaver apps list › 3 applications · status: audit_pending
Prefer to drive it from an agent? The same nine tools show up inside Claude Code, Codex and Claude Desktop the moment you install the plugin — see below.
AI-Apply, LazyApply and the rest run in their cloud, on their model, holding your resume and your personal details on their servers. CareerWeaver runs on your laptop and asks for nothing.
The CLI and the MCP server, on your PATH.
uv tool install careerweaver
Plugin marketplace — bundles the MCP config.
claude plugin marketplace add idea‑torx/CareerWeaver claude plugin install careerweaver@careerweaver
Same plugin, same nine tools.
codex plugin marketplace add https://github.com/idea‑torx/CareerWeaver.git codex plugin add careerweaver@careerweaver
Clone it, read it, change it. MIT.
git clone https://github.com/idea‑torx/CareerWeaver.git cd CareerWeaver && uv sync
Python 3.11+. Run uv run playwright install chromium once for the apply engine. No key? Every command still works — it just runs deterministic instead of LLM-tailored.
No, and that is deliberate. Every application it fills stops at audit_pending — filled in, read back, waiting in the tab. The last click is always yours.
Your files are read where they sit and the record it builds is a local database. There is no account and no telemetry. If you set an API key, only the snippet being rewritten goes to the model you picked.
No. Without one every command still runs — it tailors deterministically from your fact graph instead of asking a model to phrase it. Slightly blunter, exactly as true.
It can only use facts reconciled out of files you wrote, and every one keeps a pointer back to the file it came from. Nothing gets rounded up. That is the whole reason the resume is always correct.
Greenhouse, Ashby and Lever — the three sitting behind most postings. It drives a real Chrome window, so a board is just a page it knows how to read.
Point anything on a schedule at one command — cron, a Claude Code routine, a Codex routine: 0 7 * * * weaver cycle --count 5. Potentially the last setup you ever do.
MIT, on your machine, forever. There is no paid tier to graduate to and nothing to cancel — the comparable hosted tool charges $200 a month for a worse version of this.
They screen you with software. You may as well apply with software you own, that runs on your laptop, and that costs nothing. Pick whichever one you already have open.
The CLI and the MCP server, straight onto your PATH.
uv tool install careerweaver
Plugin marketplace — bundles the MCP config for you.
claude plugin marketplace add idea‑torx/CareerWeaver claude plugin install careerweaver@careerweaver
Same plugin, same nine tools, inside Codex.
codex plugin marketplace add https://github.com/idea‑torx/CareerWeaver.git codex plugin add careerweaver@careerweaver
Clone it, read every line, change what you like. MIT.
git clone https://github.com/idea‑torx/CareerWeaver.git cd CareerWeaver && uv sync
Then weaver init, and if you want it on a schedule, one crontab line: 0 7 * * * weaver cycle --count 5.