docs-sources

Knowledge of documentation platforms and fetching strategies. Use when adding new documentation sources, determining fetch strategy for a docs site, detecting doc frameworks, or configuring the docs registry.

242 stars

Best use case

docs-sources is best used when you need a repeatable AI agent workflow instead of a one-off prompt. It is especially useful for teams working in multi. Knowledge of documentation platforms and fetching strategies. Use when adding new documentation sources, determining fetch strategy for a docs site, detecting doc frameworks, or configuring the docs registry.

Knowledge of documentation platforms and fetching strategies. Use when adding new documentation sources, determining fetch strategy for a docs site, detecting doc frameworks, or configuring the docs registry.

Users should expect a more consistent workflow output, faster repeated execution, and less time spent rewriting prompts from scratch.

Practical example

Example input

Use the "docs-sources" skill to help with this workflow task. Context: Knowledge of documentation platforms and fetching strategies. Use when adding new documentation sources, determining fetch strategy for a docs site, detecting doc frameworks, or configuring the docs registry.

Example output

A structured workflow result with clearer steps, more consistent formatting, and an output that is easier to reuse in the next run.

When to use this skill

  • Use this skill when you want a reusable workflow rather than writing the same prompt again and again.

When not to use this skill

  • Do not use this when you only need a one-off answer and do not need a reusable workflow.
  • Do not use it if you cannot install or maintain the related files, repository context, or supporting tools.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/docs-sources/SKILL.md --create-dirs "https://raw.githubusercontent.com/aiskillstore/marketplace/main/skills/consiliency/docs-sources/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/docs-sources/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How docs-sources Compares

Feature / Agentdocs-sourcesStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Knowledge of documentation platforms and fetching strategies. Use when adding new documentation sources, determining fetch strategy for a docs site, detecting doc frameworks, or configuring the docs registry.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Documentation Sources Skill

Understand documentation platforms and how to efficiently fetch content from each. Supports 20+ platforms and frameworks.

## Variables

| Variable | Default | Description |
|----------|---------|-------------|
| PREFER_LLMSTXT | true | Check for llms.txt before other strategies |
| PREFER_GITHUB | true | Prefer raw GitHub over web crawling |
| BROWSER_FALLBACK | true | Use browser automation when curl fails |
| DEFAULT_STRATEGY | web_crawl | Fallback when detection fails |

## Instructions

**MANDATORY** - Follow the Workflow steps below when adding or analyzing documentation sources.

- Always check for AI-native signals first (llms.txt)
- Prefer raw content over rendered HTML
- Use browser automation only when necessary

## Red Flags - STOP and Reconsider

If you're about to:
- Web crawl a site without checking for llms.txt first
- Use browser automation without trying curl first
- Add a source without detecting the documentation framework
- Skip GitHub raw access when repo is available

**STOP** -> Read the appropriate cookbook file -> Follow detection order -> Then proceed

## Quick Decision Tree

```
What documentation are you adding?
│
├─ Has /llms.txt? ──────────────────────► llmstxt-strategy.md
│
├─ GitHub repo available?
│   └─ Has docs.yml/mint.json/mkdocs.yml? ► github-strategy.md
│
├─ Has /openapi.json or /asyncapi.yaml? ─► openapi-strategy.md
│
├─ Has /sitemap.xml? ───────────────────► sitemap-strategy.md
│
├─ Curl returns <1KB? (JS-rendered) ────► browser-strategy.md
│
└─ Nothing else works? ─────────────────► sitemap-strategy.md (crawl mode)
```

## Workflow

1. [ ] Identify the documentation URL
2. [ ] **CHECKPOINT**: Check for AI-native signals (llms.txt, ai.txt)
3. [ ] Check if GitHub repo is available
4. [ ] Detect documentation framework from config files
5. [ ] Select appropriate strategy from cookbook
6. [ ] **CHECKPOINT**: Test fetch with curl before using browser
7. [ ] Configure registry entry with correct strategy
8. [ ] Validate fetch works correctly

