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/smileynet/teach-me/themenpx skills add smileynet/teach-me --skill themegit clone --depth 1 https://github.com/smileynet/teach-meWrote 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/smileynet/teach-me/theme)<a href="https://agentmods.dev/skills/smileynet/teach-me/theme"><img src="https://agentmods.dev/badge/skills/smileynet/teach-me/theme.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.00043 | $0.00907 |
| Opus 5 | $0.00022 | $0.00453 |
| Sonnet 5 | $0.00009 | $0.00181 |
| Haiku 4.5 | $0.00004 | $0.00091 |
Grade A, and why
theme 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 — 109 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Theme
Preview, validate, and apply color palettes to the lesson UI.
Workflow
1. Preview a palette
python tools/theme-preview.py --palette palettes/purple-night.json
Generates .scratch/theme-preview.html showing all UI elements with the palette applied, plus a contrast validation table. Open it in a browser or screenshot for analysis.
2. Validate contrast
The tool prints a contrast report to stdout:
✓ text on bg: 14.2:1 (AAA) — need 7.0:1
✓ text-muted on elevated: 5.1:1 (AA) — need 4.5:1
✗ text-faint on surface: 2.8:1 (FAIL) — need 4.5:1
Fix any failures before applying. Common fixes:
- Lighten the text token
- Darken the background token
- Use a less-saturated accent
3. Compare palettes
Generate previews for multiple palettes and compare:
python tools/theme-preview.py --palette palettes/purple-night.json --output .scratch/preview-purple.html
python tools/theme-preview.py --palette palettes/zinc-dark.json --output .scratch/preview-zinc.html
4. Get CSS snippet
python tools/theme-preview.py --palette palettes/purple-night.json --css
Prints the :root { --bg: ...; } block ready to paste into style.css.
5. Apply
Copy the CSS variables into assets/style.css :root block. Then verify:
mise run visual-qa
Palette Format
Palettes live in palettes/*.json:
{
"name": "Purple Night",
"mode": "dark",
"tokens": {
"bg": "#13111C",
"bg-elevated": "#1C1A2E",
"bg-surface": "#252340",
"text": "#CDD6F4",
"text-muted": "#9399B2",
"text-faint": "#6C7086",
"accent": "#CBA6F7",
"link": "#89B4FA",
"border": "#313244",
"code-bg": "#1E1E2E",
"success": "#A6E3A1",
"warning": "#F9E2AF",
"error": "#F38BA8",
"callout-bg": "#1E293B",
"key-concept-bg": "#2D1F0E"
}
}
Contrast Rules
| Pair | Minimum | Why |
|---|---|---|
| text on bg | 7:1 (AAA) | Extended reading — body text must be crisp |
| text on elevated | 7:1 | Tray panel body text |
| text-muted on bg | 4.5:1 (AA) | Secondary text still readable |
| text-muted on elevated | 4.5:1 | Common failure — always test this |
| text-muted on surface | 4.5:1 | Tooltips, popovers — the #1 failure point |
| link on bg | 4.5:1 | Interactive elements distinguishable |
| accent on bg | 4.5:1 | Headings readable |
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 · 109 lines · 43 tokens per session scan A 80adea9951af
theme is a skill published in the GitHub repository smileynet/teach-me (3 stars, last pushed today), licensed MIT. It adds 43 tokens to every session and 907 once invoked, about $0.0002 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
anki
Anki spaced repetition learning system reference. Covers the science of SRS and SM-2 algorithm, card design principles, optimal deck settings, FSRS scheduler, study workflow, essential add-ons, custom templates, filtered decks, and AnkiConnect API.
reading-metaskill
当用户想养成阅读习惯、问「读什么书/怎么读」「如何学习新领域/怎么入门某学科」时调用。 核心理念: 阅读是终极元技能; 读你所爱直到爱上阅读, 没有读完义务; 读原著与经典优先; 以教促学; 每天1-2小时即可进入极少数人行列。 不适用于: 具体某本书的书评、考试备考资料选择。 Triggers: 阅读/读书/怎么学习/入门/原著/书单/reading/how to learn.
coach
Learning telemetry, strategy, and schedule — retention stats, calibration, grader audit, n-of-1 experiments, HTML dashboard. Use for "how am I doing", weekly check-ins, strategy questions, auditing the grader, or adjusting how Engram teaches.
learning-notes-automation
学习笔记自动化:视频/播客转录 → 知识点提取 → 闪卡生成 → 知识图谱更新。触发词:学习笔记、闪卡、Anki、知识提取、视频学习.
antivibe
Code learning and audit framework. Analyze any codebase — new, legacy, or AI-generated — and produce educational explanations or architectural audits. Use when the user wants to understand WHAT and WHY behind any code, not just accept it.
learn
Learn any topic properly — first-principles curriculum, generation-first tutoring, verified free recall, FSRS scheduling. Use when the user wants to learn, understand, study, or continue studying something.