loading…
Search for a command to run...
loading…
An AI-native career copilot that enables job discovery, fit scoring, and application tailoring through natural language, running locally with zero API keys.
An AI-native career copilot that enables job discovery, fit scoring, and application tailoring through natural language, running locally with zero API keys.
A job-search assistant that runs on your computer. It finds jobs that fit you, writes a tailored résumé + cover letter for each, fills in the application form, and — if you let it — submits it for you. Hands-off.
Local-first · your data never leaves your machine · bring your own AI.
You tell it "I'm looking for Product Manager jobs" and it:
Everything runs on your own laptop. Your résumé, jobs, and history live in one folder on your computer (~/.crosswalk). Nothing is uploaded to anyone.
| What it is | Best for | |
|---|---|---|
| 🖥️ The App | A website that runs on your own computer (localhost:3000) |
Everyone — this guide is mostly about this. |
| 💬 Inside your AI | Plugs into Claude Desktop / Cursor / Codex and you just chat | People who already use an AI assistant. |
You can use either, or both — they share the same data.
You only do this once. It takes about 5 minutes. No coding needed.
<> Code button → Download ZIP.crosswalk-mcp-main. Move it somewhere easy, like your Desktop.Open the crosswalk-mcp-main folder, then:
start.command → Open → Open.
(Right-click only the first time. After that, a normal double-click works.)start.cmd.
(If you see "Windows protected your PC", click More info → Run anyway.)A window opens. The first time, it spends about a minute getting ready, then your browser opens to the app automatically. 🎉
If the page shows an error at first, wait a few seconds and refresh — it's just warming up. To stop it, close that window. To start again, double-click the same file.
The app uses an AI ("the brain") to write your résumés and answers. Here's how to get a key:
sk-ant-).💡 You pay Anthropic directly — usually a few cents per résumé. Finding and tracking jobs works without a key; you only need it for writing résumés and answers.
Don't want to set it up ahead of time? Fine — the first time an AI action needs a key, the app asks for it right there in a popup, saves it, and continues.
Optional, but it lets the agent finish applications that email you a verification code or link. There is no "Sign in with Google" button — Crosswalk reads your inbox locally over IMAP using an app password, which is a special 16-character password that only works for this one purpose and can be revoked anytime.
Gmail — step by step:
Crosswalk, click Create, and copy the 16-character password it shows (spaces don't matter).iCloud Mail: appleid.apple.com → Sign-In and Security → App-Specific Passwords → generate one, then same as step 4 with provider icloud.
Outlook/Hotmail: works with your normal password in many cases; if not, create an app password at account.microsoft.com/security.
💡 Privacy tip: put a tagged alias like
[email protected]on your applications (set it in your Profile). It still lands in your inbox, Crosswalk only reads the verification mail, and your personal address stays off job-site mailing lists.🔒 Read-only: Crosswalk never sends mail, never marks anything read, and the password never leaves
~/.crosswalkon your machine.
Use the left-hand menu, roughly in this order:
salary → $130,000.product manager) and click Search jobs. You get real jobs from many companies.The first time you open the app you get a short setup wizard — re-run it anytime at localhost:3000/onboarding. Besides your name and résumé, it asks the questions real applications repeat forever:
Your answers land in a local answer bank (plus your profile) in ~/.crosswalk. When an application asks one of these questions — in any phrasing close enough to match — Crosswalk uses your saved answer instead of guessing. Anything the bank doesn't cover falls back to the AI, which only uses true facts from your résumé and profile.
See, add, and edit every saved answer under Settings → Answer bank. Saving an answer with the same question label replaces the old one, so re-running the wizard updates your answers rather than duplicating them. Every step is skippable.
Honesty section. An application is only marked submitted when there's real evidence (the page navigated to a confirmation, showed a "thank you", or passed an email-verification gate) — a mere button click is never trusted. When something can't be finished automatically, you get an alert with the link to finish it yourself instead of a fake green checkmark.
| Situation | What happens |
|---|---|
| Direct ATS forms (Greenhouse, Lever, Ashby, …) | ✅ Fills and submits end-to-end, including multi-page wizards and emailed verification codes. |
| Job-board listings (The Muse) | It resolves the "Apply on company site" link and fills the real form behind it. |
| Account-walled sites (Workday & friends) | ⚠️ It can't create accounts for you. You get a "Form needs you" alert with the direct link — finish it by hand. |
| Expired/removed listings | ⚠️ Told straight: "This listing has expired." Job boards keep dead listings around; it's them, not you. |
| Submit clicked but nothing confirmed | ⚠️ Stays in your pipeline as a draft with a "Submission not confirmed" alert — check it manually. |
The real proof an application landed is the confirmation email from the company. If you connected your inbox, watch for it; no email after an hour usually means it needs your hand.
Crosswalk is also an MCP server, so it can plug straight into your AI assistant. Then you just chat with it, and it uses the AI you already pay for — no separate API key needed. It shares the same data as the app, so your profile, résumés, and answer bank carry over.
In the crosswalk-mcp-main folder (in a terminal):
npm install
npm run build:core
Then you'll need the full path to packages/core/dist/cli.js.
Tip: on Mac, right-click the dist folder → "Copy … as Pathname"; or drag the file into the terminal to print its path. In the examples below, replace CLI_PATH with something like:
/Users/you/Desktop/crosswalk-mcp-main/packages/core/dist/cli.js
Claude Desktop — edit ~/Library/Application Support/Claude/claude_desktop_config.json (Mac) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{ "mcpServers": { "crosswalk-mcp": { "command": "node", "args": ["CLI_PATH"] } } }
Claude Code (CLI):
claude mcp add crosswalk-mcp -- node CLI_PATH
Cursor — edit ~/.cursor/mcp.json:
{ "mcpServers": { "crosswalk-mcp": { "command": "node", "args": ["CLI_PATH"] } } }
OpenAI Codex CLI — edit ~/.codex/config.toml:
[mcp_servers.crosswalk-mcp]
command = "node"
args = ["CLI_PATH"]
Gemini CLI — edit ~/.gemini/settings.json:
{ "mcpServers": { "crosswalk-mcp": { "command": "node", "args": ["CLI_PATH"] } } }
opencode — edit ~/.config/opencode/config.json:
{ "mcp": { "crosswalk-mcp": { "type": "local", "enabled": true, "command": ["node", "CLI_PATH"] } } }
Any other MCP client: point it at the command node with the argument CLI_PATH (it's a stdio MCP server).
Then restart the app. (These tools occasionally tweak their MCP config format — if it doesn't connect, check your tool's own "MCP servers" docs.)
Prefer the published version? Replace
node CLI_PATHwithnpx -y crosswalk-mcp@latest, or for Claude Desktop / Cursor / Windsurf just runnpx crosswalk-mcp installto auto-configure it. ⚠️ The published npm version can be behind the newest features in this repo — the local build above is recommended.
"Set up my profile: PM, 3 years at Acme, want NYC or remote, need visa sponsorship." "Add my résumé from ~/Documents/cv.pdf." "Find PM roles at H‑1B sponsors. Why am I a fit for the Stripe one?" "Tailor my résumé for it and draft an application." · "Apply to it." · "Show my pipeline."
Set this up in the app first (it stores your key, watches, and settings):
Then it applies automatically while the app (or the chat session) is open. To keep it going even with the app closed, run the watcher daemon from the folder (in a terminal):
npm run watch # checks for new matching jobs every 15 minutes and applies to them
Login-walled sites (Workday, etc.): see the note inside Settings → Autonomous apply — it explains how to run with a browser that stays logged into your accounts.
Before letting it submit for real:
Once you trust it, switch to auto.
⚠️ A friendly heads-up: blasting out thousands of auto-written applications can hurt your chances and may break some sites' rules. Start with a few, check the quality, and turn up the volume only when you're happy. The more you fill in your answer bank, the better the answers.
| Problem | Fix |
|---|---|
| Double-click does nothing / "can't be opened" (Mac) | Right-click start.command → Open → Open. |
| "Windows protected your PC" | Click More info → Run anyway. |
| It says Node.js is not installed | Do Step 1, then start again. |
| The page shows an error at first | Wait a few seconds and refresh — it's still warming up. |
Port 3000 is busy |
Close other apps using it, or in a terminal run PORT=3001 npm run gui and open localhost:3001. |
| "No Anthropic API key set" | Add your key in Settings (see Add your AI key). |
| Auto-apply says "browser not installed" | In a terminal: npx crosswalk-mcp install-browser. |
| An application is flagged "Email verification needed" | The site emailed a code/link the agent couldn't read in time. Add your inbox under Settings → Email inbox (app password), or finish that one by hand — the form is already filled. |
Re-download the ZIP from GitHub (or, if you used git, run git pull), then start it again. Your data is safe — it lives in ~/.crosswalk, separate from the app folder. If a new version changes the engine, rebuild once with npm run build:core.
~/.crosswalk (data in state.db, your API key in config.json).~/.crosswalk, is never shown in the browser, and is never sent to the AI. Magic links are only opened if they point at the application's own site or a known ATS — random links in email are ignored.~/.crosswalk folder.An npm-workspaces monorepo:
packages/core — the engine, published as the crosswalk-mcp MCP server (store, services, 10 ATS adapters, role aggregator, auto-apply, watcher).apps/web — the Next.js GUI (@crosswalk/web).scripts/watch.mjs — the always-on watcher daemon.npm install # install everything
npm test # run the test suite (303 tests)
npm run lint # type-check core + web (strict TypeScript)
npm run build:core # build the engine (what start.command runs as part of `gui`)
npm run gui # build core + start the GUI at localhost:3000
npm run watch # run the always-on watcher daemon
Connecting it to an AI client (MCP) is covered in Use it inside Claude or other AI tools. Architecture deep-dive: docs/ARCHITECTURE.md.
Contributions are very welcome — the easiest is adding a company to the registry (a one-line change). See CONTRIBUTING.md for setup, conventions, and step-by-step recipes (add a company, add an ATS adapter, add a tool, add a migration).
MIT © Mohak Garg.
Выполни в терминале:
claude mcp add crosswalk-mcp -- npx Да, Crosswalk MCP бесплатный — установка в один клик через Unyly без оплаты.
Нет, Crosswalk работает без API-ключей и переменных окружения.
Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.
Открой Crosswalk на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Web content fetching and conversion for efficient LLM usage.
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
автор: modelcontextprotocolProvides auto-configuration for setting up an MCP server in Spring Boot applications.
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also
автор: xuzexin-hzНе уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории ai