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 agentmods add commands/fourleafai/clover-public/analyze-jdgit clone --depth 1 https://github.com/fourleafai/clover-publicWrote 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/commands/fourleafai/clover-public/analyze-jd)<a href="https://agentmods.dev/commands/fourleafai/clover-public/analyze-jd"><img src="https://agentmods.dev/badge/commands/fourleafai/clover-public/analyze-jd.svg" alt="Measured on agentmods" 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 | $0.00000 | $0.00950 |
| Opus 5 | $0.00000 | $0.00475 |
| Sonnet 5 | $0.00000 | $0.00190 |
| Haiku 4.5 | $0.00000 | $0.00095 |
Grade B, and why
analyze-jd scanned grade B with 1 finding 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 4d 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.
Strips warnings and disclaimersmediumAnti-refusal
Omitting safety caveats hides risk from the user and is a common jailbreak preamble.
- Don't lecture about resume best practices in general. Focus on this resume vs. this JD. How it starts
The opening of the file, as written. The whole thing — 49 lines — stays where its author put it; the contents beside it link to each section on GitHub.
analyze-jd
Score a resume against a job description and point out the gaps.
When to run
- User says "should I apply for this?" or "how does my resume look against this JD?".
- User pastes a job description and asks for a fit assessment.
Flow
-
Ask for the JD only. The user's resume already lives on their Four-Leaf account;
match_scorepulls it automatically. Don't ask them to paste it. Short prompt:Paste the job description and I'll score the fit against your Four-Leaf resume.
If the user sends a job-posting URL instead of pasted text, fetch the page with your own WebFetch tool and use the result as the JD.
match_scoredoes not fetch URLs server-side; it expects plain text. If WebFetch isn't available or the page won't render, fall back to asking the user to paste the JD body. -
Wait for the JD. If it's a short fragment, ask for the full posting before scoring; a stub gives an unreliable score.
-
Call
match_scorewith only thejobDescriptionargument. Omitresume; the tool pulls the master resume from the user's account and scores against that. The output carriesresumeSourceso you know what was evaluated. If the tool returnserror: "no_master_resume", tell the user briefly that there's no resume on their account yet and direct them touploadResumeUrlto upload one, then call the tool again once they confirm. If the user explicitly wants to score a different version of their resume (e.g. one they're drafting right now), pass it via theresumeargument as an override. -
Present the score clearly. Lead with the headline:
Match score: 72 out of 100. Solid fit with real gaps.
Then break it down:
- What matched well. Pull the strongest 3-5 from the matched skills.
- What's missing. Pull required skills the resume doesn't mention. Be specific.
- Calibration. Score 80+ = apply with current resume. 60-79 = apply, but tailor first. Below 60 = either the role isn't a fit or the resume buries relevant work.
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.
- 4d ago First seen · 49 lines · 0 tokens per session scan B e5f22a6c7ddf
analyze-jd is a command published in the GitHub repository fourleafai/clover-public (5 stars, last pushed 3mo ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 950 tokens. A static security scan graded it B with 1 finding (strips warnings and disclaimers). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other commands, from other repositories
synthesise-reviews
Deduplicate and reconcile multiple completed review reports into one prioritised revision plan with conflicts and dependencies made explicit. Use when parallel reviewers have returned findings that need a single action sequence. Not for running the reviews; use $review-cluster.
superpowers-execute
Execute the current GSD phase plan with Superpowers instead of gsd-execute-phase.
config
Command "config" from sdebruyn/fabric-dw-mcp-cli, covering configuration & defaults, http retry budget, sql retry budget, mcp workspace allowlist {#mcp-workspace-allowlist} and mcp server log level.
deps-age
Analyze dependency freshness and maintenance activity.
workpm
PM 모드로 오케스트레이터 시작. 팀을 구성하고 5단계 워크플로우로 작업을 완수합니다.
argos
설계 산출물 대비 구현 검증 — 준공검사 감리 (아르고스).