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 saajunaid/caddis-plugin --skill code-explainergit clone --depth 1 https://github.com/saajunaid/caddis-pluginWrote 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/saajunaid/caddis-plugin/code-explainer)<a href="https://agentmods.dev/skills/saajunaid/caddis-plugin/code-explainer"><img src="https://agentmods.dev/badge/skills/saajunaid/caddis-plugin/code-explainer/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/saajunaid/caddis-plugin/code-explainer"><img src="https://agentmods.dev/badge/skills/saajunaid/caddis-plugin/code-explainer.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.00033 | $0.00543 |
| Opus 5.5 | $0.00013 | $0.00217 |
| Sonnet 5.5 | $0.00007 | $0.00109 |
| Haiku 4.5 | $0.00003 | $0.00054 |
Grade A, and why
code-explainer 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 17d 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 — 92 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Code Explainer Skill
When explaining code, always follow this structure:
When to Use
- User asks "how does this work?"
- Explaining a codebase to a new team member
- Teaching a concept through code examples
- Creating code walkthroughs or tutorials
Steps
Step 1: Start with an Analogy
Compare code to everyday life:
- API endpoints -> Restaurant ordering (menu = endpoints, kitchen = backend)
- Database connections -> Library system (books = data, catalog = schema)
- Event loops -> Restaurant host managing reservations
- Caching -> Keeping frequent items on your desk
- Authentication -> Security guard checking IDs
Step 2: Draw a Diagram
User Input -> Validation -> Processing -> Database -> Response
^ |
+------------ Error Handling <-----------------+
graph LR
A[Frontend] --> B[API]
B --> C[Service]
C --> D[(Database)]
Step 3: Walk Through the Code
# Step 1: User clicks submit -> triggers this function
def handle_submit(form_data):
# Step 2: Validate (like a bouncer checking IDs)
validated = validate(form_data)
# Step 3: Process (like a chef preparing your order)
result = process(validated)
# Step 4: Save (like filing a document)
save_to_db(result)
# Step 5: Confirm (like getting a receipt)
return success_response()
Step 4: Highlight a Gotcha
Show common mistakes with before/after:
# Wrong: mutable default argument
def add_item(item, items=[]):
items.append(item)
return items
# Fixed: use None
def add_item(item, items=None):
items = items or []
items.append(item)
return items
Step 5: Explain the Why
Don't just explain what, explain WHY:
- Why this pattern was chosen
- Why not simpler alternatives
- What problems this solves
- What trade-offs were made
Checklist
- Analogy provided for complex concepts
- Visual diagram included (ASCII or Mermaid)
- Step-by-step walkthrough with comments
- Common gotcha highlighted
- "Why" explained (not just "what")
- Conversational tone used
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.
- 17d ago Changed · -9 tokens per session 53339a6f2419
- 1mo ago First seen · 92 lines · 42 tokens per session scan A 9dd0d11fc93a
code-explainer is a skill published in the GitHub repository saajunaid/caddis-plugin (0 stars, last pushed today), licensed MIT. It adds 33 tokens to every session and 543 once invoked, about $0.0001 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-09-03.
Other skills, from other repositories
goga-discover
Interview the user relentlessly about a decision until every branch of the design tree is resolved, then record the result as a short ADR.
goga-review-plan
Verify execution plan completeness and correctness.
goga-define-challenge
Challenge the complete product definition before the PRD is generated.
goga-task-by-specifying
Interactive task formulation from a raw request.
goga-prototype-type-detail
Per-type detailing (methods, properties, signatures) for the prototype pipeline.
goga-change-investigator
Evidence-driven root cause investigation.