agent-config
Create, update, or audit AGENTS.md (default) or CLAUDE.md agent instructions: set up, prune, add a rule, or merge CLAUDE.md or…
Generate or update docs to match the code, citing each claim to path:line and asking on ambiguity; runbook docs also get a check-only validation script. Don't use for API-reference autogen (JSDoc/Sphinx), landing pages, or CLAUDE.md/AGENTS.md.
$ npx -y skills add luongnv89/skills --skill doc-manager --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/doc-managerContext preview
The summary Claude sees to decide when to auto-load this skill.
Generate or update docs to match the code, citing each claim to path:line and asking on ambiguity; runbook docs also get a check-only validation script. Don't use for API-reference autogen (JSDoc/Sphinx), landing pages, or CLAUDE.md/AGENTS.md.
name: doc-manager description: "Generate or update docs to match the code, citing each claim to path:line and asking on ambiguity; runbook docs also get a check-only validation script. Don't use for API-reference autogen (JSDoc/Sphinx), landing pages, or CLAUDE.md/AGENTS.md." license: MIT effort: medium metadata: version: 2.1.1 author: "Luong NGUYEN <luongnv89@gmail.com>"
Keep a project's Markdown documentation **true to the code**. Every run ends with each doc `updated`, `verified-current`, or `flagged` — and every non-obvious claim traced to a source. Scope is Markdown only (`README.md`, `docs/*.md`, per-component READMEs); docstrings and comments are read as source-of-truth but not rewritten.
**Prime directive — never invent.** If the code does not show it and the user has not stated it, do not write it. For code-provable facts, reconcile the docs to the code and cite `path:line`; ask the user only when code cannot settle an intent or fact, then record the resolution in `docs/DECISIONS.md`. Preserve user-authored prose unless the user approves its deletion. A guess is a defect here, not a convenience.
Before creating/updating/deleting any file in the repo, sync the current branch:
branch="$(git rev-parse --abbrev-ref HEAD)" git fetch origin && git pull --rebase origin "$branch"
If the tree is dirty: `git stash push -u -m "pre-sync"` → sync → `git stash pop`. If `origin` is missing, or rebase/stash conflicts occur, **stop and ask** before continuing.
Validate before starting; if any fails, stop and surface it:
Work one doc at a time. For each doc in the inventory, pick the path:
| Situation | Path | |---|---| | A needed doc does not exist | **A. Generate** | | A doc exists but may not match the code | **B. Reconcile** | | A doc **or a section of one** covers deploy / release / setup / operational process | also run **C. Runbook add-on** |
A single run usually mixes A and B across the inventory. C is additive — it layers onto whichever of A/B produced runbook content. Classify **at the section level**: a doc that mixes a runbook section with reference content gets C applied to the runbook section only, not the whole file.
1. If already on a task feature branch, skip. 2. Detect convention: `git branch -r | head -20` (`feat/`, `feature/`, …). 3. Create `feat/doc-manager` (or the repo's convention). If that branch already exists, ask the user whether to reuse it or create `feat/doc-manager-<YYYYMMDD>`.
Read the codebase to establish ground truth, then build the doc inventory.
Present the inventory and ask the user to confirm the scope. If the user narrows it, use the narrowed scope. If the user declines or does not answer, stop before editing and report `BLOCKED — scope not confirmed`. **Do not silently expand** beyond confirmed scope.
For each doc, run its path. Cite as you write — do not defer citation to a review pass.
**A. Generate** — create from code analysis. Include only what the code (or a user answer) supports. Structure by relevance to project type; skip categories that don't apply.
**B. Reconcile** — diff doc against code:
**Citation rule (checkable).** Every non-obvious factual claim carries an inline source. Forms, in order of preference:
> The server listens on port 8080 (`src/server.ts:12`).
**Cite unless trivially obvious.** Default to citing; the burden is on treating a claim as obvious, not on citing it. Section intros and definitions of common terms are obvious. Anything a reader could get wrong — ports, commands, paths, env vars, versions, endpoints, defaults, behavior — is not. This coverage check is a **judgment pass** (grep can't verify it), so err toward over-citing: an uncited factual claim is the exception you must be able to justify.
**Decisions log.** Every ambiguity you ask about gets appended to `docs/DECISIONS.md`:
## YYYY-MM-DD
- Q: {the ambiguity}
- A ({who}): {resolution}
- Source: `path:line` (if code-derived)Use the
One command drops a tested, versioned skill into your agent. No more ad-hoc prompts. The same rigorous steps run every time. Skills are independent files.
Create, update, or audit AGENTS.md (default) or CLAUDE.md agent instructions: set up, prune, add a rule, or merge CLAUDE.md or…
Find open AI engineering jobs that fit a candidate, verify location and apply links, and assess each employer's product. Use for…
Generate App Store screenshots and header/search images for iPhone, iPad and Mac from a codebase or landing page, or re-render a…
Audit iOS/macOS apps against App Store Review Guidelines before submission, with evidence-backed verdicts and fixes. Don't use…
Optimize App Store and Google Play listings via a 7-phase, plan-approval-gated ASO workflow (keyword strategy, metadata,…
Generate a commit message, stage all changes, and push to remote after scanning for secrets, large files, and protected-branch…