## Strategy Priority Order

| Priority | Signal | Strategy | Cookbook |
|----------|--------|----------|----------|
| 1 | `/llms.txt` exists | `llmstxt` | `cookbook/llmstxt-strategy.md` |
| 2 | GitHub repo available | `github_raw` | `cookbook/github-strategy.md` |
| 3 | OpenAPI/AsyncAPI spec | `openapi` | `cookbook/openapi-strategy.md` |
| 4 | `/sitemap.xml` exists | `web_sitemap` | `cookbook/sitemap-strategy.md` |
| 5 | JS-rendered / curl fails | `browser_crawl` | `cookbook/browser-strategy.md` |
| 6 | Nothing else works | `web_crawl` | `cookbook/sitemap-strategy.md` |

## Cookbook

### llms.txt (AI-Native)
- IF: Site has `/llms.txt` or `/llms-full.txt`
- THEN: Read `cookbook/llmstxt-strategy.md`
- CHECK: `curl -sI {url}/llms.txt | head -1`

### GitHub Raw
- IF: GitHub repo is linked from docs site
- THEN: Read `cookbook/github-strategy.md`
- SUPPORTS: Fern, Docusaurus, MkDocs, Mintlify, Sphinx, Nextra, Starlight

### OpenAPI / AsyncAPI / GraphQL
- IF: Site has API spec (`/openapi.json`, `/asyncapi.yaml`, `/graphql`)
- THEN: Read `cookbook/openapi-strategy.md`

### Sitemap / Web Crawl
- IF: Site has `/sitemap.xml` or need to crawl
- THEN: Read `cookbook/sitemap-strategy.md`

### Browser Automation
- IF: Curl fails (JS-rendered, blocked, <1KB response)
- THEN: Read `cookbook/browser-strategy.md`
- ALSO: See `browser-discovery` skill for IDE browser tools

## Quick Detection Commands

```bash
# Check for llms.txt
curl -sI "https://docs.viperjuice.dev/llms.txt" | head -1

# Check for sitemap
curl -sI "https://docs.viperjuice.dev/sitemap.xml" | head -1

# Check for OpenAPI
curl -sI "https://api.viperjuice.dev/openapi.json" | head -1

# Test curl response size (detect JS-rendered)
curl -s "https://docs.viperjuice.dev" | wc -c
# If < 1000 bytes, likely JS-rendered -> use browser
```

## Framework Detection

| Framework | Config File | Typical Location |
|-----------|-------------|------------------|
| Fern | `docs.yml` | `fern/docs.yml` |
| Docusaurus | `docusaurus.config.js` | repo root |
| MkDocs | `mkdocs.yml` | repo root |
| Mintlify | `mint.json` | repo root |
| Sphinx | `conf.py` | `docs/conf.py` |
| Nextra | `_meta.json` | `pages/_meta.json` |
| Starlight | `astro.config.mjs` | repo root |
| Antora | `antora.yml` | repo root |
| GitBook | `SUMMARY.md` | repo root |

See `reference/framework-detection.md` for detailed patterns.

## Registry Configuration

See `reference/registry-examples.md` for configuration templates.

Basic structure:
```json
{
  "source-id": {
    "name": "Display Name",
    "strategy": "strategy_name",
    "paths": {
      "homepage": "https://..."
    }
  }
}
```

## Auto-Discovery from Manifests

When used with the `library-detection` skill, automatically suggest documentation sources based on detected dependencies.

### Workflow

1. Receive stack info from `library-detection` skill
2. Map each framework/library to known documentation sources
3. Check if source already exists in `ai-docs/libraries/_registry.json`
4. Suggest `/ai-dev-kit:docs-add` commands for missing sources

### Library-to-Docs Mapping

