| name | implement-issue |
| description | [3] impl issue の実装指示に従いコードを変更し、テストを通し、PR を作成する。Step 1 では Claude が Codex を代用。変更は git worktree 内に隔離する。 |
implement-issue スキル
概要
[3] 実装工程。type:impl issue を実装し PR を出す。Step 2 以降は Codex が担うが、
Step 1 では Claude が代用する。
実行手順
入力: claim 済み(status:in-progress)の type:impl issue N。
issue-read で [3] と親 [2] を把握し、実装指示・完了条件を確定する。
- worktree 隔離:
.env の LOCAL_CLONE(TARGET_REPO のローカル clone)から
作業用 worktree を切る。env var は永続しないため .env の source は同一ブロックで
行う(protocol §9):
set -a; . ./.env; set +a
git -C "$LOCAL_CLONE" worktree add "$WORKTREE_BASE/issue-<N>" -b "impl/issue-<N>"
破壊的なコード変更はこの worktree 内に限定する。
- issue 本文の指示に従い worktree 内のファイルを実装する(
Edit / Write)。
- テスト・lint を実行し green にする。永続
cd は禁止(CWD はプロジェクト
ルートに保つ — protocol §9)。worktree 内での実行はサブシェルで:
( cd "<WORKTREE_BASE>/issue-<N>" && <test/lint コマンド> )。
失敗が解消できなければ手順 7 へ。
- commit・push・PR 作成。git は
-C、gh pr create はサブシェルで worktree から
実行する(.env を同一ブロックで source):
set -a; . ./.env; set +a
wt="$WORKTREE_BASE/issue-<N>"
git -C "$wt" add -A
git -C "$wt" commit -m "<message>"
git -C "$wt" push -u origin "impl/issue-<N>"
( cd "$wt" && gh pr create --repo "$TARGET_REPO" \
--head "impl/issue-<N>" --title "<title>" --body "Closes #<N>" )
- [3] を
in-progress→review + needs-human に遷移する(issue-transition)。
PR レビュー・マージ(G4)と issue close は人間が行う。
- 失敗時: [3] を
in-progress→blocked + failed に遷移し、issue に
コメントで理由(どこで詰まったか)を残す。
注意
Edit / Write を使うのは [3] 実装工程のみ。[2] 設計工程には渡さない(protocol /
レポート §7-4)。
- worktree は PR マージ後に人間 or 後片付け手順で
git worktree remove する。