mcpField
R
recollect-worktree

recollect-worktree

github.com/timelessco開発41 回インストール
リポジトリ

recollect-worktree について

recollect-worktreeは、RecollectリポジトリのGit worktreeを管理するスキルです。`.env.local`をコピーして`pnpm install`を実行し、開発やレビュー用の分離ブランチを準備します。

主な機能

  1. 01worktreeとブランチの作成
  2. 02`.env.local`の自動コピー
  3. 03`pnpm install`による依存関係の導入
  4. 04worktreeの一覧表示、切り替え、削除
  5. 05作成・削除前の確認

活用シーン

  1. 01分離したworktreeでPRをレビュー
  2. 02複数の機能を並行開発
  3. 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

実行内容:

  1. worktree がすでに存在するか確認します
  2. ベースブランチをリモートから更新します
  3. 新しい worktree とブランチを作成します
  4. .env.local をコピーします
  5. pnpm install を実行します
  6. 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 コマンド:

  1. 「どのように作業しますか?」と尋ねます
    • 現在の worktree に新しいブランチを作成(現在の環境で作業)
    • Worktree(並行作業)
  2. 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>

コメント