| Library | Documentation URL | Strategy |
|---------|-------------------|----------|
| react | https://react.dev | llmstxt |
| next | https://nextjs.org/docs | github_raw |
| vue | https://vuejs.org/guide | github_raw |
| nuxt | https://nuxt.com/docs | github_raw |
| svelte | https://svelte.dev/docs | github_raw |
| fastapi | https://fastapi.tiangolo.com | github_raw |
| django | https://docs.djangoproject.com | web_sitemap |
| flask | https://flask.palletsprojects.com | web_sitemap |
| express | https://expressjs.com | web_sitemap |
| prisma | https://www.prisma.io/docs | llmstxt |
| drizzle | https://orm.drizzle.team/docs | github_raw |
| vitest | https://vitest.dev | github_raw |
| playwright | https://playwright.dev/docs | github_raw |
| tailwindcss | https://tailwindcss.com/docs | llmstxt |
| trpc | https://trpc.io/docs | github_raw |
| zod | https://zod.dev | llmstxt |

### Auto-Discovery Command

When `/ai-dev-kit:quickstart-codebase` or manual request:

```bash
# Get detected frameworks
FRAMEWORKS=$(library-detection --output json | jq -r '.frameworks[].name')

# For each framework, check if docs exist
for fw in $FRAMEWORKS; do
  if ! grep -q "\"$fw\"" ai-docs/libraries/_registry.json; then
    echo "Missing docs for: $fw"
    echo "Suggest: /ai-dev-kit:docs-add <url> $fw"
  fi
done
```

### Output

Returns list of:
```json
{
  "already_tracked": ["react", "typescript"],
  "missing": [
    {"library": "fastapi", "url": "https://fastapi.tiangolo.com", "command": "/ai-dev-kit:docs-add https://fastapi.tiangolo.com fastapi"}
  ],
  "unknown": ["custom-internal-lib"]
}
```

## Output

After adding a source, verify:
1. Pages are discovered correctly
2. Content is fetched without errors
3. Registry entry is valid JSON

Related Skills

github-actions-docs

242
from aiskillstore/marketplace

Use when users ask how to write, explain, customize, migrate, secure, or troubleshoot GitHub Actions workflows, workflow syntax, triggers, matrices, runners, reusable workflows, artifacts, caching, secrets, OIDC, deployments, custom actions, or Actions Runner Controller, especially when they need official GitHub documentation, exact links, or docs-grounded YAML guidance.

docs-architect

242
from aiskillstore/marketplace

Creates comprehensive technical documentation from existing codebases. Analyzes architecture, design patterns, and implementation details to produce long-form technical manuals and ebooks. Use PROACTIVELY for system documentation, architecture guides, or technical deep-dives.

docstring

242
from aiskillstore/marketplace

Write docstrings for PyTorch functions and methods following PyTorch conventions. Use when writing or updating docstrings in PyTorch code.

docs-write

242
from aiskillstore/marketplace

Write documentation following Metabase's conversational, clear, and user-focused style. Use when creating or editing documentation files (markdown, MDX, etc.).

docs-review

242
from aiskillstore/marketplace

Review documentation changes for compliance with the Metabase writing style guide. Use when reviewing pull requests, files, or diffs containing documentation markdown files.

langgraph-docs

242
from aiskillstore/marketplace

Use this skill for requests related to LangGraph in order to fetch relevant documentation to provide accurate, up-to-date guidance.

gws-docs

242
from aiskillstore/marketplace

Read and write Google Docs.

gws-docs-write

242
from aiskillstore/marketplace

Google Docs: Append text to a document.

enact-docs-guide

242
from aiskillstore/marketplace

LLM guide for creating, publishing, and running Enact tools

mcp-resources-guide

242
from aiskillstore/marketplace

Implement MCP resources that provide data and files to AI assistants - URIs, caching, and streaming

pydanticai-docs

242
from aiskillstore/marketplace

Use this skill for requests related to Pydantic AI framework - building agents, tools, dependencies, structured outputs, and model integrations.

fractal-docs-generator

242
from aiskillstore/marketplace

目录级 CLAUDE.md 生成。触发:mkdir、create directory、目录结构变更。