一键导入
worktrunk-worktrees
worktreeを作成・切り替え・掃除し、並列作業を開始する。wt switch --create、wt merge、wt list、Issue起点のブランチ作成時に使用する。エージェント開始前チェック、ブランチ作成フローを含む。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
worktreeを作成・切り替え・掃除し、並列作業を開始する。wt switch --create、wt merge、wt list、Issue起点のブランチ作成時に使用する。エージェント開始前チェック、ブランチ作成フローを含む。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
親子 Claude Code セッション間の委譲操作を行う。delegate(子を起動してキック)、send(既存ペインへ1行/キックオフ送信・誤送信防止つき)、list(宛先確認)、report(子→親の申し送り)を自然言語の意図から判断して実行する。tmux 環境前提。
oe-* オーケストレーションツール群(engine 本体 / 親子委譲 / SO ゲート / 選択・観測)と駆動層規律の統合概観。複数エージェント委譲・設計SO/実装SO・read-only 観測・engine 1 サイクルを使うとき、ツール群の全体像をリポジトリ走査でなく一貫した形で把握したいときに使用する。
エラー/バグ調査で、入力→出力のコードパスに未読区間がある限り外部要因(インフラ差異等)の仮説に進まない。外部要因に飛ぼうとするとき、原因が再現しないと判断しそうなときに使用する。仮説を tmp/hypothesis-NNN.md に外部化し、コードパスの read-state を可視化する。
プランをKickoff Document形式に変換する。セカンドオピニオン投入・リポジトリアーカイブ・ピアレビュー共有時に使用する。命名規約・frontmatter・セクション構造をKickoff形式に整える。
設計判断を確定する前に、ゼロベースで未探索の代替案を最低1回引き出し、その証跡を確定前に残してから確定する。複数の選択肢を A/B 等で確定しかけたとき、ADR / Decision / kickoff の設計判断(DJ-N)を確定・記録するときに使用する。so-compare 選択肢拡張・探索木の外部化を含む。
so-compare.shでセカンドオピニオン(Codex/Claude/Cursor)を取得し、結果を比較する。ピアレビュー、修正方針の検証、設計判断の反証に使用する。**弱 SO**(1周可・partial=disclose・0はなし)。プロンプト設計原則、結果読み込み手順、合意判定基準を含む。
| name | worktrunk-worktrees |
| description | worktreeを作成・切り替え・掃除し、並列作業を開始する。wt switch --create、wt merge、wt list、Issue起点のブランチ作成時に使用する。エージェント開始前チェック、ブランチ作成フローを含む。 |
| depends | [{"skill":"branch-naming"},{"cli":"wt"}] |
git checkout の代わり)wt CLI がインストール済みであること(which wt で確認)wt config shell install)branch-naming スキルの命名規則に従ったブランチ名で worktree を作成する。
# デフォルトブランチから作成(--base 省略時)
wt switch --create feature/#123_add_export
# ベースブランチを明示指定
wt switch --create fix/#456_token_validation --base master
wt switch --create fix/#456_token_validation --base main
--base 省略時はデフォルトブランチ(master または main)の最新版から作成される{prefix}/#{issue番号}_{簡潔な説明}(branch-naming スキル参照)wt switch --create は worktree 作成と切り替えをまとめて行うが、実行環境によっては worktree は作成されても、呼び出し元の現在位置が意図した worktree に移らない場合がある。
作成直後は、続行前に以下を確認する。
pwd
wt list
pwd が意図した worktree を指していれば、そのまま作業を続けてよいwt list に新しい worktree が見えているのに pwd が想定外なら、「作成は成功したが現在位置だけがずれている」状態として扱うwt switch --create を再実行しない。まず既存 worktree を再利用するClaude Code セッションでは、wt switch してもセッションの cwd は worktree に移らない(シェルの cd が親プロセス=Claude に消費されないため。!pwd はリポジトリルートのまま)。これは異常ではなく、ファイル操作は絶対パスで行われるため編集は正しく worktree に落ちる(cwd は表示上の話)。worktrunk 本来の「セッション re-root」は EnterWorktree(/wt-switch-create)経由のときだけ起きる。
cwd が追従しない結果、cwd ベースでは「今どの worktree か」を識別できない。並列セッションの識別は セッション命名フック(canonical/hooks/、Issue #124)が担う: wt switch のたびに post-switch hook が #<issue> <slug> を記録し、セッション名(→ tmux pane title)へ反映する。設定は canonical/hooks/README.md の「session-name.sh」節を参照。
作成後に現在位置がずれていた場合や、fallback で別の worktree 進入手段を使いたい場合は、先に既存 worktree の有無を確認する。
wt list
git worktree list
# 既存 worktree へ再入場
wt switch <branch>
wt switch <branch> を優先し、パスが明確な場合のみ cd <worktree-path> を使う# 全 worktree の状態確認
wt list
# JSON 出力(スクリプト向け)
wt list --format=json
# CI ステータス・行差分・サマリも表示
wt list --full
# worktree がないブランチも含める
wt list --branches
# 既存 worktree に切り替え
wt switch feature/#123_add_export
# 前回の worktree に戻る(cd - のように)
wt switch -
# デフォルトブランチの worktree に戻る
wt switch ^
# GitHub PR のブランチに切り替え
wt switch pr:123
# デフォルトブランチにマージ(squash + rebase + FF + worktree 削除)
wt merge
# commit/squash をスキップ(rebase は通常どおり継続)
wt merge --no-commit
# コミット履歴を保持してマージ
wt merge --no-squash
# マージせず worktree のみ削除(ブランチはマージ済みなら削除)
wt remove
# untracked files がある worktree を削除
wt remove --force
# 未マージブランチを強制削除
wt remove -D
wt merge のデフォルト動作は squash(複数コミットを1つに結合)。
wt merge では squash 時にエディタが開くので、その場でコミットメッセージを Conventional Commits 形式に書き直すこと(wt merge が生成するデフォルトメッセージをそのまま使わない)wt merge --no-commit は commit/squash をスキップするが、rebase は --no-rebase を付けない限り継続する。clean working tree が必要wt merge --no-commit はカスタム squash メッセージを自分で付けたいときの用途ではない。手動でコミット準備を済ませた後の特殊用途として扱う--no-squash を検討する新しいエージェントセッションや並列タスクを開始する前に、以下を確認する:
wt list で正しい worktree にいるか確認git status で前タスクの未コミット変更が残っていないか確認# ターミナルから Cursor で worktree を開く
cursor <worktree-path>
# または Cursor の File > Open Folder で worktree ディレクトリを指定
Cursor の built-in Git Worktrees UI(Source Control パネル)は使用しない(次項参照)。
worktree の操作は全て wt CLI 経由で行う。Cursor の Git Worktrees UI は使用しない。
理由: wt CLI とCursor の worktree UI が同じ worktree を異なる方法で管理すると、状態の不整合が起きる可能性がある。wt を正本(single source of truth)とすることで、人間・エージェントともに同じ CLI で操作し、把握漏れを防ぐ。
master または mainwt switch ^ でデフォルトブランチを抽象的に参照できる(名前を覚える必要がない)--base 指定時は実際のデフォルトブランチ名を使う(--base master or --base main)