.github/skills/speckit-refine-diff/SKILL.md
Show what changed in spec.md and predict downstream impact on plan and tasks
npx skillsauth add pradeepmouli/lspeasy speckit-refine-diffInstall 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.
Preview the impact of spec.md changes on downstream artifacts before propagating. Use this to understand the blast radius of a refinement.
$ARGUMENTS
You MUST consider the user input before proceeding (if not empty).
.specify/ directoryLoad all artifacts: Read from the current feature directory:
spec.md (check for **Refined**: entries)plan.md (if exists)tasks.md (if exists)Extract refinement history: Parse all **Refined**: entries in spec.md to build a change log:
## Refinement History
- [DATE]: [Description of change]
- [DATE]: [Description of change]
Analyze spec changes: For each refinement, classify the impact:
| Change Type | Spec Impact | Plan Impact | Tasks Impact | |-------------|-------------|-------------|--------------| | New user story | New section added | New structure/complexity entry | New phase with tasks | | Modified requirement | Updated requirement text | May affect technical context | May affect task descriptions | | Removed requirement | Strikethrough marking | Sections to mark removed | Tasks to mark removed | | Changed priority | Reordered user story | May affect implementation order | May reorder phases | | New success criterion | Added to criteria list | Minimal | May need verification task |
Generate impact report: Output a structured diff report:
# Spec Refinement Impact Report
## Changes Detected
- [List each change from refinement notes]
## Downstream Impact
### plan.md
- **Status**: [Up to date | Stale | Does not exist]
- **Sections affected**: [List of plan sections that need updates]
- **Estimated changes**: [Number of sections to add/modify/remove]
### tasks.md
- **Status**: [Up to date | Stale | Does not exist]
- **Tasks affected**: [List of task IDs that need updates]
- **New tasks needed**: [Count]
- **Tasks to mark removed**: [Count]
- **Dependency changes**: [Yes/No — describe if yes]
## Consistency Check
- [ ] All spec user stories have plan sections: [Pass/Fail]
- [ ] All spec requirements have task coverage: [Pass/Fail]
- [ ] No orphaned tasks from removed requirements: [Pass/Fail]
## Recommended Action
- Run `/speckit.refine.propagate` to apply these changes
- Or run `/speckit.refine.propagate only plan` to update plan.md first
Report: Output the impact report. Do not modify any files — this command is read-only.
tools
Use for ANY rename, file-move, or move-symbol refactor — especially rename-heavy work across multiple files. Claude Code's built-in LSP tool is READ-ONLY (find references, but no rename / file-move / move-symbol). Hand-editing those refactors silently misses re-exports, aliased imports, type-only imports, and {@link} doc references. This skill drives a real language server via the `lspeasy` CLI to apply a correct WorkspaceEdit that catches every reference. Trigger when the user asks to rename a function/class/variable/type project-wide, move a file and fix its importers, or pull a symbol out into another module.
tools
Documentation site for lspeasy Use when: You are building a browser-based LSP client, a WebSocket-backed language....
tools
Documentation site for lspeasy Use when: You are implementing a custom client layer and need the same validation....
tools
Use when working with lspeasy (client, core, server). Covers: lsp, language-server-protocol, lsp-client, language-client, jsonrpc, transport, lsp-server, language-server.