Language: Always interact with the user in 日本語.
impl-wt-en
Worktree-isolated version of impl. Implements without affecting the main working tree.
Prerequisites
- Claude Code environment
git, gh CLI
Arguments
- Issue number (e.g.,
/impl-wt-en #123): Fetch requirements from GitHub Issue
- Issue URL (e.g.,
/impl-wt-en https://github.com/owner/repo/issues/123): Same as above
- Text (e.g.,
/impl-wt-en Add user authentication): Use text as requirements
- No arguments: Interview the user for requirements
Forbidden Actions (Critical)
If any of the following occurs, redo that phase. Skipping for "context savings" or "small change" is not accepted.
- Skipping any sub-step (2-1 to 2-6) with "later", "leave as TODO", or "separate PR"
- Silently skipping a phase or sub-step without declaring it to the user
- Committing with unimplemented tests or dummy assertions (e.g.,
expect(true).toBe(true))
- Self-reviewing instead of calling the
review agent
- Skipping lint/format without attempting to run (skipping is allowed only after running and confirming no settings exist)
If scope reduction is needed, redo Phase 1 scope splitting and confirm with the user instead of skipping phases.
Phase 1: Requirements Analysis and Scope Splitting
- Retrieve requirements from arguments
- Issue: Read body and comments via
gh issue view
- Text: Use as-is
- No arguments: Interview the user
- Check for spec documents
- If CLAUDE.md specifies the spec location, follow it
- Otherwise, search broadly with Glob (
**/SPEC.md, **/spec/**, docs/**, etc.)
- Read any documents linked in the Issue body
- Cross-reference spec contents with requirements and use as implementation input
- If no spec found, proceed as-is
- Record the current branch as the base branch (PR merge target)
- Run
git branch --show-current and display to user: "Base branch: "
- Retain this name until PR creation in Phase 3
- Determine the working branch name (see
references/branch-naming.md)
- Create git worktree (see
references/worktree-setup.md)
- Split requirements into independently implementable and testable units
- Sort by dependencies and determine implementation order
- Create tasks with TaskCreate
- Explore and understand the codebase to grasp requirements accurately
- Confirm unclear specs with the user
- Confirm backward compatibility with the user if breaking changes exist
Phase 2: Implementation Cycle (repeat per scope)
IMPORTANT: Specify the worktree path as working directory in all subagent calls during Phase 2.
Set the current scope task to in_progress via TaskUpdate at the start of each scope.
2-1: Plan
- Create an implementation plan with the
Plan agent
- Clarify change locations, impact scope, and test requirements
- Include worktree path in prompt
2-2: Develop
- Implement (including tests) with the
develop agent
- Satisfy requirements with minimal changes
- Include worktree path in prompt
- Write production-ready code. The following do NOT count as complete implementation:
- Tests containing only mocks/stubs with no real code
- Functions filled with
TODO, NotImplementedError, pass, or throw new Error("not implemented")
- Interface/type definitions only with no actual implementation
2-3: Review
- Code review with the
review agent
- Evaluate requirement conformance, code quality, and test sufficiency
- Include worktree path in prompt
- Incomplete implementation check: Verify no mock/stub-only code, TODO/NotImplementedError placeholders, or empty function bodies
2-4: Improvement Cycle
- If review issues found -> fix with
develop -> re-review -> repeat until no issues
2-5: Format & Lint
- Run format/lint on changed files per project settings
- Run format/lint commands inside the worktree directory
- Skip if no settings found
2-6: Commit (mandatory)
- Commit at each scope completion. Never skip.
- Run
git add / git commit inside the worktree directory
- Follow commit message conventions in CLAUDE.md
- After committing, set the task to
completed via TaskUpdate
Phase 3: Final Verification and PR Creation
- Confirm all scopes are implemented
- Run full test suite inside the worktree directory
- Run
git push -u origin <working-branch> inside the worktree directory
- Create PR with
gh pr create --base <base-branch>
- Use the base branch recorded in Phase 1. Never fall back to
main or master.
- If unclear, check fork point with
git log --oneline --graph HEAD...main
- With Issue: Include Issue number in title, then link via
gh pr edit <PR#> --add-issue <Issue URL> after creation (do not use Closes keyword)
- PR body: Change summary + manual checklist (see
templates/pr-checklist.md)
- Report implementation summary and worktree path to user
Report example:
## Done
- PR: <URL>
- Worktree: <path> (run `git worktree remove <path>` after verification)
Rules
- Each scope must be independently implementable and testable
- Commit at each scope completion. Never proceed without committing
- Fix review issues at all severity levels
- Track progress with TaskCreate/TaskUpdate
- Phase declaration: At the start of each sub-step (2-1 to 2-6) display
▶ 2-X start: <name>, and on completion display ✓ 2-X done. This prevents silent skipping.
- Self-check: Before completing each phase, re-read the corresponding section of this SKILL.md and verify no steps were skipped before moving to the next phase.
- On compaction (context compression), check current progress with
TaskList before resuming work
- All git/file operations must be inside the worktree directory. Never modify the main working tree.
1---2name: impl-wt-en3description: Implementation cycle in an isolated git worktree environment with PR creation.4user-invocable: true5---67**Language: Always interact with the user in 日本語.**89# impl-wt-en1011Worktree-isolated version of `impl`. Implements without affecting the main working tree.1213## Prerequisites1415- Claude Code environment16- `git`, `gh` CLI1718## Arguments1920- **Issue number** (e.g., `/impl-wt-en #123`): Fetch requirements from GitHub Issue21- **Issue URL** (e.g., `/impl-wt-en https://github.com/owner/repo/issues/123`): Same as above22- **Text** (e.g., `/impl-wt-en Add user authentication`): Use text as requirements23- **No arguments**: Interview the user for requirements2425## Forbidden Actions (Critical)2627If any of the following occurs, redo that phase. Skipping for "context savings" or "small change" is not accepted.2829- Skipping any sub-step (2-1 to 2-6) with "later", "leave as TODO", or "separate PR"30- Silently skipping a phase or sub-step without declaring it to the user31- Committing with unimplemented tests or dummy assertions (e.g., `expect(true).toBe(true)`)32- Self-reviewing instead of calling the `review` agent33- Skipping lint/format without attempting to run (skipping is allowed only after running and confirming no settings exist)3435If scope reduction is needed, redo Phase 1 scope splitting and confirm with the user instead of skipping phases.3637## Phase 1: Requirements Analysis and Scope Splitting38391. Retrieve requirements from arguments40 - Issue: Read body and comments via `gh issue view`41 - Text: Use as-is42 - No arguments: Interview the user432. Check for spec documents44 - If CLAUDE.md specifies the spec location, follow it45 - Otherwise, search broadly with Glob (`**/SPEC.md`, `**/spec/**`, `docs/**`, etc.)46 - Read any documents linked in the Issue body47 - Cross-reference spec contents with requirements and use as implementation input48 - If no spec found, proceed as-is493. Record the current branch as the base branch (PR merge target)50 - Run `git branch --show-current` and display to user: "Base branch: <branch-name>"51 - Retain this name until PR creation in Phase 3524. Determine the working branch name (see `references/branch-naming.md`)535. **Create git worktree** (see `references/worktree-setup.md`)546. Split requirements into independently implementable and testable units557. Sort by dependencies and determine implementation order568. Create tasks with TaskCreate5758- Explore and understand the codebase to grasp requirements accurately59- Confirm unclear specs with the user60- Confirm backward compatibility with the user if breaking changes exist6162## Phase 2: Implementation Cycle (repeat per scope)6364**IMPORTANT: Specify the worktree path as working directory in all subagent calls during Phase 2.**6566**Set the current scope task to `in_progress` via `TaskUpdate` at the start of each scope.**6768#### 2-1: Plan69- Create an implementation plan with the `Plan` agent70- Clarify change locations, impact scope, and test requirements71- Include worktree path in prompt7273#### 2-2: Develop74- Implement (including tests) with the `develop` agent75- Satisfy requirements with minimal changes76- Include worktree path in prompt77- **Write production-ready code. The following do NOT count as complete implementation:**78 - Tests containing only mocks/stubs with no real code79 - Functions filled with `TODO`, `NotImplementedError`, `pass`, or `throw new Error("not implemented")`80 - Interface/type definitions only with no actual implementation8182#### 2-3: Review83- Code review with the `review` agent84- Evaluate requirement conformance, code quality, and test sufficiency85- Include worktree path in prompt86- **Incomplete implementation check**: Verify no mock/stub-only code, TODO/NotImplementedError placeholders, or empty function bodies8788#### 2-4: Improvement Cycle89- If review issues found -> fix with `develop` -> re-review -> repeat until no issues9091#### 2-5: Format & Lint92- Run format/lint on changed files per project settings93- **Run format/lint commands inside the worktree directory**94- Skip if no settings found9596#### 2-6: Commit (mandatory)97- **Commit at each scope completion. Never skip.**98- **Run `git add` / `git commit` inside the worktree directory**99- Follow commit message conventions in CLAUDE.md100- **After committing, set the task to `completed` via `TaskUpdate`**101102## Phase 3: Final Verification and PR Creation1031041. Confirm all scopes are implemented1052. **Run full test suite inside the worktree directory**1063. **Run `git push -u origin <working-branch>` inside the worktree directory**1074. Create PR with `gh pr create --base <base-branch>`108 - **Use the base branch recorded in Phase 1. Never fall back to `main` or `master`.**109 - If unclear, check fork point with `git log --oneline --graph HEAD...main`110 - With Issue: Include Issue number in title, then link via `gh pr edit <PR#> --add-issue <Issue URL>` after creation (do not use Closes keyword)111 - PR body: Change summary + manual checklist (see `templates/pr-checklist.md`)1125. Report implementation summary and **worktree path** to user113114Report example:115```116## Done117- PR: <URL>118- Worktree: <path> (run `git worktree remove <path>` after verification)119```120121## Rules122123- Each scope must be independently implementable and testable124- **Commit at each scope completion.** Never proceed without committing125- Fix review issues at all severity levels126- Track progress with TaskCreate/TaskUpdate127- **Phase declaration**: At the start of each sub-step (2-1 to 2-6) display `▶ 2-X start: <name>`, and on completion display `✓ 2-X done`. This prevents silent skipping.128- **Self-check**: Before completing each phase, re-read the corresponding section of this SKILL.md and verify no steps were skipped before moving to the next phase.129- On compaction (context compression), check current progress with `TaskList` before resuming work130- **All git/file operations must be inside the worktree directory. Never modify the main working tree.**