The Pilot
The Pilot is JobPilot's autonomous mode. Write your instructions once, the goals and the limits, and the local agent runs your search on its own. It finds and scores roles, applies to them, reaches out to contacts and follows up, reads recruiter replies, and drafts interview replies, prep sheets, and posts.
Everything it does lands in a live journal. The few decisions only you can make arrive as one-tap questions, on your phone if you enable notifications.
It runs the campaign modes for you: searching, applying, and networking all happen inside its cycles. Every dashboard action stays available whenever you want to do something by hand.
How a cycle works
The Pilot works in short, self-contained cycles:
- Sense. The server compiles a ranked agenda of everything worth doing right now: your answers to act on, approved jobs, replies to review, searches that are due.
- Act. The agent takes the top item and does exactly that one thing: one application, one inbox review, one search.
- Record. The outcome is journaled and the agent sleeps, for seconds when work is queued or up to your check interval when idle.
One item per cycle is deliberate. Every result is saved to the server before the next thing starts, so a crash, reboot, or closed lid never loses work; the next cycle picks up exactly where the last one stopped. A small orchestrator on your machine drives the loop, restarts stuck runs, and starts cycles on its own after a reboot, so no browser tab needs to stay open.
Starting it
- Make sure your local agent terminal is running (the dock down the right side of the dashboard). See Getting started if it's offline.
- Open Pilot in the workspace, write your instructions, and save.
- Click Start.
Starting pairs your machine with the Pilot once; after that the host runs cycles on boot, crash, or wake until you stop it.
Your instructions
Goals and Searches sit at the top of the Instructions tab. The rest is optional tuning, folded behind Advanced settings.
- Goals. Plain-language direction: roles, priorities, constraints ("senior TypeScript remote, at least $150k, by October"). This is the only part you have to write.
- Searches. The Pilot creates these from your goals and re-runs them on demand, soon after a run that turns up new roles and less often once a search keeps coming up dry. The Instructions page shows them read-only, with each one's recent yield and next check.
- Operating limits. Daily apply cap, minimum match score, check interval.
- Networking. Off by default. You set a daily cap and a follow-up delay, then an autonomy level per channel: email can be draft only, review each, or auto-send; LinkedIn stops at review each, because nothing is ever sent there without you.
- Boards. Which job boards the Pilot searches, and in what order. It moves to the next board each cycle, so all of them get worked. Leave it empty and each saved search stays on the board it was created with.
- Platforms. Where the Pilot drafts self-promotion posts. Posting is always review-only.
Your goals text handles the judgment calls. The caps are a different thing: the server enforces those, so the Pilot can't exceed one no matter how the goals are worded. Edit any of it any time, and changes take effect on the next cycle.
What runs on its own and what asks you
| Runs on its own | Always asks you |
|---|---|
| Applies to matching roles within your daily cap | A login code it can't read, from SMS or an authenticator app |
| Reads emailed sign-in codes from your connected mailbox | Salary and screening questions on an application |
| Sends networking emails you set to auto-send, within your cap | Sending a LinkedIn message |
| Follows up on networking messages per your autonomy setting | Posting any self-promotion publicly |
| Reviews recruiter replies in your inbox (proposes moves) | Sending a drafted interview reply |
| Drafts emails, follow-ups, interview replies, prep sheets, and posts | Whether to resume a campaign you paused |
Anything in the right column surfaces as a question. Nothing sends, posts, or changes an application's status without you.
Questions and push notifications
When the Pilot hits a decision only you can make, it posts a question, a one-decision card under Needs attention on the Overview tab, and parks the related work until you answer. Turn on Notifications under Settings → Notifications (per device) to get a web push when a question opens, even with the tab closed.
Most questions wait as long as you need. Login codes are the exception: they expire after about five minutes, and if you miss one the Pilot skips that job cleanly and moves on. Codes that arrive by email never become a question at all, since the agent reads them out of your mailbox itself.
The journal and daily digest
Every action lands in the journal on the Activity tab, a live feed you can filter by kind or group by cycle to see what each cycle did, its outcome, and how long it took. The Overview tab shows the latest activity plus when the next cycle will wake. Once a day, after 07:00 UTC, the last 24 hours roll into a digest: applications, replies reviewed, messages sent, questions waiting. Export downloads the full history as a file.
Interview autonomy
When a recruiter's reply is an interview invite, the Pilot drafts a short availability reply and posts it as an approval card; it never sends on its own. It also builds a prep sheet (behavioral, technical, system design, company notes) and attaches it to the application.
Troubleshooting
- Host offline. Start the agent again from the dock: one click on Windows, or one of the commands it offers on macOS and Linux. The Pilot resumes on its own once the host is back.
- Pilot paused after repeated stuck runs. The host takes a break to protect your machine. Check the dock terminal for what got stuck, then start it again.
- A board keeps failing. The Pilot probes it once and journals what it found, usually an expired login it re-establishes on the spot. Everything else keeps running either way.
Next up: Campaigns & skills, for the same work done by hand.