원클릭으로
improve-feature
Reconcile and restructure a feature's subtasks — improve each, then merge/delete/rewrite/split to make the set coherent
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Reconcile and restructure a feature's subtasks — improve each, then merge/delete/rewrite/split to make the set coherent
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
When planning, flag uncertain assumptions and supply a ready-to-run web-research prompt to confirm them.
Local Switchboard management console — drive the board when the VS Code extension is running
Implement with high accuracy and self-review (invest effort up front to minimize rework)
Deep planning, dependency checks, and adversarial review
Cloud-VM planning mode — plan first, do not auto-code in a remote VM
Memo capture mode — append-only, no analysis; exit with process memo
| name | improve-feature |
| description | Reconcile and restructure a feature's subtasks — improve each, then merge/delete/rewrite/split to make the set coherent |
| user-invokable | false |
Use this workflow when the target is a Switchboard feature (a container of subtask plans), not a single plan. Its job is to make the subtask set coherent: improve every subtask, detect inconsistencies between them, and then restructure — merge overlapping plans, delete superseded ones, rewrite contradictory ones, split oversized ones.
Detect a feature when the target file is under .switchboard/features/, or contains an auto-generated <!-- BEGIN SUBTASKS ... --> / <!-- END SUBTASKS --> block. If the target is a single plan, use improve-plan instead.
improve-plan is deliberately non-destructive ("never delete content; only update the plan document") because for a single plan that is correct. For a feature it is the opposite of the job — the highest-value action is exactly the thing improve-plan forbids: recognising that two plans are one, that a plan is obsolete, or that a contradiction means one plan gets rewritten. This skill is authorised to cut. Invoking it is the sign-off to restructure the subtask set; there is no per-run confirmation gate.
Restructuring is expected — but bounded:
.md.<!-- BEGIN/END SUBTASKS -->) — Switchboard regenerates it from the DB.git rm the removed subtask .md files (the plan watcher hard-deletes their rows on the next local pull), create any new consolidated plan file (do NOT write a **Plan ID:** line — it is never read; the importer assigns the ID and keys by file path), and add a **Feature:** <feature-plan-id> line to the new plan file's frontmatter (the feature's UUID, taken from its feature-<uuid>.md filename; applied on import with apply-if-empty semantics). For column moves, you MUST move newly created cards to PLAN REVIEWED using the session-appropriate mechanism:
.switchboard/api-server-port.txt present): Use the kanban_operations skill (move-card.js) to move the card to PLAN REVIEWED..switchboard/api-server-port.txt absent): Use the Notion/Linear provider or MCP to move the card to PLAN REVIEWED.
In-place rewrites keep their existing column. Detect remote by the absence of .switchboard/api-server-port.txt.assign-to-feature.js / the feature's create path for card-set changes.Expand the feature into its subtasks. Read the feature and collect every linked subtask plan (and the code they touch). If a link is broken, say so.
Improve every subtask (run improve-plan on each). For each subtask plan file, execute the improve-plan workflow's per-plan Steps in full (Load → all Required Sections → adversarial critique → write back → complexity-based recommendation). Improve each in place, with sibling context in hand. This is the same behaviour as dispatching improve-plan across a feature's subtasks locally. Report a per-subtask summary (complexity, routing, key changes).
When updating subtask plans, ensure each has **Project:** <name> in Metadata if a project is active; if none is active, omit the line — never ask the user. The workspace/repo name is NOT a project — never pin it (the importer silently drops workspace-name pins to unassigned). See AGENTS.md "Plan Project Pinning" for the full protocol.
Cross-subtask reconciliation audit — the real value. For every file/symbol touched by more than one subtask, classify each finding:
Restructure the set (act — do not just recommend). Based on the audit, do whatever makes the set coherent:
git rm the originals.git rm).After restructuring, you MUST move each newly created plan file (merges, splits) to PLAN REVIEWED using the session-appropriate mechanism (e.g., kanban_operations skill / move-card.js locally, Notion/Linear provider/MCP remotely). In-place rewrites keep their existing columns. Do not move deleted plans.
Backfill the feature file's own description. Ensure the feature has ## Goal, ## How the Subtasks Achieve This, and ## Dependencies & sequencing (backfill from the subtasks if missing; don't overwrite existing content; never touch the auto-block). Optionally record the reconciled merge map / end-state here so a coder implements to one design.
Commit, push, and report. Commit the improvements and the restructure (already committed before destructive ops per the guardrail). Report the before/after subtask set and the reconciliation outcome.
When the user asks to tier the feature by complexity — "high/low split", "split by complexity", "consolidate into tiers", or /improve-feature --high-low — run this variant of Step 4 instead of a free-form restructure. It is the remote, file-based equivalent of the local high-low feature worktree mode:
**Complexity:** for its tier and a **Consolidated From:** <source plan filenames> metadata line for traceability (reference the merged files by name — never by plan ID, which you cannot know). Do NOT embed a **Plan ID:** — it is never read; the importer assigns the ID and keys by file path.git rm the original subtask files (their intent now lives in the two tier files) and add a **Feature:** <feature-plan-id> line to each new tier plan file's frontmatter (the feature's Plan ID). Locally this is assign-to-feature.js. After writing the files, you MUST move both new tier cards to PLAN REVIEWED using the session-appropriate mechanism (e.g., kanban_operations skill / move-card.js locally, Notion/Linear provider/MCP remotely).Use this when the intent is parallel execution by complexity tier; use the default free-form Step 4 when the intent is just "make the set coherent".
End with a per-subtask complexity routing (Intern 1-3 / Coder 4-6 / Lead Coder 7-10) and, for the feature, whether it is ready to execute or still has open decisions for the user.