doc-indexer
Scans markdown files to index project documentation via YAML frontmatter metadata.
Install
mkdir -p .claude/skills/doc-indexer && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/12087" && unzip -o skill.zip -d .claude/skills/doc-indexer && rm skill.zipInstalls to .claude/skills/doc-indexer
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Use this skill at the beginning of any session or when needing to understand available project documentation. Provides just-in-time context by scanning YAML frontmatter from all markdown files in the docs/ directory without loading full content.Key capabilities
- →Scan markdown files in the `docs/` directory.
- →Extract YAML frontmatter metadata from each markdown file.
- →Return a structured map of available documentation.
- →Flag non-compliant files missing YAML frontmatter.
- →Identify relevant documentation files based on the generated map.
How it works
The skill executes a script to scan markdown files in the `docs/` directory, extracts their YAML frontmatter, and presents this metadata as a structured map.
Inputs & outputs
When to use doc-indexer
- →Identify relevant specs for a new issue
- →Plan a sprint by reviewing existing retrospectives
- →Overview project documentation at the start of a session
About this skill
Document Indexer Skill
Purpose
Provide just-in-time context about available project documentation without loading full file content into the context window. The doc-indexer scans all markdown files in the docs/ directory, extracts their YAML frontmatter metadata, and returns a structured map of available documentation. This enables efficient discovery of specs, plans, retrospectives, and other documentation while minimizing token usage.
When to Use
Use this skill in the following situations:
- At the beginning of any work session to understand the current state of documentation
- When starting work on a new issue to identify relevant specs and context
- Before proposing changes to understand existing specifications
- When planning a sprint to review available approved specs
- Anytime you need an overview of project documentation without reading full files
Prerequisites
- The project must have a
docs/directory - Documentation files should follow the convention of including YAML frontmatter
- The
jqtool is NOT required (script works without it)
Workflow
Step 1: Run the Documentation Scanner
Execute the helper script to scan all markdown files in the docs/ directory:
bash scripts/scan-docs.sh
This will output a human-readable summary showing each document's frontmatter metadata.
For machine-readable JSON output (useful for programmatic processing):
bash scripts/scan-docs.sh -j
Step 2: Review the Documentation Map
The scanner returns information about all markdown files found in docs/, including:
- File path: Location of the documentation file
- Frontmatter metadata: Key-value pairs from YAML frontmatter (title, status, type, etc.)
- Compliance warnings: Files missing YAML frontmatter are flagged
Example human-readable output:
---
file: docs/specs/001-synthesis-flow.md
title: SynthesisFlow Methodology
status: approved
type: spec
---
file: docs/changes/my-feature/proposal.md
title: My Feature Proposal
status: in-review
type: proposal
[WARNING] Non-compliant file (no frontmatter): docs/README.md
Example JSON output:
[
{
"file": "docs/specs/001-synthesis-flow.md",
"compliant": true,
"frontmatter": {
"title": "SynthesisFlow Methodology",
"status": "approved",
"type": "spec"
}
},
{
"file": "docs/README.md",
"compliant": false,
"frontmatter": null
}
]
Step 3: Use the Map to Identify Relevant Documentation
Based on the documentation map, identify which specific files to read for your current task:
- For implementation work: Look for approved specs related to your issue
- For spec proposals: Review existing specs to understand the current state
- For sprint planning: Identify approved specs ready for implementation
- For learning context: Find retrospectives and design docs
Step 4: Read Specific Documentation Files
Once you've identified relevant files from the map, use the Read tool to load their full content:
# Example: Read a specific spec identified from the map
Read docs/specs/001-synthesis-flow.md
This two-step approach (scan first, then read selectively) minimizes token usage while ensuring you have access to all necessary context.
Error Handling
No docs/ Directory
Symptom: Script reports "No such file or directory"
Solution:
- Verify you're in the project root directory
- Check if the project has been initialized with
project-initskill - Create
docs/directory structure if needed
Files Missing Frontmatter
Symptom: Script outputs "[WARNING] Non-compliant file (no frontmatter): ..."
Impact: These files won't have structured metadata in the output
Solution:
- Add YAML frontmatter to documentation files for better discoverability
- Frontmatter should be at the top of the file between
---markers - Example format:
--- title: My Document status: draft type: design --- # Document content starts here
Script Permission Errors
Symptom: "Permission denied" when running the script
Solution:
chmod +x scripts/scan-docs.sh
Output Interpretation Guide
Frontmatter Fields
Common frontmatter fields you'll encounter:
- title: Human-readable document title
- status: Document state (draft, in-review, approved, archived)
- type: Document category (spec, proposal, design, retrospective, plan)
- epic: Associated epic issue number
- sprint: Sprint identifier
- author: Document author
- created: Creation date
- updated: Last update date
Using JSON Output Programmatically
The JSON output mode is particularly useful when:
- Filtering documents by specific criteria (e.g., only approved specs)
- Counting documents by type or status
- Building automated workflows
- Integrating with other tools
Example using jq to filter approved specs:
bash scripts/scan-docs.sh -j | jq '.[] | select(.frontmatter.status == "approved")'
Notes
- The scanner is non-invasive and read-only - it never modifies files
- Large projects with many docs benefit most from this just-in-time approach
- The script scans recursively through all subdirectories in
docs/ - Empty frontmatter sections are treated as non-compliant
- The scan is fast and can be run frequently without performance concerns
- Consider running this at the start of each work session to stay current with documentation changes
When not to use it
- →When the project does not have a `docs/` directory.
- →When documentation files do not include YAML frontmatter.
- →When full file content needs to be loaded into the context window immediately.
Limitations
- →Requires a `docs/` directory to exist.
- →Documentation files should follow the convention of including YAML frontmatter.
- →Does not load full file content into the context window.
How it compares
This skill provides a quick overview of documentation metadata without loading full file content, minimizing token usage compared to reading each document individually.
Compared to similar skills
doc-indexer side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| doc-indexer (this skill) | 0 | 8mo | Review | Beginner |
| notion-research-documentation | 5 | 6mo | No flags | Intermediate |
| search-company-knowledge | 2 | 5mo | No flags | Beginner |
| consolidate-knowledge-base | 0 | 1mo | Review | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by Reading-Advantage-Thailand
View all by Reading-Advantage-Thailand →You might also like
notion-research-documentation
openai
Research across Notion and synthesize into structured documentation; use when gathering info from multiple Notion sources to produce briefs, comparisons, or reports with citations.
search-company-knowledge
atlassian
Search across company knowledge bases (Confluence, Jira, internal docs) to find and explain internal concepts, processes, and technical details. When Claude needs to: (1) Find or search for information about systems, terminology, processes, deployment, authentication, infrastructure, architecture, or technical concepts, (2) Search internal documentation, knowledge base, company docs, or our docs, (3) Explain what something is, how it works, or look up information, or (4) Synthesize information from multiple sources. Searches in parallel and provides cited answers.
consolidate-knowledge-base
gsemet
Interactively review the OKF knowledge base to detect contradictions between Findings, mark contradicted/superseded Findings, propose Experiments to resolve open questions, and propose promotions of converged Findings into stable Concept/Structure/Principle documents. Every mutation is confirmed by
mq
muqsitnawaz
Query markdown, HTML, and PDF files with mq CLI. Triggers on: exploring doc structure, extracting sections from large .md/.html/.pdf files, 'use mq', or when reading full documents wastes tokens.
elementos-pre-textuais
aldemararaujo
Gerar os elementos pré-textuais de um projeto de pesquisa científica em português brasileiro: capa (folha de rosto), página de Informações Gerais (formato CEP/Plataforma Brasil), sumário e lista de abreviaturas/siglas/símbolos/sinais. Reúne dados já elaborados nos capítulos anteriores do projeto, mi
document-pro
bighardperson
文档处理技能 - 让 AI 能够读取、解析、提取 PDF、DOCX、PPT 等文档的关键信息。当用户要求分析文档、提取内容、总结报告时触发此技能。