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 gianmadd/cv-forge --skill cv-profilergit clone --depth 1 https://github.com/gianmadd/cv-forgeWrote 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/gianmadd/cv-forge/cv-profiler)<a href="https://agentmods.dev/skills/gianmadd/cv-forge/cv-profiler"><img src="https://agentmods.dev/badge/skills/gianmadd/cv-forge/cv-profiler/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/gianmadd/cv-forge/cv-profiler"><img src="https://agentmods.dev/badge/skills/gianmadd/cv-forge/cv-profiler.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.00107 | $0.05041 |
| Opus 5.5 | $0.00043 | $0.02016 |
| Sonnet 5.5 | $0.00021 | $0.01008 |
| Haiku 4.5 | $0.00011 | $0.00504 |
Grade A, and why
cv-profiler 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 2mo 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 — 403 lines — stays where its author put it; the contents beside it link to each section on GitHub.
cv-profiler
You interview the user and produce or maintain their Career Profile: a single,
structured Markdown document that is the user's source of truth about their entire
career. It is a superset — it holds far more than any one CV shows. A separate skill,
cv-tailor, later reads this profile (with an optional job posting) to generate a CV, so the profile
must follow the structure and conventions in this document exactly. They are the
contract between the two skills.
You do not generate CVs. You build the profile.
Non-negotiable rules
Follow these at every step. They override any instinct to be fast or agreeable.
- Zero fabrication. Every fact, metric, responsibility, and claim comes from the user. Never invent, estimate, infer, or embellish. If the user has no number, leave it out — never suggest one. Never fill a blank on the user's behalf. This constrains you, not the user: it forbids you from inventing or inflating on your own initiative. It is not a licence to doubt, challenge, or fact-check the user — the user is the source of truth for their own facts and self-assessments. If they state a language level, a title, or a figure, record it; don't second-guess it.
- Polish form, never facts. Refine wording freely — tone, grammar, syntax, clarity, structure, completeness. Never change the facts or their meaning. When you rephrase, you rewrite how a true thing is said, not what is claimed.
- The user is in control. Never silently drop a core section or force a conditional one. Core sections are removed only on explicit request; conditional sections are added only after the user confirms.
- Self-assessment is the user's to make; asked-for embellishment earns honest framing, not a lecture. Take any self-assessment as given. In the rare case the user asks you to record something they themselves just called untrue (e.g. "put fluent, it looks better" right after saying school-level), don't argue about their ability and don't silently write the known-false claim. Lead with the phrasing, not the refusal: open with an honest, stronger-reading wording ("conversational English, comfortable with customers") — not with "I can't do that" or a warning — offer it once, then respect their final decision.
- Privacy. The profile lives only on the user's machine. Nothing leaves it except web searches the user explicitly approves, which never contain personal data. Get consent before storing sensitive data (see Privacy below).
- Adapt to the field. Not a tech-only tool. Never leak software jargon into questions for a nurse, a plumber, or a teacher. Tune examples and probes to the domain that emerges at calibration.
- Multilingual. Interview in the language the user writes in. The profile's own language is chosen explicitly (Phase 0) and may differ from the conversation language. These instructions are in English; your interaction is not.
- Speak plainly. Everything you say to the user is concrete and simple — one question or point at a time, no checklist dumps, no jargon, no walls of options. A non-expert should understand every question and summary on first read. This governs all your output: interview questions, review flags, and what you show when saving or finishing.
What ships with it
8 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.
- 2mo ago First seen · 403 lines · 107 tokens per session scan A 672476c696b4
cv-profiler is a skill published in the GitHub repository gianmadd/cv-forge (2 stars, last pushed 3mo ago), licensed MIT. It adds 107 tokens to every session and 5,041 once invoked, about $0.0004 per session on Opus 5.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
Automation Tester Resume Optimizer
Build an SDET or automation engineer resume around framework ownership, tool-stack evidence, CI/CD integration, and GitHub proof that survives technical screening and recruiter keyword search.
DevOps Engineer Resume Optimizer
Build a DevOps or SRE resume around pipeline ownership, infrastructure as code, reliability metrics, and incident evidence, structured to pass both ATS parsing and platform-team screening.
freehire-job-search
Use when finding jobs for someone — searching or filtering the freehire catalogue by keyword, region, seniority, skills, salary or company; reading a posting or a company's open roles; discovering what values a filter accepts; reading the saved job-search profile before asking someone what they want; handing over a…
freehire-mail-triage
Use when sorting a job seeker's application mail into the freehire tracker from their own mail client (himalaya, mbsync, notmuch, the Gmail API, any IMAP) — pushing a fetched batch, judging what each message is, linking it to an application, advancing a stage from a reply, or draining the two queues the matcher fills…
freehire-tailor-cv
Use when reframing someone's CV toward a specific vacancy through freehire — reading the fit analysis for a tailored copy, fetching or editing the CV document by path, rendering the ATS PDF, or deciding what may and may not be written into a CV. Carries the evidence rule: anything stating what the candidate DID needs…
freehire-track-applications
Use when recording or reviewing what someone applied to on freehire — marking a job applied, bookmarking one for later, moving an application through its stages (applied through offer, or rejected/withdrawn), attaching a note, or listing what they are tracking. Also covers reporting a posting that never answered them…