
Company News
AWS Security Hub Adds Socket for Supply Chain Security
Socket is now in the AWS Security Hub Extended plan. Adopt it through AWS, apply committed spend, and block malicious open source packages.
Thin client for the Vitex hosted resume API — a token-cheap CLI for terminals and coding agents, plus a stdio MCP server for Claude Desktop, Claude Code, and Cursor.
A thin command-line client for the hosted Vitex resume API — and a one-command MCP server so Claude Desktop, Claude Code, and Cursor can generate, refine, and download tailored resumes for you.
The API is the UI. Vitex compiles a tailored, ATS-optimized resume PDF and cover letter from a job description plus your background. This CLI is a thin wrapper over the hosted v1 HTTP API — no local pipeline, no Typst, no LLM. It is to Vitex what
ghis to GitHub.
npm install -g vitex-cli
# or run without installing:
npx vitex-cli --help
Requires Node.js >= 20.
Mint an API key once while signed in to the web app (the raw token is shown once; only its SHA-256 hash is stored). Then:
export VITEX_API_KEY="vitex_xxx_yyy"
Every command reads VITEX_API_KEY (or --api-key <token>). The key is never
echoed in output. The base URL defaults to https://www.vitex.org.nz and can be
overridden with --api-url or VITEX_API_URL.
You are charged 1 credit only when a job produces a compiled PDF (status: succeeded). Validation errors, LLM-step failures, and compilation failures are
free. Refinements are free. New accounts start with 3 free credits.
generate and refine return a job id immediately (status: queued). Poll
it with vitex job <id> until succeeded | failed, then vitex pdf <id> — or
pass --wait to let the CLI poll for you.
| Command | What it does |
|---|---|
vitex generate --jd <file|-> (--background <file|-> | --profile <id>) [--template <id>] [--wait] [-o out.pdf] | Create a resume job from a job description + background |
vitex job <id> | Poll a job by id |
vitex pdf <id> [-o out.pdf] | Download a succeeded job's PDF (default <id>.pdf) |
vitex refine <id> --feedback <text|@file> [--scope resume|cover_letter|both] [--wait] [-o out.pdf] | Refine a succeeded resume (free) |
vitex profiles list | List saved candidate backgrounds |
vitex profiles get <id> | Show one profile with parsed data |
vitex profiles create --background <file|-> [--label <text>] [--voice <file|->] | Save a reusable background |
vitex profiles update <id> [--background <file|->] [--label <text>] [--voice <file|->] | Update a profile |
vitex profiles delete <id> | Delete a profile |
vitex profiles publish <id> | Publish a public /p/<slug> career endpoint |
vitex profiles unpublish <id> | Close a published profile |
vitex whoami | Verify your key and show your credit balance + tier (GET /api/v1/me; never spends credits) |
vitex mcp | Run the stdio MCP server |
--json — print raw JSON instead of a terse human line.--api-url <url> — override the base URL (default https://www.vitex.org.nz).--api-key <token> — override VITEX_API_KEY.-h, --help, --version.- argument reads stdin (e.g. --jd -).--feedback also accepts @file to read the feedback from a file.0 ok · 2 usage error · 3 API error · 4 poll timeout · 1 unexpected.
# Generate and wait, then save the PDF
vitex generate --jd jd.txt --background bg.txt --wait -o resume.pdf
# Pipe a JD in and reuse a saved profile, machine-readable output
echo "Senior Go engineer, payments, distributed systems" \
| vitex generate --jd - --profile <profileId> --json
# Refine a succeeded resume and save the new version's PDF
vitex refine <jobId> --feedback "Lead with the payments impact." --wait -o v2.pdf
# Save a reusable background once
vitex profiles create --background bg.txt --label "My Background"
Errors print a single line to stderr in the shape error <CODE>: <message> (requestId), sourced from the API's machine-readable envelope.
vitex mcp starts a Model Context Protocol
server over stdio. Add it to your client's MCP config and the assistant can drive
Vitex directly:
{
"mcpServers": {
"vitex": {
"command": "npx",
"args": ["-y", "vitex-cli", "mcp"],
"env": { "VITEX_API_KEY": "vitex_xxx_yyy" }
}
}
}
For Claude Code, add the same server with:
claude mcp add vitex --env VITEX_API_KEY=vitex_xxx_yyy -- npx -y vitex-cli mcp
Each generate/refine tool blocks and polls internally, so the assistant gets a
final result in one call. Every tool reads VITEX_API_KEY from the environment.
| Tool | Purpose |
|---|---|
get_account | Return your identity + credit balance + tier (read-only; check credits before generating) |
generate_resume | Compile a tailored resume from jobDescription + background or profile_id (returns the final job incl. atsScore) |
refine_resume | Refine a succeeded resume with feedback (+ optional scope) |
get_resume | Fetch a job by id |
download_pdf | Download a succeeded job's PDF to a temp file, return its path |
list_profiles | List saved candidate backgrounds |
create_profile | Save a reusable background |
publish_profile / unpublish_profile | Toggle a profile's public career endpoint |
See CHANGELOG.md. Recent:
mcpName for the official MCP
Registry (no functional changes).whoami now uses the dedicated GET /api/v1/me endpoint (shows your
credit balance + tier, not just a key check); new get_account MCP tool so
agents can check credits before generating.Maintainers: pushing a cli-v* tag publishes to npm via OIDC trusted publishing.
See RELEASING.md.
MIT
FAQs
Thin client for the Vitex hosted resume API — a token-cheap CLI for terminals and coding agents, plus a stdio MCP server for Claude Desktop, Claude Code, and Cursor.
The npm package vitex-cli receives a total of 37 weekly downloads. As such, vitex-cli popularity was classified as not popular.
We found that vitex-cli demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Company News
Socket is now in the AWS Security Hub Extended plan. Adopt it through AWS, apply committed spend, and block malicious open source packages.

Research
/Security News
Popular npm packages keyv and cacheable compromised.

Security News
A misconfiguration gave three Anthropic models internet access, and one, believing it was in a simulation, shipped a credential-stealing package to PyPI.