deepagents-architectur…
Guides architectural decisions for Deep Agents applications. Use when deciding between Deep Agents vs alternatives, choosing…
Verify documentation coverage and generate missing docs interactively
Claude Code
$ npx -y skills add existential-birds/beagle --skill ensure-docs --agent claude-code
Codex
$ npx skills add existential-birds/beagle --skill ensure-docs -a codex -y
Cursor
$ npx skills add existential-birds/beagle --skill ensure-docs -a cursor -y
Gemini CLI
$ npx skills add existential-birds/beagle --skill ensure-docs -a gemini-cli -y
GitHub Copilot
$ npx skills add existential-birds/beagle --skill ensure-docs -a github-copilot -y
OpenCode
$ npx skills add existential-birds/beagle --skill ensure-docs -a opencode -y
Windsurf
$ npx skills add existential-birds/beagle --skill ensure-docs -a windsurf -y
name: ensure-docs description: Verify documentation coverage and generate missing docs interactively disable-model-invocation: true
Verify documentation coverage across a codebase, report gaps, and generate missing docs. **If the agent supports subagents**, dispatch one verifier per detected language in parallel; **otherwise** run the same per-language verification sequentially — the output is identical either way.
Coverage has two complementary lenses, and a healthy project needs both:
1. **Symbol coverage** — are the functions, classes, and modules documented to the language's standard (docstrings, JSDoc, GoDoc)? This is the per-language verification below. 2. **Diataxis type balance** — does the *doc set as a whole* serve all four user needs: a Tutorial to learn, How-To guides for tasks, Reference for lookups, and Explanation for understanding? A codebase can have 100% docstring coverage and still have no way for a newcomer to get started. See the [Diataxis balance check](#diataxis-type-balance-check) below.
Complete steps in order. Do not advance until each step’s **Pass** is satisfied.
1. **Language detection** — Follow Phase 1 (language detection) in [`references/workflow.md`](references/workflow.md).
2. **Load standards** — Read the sections for your detected languages (language standards, verifier prompts, consolidation format) in the same reference file.
3. **Verification** — Verify each qualifying language using the verifier prompts and JSON output shape in the reference (Phase 2). If the agent supports subagents, run one verifier per language in parallel; otherwise run them sequentially.
4. **Diataxis balance check** — Run the [Diataxis type balance check](#diataxis-type-balance-check) against the project's existing docs (e.g. a `docs/` tree, README, or wiki).
5. **Consolidated report** — Merge results per Phase 3 (summary table, severity grouping, detailed findings if requested). Include the Diataxis balance alongside symbol coverage.
6. **Generation** — Only if `--report-only` is not set: offer choices per Phase 4; apply doc edits only after an explicit user choice to generate. For a missing Diataxis type, route generation through [draft-docs](../draft-docs/SKILL.md) for the relevant type rather than generating inline.
7. **Post-edit verification** — After any generation, run or offer the linter commands in Phase 5 of the reference for languages you changed, when those tools exist in the repo.
Survey the project's prose documentation (a `docs/` tree, README, wiki, or doc site) and classify what exists into the four [Diataxis](https://diataxis.fr/) types. Use the compass to classify — *action or cognition? acquisition or application?* — per [docs-style/references/diataxis-compass.md](../docs-style/references/diataxis-compass.md).
Report the balance as a table:
| Type | Present? | Notes | |------|----------|-------| | **Tutorial** (learning) | yes / no / thin | e.g. "No getting-started / first-project guide" | | **How-To** (tasks) | yes / no / thin | e.g. "Several task guides under `docs/how-to/`" | | **Reference** (lookup) | yes / no / thin | e.g. "API reference generated, but no CLI reference" | | **Explanation** (understanding) | yes / no / thin | e.g. "No architecture / design-rationale docs" |
Flag, in priority order:
1. **A missing type** — the doc set serves none of that user need. The most common and most damaging gap is a missing **Tutorial**: a project can have exhaustive reference and still leave a newcomer with no way in. 2. **A thin type** — present but doesn't cover the project's major features or surfaces. 3. **Mixed documents** — a single page trying to be two types at once (e.g. reference tables embedded in a how-to). Recommend splitting via [improve-doc](../improve-doc/SKILL.md).
Do **not** propose generating empty skeletons for missing types. Following the Diataxis "work by improvement" principle, recommend the single highest-value document to add or fix next, and offer to draft it via [draft-docs](../draft-docs/SKILL.md).
Image: NASA, Public Domain. Source Beagle is an Agent Skills marketplace: framework-aware code review, documentation, testing, architectural analysis, and git workflows for any compatible coding agent.
Guides architectural decisions for Deep Agents applications. Use when deciding between Deep Agents vs alternatives, choosing…
Reviews Deep Agents code for bugs, anti-patterns, and improvements. Use when reviewing code that uses create_deep_agent,…
Implements agents using Deep Agents. Use when building agents with create_deep_agent, configuring backends, defining subagents,…
Guides architectural decisions for LangGraph applications. Use when deciding between LangGraph vs alternatives, choosing state…
Reviews LangGraph code for bugs, anti-patterns, and improvements. Use when reviewing code that uses StateGraph, nodes, edges,…
Implements stateful agent graphs using LangGraph. Use when building graphs, adding nodes/edges, defining state schemas,…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.