Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add easyvibecoding/vibe-resume --skill ai-used-resumegit clone --depth 1 https://github.com/easyvibecoding/vibe-resumeWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/easyvibecoding/vibe-resume/ai-used-resume)<a href="https://agentmods.dev/skills/easyvibecoding/vibe-resume/ai-used-resume"><img src="https://agentmods.dev/badge/skills/easyvibecoding/vibe-resume/ai-used-resume/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/easyvibecoding/vibe-resume/ai-used-resume"><img src="https://agentmods.dev/badge/skills/easyvibecoding/vibe-resume/ai-used-resume.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00226 | $0.05172 |
| Opus 5 | $0.00113 | $0.02586 |
| Sonnet 5 | $0.00045 | $0.01034 |
| Haiku 4.5 | $0.00023 | $0.00517 |
Grade A, and why
ai-used-resume scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 10d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 324 lines — stays where its author put it; the contents beside it link to each section on GitHub.
ai-used-resume
When to Use
Invoke this skill whenever the user wants to turn their AI-tool usage history into a résumé artefact. Common triggers:
- "Generate my résumé from my AI usage."
- "Render my CV in Japanese / German / Traditional Chinese / Europass."
- "Tailor my résumé for this JD."
- "Review / score my latest résumé."
- "Show my résumé score trend."
- "Which locales am I weakest in?"
Do NOT invoke when the user:
- Asks to write résumé content from scratch without AI-usage history (no signal source).
- Wants a generic CV template — this skill is opinionated about the AI-coding-era narrative.
- Asks for a profile on a platform that doesn't use Markdown/DOCX/PDF (e.g. LinkedIn scraping).
Quick Reference
| Intent | Command |
|---|---|
| Fresh pipeline | uv run vibe-resume extract && uv run vibe-resume aggregate && uv run vibe-resume enrich --locale en_US then process prompts in session, then enrich --ingest --locale en_US && render -f all --locale en_US |
| Render single locale | uv run vibe-resume render -f md --locale ja_JP |
| All 10 locales | uv run vibe-resume render --all-locales |
| JD-tailored run | uv run vibe-resume enrich --tailor data/imports/jd.txt --locale en_US -n 1 && uv run vibe-resume render -f md --locale en_US --tailor data/imports/jd.txt |
| Persona-biased enrich | uv run vibe-resume enrich --persona tech_lead --locale en_US (keys: tech_lead / hr / executive / startup_founder / academic) |
| Multi-persona enrich in one run | uv run vibe-resume enrich --persona tech_lead,hr,executive --locale en_US or --persona all — each persona writes its own _project_groups.<persona>.json |
| Level-tuned enrich | uv run vibe-resume enrich --level senior --locale en_US (keys: new_grad / junior / mid / senior / staff_plus / research_scientist) |
| Persona render | uv run vibe-resume render --persona tech_lead --locale en_US reads the persona-scoped cache and emits resume_v<NNN>_<locale>_<persona>.md |
| Compare persona output | uv run vibe-resume personas-compare --locale en_US -n 3 — side-by-side bullets per persona for the top-N groups (quality iteration loop). --locale required since 0.4.0. |
| Score latest | uv run vibe-resume review |
| Score with JD echo | uv run vibe-resume review --jd data/imports/jd.txt |
| Scores as JSON (for agents) | uv run vibe-resume review --json → structured scorecard + resolved target path on stdout; review --variants --json scores every rendered variant (ats/detailed/base) in one call (#91). Review always prints which file it scored (#86). |
| Score with persona lens | uv run vibe-resume review --persona hr — appends persona-specific review tips |
| Disclose real signals (self-mine) | uv run vibe-resume evidence --json — per group: candidate metrics, backed terms, human-gate evidence, provenance. --jd <file> adds present-but-omitted vs genuinely-absent keywords. Surface only what's disclosed — never invent. |
| Ground in the code | uv run vibe-resume scan → process each *.scan.prompt.md with a cheap-model subagent (one per project, parallel) → uv run vibe-resume scan --ingest. Grounds bullets in what the repo actually does. Opt-in; never uploads code, drops secrets. |
| Fit a page budget | uv run vibe-resume render --max-pages 2 --locale en_US — tighten bullet density, not just --top-n |
| Standard variant set | uv run vibe-resume render --variants --locale en_US — ATS (page-budgeted) + detailed, same cache |
| Truth-preserving auto-iterate | uv run vibe-resume iterate --locale en_US — lift the grade via truthful levers, stop honestly at the ceiling, print human-applied suggestions (dry-run; --write to snapshot) |
| Explore the layout surface | uv run vibe-resume explore --locale en_US --top-n 4,6,8 --page-budget 1.5,2.0,2.5 — sweep the grid, review each cell, surface the Pareto front (score↑ / pages↓). Pure layout/selection — never rewrites bullets. --write '6,2.0' snapshots a cell. |
| Per-gap JD grounding | uv run vibe-resume jd-check --tailor data/imports/jd.txt --explain — per missing keyword: groundable (with supporting activity snippets + refs) vs honestly absent. Advisory only; never auto-inserts. |
| Angle-biased candidate bullets | uv run vibe-resume enrich --candidates impact_first,breadth_first,depth_first --locale en_US emits N framings per group; uv run vibe-resume bullets-compare --locale en_US shows them side by side to pick per group. Angle is a prompt prefix — anti-fabrication rules unchanged. |
| Persona compare with scores | uv run vibe-resume personas-compare --locale en_US --with-scores --tailor data/imports/jd.txt — bullet diff plus a per-persona review-score table; highlights the best-JD-fit persona. |
| Branch a gate decision | uv run vibe-resume run --branch G2 --decision '{"choice":"top_n","top_n":8}' forks the ledger, recomputes that gate's suffix, auto review-diffs vs the original. run --branches lists forks; run --adopt <id> promotes one. |
| Curate groups (human-in-loop) | uv run vibe-resume curate then set actions without editing YAML: curate --drop <name> / --merge <src>:<dst> / --keep <name>, then curate --apply (executes the action field, independent of tier) (#87). emphasis 'foreground my security work' sets a free-text bias for the next enrich. |
| Drive the gate machine (agents) | uv run vibe-resume gates state --json — armed gates, fully-wired vs emit-only, pending gate, each recorded decision + recompute suffix (#90). |
| Cap bullets per group | uv run vibe-resume render --bullets-per-group N — hard cap; warns when bullets are dropped instead of silently truncating (#88). The detailed variant is no longer floored by the global page budget. |
| Compare two versions' scores | uv run vibe-resume review-diff v001 v002 --jd data/imports/jd.txt — per-check scorecard delta. |
| Per-locale trend | uv run vibe-resume trend --locale zh_TW |
What ships with it
4 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 10d ago First seen · 324 lines · 226 tokens per session scan A 28fbc739db69
ai-used-resume is a skill published in the GitHub repository easyvibecoding/vibe-resume (4 stars, last pushed 3mo ago), licensed MIT. It adds 226 tokens to every session and 5,172 once invoked, about $0.0011 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
fleet
Fan out a fleet of independent agent-deck child sessions from inside a session and check their progress non-blockingly. Use when the user wants to "launch several/N sessions", "fan out", "run agents in parallel", "spin up a fleet", "kick off background agents", or "check progress from the main session" without…
watcher-creator
Guide for creating agent-deck watchers conversationally. This skill should be used when users want to set up a new watcher (webhook, ntfy, github, slack, gmail) to route events to a conductor. It walks the user through selecting an adapter type, gathering required settings, generating watcher.toml and clients.json…
agnix
Use when user asks to 'lint agent configs', 'validate skills', 'check CLAUDE.md', 'validate hooks', 'lint MCP'. Validates agent configuration files against 455 rules across 10+ AI tools.
fast-resume
Search local coding-agent session history and identify safe resume commands. Use when the user asks to find, inspect, continue, or recover previous work from Claude Code, Codex, Pi, or another agent indexed by fast-resume.
cv-structure
Write the CV markdown that will be PDF'd and reviewed by the Critico. First read the user's ORIGINAL CV in $JHTHOME/profile/sources/ to mirror their voice and match the register to the industry (the tech defaults — "Technical Skills: Python", metric+tech-in-parens — are wrong for hospitality/sales/care/creative). Six…
circles-and-sources
Strategy map for what to search WHERE, derived entirely from the candidate profile. The 5 concentric circles (workmode + relocation) tell you the geographic scope; the 4 source tiers (LinkedIn → ATS aggregators → niche → web) tell you which platforms to drain in order. A scout that searches the wrong tier in the wrong…