Factory Floor
Factory Floor はmacOSでgit worktrees、Claude Codeセッション、開発サーバーを1画面で管理。埋め込みブラウズや自動化も対応。
Factory Floor とは?
Factory Floor は、macOS ネイティブの開発ワークスペースで、複数の並行「ワークストリーム」を1か所で実行します。git worktree(ブランチと分離ディレクトリ)、Claude Code セッション、開発ターミナル、dev サーバーのブラウジングを調整し、ローカル状態を失わずにタスクを切り替えられます。
アプリは分離を重視:各ワークストリームに専用のブランチ、ターミナル、AI エージェントセッションが同時実行されます。Ghostty の GPU レンダリングターミナルを使用し、プロジェクトごとの設定ファイルで setup/run/teardown 自動化をサポートします。
主な機能
- プロジェクトとワークストリームの1ウィンドウワークスペース: ターミナル、AI セッション、埋め込みブラウザを一緒に表示し、別アプリを切り替える必要なし。
- ワークストリームごとの Git Worktrees: 各ワークストリームに専用ブランチと worktree を使用。スタッシュなしでタスク切り替え可能。
.envファイルは自動シンボリックリンク。 - Claude Code 統合とセッション永続化: Claude Code セッションは永続コンテキストを保持。自動セッション ID でアプリ再起動後も再開可能。
- Tmux ベースのエージェントセッション永続化: tmux の専用ソケットでエージェントセッションがアプリ再起動後も存続し、ワークフローの中断を最小化。
- 自動ポート検出付き埋め込みブラウザ: 埋め込みブラウザが run スクリプトのリスニングポートを検出して自動ナビゲート。
.factoryfloor.jsonによるプロジェクトライフサイクルスクリプト: プロジェクトごとにsetup、run、teardownスクリプトを設定。ワークストリームディレクトリでログインシェル実行、全フィールドオプション。- 全ターミナルとスクリプトで利用可能な環境変数: プロジェクト/ワークストリーム名、パス、決定論的
FF_PORTなどの変数をターミナルとスクリプトに提供。 ghCLI による GitHub 統合: プロジェクトビューでリポジトリ情報、PR 開く、ブランチ PR ステータスを表示(ghCLI 駆動)。- キーボード中心のナビゲーションとショートカット: プロジェクト/ワークストリーム作成、タブ/ワークスペース/プロジェクト切り替え、ワークストリームアーカイブ、エディタ/ターミナル開く(外部含む)のショートカットあり。
Factory Floor の使い方
- Factory Floor をインストール:
brew install --cask alltuner/tap/factoryfloorまたはソースをダウンロード。 - プロジェクトを追加: サイドバーにディレクトリをドロップするか新規作成。git リポジトリ、インストールツール、GitHub 接続を自動検出。
- ワークストリームを作成: 新規 git worktree とブランチ生成、Claude Code セッション開始、ターミナル開く、ブラウザタブ追加。
- Dev サーバーを実行してプレビュー: プロジェクトルートに
.factoryfloor.jsonでsetup、run、(オプション)teardownを設定。run コマンドがリスニング開始で埋め込みブラウザが検出ポートを開く。 - コンテキストを失わずにタスク切り替え: ワークストリーム間移動。tmux 永続化と Claude Code セッション ID でアプリ再起動後もコンテキスト保持。
ユースケース
- 1リポでの並行フィーチャー開発: タスクごとに別ワークストリームを作成し、各々に専用ブランチ、ターミナル、Claude Code セッション、ブラウザタブを割り当てて切り替え。
- タスク単位の依存関係セットアップ: プロジェクト
setupスクリプト(例:npm install)を定義し、worktree/ワークストリーム作成時に依存関係をインストール。 - 決定論的ポートでの一貫した dev サーバー実行:
runスクリプトでFF_PORT環境変数を使用(例:PORT=$FF_PORT npm run dev)し、各ワークストリームに予測可能ポートを割り当て。 - アーカイブ時の自動クリーンアップ:
teardownスクリプト(例:docker-compose down)を設定し、ワークストリームアーカイブ時にコンテナ停止やリソースクリーン。 - セッション横断の AI 支援デバッグ再開: 永続 Claude Code セッション ID と tmux ソケットでアプリ再起動後も作業継続。
FAQ
-
Factory Floor はオープンソースですか? はい。MIT ライセンスで、ソースコードは GitHub で公開されています。
-
アプリは dev サーバーを埋め込みブラウザでどう開くのですか? ワークストリームの run スクリプトでプロジェクト開始時、Factory Floor が自動ポート検出で run コマンドのリスニングポートを特定し、埋め込みブラウザをそのアドレスにナビゲートします。
-
Setup/run/teardown 自動化はどこで設定しますか? プロジェクトルートに
.factoryfloor.jsonファイルを追加。setup、run、teardownスクリプトコマンドを含め、全フィールドオプション。 -
スクリプトとターミナルで利用可能な環境変数は? 各ワークストリームのターミナルと setup/run/teardown スクリプトで
FF_PROJECT、FF_WORKSTREAM、FF_PROJECT_DIR、FF_WORKTREE_DIR、FF_PORTなどの環境変数を使用可能。 -
Factory Floor の GitHub ビューに GitHub ツールが必要ですか? プロジェクトビューの GitHub 統合は
ghCLI で駆動されます。
代替案
- ローカルターミナル + tmux + 手動 git worktree ワークフロー: 別々のツールで類似のアプローチ(worktrees、tmux の永続化、dev-server 監視)を近似できますが、1画面でのオーケストレーションや埋め込みブラウザ機能は得られません。
- IDE 統合型マルチルートワークスペース: IDE は複数プロジェクトとターミナルを管理できますが、タスクごとの明示的な git worktree 隔離、スクリプト駆動のライフサイクル、ポート検出フローを提供しない場合があります。
- タスクごとの Git ブランチ + stashing: よりシンプルな git アプローチでコンテキストスイッチをサポートできますが、通常は stashing/クリーンアップに依存し、隔離された worktrees やタスクスコープの環境を使いません。
代替品
GitBoard
GitBoard は macOS のメニューバーで GitHub Projects のカンバンを表示。ステータスで絞り込み、課題検索、作成・割り当て可能。
Biji
Bijiは、革新的なツールと機能を通じて生産性を向上させるために設計された多目的プラットフォームです。
Ably Chat
Ably Chatはカスタムリアルタイムチャット用のAPI/SDK。リアクション、プレゼンス、メッセージ編集/削除に対応し高負荷も設計。
Falconer
Falconerは、スピード重視のチーム向けの自己更新ナレッジ基盤。社内ドキュメントとコード文脈を一元化して共有・検索できます。
OpenFlags
OpenFlagsはオープンソースのセルフホスト型フィーチャーフラグ管理。アプリSDKでローカル評価し、制御プレーンで安全に段階展開。
AakarDev AI
AakarDev AIは、シームレスなベクターデータベース統合を通じてAIアプリケーションの開発を簡素化し、迅速な展開とスケーラビリティを実現する強力なプラットフォームです。