New:Introducing Socket Scanning for VS Code Marketplace Extensions.Learn more →
Get Started

careerops

Package Overview
Dependencies
Maintainers
1
Versions
8
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

careerops

Schema-driven, fact-traceable resume and cover-letter automation for Claude Code

npmnpm
Version
2.0.1
Version published
Weekly downloads
0
Maintainers
1
Weekly downloads
 
Created
Source

CareerOps

A Claude Code plugin that turns your career history into tailored, ATS-clean resumes — with zero fabrication.

Every resume bullet traces to a verified fact you captured. A multi-layer pipeline handles relevance scoring, planning, writing, rendering, and validation. You stay in control at every step.

How It Works

  • Capture your career achievements once — CareerOps stores them as structured facts
  • Drop a job description into your inbox folder
  • Run the resume pipeline — it scores your facts against the JD, asks you to approve the plan, writes bullets with full provenance, renders a PDF, and validates the result

Prerequisites

  • Claude Code installed and running
  • Python 3.10+
  • pip install pyyaml rendercv

Install

npx careerops install

Then restart Claude Code. That's it — all commands are available under /careerops:.

To update later:

npx careerops update

To uninstall:

npx careerops uninstall

Getting Started

Step 1 — Create your career directory and open Claude inside it

mkdir ~/my-career
cd ~/my-career
claude

Step 2 — Run the setup wizard

/careerops:setting-up

This scaffolds your directory structure and collects your profile (name, email, links).

Step 3 — Import your existing resume (optional but recommended)

Drop your current resume into raw_data/, then:

/careerops:seeding-career-db raw_data/your-resume.tex

Supports .tex and .md formats. CareerOps will extract structured facts from it.

Step 4 — Capture new achievements as they happen

/careerops:capturing-fact

CareerOps interviews you and stores the result as a verified fact.

Step 5 — Apply to a job

Drop the job description into inbox/, then:

/careerops:analyzing-jd
/careerops:generating-resume

The pipeline scores your facts against the JD, proposes a presentation plan for your approval, writes the bullets, renders the PDF, and validates it.

All Commands

Setup

CommandWhat it does
/careerops:setting-upFirst-run wizard — scaffolds directories, collects your profile
/careerops:seeding-career-dbImport an existing resume into your knowledge base

Capture

CommandWhat it does
/careerops:capturing-factInterview to record a new achievement
/careerops:capturing-evidenceAttach a URL, PR, or document to an existing fact

Apply

CommandWhat it does
/careerops:analyzing-jdParse a job description — scores all your facts by relevance
/careerops:generating-resumeFull pipeline: plan, compose, render PDF, validate, audit
/careerops:auditing-resumeRe-run the quality auditor on a generated resume
/careerops:humanizing-resumeClean up AI-marker patterns in bullets
/careerops:logging-outcomeRecord the result of an application

Health

CommandWhat it does
/careerops:linting-careerSchema, reference, and em-dash check across all your data
/careerops:getting-helpQuick-start guide — add full for the complete reference

Your Data Layout

After setup, your career directory looks like this:

~/my-career/
├── career/
│   ├── experiences/        # Your work history + facts
│   ├── applications/       # One folder per job application
│   ├── jd-analysis/        # Parsed job descriptions
│   └── config/             # Theme, rules
├── inbox/                  # Drop JDs here
└── raw_data/               # Source resumes for seeding

The plugin lives separately at ~/.claude/plugins/careerops/. Your data never touches it.

Guarantees

  • No fabrication. Every bullet traces to a fact ID you captured. The validator enforces this.
  • No em-dashes. Enforced at every layer — scripts, hooks, and the semantic auditor all scan for them.
  • Dates and employers are immutable. The schema locks these fields regardless of what a JD asks for.
  • You approve before render. The pipeline presents a plan (which roles to expand, compress, or drop) and waits for your sign-off.

Tech

  • Renderer: RenderCV (Typst)
  • Data: YAML files with JSON Schema validation
  • JD analysis: Claude subagent with relevance scoring
  • Validation: Python (8 gates) + Claude semantic auditor

License

MIT

Keywords

claude-code

FAQs

Package last updated on 13 May 2026

Related posts