CLI to compile library documentation into Claude Code skill files
markdocs add react does five things:
- Asks the configured LLM for official documentation URLs
- Lets you pick which URL(s) to scrape (interactive)
- Scrapes the page with a built-in Go scraper (no external APIs)
- Compiles the content into a structured skill file using the LLM
- Writes
.claude/skills/frontend/react.md— Claude Code picks it up next session
- Using
go:
go install github.com/Nithin-Valiyaveedu/markdocs@latest- Using
npm:
npm install -g @val-nithin/markdocs- Using
brew(Mac/Linux):
brew tap Nithin-Valiyaveedu/markdocs
brew install markdocs# 1. Configure your LLM provider (runs once)
markdocs init
# 2. Add a skill for any library
markdocs add shadcn
markdocs add stripe
markdocs add drizzle-orm
# 3. Scan your project for missing skills
markdocs scan
# 4. Keep skills up to date
markdocs update --allInteractively configure an LLM provider. Auto-detects from environment variables (ANTHROPIC_API_KEY, OPENAI_API_KEY) or a local Ollama instance.
Supported providers:
- Anthropic (Claude)
- OpenAI (GPT)
- OpenAI-compatible (Groq, Together AI, any custom endpoint via base URL)
- Ollama (local, auto-detected at
localhost:11434)
Config is saved to ~/.markdocs/config.json.
Find, scrape, compile, and write a skill file for the given library.
markdocs add react
markdocs add shadcn
markdocs add stripe --no-interactiveFlags
| Flag | Description |
|---|---|
--no-interactive |
Skip URL selection prompt, use first suggested URL |
The skill is written to .claude/skills/<category>/<library>.md in the current directory.
Detect libraries in the current project that don't have skill files yet. Reads package.json, go.mod, and requirements.txt.
markdocs scan
markdocs scan --add-allFlags
| Flag | Description |
|---|---|
--add-all |
Automatically add skills for all missing libraries |
Show all compiled skills for the current project.
markdocs list
markdocs list --staleFlags
| Flag | Description |
|---|---|
--stale |
Show only skills compiled more than 7 days ago |
Recompile skills whose source documentation has changed (detected via checksum comparison).
markdocs update react
markdocs update --allFlags
| Flag | Description |
|---|---|
--all |
Check and update all skills |
Skills are plain Markdown with YAML frontmatter. All metadata is stored in the file itself — no database.
---
name: react
category: frontend
sources:
- https://react.dev/learn
compiled: 2026-04-12T10:23:00Z
checksum: sha256:abc123def456
model: llama3.2
provider: ollama
project_framework: next.js
markdocs_version: 0.1.0
---
# react — markdocs skill
## What This Is
## Installation (project-specific)
## Key Concepts
## API / Usage Patterns
## Your Project Config (detected)
## Hidden Gotchas
## Common Errors
## Version NotesSkills are auto-categorised into frontend, backend, testing, infra, database, payments, auth, or devtools.
markdocs uses a built-in two-layer scraper — no external scraping APIs required:
- Layer 1 —
net/http+go-readability(works for most static doc sites) - Layer 2 —
go-rodheadless browser fallback (JS-rendered sites like Chakra UI, Radix)
Layer 2 requires Chrome or Chromium to be installed.
npx skills add Nithin-Valiyaveedu/markdocsOr copy skills/markdocs/SKILL.md into your project's .claude/skills/ directory.
MIT
