plugins/powerups/skills/update-docs/SKILL.md
Invoke after completing a feature to sync all documentation — local docs, sibling repos, skill plugins, and downstream project docs. Scans everything by default.
npx skillsauth add jackyliang/powerups update-docsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
After shipping a feature, documentation drifts. This skill finds what's stale and updates it — across ALL repos, not just the current one.
Invoke this skill:
The user can invoke this directly with /update-docs.
Spawn an Explore subagent to understand the current branch's changes:
git diff main...HEAD --stat to see what files changed on this branchReturn a concise summary of what changed and what categories apply.
Spawn an Explore subagent to discover every doc file that might need updating. Scan everything — local and cross-repo. The whole point of this skill is comprehensive coverage.
Local docs (current repo):
docs/ — in-repo guides (glob for docs/**/*.md).env.example — env var referenceplans/ — plan files with status tables or task checkboxesSibling repos (always scan):
Grep CLAUDE.md for ../ paths to find sibling repos. For EVERY sibling repo found:
6. CLAUDE.md — check for stale references to this project
7. README.md — check for stale API descriptions, ports, defaults
8. Skill/plugin docs — API references, recipes, guides, integration docs
9. Any docs/ directory — in-repo guides in sibling repos
This is not optional. If CLAUDE.md references ../other-project/, scan that project's docs too. Documentation drifts most at repo boundaries.
The subagent should return the list of ALL doc files found and what each covers.
For each doc file, spawn subagents (in parallel where possible) to:
Return findings as a checklist:
- [ ] CLAUDE.md line 45: says interval_minutes defaults to 5, should be 60
- [ ] ../sibling-repo/api-reference.md: missing new webhook fields
- [ ] README.md: port 8000 should be 8001
- [x] docs/guide.md: already up to date
Before touching any docs, present the full checklist and use AskUserQuestion to clarify:
Don't assume you know how the user wants their docs written. Ask.
Never silently skip a finding. If a doc file is stale, present it to the user — even if you think the update is minor or optional. Let the user decide what to skip, not you.
After getting user direction:
docs: update for [feature name]After applying updates:
docs/)When multiple repos are involved in a feature (e.g., a service + its SDK, or two services that integrate), documentation naturally fragments. Each repo partially explains the integration, and none tells the full story. This is the most common source of confusion.
The fix: single source of truth for cross-repo concerns.
../shared-docs/integration-guide.md."During Step 3 (diffing docs against reality), watch for:
When you find this, recommend consolidation before making edits. Ask the user: "I found the X integration partially described in N places. Want me to consolidate into one guide and replace the others with links?"
| Doc type | Scope | Example | |----------|-------|---------| | Integration guide (shared) | End-to-end flow across repos, data contracts, what each system owns | "How Service A + Service B work together" | | CLAUDE.md (per-repo) | How to work in THIS codebase — key files, commands, conventions | Links to integration guide for cross-repo context | | README.md (per-repo) | What this repo IS, how to set it up, how to run it | Does not explain other repos | | API reference (per-repo) | Endpoints, request/response formats for THIS service | Payload schemas for events this service sends | | Skill docs (shared) | How to USE a service from another codebase | Recipes, workflow steps, troubleshooting |
AskUserQuestion to clarify scope, audience, tone, and what to remove vs. keep.| What drifts | Why | How to catch | |------------|-----|-------------| | API defaults (interval_minutes, schedule_enabled) | Changed in code, not in docs | Grep docs for old default values | | Endpoint additions | New endpoint added, docs not updated | Compare router files against API reference | | Removed features | Code deleted, docs still reference it | Grep docs for removed function/endpoint names | | Env vars | New var added to config.py but not to CLAUDE.md or .env.example | Compare config.py against env var tables | | Downstream integration notes | Upstream API changed, downstream docs stale | Scan sibling repos for stale references | | Scattered integration docs | Each repo partially explains the same flow | Look for the same webhook/API/flow described in 2+ places | | Ports and URLs | Changed in code, old values in docs/README | Grep all docs for port numbers and URLs |
data-ai
Use for ultra-short replies. Three modes based on what the user is asking, answer a quick question, draft a short text/message, or draft a short email. Defaults to brevity over completeness. No preamble, no summaries, no offers to elaborate. Drafted messages and emails fit under 480 characters. Never use em-dashes.
development
Run before the post-completion audit (PDD M9) on any feature that used `powerups:plan-driven-development`. Reconciles the shipped artifact with the plan in BOTH directions — additive drift (what landed that wasn't planned) and subtractive drift (what's still in the code or plan but shouldn't be — dead files from replaced features, completed deferred items, stale TODOs, orphaned redirect stubs). Almost every shipped feature drifts on both axes; without this step the plan file lies and the repo accumulates stragglers.
development
Run before the post-completion audit (PDD M9) on any feature that used `powerups:plan-driven-development`. Reconciles the shipped artifact with the plan in BOTH directions — additive drift (what landed that wasn't planned) and subtractive drift (what's still in the code or plan but shouldn't be — dead files from replaced features, completed deferred items, stale TODOs, orphaned redirect stubs). Almost every shipped feature drifts on both axes; without this step the plan file lies and the repo accumulates stragglers.
data-ai
Use when the user wants to compare multiple UI/UX design directions side by side before choosing. Generates 5 meaningfully distinct variants of the same screen/component in parallel (one subagent per variant), each reachable via ?style=1...5 in the URL. Supports iteration — calling again on a chosen style produces 5 refined variants within that direction.