| name | update-skills |
| description | This skill should be used when the user asks to "update skills", "update review skills", "refresh skills", "apply feedback", "スキルを更新", "レビュースキルを更新", "フィードバックを反映", or when triggered by knowledge-base changes, new feedback entries, or plugin version updates.
|
| argument-hint | ["--full to update all skills",{"default":"changed only"}] |
Update Skills: Differential Skill Updates
Update generated review skills based on changes without full regeneration.
Handles both updating existing skills AND adding new ones that don't exist yet.
Limitations
This skill handles content updates and new skill additions, but does NOT handle:
- Skill renames (e.g.,
review-orchestrator → review-{project_name_slug})
- Skill directory moves or deletions
- Structural changes to the skill hierarchy
If the plugin update involves these kinds of changes, inform the user and recommend running /build-skills --force instead.
Step 0: Environment Setup (MUST do first)
The current directory is the review data project (e.g., ~/review/rclc/). This directory contains:
config.md — project configuration
knowledge-base/ — collected project knowledge
meta/ — metadata files (plugin-version-used.md, build-inputs.md, etc.)
workspace/ — git clone of the actual project
.claude/skills/ — generated skill files
All paths in this skill are relative to this project root.
meta/ means the project root's meta/, NOT .claude/skills/meta/
- Generated/updated skills go to
.claude/skills/{perspective-id}/SKILL.md
Prerequisites: Generated skills exist in .claude/skills/
Trigger Detection
Check these conditions and determine what needs updating.
Read meta/build-inputs.md to get the hashes of reference files used in the last generation.
If meta/build-inputs.md does not exist, treat ALL inputs as changed (equivalent to --full).
1. Build Input Changes (plugin reference files)
Compare current hashes of plugin reference files against meta/build-inputs.md:
shasum -a 256 <file> | cut -c1-8
Check each file listed in meta/build-inputs.md under "Reference File Hashes":
| Changed file | Affected skills |
|---|
| archetype-checklists.md | All 8 perspectives + review entry point |
| high-impact-patterns.md | Technical concerns matching changed condition IDs |
| templates/orchestrator.md | Review entry point only |
| templates/technical-concern.md | All 8 perspectives |
| templates/domain-perspective.md | All domain perspectives |
| templates/fact-check.md | Fact check only |
| templates/design-critique.md | Design critique only |
| templates/debate.md | Debate only |
| templates/consolidation.md | Consolidation only |
| tech-patterns/{stack}.md | Technical concerns using that stack |
2. Missing Perspectives Detection (CRITICAL)
Read ${CLAUDE_PLUGIN_ROOT}/skills/build-skills/references/archetype-checklists.md and list all mandatory perspectives defined there. Then check which ones exist in .claude/skills/:
Required by archetype-checklists:
1. execution-flow → exists? check .claude/skills/execution-flow/SKILL.md
2. resource-management → exists?
3. concurrency → exists?
4. security → exists?
5. platform-constraints → exists?
6. implementation-quality → exists?
7. code-health → exists?
If any required perspective is MISSING, it must be GENERATED (not just reported). This is the most common case when the plugin adds a new perspective — existing projects need it added.
3. Knowledge-Base Changes
Compare knowledge-base file hashes against meta/build-inputs.md under "Knowledge Base Hashes":
- If any knowledge-base file hash changed → identify which skills reference that data
- Update only affected perspectives
4. Feedback and Backtest Learnings
Check for new entries in:
backtest/learnings.md → compare hash against meta/build-inputs.md. If changed, each new learning specifies a target perspective → update only that perspective.
feedback/missed-bugs.md → identify which perspective should have caught it → add the pattern
feedback/veteran-edits/ → read the diff, understand the improvement → apply to affected skill
5. Plugin Version Update
Compare meta/plugin-version-used.md with ${CLAUDE_PLUGIN_ROOT}/VERSION:
- If different → run with
--full flag
Update Process
For Missing Perspectives (from Trigger Detection #2)
For each missing perspective:
- Read the corresponding section in
${CLAUDE_PLUGIN_ROOT}/skills/build-skills/references/archetype-checklists.md
- Read the template:
${CLAUDE_PLUGIN_ROOT}/skills/build-skills/references/templates/technical-concern.md
- Read tech-patterns for detected stack(s):
${CLAUDE_PLUGIN_ROOT}/skills/build-skills/references/tech-patterns/{stack}.md
- Read knowledge-base files relevant to this perspective
- Generate the SKILL.md — write to
.claude/skills/{perspective-id}/SKILL.md
- Update the review entry point — find the
review-* skill in .claude/skills/ and add the new perspective:
- Add to perspective count
- Add to Technical/Domain perspective list
- Add Agent dispatch entry in Phase 1
- Run debug-review on the new skill
This is NOT optional. Detecting a missing perspective and only reporting it is a failure.
For Targeted Updates (existing skills)
- Identify changed inputs from Trigger Detection above
- For each affected skill:
a. Read the current generated skill
b. Read the changed input (reference file, knowledge-base entry, or learning)
c. Apply minimal edits to incorporate the change
d. Preserve project-specific customizations (veteran edits, manual additions)
- Run debug-review on updated skills only
- Update
meta/build-inputs.md with new hashes for the changed files
For Full Updates (--full or version change)
- Read ALL knowledge-base files
- Re-read archetype checklists and templates from build-skills references
- Check for missing perspectives (Trigger Detection #2) and generate them
- For each existing skill: compare against what would be generated fresh
- Apply improvements while preserving project-specific customizations added by veterans
- Run debug-review on all skills
- Run backtest if test cases exist
- Rewrite
meta/build-inputs.md with all current hashes
Output
Report:
- Trigger: [what changed — list of files with old/new hashes]
- Skills added: [list of newly generated perspectives]
- Skills updated: [list]
- Skills unchanged: [list]
- Changes applied: [summary per skill]
- Review entry point updated: yes/no
- Debug-review result: pass/fail
- If version update: new features applied from updated templates