agentleFS
strands-agentsstrands-agents/box/.agents/skills/docs-sync/SKILL.md

docs-sync

Skill490 starsChanged 6 days agoApache-2.0View on GitHub

Find each Box doc that a change makes wrong or incomplete, and report the page to update in the same commit. Read-only unless asked to fix. Use before a commit or a pull request, after a change that shipped without its docs, or when asked "what docs does this need", "are the docs current", "check the docs against the code", or "which page does this surface belong on".

We split this skill into the rules it gives an agent

8 rules. 0 are common, 5 are distinctive, and 3 are very specific to this project.

  • 0

    Common

    Most of the 33 edited versions we read keep these.

  • 5

    Distinctive

    This author's own choices. Worth a look.

  • 3

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Read the diff and list each thing an operator or a consumer can observe.

    line 28
  2. Distinctive:

    missing: no page states the surface.

    line 64
  3. Distinctive:

    Run a command only for a surface Step 1 recorded.

    line 67
  4. Very specific:

    When you fix a page, run .agents/skills/docs-reviewer/check-prose.sh <page> on it.

    line 83
  5. Very specific:

    Never report a missing entry, and never report an aged one.

    line 104
  6. Distinctive:

    When there is nothing to fix, say so, and still list the rows you walked.

    line 132
  7. Very specific:

    When asked to fix, use docs-writer for a page in docs/user/ or docs/design/, and the voice-guide.md layers for a crate README.md.

    line 137
  8. Distinctive:

    Commit, or open a pull request.

    line 153

“Common” is measured: kept by at least 6 in 10 of the 33 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Docs sync

Compare a change, or the whole repository, with the committed prose, and report each page the code makes wrong or leaves incomplete. The trigger table in AGENTS.md says which surface maps to which page, and this skill applies it.

How this differs from docs-audit. The audit assesses one page end to end: accuracy, placement, and voice. This skill starts from the code instead. It walks the surfaces a diff touches and finds the pages that no longer agree. Use docs-sync to decide which pages a change owes. Use docs-audit to decide what is wrong with one page.

Inputs

  • Scope: a diff (the default is git diff main...HEAD, plus git diff, git diff --staged, and new files in git status --short), or all for the whole repository.
  • Fix: report only (the default), or fix each gap.

Process

Step 1: List the surfaces the change touches

Read the diff and list each thing an operator or a consumer can observe. Group them by the trigger table's rows:

  • A CLI verb, a flag, a short form, or a default in crates/box/src/command/cli.rs.
  • A box.toml top-level key, or a field in [agent], [tool.<name>], [egress.<name>], [mcp.<name>], [telemetry.<label>], or [experimental-features].
  • A filesystem list, or what a list grants.
  • A policy action id, an attribute a rule reads, or what when temporal observes.
  • A refusal, a denial, a warning, a startup disclosure line, or an exit status that an operator reads.
  • A path the box owns: the box directory and its children, a socket, an alias name, or the records file.
  • A record field, or RECORD_VERSION, LIVE_VERSION, and PROTOCOL_VERSION.
  • An environment name the box reserves or composes.
  • A crate's pub use facade.
  • A build, test, or debug command, or a gate.

For all, list the current surface from the code instead of from a diff.

Classify each one as ships or in flux. A surface the freeze in AGENTS.md names always ships.

Step 2: Walk the trigger table

For each surface, find its row and the page the row names. Record the row you used, because the report must show which rows you walked.

A surface with no row and no page is in flux. The pre-1.0 valve in the AGENTS.md Docs section covers it, so it is not doc debt. Say so and move on.

Step 3: Check the user guide

For each surface that ships, open the page the row names and give it one status:

  • wrong: the page states something the diff falsifies. Quote the sentence and name the symbol it disagrees with.
  • missing: no page states the surface.
  • ok: the page and the code agree.

Run a command only for a surface Step 1 recorded. Most runs of this skill need none.

  • A CLI verb, a flag, or a box.toml key needs no command here. crates/box/tests/documented_commands.rs and documented_inputs.rs already hold crates/box/README.md to the parser, and continuous integration runs both. A diff that moves one gets a failing test, which is a louder signal than this sweep.
  • A policy action or a field does need a command, because no test pins the page to the schema:

    cargo run -p strands-box -- policy generate-schema

    Each action id and each field the schema emits is in docs/user/policy/actions.md, and the page names no action the schema omits. Check the count of actions that docs/user/policy.md and docs/user/policy/actions.md state against ACTION_IDS.

