From claude-docs
Searches and reads local Claude documentation to answer questions about Claude Code, API, Agent SDK, and prompt engineering.
How this skill is triggered — by the user, by Claude, or both
Slash command
/claude-docs:claude-docsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
You have access to a local mirror of Claude's official documentation at `~/.claude-code-docs/docs/`.
You have access to a local mirror of Claude's official documentation at ~/.claude-code-docs/docs/.
Activate when the user asks about:
Use this hierarchy — try simpler strategies first, escalate if needed:
User says "hooks", "mcp", "memory" — a concrete topic name.
Glob: ~/.claude-code-docs/docs/*<keyword>*.md
If Glob returns matches, read the top 1-3 files and synthesize.
User says "hooks in agent sdk", "api rate limits", "cli plugins".
Scope the Glob to the product prefix:
| User mentions | Glob pattern |
|---|---|
| "Claude Code", "CLI", "hooks", "skills", "plugins" | ~/.claude-code-docs/docs/claude-code__*<keyword>*.md |
| "Agent SDK", "SDK", "Python SDK", "TypeScript SDK" | ~/.claude-code-docs/docs/docs__en__agent-sdk__*<keyword>*.md |
| "API", "messages endpoint", "tool use" | ~/.claude-code-docs/docs/docs__en__api__*<keyword>*.md |
| "agents and tools", "MCP connector" | ~/.claude-code-docs/docs/docs__en__agents-and-tools__*<keyword>*.md |
If scoped Glob misses, fall back to content search (step 3).
User says "best practices for extended thinking", "how do I configure streaming".
Keyword extraction: Strip filler words and keep domain-specific terms:
"streaming" "configure""extended" "thinking""hooks" "mcp""tool-use" (combine compound concepts with hyphens)Run the content search script with extracted keywords:
bash ~/.claude-code-docs/plugin/skills/claude-docs/scripts/content-search.sh "<keyword1>" "<keyword2>"
The script outputs filenames with match scores. Read the top 3-5 matching files and synthesize.
If the script is not available or returns no results, fall back to Grep:
Grep: "<keyword>" in ~/.claude-code-docs/docs/
User says "something about checkpoint", "that caching doc".
bash ~/.claude-code-docs/plugin/skills/claude-docs/scripts/fuzzy-search.sh "<query>"
The script outputs ranked filenames. Read the top match.
When all matching docs belong to the same product (all Claude Code CLI, all Agent SDK, etc.):
When matches span different products (e.g., CLI + API + Agent SDK):
manifest-reference.md for complete list):| File pattern | Say to user |
|---|---|
claude-code__*.md | Claude Code |
docs__en__agent-sdk__*.md | Agent SDK |
docs__en__api__*.md | Claude API |
docs__en__build-with-claude__*.md | Claude Documentation |
docs__en__agents-and-tools__*.md | Agents & Tools |
docs__en__resources__prompt-library__*.md | Prompt Library |
After selection → read all docs in that context and synthesize.
When the user specifies a programming language, narrow the API docs to that SDK:
| User mentions | Narrow search to |
|---|---|
| "Python", "pip", "anthropic" (Python import) | docs__en__api__python__* or docs__en__agent-sdk__python* |
| "TypeScript", "npm", "@anthropic-ai/sdk" | docs__en__api__typescript__* or docs__en__agent-sdk__typescript* |
| "Go", "golang" | docs__en__api__go__* |
| "Java", "Maven", "Gradle" | docs__en__api__java__* |
| "Ruby", "gem" | docs__en__api__ruby__* |
| "C#", ".NET", "NuGet" | docs__en__api__csharp__* |
If no language is mentioned but the query is about SDK methods, present the Python docs first (most common) and note that TypeScript equivalents exist.
Always include source links in your response:
claude-code__<page>.md → https://code.claude.com/docs/en/<page> (replace __ with /)docs__en__<path>.md → https://platform.claude.com/en/docs/<path> (replace leading docs__en__ then remaining __ with /)Examples:
claude-code__hooks.md → https://code.claude.com/docs/en/hooksdocs__en__agent-sdk__python.md → https://platform.claude.com/en/docs/agent-sdk/pythondocs__en__api__messages__create.md → https://platform.claude.com/en/docs/api/messages/createWhen a search returns no results or too few, try these known synonyms:
| User says | Search for |
|---|---|
| "function calling" | "tool use", "tool-use" |
| "system instructions" | "system prompt" |
| "JSON mode" | "structured outputs" |
| "thinking" | "extended thinking", "adaptive thinking" |
| "caching" | "prompt caching", "prompt-caching" |
| "files API" | "files", "pdf support" |
| "sub-agents" | "subagents", "sub-agents" |
| "environment variables" | "settings", "configuration" |
| "CI/CD" | "github actions", "gitlab" |
If all search strategies return nothing:
/docs -t to check if docs are installed and currentAfter presenting documentation to the user, always append this emphasized block at the bottom of your response:
Want to go deeper? I can create an interactive course on this topic — visual explanations, animated diagrams, and hands-on quizzes in a single HTML file you can open in your browser. Just say "create a course on [topic]" or run
/docs --course [topic].
Replace [topic] with the actual topic the user asked about.
manifest-reference.md — Category-to-label mapping (single source of truth)examples/direct-lookup.md — Example: topic → Glob → synthesizeexamples/semantic-search.md — Example: question → content-search.sh → synthesizeexamples/cross-context.md — Example: ambiguous → ask context → synthesizenpx claudepluginhub costiash/claude-code-docs --plugin claude-docsAnswers questions about Claude Code features including setup, best practices, automation, models, plugins, MCP, and configuration by reading reference documentation.
Reverse-engineers Claude Code's architecture from its source map. Navigates extracted source, agent system, prompt assembly, tool pipeline, and skill/plugin integration.
Guides creation and editing of skills using test-driven development with pressure scenarios and subagents to verify agent compliance.