recollect-worktree について
recollect-worktreeは、RecollectリポジトリのGit worktreeを管理するスキルです。`.env.local`をコピーして`pnpm install`を実行し、開発やレビュー用の分離ブランチを準備します。
主な機能
- 01worktreeとブランチの作成
- 02`.env.local`の自動コピー
- 03`pnpm install`による依存関係の導入
- 04worktreeの一覧表示、切り替え、削除
- 05作成・削除前の確認
活用シーン
- 01分離したworktreeでPRをレビュー
- 02複数の機能を並行開発
- 03ブランチを切り替えずに機能ブランチをテスト
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ timelessco/ recollect --skill recollect-worktreeインストール後、Claude Code で/recollect-worktreeを入力して読み込まれたか確認します。
同梱ファイルscripts/worktree-manager.sh
詳細
Recollect リポジトリで、分離された並行開発のための Git worktree を管理します。
機能:
mainブランチから、わかりやすいブランチ名で worktree を作成します.env.local(Supabase/Cloudflare のキー)を自動的にコピーしますpnpm installを実行して、worktree を開発できる状態にします- worktree の一覧表示、切り替え、クリーンアップを行います
使用する場面:
- コードレビュー(
/review):PR をレビューするための分離された環境 - 機能開発(
/work):複数の機能を並行して開発 - テスト:切り替えずに機能ブランチをテスト
<quick_start>
# Create a new worktree (copies .env.local, runs pnpm install)
bash .claude/skills/recollect-worktree/scripts/worktree-manager.sh create feature-name
# List all worktrees
bash .claude/skills/recollect-worktree/scripts/worktree-manager.sh list
# Switch to a worktree
bash .claude/skills/recollect-worktree/scripts/worktree-manager.sh switch feature-name
# Clean up inactive worktrees
bash .claude/skills/recollect-worktree/scripts/worktree-manager.sh cleanup
</quick_start>
**`create [from-branch]`**依存関係をインストールした状態で、新しい worktree を作成します。
bash .claude/skills/recollect-worktree/scripts/worktree-manager.sh create feature-login
実行内容:
- worktree がすでに存在するか確認します
- ベースブランチをリモートから更新します
- 新しい worktree とブランチを作成します
.env.localをコピーしますpnpm installを実行します- worktree に移動するためのパスを表示します
list または ls
すべての worktree を、それぞれのブランチとステータスとともに一覧表示します。
switch <name> または go <name>
既存の worktree に切り替えます。
cleanup または clean
確認後、使用していない worktree を削除します。
<workflow_examples> PR レビュー:
# Create worktree for PR review
bash .claude/skills/recollect-worktree/scripts/worktree-manager.sh create pr-664-lightbox
# Move to worktree and start dev
cd .worktrees/pr-664-lightbox
pnpm run dev
# After review, return and cleanup
cd ../..
bash .claude/skills/recollect-worktree/scripts/worktree-manager.sh cleanup
並行開発:
# Start first feature
bash .claude/skills/recollect-worktree/scripts/worktree-manager.sh create feature-a
# Start second feature
bash .claude/skills/recollect-worktree/scripts/worktree-manager.sh create feature-b
# Switch between them
bash .claude/skills/recollect-worktree/scripts/worktree-manager.sh switch feature-a
</workflow_examples>
**`/review` コマンド:** 1. 現在のブランチを確認します 2. すでに PR ブランチにいる場合 → そのブランチにとどまります 3. 別のブランチにいる場合 → worktree を提案します: 「分離された環境でレビューするために worktree を使いますか?(y/n)」 - はい → recollect-worktree スキルを呼び出します - いいえ → 現在のブランチで PR の差分を確認します/work コマンド:
- 「どのように作業しますか?」と尋ねます
- 現在の worktree に新しいブランチを作成(現在の環境で作業)
- Worktree(並行作業)
- worktree を選んだ場合 → recollect-worktree スキルを呼び出します
<design_principles> KISS: マネージャースクリプトは 1 つにし、コマンドはシンプルに、デフォルト設定は適切にします
推奨デフォルト設定:
- 指定がない限り、
mainから worktree を作成します .worktrees/ディレクトリに保存します- ブランチ名を worktree 名にします
.env.localを自動的にコピーしますpnpm installを自動的に実行します
安全性を最優先:
- 作成/削除の前に確認します
- 現在の worktree は削除しません
- わかりやすいエラーメッセージを表示します </design_principles>
<technical_details> ディレクトリ構造:
.worktrees/
├── feature-login/
│ ├── .git
│ ├── .env.local # Copied from main
│ ├── node_modules/ # Installed via pnpm
│ └── ...
└── pr-664-lightbox/
└── ...
仕組み:
- 分離された環境には
git worktree addを使用します - 各 worktree に専用のブランチがあります
- Git の履歴はメインリポジトリと共有されます
- 軽量です(ファイルシステムのリンクを使用し、複製は行いません) </technical_details>
<success_criteria> worktree は、次の条件を満たすと使用可能です。
-
.worktrees/<name>/ディレクトリが存在する - worktree に
.env.localがある -
node_modules/が存在する(pnpm install が完了している) -
pnpm run devが正常に起動する </success_criteria>
コメント
Markdown 対応