Introduction
What ASK is and why it exists.
Introduction
ASK (Agent Skills Kit) is a CLI that downloads version-specific library documentation and source for AI coding agents, then generates an AGENTS.md index plus per-library Claude Code skills under .claude/skills/<name>-docs/SKILL.md.
The agent reads the docs that match the version your project actually runs — not the snapshot baked into its training data.
Why this exists
Training data ages. Lockfiles don't.
When an agent recalls "how zod works" from memory, it's recalling whatever shape the API had at the cutoff. When the project pins zod@3.22.0, the agent should be reading ~/.ask/...zod/3.22.0/README.md, not guessing.
ASK bridges the two by:
- Reading the version from
bun.lock→package-lock.json→pnpm-lock.yaml→yarn.lock→package.jsonrange fallback. - Fetching docs/source once and caching under
~/.ask/(override viaASK_HOME). - Printing absolute paths to stdout, errors to stderr — safe for
$(ask …)composition.
How agents consume ASK
Two surfaces, depending on workflow:
- Declarative —
ask.jsonat the project root lists libraries.ask installresolves every entry, materializes docs under.ask/docs/<name>@<version>/, writes a Claude skill, and regenerates the auto-managed block inAGENTS.md. - One-shot —
ask docs <spec>andask src <spec>emit cached paths for ad-hoc reads. Composable withrg,cat,fd.
Next steps
- Installation — install the CLI and run it against an existing project.