career-ops is a job-search system that runs inside an AI coding CLI. You give it your CV and a job description; it navigates job portals with Playwright, scores roles, generates a tailored, ATS-friendly PDF resume, batches the work, and tracks applications. The interesting thing is the form factor: career-ops is not a SaaS or a standalone app, it is a set of prompts and modes you run inside Claude Code (or Gemini, opencode, Codex). It is one of the clearest examples of a new pattern, treating a coding agent as an application runtime for a non-coding task.

How it is structured

The functionality lives in a set of mode files (around 14 to 20 markdown definitions), each a focused workflow:

  • Score a role with a graded evaluation (fit, CV match, compensation, legitimacy checks).
  • Generate a PDF resume, ATS-optimized, via Playwright HTML-to-PDF.
  • Scan portals across dozens of pre-configured companies using Greenhouse, Ashby, and Lever endpoints at no cost.
  • Batch evaluate many roles in parallel.
  • Interview prep with a STAR-plus-reflection story library.
  • Follow-up, contact outreach, deep company research, rejection pattern analysis, and a tracker for status.

Because the modes are prompts, you can tell the agent to edit them: “rebuild this for a data-engineer profile” and Claude rewrites the scoring weights and templates. The system is self-aware in the sense that it reads and modifies the files it operates on.

Install

# Fastest
npx @santifer/career-ops init

# Manual
git clone https://github.com/santifer/career-ops.git
cd career-ops && npm install
npx playwright install chromium   # only needed for PDF generation
claude   # or gemini / codex / opencode to start the CLI

On first run the system interviews you (through the agent) to set up your CV, preferences, and which company portals to scan. Then you drive it with slash commands like /career-ops scan, /career-ops pdf, /career-ops batch, and /career-ops tracker.

Why it is credible

The reason career-ops reads differently from typical “AI tool” marketing is its provenance. The author, Santiago, built it for his own search and reports running 740-plus role evaluations, generating 100-plus tailored CVs, and landing a Head of Applied AI position with it. That real usage, plus press coverage, is what drove the star surge. It is a worked example, not a demo. Treat the numbers as one person’s documented case, not a guarantee of outcomes.

When it fits, and when it does not

It fits engineers and technical job-seekers already comfortable in Claude Code who want to industrialize a search across many roles. It fits less well if you do not use a coding CLI (the dependency is the whole point and the barrier), or if you want a polished GUI app: career-ops is markdown and prompts, customized by editing files. It also depends on your chosen LLM provider, so cost and data handling follow that choice.

How it compares

career-ops sits in an unusual niche: vertical applications built on a coding agent. The closest reference points are general skills collections rather than other job tools.

ProjectShapeNote
santifer/career-opsJob-search app on Claude CodeVertical, prompt-defined
addyosmani/agent-skillsEngineering skills for agentsHorizontal, dev-focused
MadsLorentzen/ai-job-searchClaude Code job-search frameworkSimilar niche, independent (not a fork of career-ops)

A note on lineage worth getting right: MadsLorentzen/ai-job-search is a similarly named, independent project, not a fork of career-ops (its repo shows no parent). They share the pattern, not the code.

Gotchas from the issue tracker

The project is young and iterating fast (v1.6 to v1.9 within about two months), and the open issues are concrete:

  • The update routine could lose uncommitted work if an update was aborted mid-way (#915).
  • A tracker merge could collide on numbering and overwrite an unrelated company’s row (#912).

These are data-integrity bugs around the update and tracking flows, the kind worth knowing before you trust it with weeks of application state. Commit your career-ops directory regularly.

FAQ

Is career-ops free? Yes. career-ops is MIT-licensed; the only cost is your chosen LLM provider’s usage, since it runs through your coding CLI.

Do I need to code to use career-ops? No, but you do need a coding CLI such as Claude Code, Gemini, or opencode to run it. The job-search work is driven by prompts, not by you writing code.

Is career-ops a SaaS, and where does my data go? It is not a SaaS. career-ops runs locally inside your agent, and your data stays local, flowing only to whichever LLM provider you configure.

Does career-ops actually help land a job? Its author documents running 740-plus role evaluations and landing a Head of Applied AI position with it. Treat that as one worked case, not a guaranteed outcome.

For the horizontal, engineering-focused version of the same “skills inside your agent” idea, see addyosmani/agent-skills and obra/superpowers.