Claude Docs logo

Claude Docs

Community
costiash
claude-docs

Search and read locally-stored Claude documentation covering Claude Code CLI, Claude API (Messages, tool use, vision, streaming, batch), Agent SDK (Python and TypeScript), prompt engineering, and all Anthropic platform docs. Use this skill whenever the user asks about Claude Code features (hooks, MCP servers, skills, plugins, settings, permissions, keybindings, sub-agents), the Anthropic API or any of its SDKs (Python, TypeScript, Go, Java), the Agent SDK (sessions, hooks, custom tools, MCP), model capabilities (context windows, extended thinking, pricing, rate limits, vision), prompt engineering best practices, or troubleshooting any Claude-related error. This skill provides instant access to official documentation files without web searches — always prefer it over web lookups for Claude and Anthropic topics.

Overview

Publishercostiash
Repositoryclaude-code-docs
Skill nameclaude-docs
Stars
56
Forks
5
Bundled files
6
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 6 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by costiash on GitHub. Read the source before you install it.

Installation

Install the Claude Docs AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/costiash/claude-code-docs/tree/main/plugin/skills/claude-docs
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/costiash/claude-code-docs.git /tmp/claude-code-docs
mkdir -p .claude/skills
cp -r /tmp/claude-code-docs/plugin/skills/claude-docs .claude/skills/claude-docs
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Claude Docs in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Claude Docs on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Claude Docs is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Claude Documentation Search Skill

Claude's official documentation is indexed locally. The clone at ~/.claude-code-docs/ holds only metadata:

  • paths_manifest.json — every page's filename, id, title, category, and source URL
  • search_index.json — per-page titles, headings, and stemmed term counts

The actual .md pages are cached at ~/.claude-code-docs/cache/ (override: $CLAUDE_DOCS_CACHE_DIR). A background sync keeps the cache current; any page not yet cached is fetched on demand — see Reading a doc below.

When to Use This Skill

Activate when the user asks about:

  • Claude Code features: hooks, skills, MCP, plugins, settings, slash commands, sub-agents
  • Claude API: messages, tool use, streaming, batch processing
  • Agent SDK: Python/TypeScript SDK, sessions, custom tools, subagents
  • Prompt engineering: best practices, system prompts, chain of thought
  • Any topic covered by platform.claude.com or code.claude.com

Search Strategy

The search scripts read the manifest + index, so they see every page whether or not it is cached yet. Prefer them over globbing the cache.

1. Content search (default — questions and topics)

bash
bash ~/.claude-code-docs/plugin/skills/claude-docs/scripts/content-search.sh "<keyword1>" "<keyword2>"

Output is filename<TAB>title<TAB>score, best first. Keyword extraction: strip filler, keep domain terms — "how do I configure streaming" → streaming configure; "difference between hooks and MCP" → hooks mcp. Take the top 3-5 filenames and read them (next section).

2. Fuzzy search (approximate name)

User says "that caching doc", "something about checkpoint":

bash
bash ~/.claude-code-docs/plugin/skills/claude-docs/scripts/fuzzy-search.sh "<query>"

Output is ranked filenames. Read the top match.

3. Direct manifest lookup (exact category/topic)

To list pages in a category or matching a filename fragment, query the manifest:

bash
jq -r '.pages[] | select(.filename | test("<fragment>")) | .filename' ~/.claude-code-docs/paths_manifest.json
jq -r '.pages[] | select(.category=="claude_code") | .filename' ~/.claude-code-docs/paths_manifest.json

Reading a doc (cache-miss rule)

A search returns a filename (e.g. claude-code__hooks.md). The file is at ~/.claude-code-docs/cache/<filename>.

  1. Read ~/.claude-code-docs/cache/<filename>.
  2. If it is not there (not fetched yet), fetch it first, then read:
    bash
    ~/.claude-code-docs/plugin/scripts/fetch-docs.sh get "<filename>"
    then Read ~/.claude-code-docs/cache/<filename>.
  3. If the fetch fails (offline), the script prints the canonical source URL on stderr — fall back to WebFetch on that URL.

To save context, prefer previewing large pages before reading them. Pull a page's structure from the index (title + headings) first — often the headings alone answer the question and you skip loading a multi-KB body:

bash
jq -r '.pages[] | select(.filename=="<filename>") | .title, (.headings[]|"  "+.text)' ~/.claude-code-docs/search_index.json

Synthesis Rules

Same Product Context → SYNTHESIZE

When all matching docs share one product (all Claude Code, all Agent SDK, ...): read them all silently, extract relevant sections, present one unified answer, cite sources.

Different Product Contexts → ASK

When matches span products (CLI + API + Agent SDK), ask which the user means. Labels (see manifest-reference.md) map from category:

categorySay to user
claude_codeClaude Code CLI
agent_sdkClaude Agent SDK
api_referenceClaude API
core_documentationClaude Documentation
agents_and_toolsAgents & Tools
about_claudeAbout Claude
get_startedGetting Started
test_and_evaluateTesting & Evaluation
release_notesRelease Notes
resourcesResources
prompt_libraryPrompt Library

After selection → read all docs in that context and synthesize.

SDK Language Disambiguation

When the user names a language, narrow API/SDK results (e.g. agent-sdk__python, agent-sdk__typescript, api__go, api__java). If none named but the query is about SDK methods, present Python first and note TypeScript equivalents exist.

URL Generation

Always cite source links. Get the exact URL from the manifest — never reconstruct it from the filename (filenames are lossy; the manifest stores the verbatim URL):

bash
jq -r '.pages[] | select(.filename=="<filename>") | .url' ~/.claude-code-docs/paths_manifest.json

Example: claude-code__hooks.md → https://code.claude.com/docs/en/hooks.

Common Synonyms

When a search returns too few results, retry with a known synonym:

User saysSearch 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"

No Results

If all strategies return nothing: try synonyms; try broader/narrower keywords; suggest /docs -t to check freshness; note the topic may not be in the index.

Post-Response Course Prompt

After presenting documentation, always append this block at the bottom:


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.

Reference Files

  • manifest-reference.md — Category-to-label mapping (single source of truth)
  • examples/direct-lookup.md — Example: topic → search → synthesize
  • examples/semantic-search.md — Example: question → content-search.sh → synthesize
  • examples/cross-context.md — Example: ambiguous → ask context → synthesize

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Claude Docs AI skill do?

Search and read locally-stored Claude documentation covering Claude Code CLI, Claude API (Messages, tool use, vision, streaming, batch), Agent SDK (Python and TypeScript), prompt engineering, and all Anthropic platform docs. Use this skill whenever the user asks about Claude Code features (hooks, MCP servers, skills, plugins, settings, permissions, keybindings, sub-agents), the Anthropic API or any of its SDKs (Python, TypeScript, Go, Java), the Agent SDK (sessions, hooks, custom tools, MCP), model capabilities (context windows, extended thinking, pricing, rate limits, vision), prompt engin...

Why use Claude Docs on TypingMind?

Because you install it once and use it with any model. Claude Docs is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Claude Docs in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/costiash/claude-code-docs/tree/main/plugin/skills/claude-docs. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Claude Docs?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Claude Docs?

As many as you like. As long as a model supports skills, you can use Claude Docs with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Claude Docs AI skill free?

It is published on GitHub by costiash. Check the repository for licensing terms. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