update-spec

update-spec is a skill for Claude Code from atman-33/workhub. It costs 56 tokens per session (543 once invoked), scanned A, original, MIT.

A tool for keeping a project’s living specification aligned with code that has actually been merged. It groups implemented behavior by feature area rather than by sprint or backlog item.

In plain words
What is it for?
Use it after repository synchronization or when the user asks to update the project specification. It records current feature behavior and links it to the backlog items that delivered it.
Why use it?
It prevents the specification from describing planned or outdated behavior. It checks whether new merges exist before doing work and uses acceptance criteria and diffs when the behavior is unclear.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin.

Part of the team-ops plugin — 13 skills shipped together

Good fit Use it after repository synchronization or when the user asks to update the project specification. It records current feature behavior and links it to the backlog items that delivered it.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/atman-33/workhub/update-spec
Install

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.

Any agent
npx skills add atman-33/workhub --skill update-spec
Clone the repo
git clone --depth 1 https://github.com/atman-33/workhub

Made for: Claude Code.

Or install team-ops, the plugin that ships this one along with the rest of its 13 skills.

Wrote 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.

agentmods badge for update-spec

README.md
[![agentmods](https://agentmods.dev/badge/skills/atman-33/workhub/update-spec/github.svg)](https://agentmods.dev/skills/atman-33/workhub/update-spec)
Your own site
<a href="https://agentmods.dev/skills/atman-33/workhub/update-spec"><img src="https://agentmods.dev/badge/skills/atman-33/workhub/update-spec/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.

agentmods 80×15 button for update-spec

Your own site · 80×15
<a href="https://agentmods.dev/skills/atman-33/workhub/update-spec"><img src="https://agentmods.dev/badge/skills/atman-33/workhub/update-spec.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 56 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 543 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00056 $0.00543
Opus 5.5 $0.00022 $0.00217
Sonnet 5.5 $0.00011 $0.00109
Haiku 4.5 $0.00006 $0.00054

Measured 1mo ago against content hash c3769ed33618, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

update-spec 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 1mo 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.

plugins/team-ops/skills/update-spec/SKILL.md · 43 lines

What it actually says

Update the living spec

docs/spec/spec.md answers "what is implemented today, by feature area" — kept truthful by folding in what actually merged, not what was planned.

Steps

  1. Check there is anything to do: compare each repo's repo-state.json.lastSyncAt / new commits.jsonl entries against the spec's last-updated marker (an HTML comment at the top of spec.md, e.g. <!-- last-updated: 2026-07-20 / app@abc1234 api@def5678 -->). No new merges since the marker → stop and report "no change" — this is what keeps the daily routine cheap.
  2. Gather what merged: new commits per repo grouped by PBI id (pbi-activity.json + commits.jsonl), and for each involved PBI its ## Acceptance Criteria (satisfied AC = implemented behavior). Inspect actual diffs in the script-owned mirror (git -C <mirrorPath> show <sha>) only where the commit subject + AC leave the behavior unclear.
  3. Fold into spec.md (team content language):
    • Organized by feature area (grow headings as the product grows), not by sprint or PBI — a newcomer reads it as "how the product works".
    • Update the areas the merged PBIs touched; state current behavior, and reference source PBIs inline ((P-0012)) for traceability.
    • Move superseded statements out — the spec describes the present, the git history keeps the past.
    • Refresh the last-updated marker with today's date and each repo's synced tip sha.
  4. Append an activity-log line (- <date> [...] update-spec: folded P-0012, P-0015 into spec.md).

Rules

  • Never describe unmerged work as implemented. Planned work lives in the backlog, not the spec.
  • When spec.md outgrows one file, split into docs/spec/<area>.md with spec.md as the index — propose this to the user first.
Changes

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.

  1. 1mo ago First seen · 43 lines · 56 tokens per session scan A c3769ed33618

Subscribe to this mod's changes

update-spec is a skill published in the GitHub repository atman-33/workhub (3 stars, last pushed 2d ago), licensed MIT. It adds 56 tokens to every session and 543 once invoked, about $0.0002 per session on Opus 5.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.

Related

Other skills, from other repositories

expo-launchpad-status

Show the current expo-launchpad pipeline state — phase, round, next role, pause reason — read-only.

SummerRiversound/expo-launchpad · 27 tokens

tasknotes

This skill should be used when the user asks to 'create a task', 'add a TODO', 'plan a sprint', 'organize tasks', 'track time', 'setup Kanban', 'create task from code', 'sync tasks with sprint', 'pomodoro session', 'start pomodoro', 'time estimate', or mentions TaskNotes, task management, or project planning in…

parisgroup-ai/imersao-ia-setup · 106 tokens

issue-hygiene

How to write an issue somebody can act on, how to triage a pile of them, and the label vocabulary that stays useful. Use when filing, triaging, labelling, closing or linking issues.

Mikedev115/Aetox · 47 tokens

aetox-slice

Decomposes a technical specification or plan into vertical tracer-bullet tickets. Calculates directed dependency graphs (DAG), schedules prefactoring first, applies expand-contract sequencing for wide refactors, quizzes the user on ticket granularity, and emits atomic per-ticket files sized for optimal agent context…

Mikedev115/Aetox · 64 tokens

project-consolidation

Safely consolidate drifted/duplicate project folders in the memex vault — cwd-fragment folders (e.g. Apps-arena, GitHub-loom), duplicate/split projects (one project's content scattered across two folders), and name-mismatch folders. Trigger on "consolidate project folders", "merge duplicate projects", "fix project…

linxule/memex-plugin · 133 tokens

roadmap-update

Produit un document de roadmap dans output/ en croisant l'état actuel des epics beads avec les décisions et priorités documentées dans le wiki. Applique les règles anti-lissage — ne jamais compléter avec des connaissances d'entraînement, citer le wiki pour chaque affirmation de scope ou de priorité. Triggers — mettre…

evb87-tech/corpus · 94 tokens