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 skills/kimgoetzke/coding-agent-configs/ahanpx skills add kimgoetzke/coding-agent-configs --skill ahagit clone --depth 1 https://github.com/kimgoetzke/coding-agent-configsWrote 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/kimgoetzke/coding-agent-configs/aha)<a href="https://agentmods.dev/skills/kimgoetzke/coding-agent-configs/aha"><img src="https://agentmods.dev/badge/skills/kimgoetzke/coding-agent-configs/aha.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.00080 | $0.02075 |
| Opus 5 | $0.00040 | $0.01038 |
| Sonnet 5 | $0.00016 | $0.00415 |
| Haiku 4.5 | $0.00008 | $0.00208 |
Grade A, and why
aha 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 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.
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 — 143 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Aha
Capture and revisit insights — the small "I didn't know that" moments that otherwise evaporate.
Three modes, picked by the argument:
| Argument | Mode |
|---|---|
| (none) | Scan recent context, propose insights, record those the user wants |
quiz |
Quiz the user on existing insights in .ai/insight/ |
| anything else | Treat argument as a topic hint; focus capture on that subject |
Insights live in {repo root}/.ai/insight/{yyyy-mm-dd} {succinct-description}.md — kebab-case description, just like the planning skill folder naming.
Step 0: Resolve the argument
Before doing anything else, classify the invocation argument and pick the mode. Do this explicitly — state the resolution to the user in one short sentence before proceeding.
- Trim leading/trailing whitespace from the argument
- Lower-case the trimmed argument for comparison only (keep the original for use as a topic hint)
- Classify:
- Empty / whitespace only → Mode 1 (Capture)
- Exactly
quiz(case-insensitive, no other words) → Mode 3 (Quiz) - Anything else → Mode 2 (Capture with topic hint); pass the original (un-lowercased) argument through as the hint
- Ambiguity guard: if the argument starts with
quizfollowed by more text (e.g.quiz me on spring boot), treat it as Mode 3 and use the remainder as an optional topic filter for which insights to draw from. If unsure, ask the user which mode they meant before continuing. - Announce: tell the user which mode was picked, e.g.
Mode: capture (topic hint: "spring boot dynamic properties"). Then proceed to the matching mode below.
Mode 1: Capture (no argument)
Step 1: Scan recent context for insight candidates
Look back through the conversation since the last /aha invocation in this session (search for prior aha skill activity or files written under .ai/insight/ during this session). If there's no prior invocation, scan the whole conversation.
What ships with it
1 file 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.
- 4d ago First seen · 143 lines · 80 tokens per session scan A df3857fe536a
aha is a skill published in the GitHub repository kimgoetzke/coding-agent-configs (2 stars, last pushed 15d ago), licensed MIT. It adds 80 tokens to every session and 2,075 once invoked, about $0.0004 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
codebase-memory
Use the codebase knowledge graph for structural code queries. Triggers on: explore the codebase, understand the architecture, what functions exist, show me the structure, who calls this function, what does X call, trace the call chain, find callers of, show dependencies, impact analysis, dead code, unused functions…
accordion-context-folding
Read this skill if you see {# FOLDED} markers in your context (e.g. {#3f9a2c FOLDED}), or if earlier parts of your context look summarized. Accordion is a desktop tool that may compact older context blocks to keep you under a token budget. The unfold tool restores a folded block (open from your next turn); the recall…
accordion-context-recall
Read this skill when you need to read the full content of a folded context block RIGHT NOW as a tool result — without opening it in your standing context. Use recall(codes) when you only need a value once and do not want to permanently restore the block. Accordion may fold older parts of your context to keep token…
memory-compounding
Review and sharpen persistent memory so it compounds instead of accumulating. Use when pruning pi-hermes-memory entries, doing monthly memory hygiene, or when the same lesson has been recorded multiple times.
session-handoff
Hand off work to another Pi session — write a handoff doc, save key decisions to memory, and notify the target session via intercom. Use when a session is getting long, when you need to continue work in a fresh context, or when transferring work between projects/sessions. Composes handoff.ts (doc writer) + memory…
session-search
Search and verify Joel's Pi, Claude, Codex, Cursor, Grok, and OpenCode session history. Use when asked to recover prior context, find exact transcript evidence, inspect session receipts, continue old work, or verify capture health. Prefer flowing recall before raw transcript search when the question is about prior…