Best for
- Use when updating docs, adding new docs, changing doc pipeline, or troubleshooting doc issues.
nexus-substrate/nexus-agents/skills/documentation-management/SKILL.md
Operating manual for documentation work in nexus-agents. Use when updating docs, adding new docs, changing doc pipeline, or troubleshooting doc issues. Triggers on "update docs", "add documentation", "doc pipeline".
Decision brief
/ markers (2269, 2026-04-27). Adds a second description map (READMETOOLDESCRIPTIONS) for short, scannable entries (the README audience differs from CLAUDE.md), with fallback + warning when a new tool is missing a short variant. Soft-skips when README has no markers so the script…
Compatibility matrix
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Declared | Source record | Install path and trigger |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/nexus-substrate/nexus-agents --skill "skills/documentation-management"Inspect the Agent Skill "documentation-management" from https://github.com/nexus-substrate/nexus-agents/blob/d7d6eeb0b286dd38ab8ede233a47d92326399097/skills/documentation-management/SKILL.md at commit d7d6eeb0b286dd38ab8ede233a47d92326399097. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
Store the last-reviewed commit SHA in .doc-review-cursor (gitignored — it's local audit state, not project state). On each audit run:
[ ] Every public-API change has a documentation update in the same PR
Review the “Fast Path: Common Tasks” section in the pinned source before continuing.
Review the “Update Documentation Content” section in the pinned source before continuing.
edit docs/architecture/MEMORYSYSTEM.md or relevant file
Permission review
The documentation asks the agent to run terminal commands or scripts.
npx tsx scripts/check-docs-indexed.tsThe documentation asks the agent to create, modify, or delete local files.
Create file in appropriate `docs/` directoryThe documentation asks the agent to run terminal commands or scripts.
npx tsx scripts/check-docs-indexed.tsThe documentation asks the agent to create, modify, or delete local files.
For our auto-generated tables (CLAUDE.md MCP tools, `capabilities.md`, `docs/interfaces/agent.md`), drift is a generation-script bug, not a doc edit — file an issue against the script instead of editing the rendered output.Evidence record
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 94/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 18 | Source | Repository attention, not individual Skill quality |
| Compatibility | 1 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
Full specification: docops-spec.md
# 1. Edit canonical source
edit docs/architecture/MEMORY_SYSTEM.md # or relevant file
# 2. Verify docs are indexed
npx tsx scripts/check-docs-indexed.ts
docs/ directorytitle, description, tier, keywords, related_files)docs/README.mddocs/ops/docops-spec.md.claude/skills/documentation-management.md)npx tsx scripts/check-docs-indexed.ts
npx tsx scripts/generate-repo-index.ts --check
npx tsx scripts/inject-governance.ts check
| Source | Purpose |
|---|---|
docs/README.md | Human-readable index (SINGLE SOURCE OF TRUTH) |
docs/INDEX.yaml | Machine-parseable index |
docs/**/*.md | Canonical documentation |
Root *.md | Project entry points |
| Output | Generated By | From |
|---|---|---|
docs/interfaces/agent.md | generate-docs-content.ts | core/types/agent.ts |
docs/design/components.md | generate-docs-content.ts | src/ module scan |
docs/ops/docs-inventory.md | generate-docs-content.ts | ADR + MCP tool scan |
docs/reference/capabilities.md | generate-repo-index.ts | Source code |
docs/reference/tools/*.md | generate-tool-reference.ts | TOOL_MANIFEST + *InputSchema |
| CLAUDE.md tool index | inject-governance.ts | MCP tool files |
Auto-generates documentation sections that are derivable from source code:
the AgentRole interface, a module inventory, and the ADR / MCP tool counts.
Prevents drift by reading directly from the source of truth.
npx tsx scripts/generate-docs-content.ts # Generate all
npx tsx scripts/generate-docs-content.ts --check # CI validation
Generates capability index from source code. MCP tools are discovered by parsing
the canonical tools: [...] return array in mcp/tools/index.ts.
npx tsx scripts/generate-repo-index.ts # Generate index
npx tsx scripts/generate-repo-index.ts --check # CI validation
Injects MCP tool table into CLAUDE.md. Tool descriptions are defined in the
TOOL_DESCRIPTIONS map — add an entry there when registering a new MCP tool.
npx tsx scripts/inject-governance.ts inject # Update CLAUDE.md
npx tsx scripts/inject-governance.ts check # CI validation
The pipeline runs a family of jobs covering: TypeDoc freshness, capabilities.md regeneration, link validation, docs coverage, secrets scanning, DocOps skill sync, canonical-index enforcement, markdown lint, spell check, skills/index.yaml freshness, agents/index.yaml + gap-coverage check, and governance drift. Blocking-vs-warning status is declared per job in the workflow file.
All documentation MUST be indexed in docs/README.md.
docs/README.md is the ONLY permitted documentation index.
CI fails if generated files drift from canonical sources.
Changes to pipeline files require updating this skill and docs/ops/docops-spec.md.
Pipeline files:
scripts/generate-docs-content.tsscripts/generate-repo-index.tsscripts/inject-governance.ts.github/workflows/docs-check.ymlnpx tsx scripts/generate-docs-content.ts
git add docs/interfaces/agent.md docs/design/components.md docs/ops/docs-inventory.md
git commit -m "docs: regenerate source-derived docs"
npx lychee . --config lychee.toml to identify broken links# Run full validation suite locally
pnpm lint
pnpm typecheck
npx tsx scripts/generate-docs-content.ts --check
npx tsx scripts/generate-repo-index.ts --check
npx tsx scripts/inject-governance.ts check
Before committing documentation changes:
docs/README.mdnpx tsx scripts/generate-docs-content.ts --check passes (if types/module structure changed)npx tsx scripts/generate-repo-index.ts --check passes (if MCP tools added/renamed)npx lychee . --config lychee.tomlAdapted from paperclipai/paperclip doc-maintenance skill. Triggers: weekly cadence, post-release, after a major merge, or on explicit request ("audit docs", "doc drift").
User-facing docs that get stale fastest as the codebase moves:
README.md — features table, quickstart, prerequisitesdocs/README.md — canonical doc indexdocs/getting-started/INSTALLATION.md — install commands, Node/pnpm versionsdocs/getting-started/CONFIGURATION.md — env var table, config schemaCLAUDE.md — Canonical Paths table, MCP Tools table (auto-generated, but check the non-auto sections)Store the last-reviewed commit SHA in .doc-review-cursor (gitignored — it's local audit state, not project state). On each audit run:
LAST_SHA=$(cat .doc-review-cursor 2>/dev/null || echo "HEAD~200")
git log "$LAST_SHA"..HEAD --oneline --no-merges > /tmp/audit-window.log
After committing the audit fixes:
git rev-parse HEAD > .doc-review-cursor
Without the cursor, every audit re-reads the whole history → audits get skipped. With it, audits stay incremental and cheap.
From the audit window, only these commit prefixes warrant a doc check:
| Prefix | Action |
|---|---|
feat: / feat(...): | Check feature tables, README highlights, capability docs |
fix: containing breaking / API-removal | Check API reference, migration notes |
New top-level src/ directory | Check architecture overview, canonical paths |
chore(deps): major bumps | Check prerequisites + compat tables |
Ignore: refactor, test, chore(ci), docs, style — they don't shift user-facing surface.
Run the audit through this lens:
| Drift class | Signal |
|---|---|
| False negative | Shipped capability missing from feature/MCP tool/expert tables. Resolved design questions still marked TBD. Removed adapters/skills still listed. |
| False positive | "Coming soon" / "planned" features that have shipped. Cancelled items still on roadmap. Capability claims that contradict current implementation. |
| Quickstart breakage | npx/pnpm commands that don't work. Prerequisites pinning unsupported versions. Clone URL drift. Required env vars unmentioned. |
| Feature-table drift | ## MCP Tools Reference count mismatch. Adapter "Works with" table missing recently-added CLI. Skill index missing a new skill. |
For our auto-generated tables (CLAUDE.md MCP tools, capabilities.md, docs/interfaces/agent.md), drift is a generation-script bug, not a doc edit — file an issue against the script instead of editing the rendered output.
docs/audit-$(date +%Y%m%d)scripts/inject-governance.ts, scripts/generate-docs-content.ts, scripts/generate-repo-index.ts, etc.) — see Pipeline section aboveADRs capture the why behind significant technical decisions. Code shows what was built; ADRs explain why this way and what alternatives were rejected. They're the highest-leverage documentation in the repo for onboarding (humans and agents) and for evaluating future changes.
ADRs live in docs/adr/ with sequential numbering: 0001-foo.md, 0002-bar.md, …
# ADR-NNNN: <decision in present tense>
## Status
Proposed | Accepted | Superseded by ADR-MMMM | Deprecated
## Date
YYYY-MM-DD
## Context
What problem are we solving? What constraints (technical, organizational, time-bound) apply?
Cite the issue, vote, or incident that prompted the decision.
## Decision
The chosen approach, in 1-3 sentences.
## Alternatives Considered
Each as its own subsection. Pros, cons, and **why rejected**. Don't skip — the rejected
alternatives are how future readers understand the trade-off space.
## Consequences
Positive AND negative outcomes. What new constraints does this create?
What follow-up work falls out of this decision?
PROPOSED → ACCEPTED → (SUPERSEDED-BY-NNNN | DEPRECATED)
Status: line to Superseded by ADR-NNNN.CLAUDE.md, .rules/) — reference, don't duplicate| Excuse | Counter |
|---|---|
| "The code is self-documenting" | Code says how, not why. The why-this-not-that lives nowhere if not in an ADR or doc comment. |
| "I'll document it later" | Later never comes. The context decays within days; what felt obvious now will be a mystery to next-quarter-you. Document at decision time. |
| "We'll update the docs in the next release" | Drift compounds. By the next release, the doc says one thing, the code does another, and the audit gate fires (see #2225 audit). Update docs in the same PR as the code change. |
| "Comments lie, only code is truth" | Lies-in-comments is a culture problem, not a comments problem. Code can also lie (subtly broken implementations). Both need review. |
| "Nobody reads the docs anyway" | Future-you reads them. New contributors (human or agent) read them. The skill-tree of the project depends on them. |
| "It's just an internal API" | Internal APIs accumulate Hyrum's Law just like public ones (see api-and-interface-design). Internal docs prevent internal coupling. |
npx tsx scripts/check-docs-indexed.ts passesnpx markdownlint 'docs/**/*.md' '*.md'inject-governance.ts check fails)@deprecated references in docs/ after a removalFrequently asked questions
/ markers (2269, 2026-04-27). Adds a second description map (READMETOOLDESCRIPTIONS) for short, scannable entries (the README audience differs from CLAUDE.md), with fallback + warning when a new tool is missing a short variant. Soft-skips when README has no markers so the script…
The source record exposes this install command: npx skills add https://github.com/nexus-substrate/nexus-agents --skill "skills/documentation-management". Inspect the command and pinned source before running it.
The pinned source record declares support for: cursor.
Static rules flagged exec-script, write-files in the source; the page lists the matching lines and excerpts.
Alternatives
SerendipityOneInc/ZooData-Skills
API endpoint reference for the ZooData data platform: the 12 commerce endpoints plus 10 keyword-intelligence endpoints (categories, markets, products, competitors, realtime ASIN, AI review analysis, raw reviews, price band, brand, history, and the keyword detail/trend/extends/search/ market-profile/product-traffic/competitor-keywords/traffic-profile/ traffic-timeline family) — their inputs/outputs, parameter quirks, Quick Start (auth, base URL), how credits are tracked (meta.creditsConsumed), an
kryptobaseddev/cleo
Multi-source research and investigation combining web search, documentation lookup via Context7, and codebase analysis. Synthesizes findings into actionable recommendations with proper citation and task traceability. Use when conducting research, investigating best practices, gathering technical information, or analyzing existing implementations. Triggers on research tasks, investigation needs, or information discovery requests.
aomi-labs/skills
Scaffold new Aomi apps and plugins from API docs, OpenAPI/Swagger specs, or SDK references. aomi-build generates production-ready Rust SDK crates (lib.rs, client.rs, tool.rs) with tool schemas, preambles, host-interop flows, and validation — turning a vendor's API surface into AI-agent-callable tools. It covers the current `aomi-build` OpenAPI pipeline (`gen-specs` → `gen-client` → `gen-tool` → curate → compile/test) as well as greenfield apps. Use when the user wants to scaffold a new Aomi app
aomi-labs/skills
Step-by-step guide for creating enriched CryptoSkills agent skills. Use when building new protocol skills, contributing to the directory, or understanding the enriched skill pattern. Covers SKILL.md structure, YAML frontmatter, examples, docs, resources, templates, marketplace registration, and validation. Triggers: "create a skill", "add a protocol", "contribute a skill", "new skill template".