update-docs
Automatically updates project documentation pages whenever public-facing package surfaces change.
Install
mkdir -p .claude/skills/update-docs-eigenwise && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/12242" && unzip -o skill.zip -d .claude/skills/update-docs-eigenwise && rm skill.zipInstalls to .claude/skills/update-docs-eigenwise
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Use this skill after any change to `packages/**` source that shifts Tesseron's public surface - protocol messages, exported types, action/resource builder APIs, ActionContext methods, transports, gateway CLI flags, or React hooks - to sync `docs/src/content/docs/` so the Starlight site matches the code. Triggers on "update the docs", "sync docs", "docs are stale after this change", or when a session ends with public-surface edits unaccompanied by doc edits. Do NOT trigger for test-only, tooling-only, or internal refactors that leave the public surface identical.Key capabilities
- →Inspect the change set in `packages/**` for public surface modifications.
- →Map modified public surfaces to relevant documentation pages.
- →Edit affected documentation pages to reflect code changes.
- →Update frontmatter `description` fields if a page's focus shifts.
- →Verify documentation changes using `npx astro check`.
How it works
The skill systematically inspects code changes in `packages/**`, maps them to corresponding documentation pages, and guides the user to edit only the affected pages to keep the Starlight site aligned with the code.
Inputs & outputs
When to use update-docs
- →Syncing API docs
- →Updating architecture guides
- →Refreshing quickstart docs
About this skill
Update Tesseron docs
Keep docs/src/content/docs/ aligned with whatever just changed in packages/**. The docs are the published Starlight site and the contract Tesseron users read, so drift here is user-visible.
Prerequisites
- A recent edit to
packages/**(usegit diff/git diff --stat HEADto see the change set). - The docs tree at
docs/src/content/docs/. If it's missing, stop and flag it.
Doc pages and what they own
| Page | Owns |
|---|---|
overview/index.mdx (the root index.mdx) | Elevator pitch, hero copy, top-level links. Rarely changes. |
overview/architecture.mdx | Three-process model diagram, protocol boundary descriptions. |
overview/quickstart.mdx | The 5-minute path: install, declare one action, run the gateway, see Claude call it. |
overview/why.md | Positioning vs browser automation / Playwright / chat widgets. |
protocol/index.mdx | One-page protocol overview. Update when a new top-level concept lands. |
protocol/wire-format.mdx | JSON-RPC envelope, method names, id rules. |
protocol/transport.md | WebSocket URL, framing, origin allowlist, reconnect behavior. |
protocol/handshake.mdx | tesseron/hello, welcome, claim code, tools/list_changed. |
protocol/actions.mdx | Action declaration, namespacing, invoke / validate / return. |
protocol/progress-cancellation.mdx | actions/progress, AbortSignal, actions/cancel. |
protocol/sampling.mdx | Handler re-entry into the agent's LLM. |
protocol/elicitation.mdx | ctx.confirm and ctx.elicit. |
protocol/resources.mdx | Readable / subscribable resource projection. |
protocol/errors.mdx | Every defined error code and what raises it. |
protocol/lifecycle.mdx | Session state machine, what happens to pending work. |
protocol/security.mdx | Origin enforcement, claim flow, trust boundaries. |
sdk/typescript/index.mdx | Install, packages/ landscape, first action snippet. |
sdk/typescript/action-builder.md | tesseron.action(...) fluent API. |
sdk/typescript/standard-schema.md | Zod / Valibot / etc. adapter plumbing. |
sdk/typescript/context.md | ActionContext methods: progress, sample, confirm, elicit, signal. |
sdk/typescript/resources.md | tesseron.resource(...) builder, subscribe contract. |
sdk/typescript/core.md | @tesseron/core exports, custom transport extension points. |
sdk/typescript/web.md | @tesseron/web browser adapter. |
sdk/typescript/server.md | @tesseron/server Node adapter. |
sdk/typescript/react.md | useTesseronAction, useTesseronResource, useTesseronConnection. |
sdk/typescript/mcp.md | @tesseron/mcp gateway CLI, config, origin allowlist. |
sdk/python/index.md | Planned Python SDK - only update when roadmap changes. |
sdk/porting.md | How to port Tesseron to another language. |
examples/index.mdx | Table of the example apps. |
examples/<name>.md | Individual example app walk-through. |
Process
Step 1 - Inspect the change set
Run these in one go:
git status --short
git diff --stat HEAD
git diff HEAD -- packages/
Focus on exported symbols, public types, protocol method names, CLI flags, and .md/.mdx snippets inside packages. Ignore changes under **/*.test.ts, **/*.spec.ts, **/__tests__/**, tsconfig*.json, biome*.json, .changeset/, and CI config - those don't require doc updates.
Step 2 - Map changes to doc pages
For each modified public surface, find the doc pages that own it via the table above. Also rg across docs/src/content/docs/ for the renamed / changed symbol to catch incidental mentions the owner table misses:
rg --fixed-strings "oldSymbolName" docs/src/content/docs/
Step 3 - Edit the affected pages only
- Prefer
EditoverWrite. Targeted edits keep diffs reviewable. - Preserve frontmatter (
title,description). They feed both the sidebar and the injected docs index. - Keep Starlight components intact:
Diagram,Card,CardGrid,LinkCard,Code,Tabs, etc. - Don't introduce em-dashes (
-) in user-facing prose - use-or periods. Matches project voice. - Update version numbers / package exports only when the actual package boundary shifted.
Step 4 - Update frontmatter description if the page focus shifted
The hook at .claude/hooks/inject-docs-index.py derives the injected index from description fields. If a page's scope changed materially (e.g., a method was promoted or removed), rewrite the description so it stays a one-line summary of what the page now covers.
Step 5 - Verify
cd docs && npx astro check
astro check catches broken frontmatter, bad component usage, and broken relative links. If the build is already wired into CI, rely on that instead; otherwise run it locally.
Step 6 - Report back
End your turn with a bullet list:
- Modified packages:
packages/... - Docs updated:
docs/src/content/docs/... - Docs reviewed but unchanged (and why)
What NOT to update
.changeset/files - maintained by the release workflow, not by this skill.README.mdat repo root - stays in sync by hand; mention in your report if it looks stale so the user decides.- The Starlight
sidebarindocs/astro.config.mjs- only touch when a new page is added or a page is deleted, and even then prefer a note in the report so the user confirms ordering. - Auto-generated TypeDoc / API reference output (if any).
Success criteria
- Every public-surface change is reflected in at least one doc page.
- No orphaned references to removed / renamed symbols remain in
docs/. - Frontmatter
title/descriptionaccurate on every touched page. -
astro checkpasses (or CI equivalent). - Report lists modified packages, updated docs, and reviewed-but-unchanged docs.
When not to use it
- →For changes to test-only, tooling-only, or internal refactors that do not affect the public surface.
- →For updating `.changeset/` files.
- →For updating the `README.md` at the repo root.
Limitations
- →Only changes to `packages/**` that shift Tesseron's public surface trigger this skill.
- →The skill does not update `.changeset/` files.
- →The skill does not update the Starlight `sidebar` in `docs/astro.config.mjs`.
How it compares
This skill provides a structured process for synchronizing documentation with code changes, including specific verification steps, which is more targeted than a general documentation update.
Compared to similar skills
update-docs side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| update-docs (this skill) | 0 | 3mo | Review | Intermediate |
| architecture-decision-records | 54 | 5mo | Review | Beginner |
| meeting-minutes | 41 | 6mo | No flags | Beginner |
| docs-write | 22 | 6mo | No flags | Beginner |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
architecture-decision-records
wshobson
Write and maintain Architecture Decision Records (ADRs) following best practices for technical decision documentation. Use when documenting significant technical decisions, reviewing past architectural choices, or establishing decision processes.
meeting-minutes
github
Generate concise, actionable meeting minutes for internal meetings. Includes metadata, attendees, agenda, decisions, action items (owner + due date), and follow-up steps.
docs-write
metabase
Write documentation following Metabase's conversational, clear, and user-focused style. Use when creating or editing documentation files (markdown, MDX, etc.).
rust-docs-guidelines
RediSearch
Guidelines for writing Rust documentation
ml-paper-writing
davila7
Write publication-ready ML/AI papers for NeurIPS, ICML, ICLR, ACL, AAAI, COLM. Use when drafting papers from research repos, structuring arguments, verifying citations, or preparing camera-ready submissions. Includes LaTeX templates, reviewer guidelines, and citation verification workflows.
content-research-writer
ComposioHQ
Assists in writing high-quality content by conducting research, adding citations, improving hooks, iterating on outlines, and providing real-time feedback on each section. Transforms your writing process from solo effort to collaborative partnership.