When you fix a page, run .agents/skills/docs-reviewer/check-prose.sh <page> on it.

Step 4: Check the design guide

Report a docs/design/ page whose parts, order, process boundary, or table the diff makes false. docs/design/README.md maps each page to the question it answers, so use it to find the owner.

Hold each claim to claim-verification.md: a test backs each claim about behaviour, and the page names no test.

Step 5: Check the crate README and the crate AGENTS.md

A crate whose pub use facade or purpose moved owns a README.md that a consumer reads. Report the section the change makes wrong. Report a crate AGENTS.md whose frozen surface, premise, or gate the diff moved, and the root AGENTS.md when the change moves a gate or a frozen surface it lists.

Step 6: Check docs/design/decisions.md for regression only

  1. Report an entry the diff regresses, and name the anchor. The diff rewrites that entry, or it does not ship.
  2. Report two entries that answer the same question in two ways.
  3. Never report a missing entry, and never report an aged one. An entry enters only through /kd, and only after the user decides. A code change owes no entry, and the code is the authority where an entry and the code already disagree.

Step 7: Report

## Docs sync: <scope>

| Page | Section | Status | What is wrong | Fix |
|---|---|---|---|---|
| ... | ... | wrong / missing | ... | ... |

### Trigger-table rows walked

- <row> -> <page> -> <status>

### In flux, so not doc debt

- <surface> (no row, no page)

### Checks run

List each command you ran, with its result. Name the command you did not run and the surface it
bears on, so a reader can see it was a choice. "None, because the diff touched no policy action" is
a complete answer.

When there is nothing to fix, say so, and still list the rows you walked. Silence reads as "not checked".

Fixing

When asked to fix, use docs-writer for a page in docs/user/ or docs/design/, and the voice-guide.md layers for a crate README.md. Use /kd for docs/design/decisions.md, and only when the user decides the question.

Rules

  • Report only what the trigger table requires. A longer page is not a better page.
  • Never change code to make a page true. Report the mismatch, and name the symbol.
  • The code is the authority. Where a page and the code disagree, the page is wrong.
  • Falsified or missing, or it is not a finding. A page that reads as thin or old is work for docs-planner, not for this skill.

What this skill does not do

  • Review a draft's voice. That is docs-reviewer.
  • Plan the docs backlog. That is docs-planner.
  • Commit, or open a pull request.

Download now (ZIP)

  • Other versions43 projects use a version of this.

    Word for word · 0

    None found.

    Edited · 0

    None found.

    Wrote their own version · 43

    1. openai/openai-agents-python★ 30ksame name
    2. redis/node-redis★ 18ksame name
    3. redis/ioredis★ 15ksame name
    4. fossasia/visdom★ 10ksame name
    5. Kiln-AI/Kiln★ 5.2ksame name
    6. microsoft/apm★ 4.2ksame name
    7. danielmeppiel/apm★ 4ksame name
    8. openai/openai-agents-js★ 4ksame name
    9. pnp/powershell★ 906same name
    10. kjnez/claude-code-django★ 177same name

    33 more not listed

    How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.

  • Used alongsideProjects with it also use code-review, tdd and 1 more.

    Other files people use alongside this one.

    Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
    • GoogleSkill

      code-review

      Adversarial systems, concurrency, memory-model, and architecture code review protocol. Use this skill whenever asked to review code, PRs, diffs, or branches in Filament.

      Also in 4 projects that use this

    • GoogleSkill

      tdd

      Test-driven development. Use when the user wants to build features or fix bugs test-first, mentions "red-green-refactor", or wants integration tests.

      Also in 3 projects that use this

    • MicrosoftSkill

      release

      Use ONLY when the user explicitly asks to cut/publish a Huabu desktop release or tag a version. Performs an outward action — bumps the version in apps/desktop/package.json, commits + annotated-tags vX.Y.Z, and pushes the branch + tag. That tag push auto-builds the macOS/Windows installers and publishes a GitHub Release. Provides `status`, `bump`, `tag-push`, and a one-command `run` (bump → tag-push).

      Also in 3 projects that use this

  • In this repository11 other files it gives its agents.

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.