Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add OutlineDriven/outline-driven-development --skill docs-updategit clone --depth 1 https://github.com/OutlineDriven/outline-driven-developmentWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/outlinedriven/outline-driven-development/docs-update)<a href="https://agentmods.dev/skills/outlinedriven/outline-driven-development/docs-update"><img src="https://agentmods.dev/badge/skills/outlinedriven/outline-driven-development/docs-update/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/outlinedriven/outline-driven-development/docs-update"><img src="https://agentmods.dev/badge/skills/outlinedriven/outline-driven-development/docs-update.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00042 | $0.01905 |
| Opus 5 | $0.00021 | $0.00953 |
| Sonnet 5 | $0.00008 | $0.00381 |
| Haiku 4.5 | $0.00004 | $0.00191 |
Grade A, and why
docs-update scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 63 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Docs update
Contract
| Field | Bound contract |
|---|---|
| Trigger | The user asks to synchronize documentation with code changes and selects a local commit or a reviewable PR. |
| Authority | Human-gated: the requested delivery selects the mode and never approves base-branch commits, version changes, or unresolved narrative edits; the reviewable-PR mode pushes and opens a PR only after explicit approval of its preview, and every other write is reversible local, with version control as the rollback. |
| Side effect | Updates documentation from one bounded code-change set, then creates either local commit(s) or reviewable PR(s). |
| Done | Every selected source commit and changed public surface is accounted for, documentation is internally consistent and redacted, and the requested delivery exists with links to its source commits. |
Inputs
- Delivery:
local commitorreviewable PR. If the request does not select one, ask before mutation. - Source change set: a user-supplied commit or time range; otherwise commits ahead of the base branch when present, falling back to the last 24 hours.
- Repositories: the source repository and, when documentation lives separately, the documentation repository and its remote target.
- Documentation: discovered project documentation, including README, ARCHITECTURE, CONTRIBUTING, CLAUDE.md, CHANGELOG, VERSION, and TODOS files when present.
Procedure
- Bind delivery and repositories. Resolve the requested delivery, source repository, documentation repository, base branch, current branch, and source change set. In local mode, abort without mutation when the current branch is the base branch; local documentation commits always require a feature branch, even when repository policy would permit a base-branch commit. In PR mode, identify the documentation repository's remote, base, and proposed head branch without creating or pushing it. Done when: delivery, repositories, branches, and commit range are explicit.
- Filter commits. Inspect every commit and its diff in the source change set. Keep user-facing features, API changes, changed behavior, removals, configuration, commands, flags, endpoints, environment variables, and feature flags. Exclude refactors, test-only changes, typo-only fixes, and performance or infrastructure changes with no user impact. Classify doubtful significance conservatively and record why it was excluded. Done when: every source commit is kept or excluded with a reason.
- Detect platform and style. Discover all relevant documentation while excluding dependency, VCS, and build directories. Detect Mintlify, Docusaurus, GitBook, Fumadocs, or generic Markdown from configuration and structure. Read the project style guide and representative files to capture voice, terminology, heading structure, frontmatter, components, and code-example conventions. Use standard Markdown only when no platform signal exists. Done when: the documentation set, platform, and local style are known.
- Build the coverage map. Extract each changed public surface from the kept diffs. Map its current coverage across Diataxis reference, how-to, tutorial, and explanation; mark zero-coverage and reference-only gaps. Inspect ASCII, Mermaid, and other maintained diagrams for renamed, moved, split, or removed entities and edges. Map each gap or drift item to a specific documentation change. Done when: every public-surface item has a coverage result and every affected diagram has a drift result.
- Audit and classify. Check every discovered document against the kept diffs and its purpose. Include setup, examples, troubleshooting, commands, project structure, workflows, component descriptions, cross-references, and navigation. Classify each needed edit:
- Auto-update: a bounded factual correction directly proved by the diff, such as a path, count, table item, command, flag, structure tree, or stale link.
- Ask: positioning or narrative, design rationale, security model, a section removal, a new section, a rewrite over roughly ten lines in one section, or any ambiguous claim. Present each ask with one recommendation and a skip option. Apply only the approved choice; leave skipped text unchanged. Done when: every needed edit is auto-update, approved, or explicitly skipped.
- Apply synchronized edits. Match the detected platform and style, preserve accurate content, and update diagrams with their surrounding claims. Keep terminology, examples, navigation, and repeated facts consistent across documents. Report a one-line factual summary for each changed file. Done when: all approved edits are applied and no changed claim conflicts with another document.
- Protect CHANGELOG. If the selected diff does not require a CHANGELOG edit, leave it unchanged. Otherwise read the whole file before editing. Score affected entries from 0 to 3: changed fact, user impact, and usage command/flag/link. Reword entries below 2 toward user impact, and separate contributor-only details when the existing structure permits it. Preserve every existing entry and its order; use narrow exact-match edits, never regenerate or overwrite the file. Ask when an entry appears incorrect or incomplete. Done when: required wording is clear without deleting, reordering, replacing, or regenerating entries.
- Reconcile the document set. Verify feature lists, commands, components, project structure, versions, and cross-references agree across documents. Confirm each document is reachable from README or CLAUDE.md and report unreachable files. Auto-fix proved factual inconsistencies; route narrative contradictions through the ask classification. Done when: cross-document facts agree and discoverability gaps are reported.
- Reconcile deferred work and versioning. If a TODOS file exists, move only clearly completed items to its completed section with version and date. Ask whether to update, complete, or leave items whose referenced files changed substantially. Surface meaningful TODO, FIXME, HACK, and XXX comments introduced by the source changes and ask whether to record them. If VERSION exists, inspect its branch diff and its agreement with CHANGELOG. Ask before every bump, offering patch, minor, and skip as applicable; recommend skip for documentation-only changes. Done when: deferred work is reconciled or skipped and no version changed without explicit approval.
- Scan before delivery. Scan every modified documentation file for API keys, tokens, passwords, private URLs, internal hostnames, and PII, including email addresses outside legitimate attribution context. Remove or mask findings without retaining secret-shaped placeholders. If redaction would distort the documentation, leave that file uncommitted and ask. Done when: every file selected for delivery passes the secret and PII scan.
- Prepare commits. If no documentation changed, report that the documentation is current and stop. Otherwise stage modified documentation files by explicit path and create descriptive documentation commit(s). In a multi-repository setup, commit only files belonging to each repository and retain links from every documentation update to the triggering source commit URL or repository-qualified commit. Done when: each repository has a scoped commit and every update is traceable to source.
- Deliver at the only fork.
- Local commit: leave the scoped commit(s) in their repositories. Do not push, publish, or create or update a PR/MR.
- Reviewable PR: preview the documentation repository, remote, base branch, head branch, files, commit summary, source-commit links, and the consequence that the branch will be pushed and a PR opened. After explicit approval of that preview, create or use the proposed head branch, push it, and open one reviewable PR per documentation repository. Request human review; do not merge. Done when: the selected local commit(s) exist without remote effects, or the approved PR target(s) are open and link every update to its source commits.
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago Changed · -42 tokens per session ed1189177b82
- 5d ago First seen · 63 lines · 84 tokens per session scan A aaa59470869d
docs-update is a skill published in the GitHub repository OutlineDriven/outline-driven-development (52 stars, last pushed 3d ago), licensed Apache-2.0. It adds 42 tokens to every session and 1,905 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
commit-push-pr
Use when asked to commit, push a feature branch, and open or update a pull request with gh in one pass. Not for a push with no PR: use commit-push. Not for a PR body alone: use create-pull-request.
commit
Use when asked to commit changes, create a typed branch, format history for a changelog, or rewrite messages of HEAD or an unpushed range. Not for pushing or a PR: use commit-push or commit-push-pr.
git-branchless
Use when asked for multi-commit stack edits, rebases, fixups, or stacked-PR publishing with branchless git idioms. Not for plain-git workflows in repos without branchless.
publish-branch
Use when asked to publish the checked-out branch: commit and push it on whatever branch it is, the default branch included. Not for creating branches, PRs, force pushes, or pushing any other branch; when the request excludes the default branch, use commit-push-current.
commit-push
Use when asked to commit and push to a feature branch off the default branch, with no pull request. Not for a PR: use commit-push-pr. Not for the checked-out branch: use commit-push-current.
commit-push-current
Use when a human explicitly asks to commit and push to the checked-out branch, with no branch creation and no pull request. Not for the default branch by name: use commit-push-main.