.agents/skills/speckit-branch-convention-rename/SKILL.md
Rename non-compliant branches and spec folders to match the configured convention
npx skillsauth add pradeepmouli/lspeasy speckit-branch-convention-renameInstall 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.
Rename non-compliant Git branches and spec folders to match the configured naming convention. Handles both branch renaming and folder moving with full safety checks.
$ARGUMENTS
You MUST consider the user input before proceeding (if not empty). The user may specify a specific branch to rename (e.g., "004-chat-system") or "all" to rename everything non-compliant.
.specify/ directory.specify/branch-convention.yml/speckit.branch-convention.configure firstRun validation first: Execute the same checks as /speckit.branch-convention.validate to identify all non-compliant branches and folders.
Build rename plan: For each non-compliant item, compute the correct name:
| Current Name | Convention | New Name | Action |
|-------------|------------|----------|--------|
| 004-chat-system | {type}/{seq}-{kebab} | feat/004-chat-system | Rename branch, keep folder |
| 5-api | {seq}-{kebab} (pad 3) | 005-api | Rename branch + move folder |
| PROJ142-auth | {ticket}-{kebab} | PROJ-142-auth | Rename branch + move folder |
Present the rename plan: Show a preview table before making any changes:
# Rename Plan
| # | Current Branch | New Branch | Current Folder | New Folder |
|---|---------------|------------|----------------|------------|
| 1 | 004-chat-system | feat/004-chat-system | 004-chat-system | 004-chat-system (unchanged) |
| 2 | 5-api | feat/005-api | 5-api | 005-api |
**Actions**: {N} branches to rename, {M} folders to move
Confirm with user: Ask for explicit confirmation before proceeding. This is a destructive operation.
Execute renames (after confirmation): For each item in the plan:
git mv specs/{old} specs/{new} (preserves git history)git branch -m {old} {new}Update references in artifacts: After renaming, scan all spec artifacts for stale references:
spec.md header metadata (branch name field)plan.md header metadatatasks.md header metadataReport: Output a summary:
/speckit.branch-convention.validate to confirm all items are now compliantgit branch -mgit push origin :{old} {new}) but do not push automaticallytools
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.