Job Autopilot Stage 2
Stage 2 is an isolated local MCP server that prepares selected job application forms in a dedicated Chrome profile. It may upload a recognized resume/CV file when an application requires it, but it never clicks a final submission action.
Local setup
- Copy
.env.exampleto.envand point it to your own applicant profile, default resume, and private data directory.config/applicant-profile.example.jsonshows the supported shape. A job-specific resume from the Stage 1 manifest takes precedence over the default resume. - Run
npm installandnpm run buildinside this folder. - Start the dedicated Chrome profile with
scripts/launch-stage2-chrome.ps1or allow the server to start it when port 9224 is unavailable. - Register
mcp.jsonwith the MCP host.
Source code, adapters, fixtures, and tests are reusable. Applicant profiles, SQLite state, browser profiles, evidence, logs, resumes, credentials, and screenshots are intentionally excluded from Git.
See docs/ARCHITECTURE.md, docs/MCP_USAGE.md, docs/OFFLINE_DATABASE.md, and docs/IMPLEMENTATION_STATUS.md for operating details.
Stage 1 to Stage 2 workflow
The tracked ../stage1/example folder demonstrates the Stage 1 handoff without personal data. A real private batch normally lives at stage1/YYYY-MM-DD/jobs_manifest.json with optional job-specific resumes in the same dated folder.
- Configure
.env, install dependencies, and runnpm test. - Launch the dedicated port-9224 Chrome profile and install/sign in to Simplify in that profile if Simplify-first autofill is desired.
- Validate the Stage 1 JSON manifest or Markdown selected-jobs table with
batch_application_process_test, modevalidate_manifest. - Load the selected input with
batch_application_process, modeload. This createsapplication_queue.mdand does not open Chrome. - Prepare an explicit queue count or row list with mode
prepare. Jobs run sequentially. - Poll mode
statusuntil the detached wave completes. Workday destinations are skipped. Other application tabs remain open for review. - Review every retained tab and submit manually. Stage 2 never clicks the final submission action.
- After manual submission, use mode
mark_appliedfor only the confirmed queue rows. Use moderesultsto inspect or finalize reports.
See docs/MCP_USAGE.md for request examples and ../stage1/README.md for the manifest contract.