Opinionated multi-model delegation for very large repos.
Use to learn something the fleet doesn't know yet: researches a topic online, writes a source-backed knowledge note under .thunderkit/knowledge/, and can draft a new validated tk-* skill from what was learned — so knowledge becomes reusable, not one-shot.
Install: npx skills add thunderock/thunderkit -s tk-learn -g
The fleet can't route work it doesn't understand. tk-learn closes that gap: pick a topic the project needs (a library, an API, a pattern, a domain), research it online, and write a source-backed knowledge note the rest of the pack can consume — and, when the topic is a recurring capability, draft a new tk-* skill from it.
Model class: executors (wide, cheap — learning is breadth-first reading), with the planner distilling. Every claim is source-backed; unverified claims are labelled, never asserted.
tk-plan better than guessing).tk-grill/tk-ask return unknown on something the *project* should know — a learn-modegrill routes the unknown here instead of to the user.
tk-grill --learn): what exactly to learn, from which kinds ofsources, and how a claim will be verified. One learning goal per note.
primary sources over blog posts). Each finding carries its source URL and a confidence.
evidence, the contradictions (kept, not averaged), and the residual unknowns.
skills/tk-<name>/SKILL.md from the note, then validate it (python3 tests/validate_frontmatter.py) and rebuild the site drift gate. Never auto-commit a drafted skill — surface it for review first.
.thunderkit/knowledge/<slug>.md# <topic>
learned_at: YYYY-MM-DD · confidence: high|medium|low
## What's true (each line cites a source)
## Contradictions / open questions
## Sources
Committed, so the knowledge travels with the repo (same rule as the north star). A drafted skill, if any, lands as a separate reviewable change.
unverified, not a fact.tk-learn gathers and drafts; it never edits production code. Adrafted skill is a proposal that must pass the validator and your review before it ships.