Factory Floor
Factory Floor is a native macOS app that manages git worktrees, Claude Code sessions, and dev servers in one window with embedded browsing.
What is Factory Floor?
Factory Floor is a native macOS development workspace for running multiple, parallel “workstreams” in one place. It coordinates git worktrees (branches and isolated directories), Claude Code sessions, development terminals, and dev-server browsing—so you can switch tasks without losing local state.
The app is designed around isolation: each workstream gets its own branch, terminal, and AI agent session running concurrently. It uses Ghostty’s GPU-rendered terminal and supports setup/run/teardown automation via a per-project configuration file.
Key Features
- Single-window workspace for projects and workstreams: view terminals, AI sessions, and an embedded browser together instead of juggling separate apps.
- Git Worktrees per workstream: each workstream uses its own branch and worktree, and the app supports task switching without stashing;
.envfiles are automatically symlinked. - Claude Code integration with session persistence: Claude Code sessions keep a persistent context and can be resumed across app restarts using automatic session IDs.
- Tmux-based persistence for agent sessions: agent sessions survive app restarts via tmux on a dedicated socket to reduce interrupted workflows.
- Embedded browser with auto-port detection: the embedded browser detects the port your run script starts listening on and navigates to it automatically.
- Project lifecycle scripts via
.factoryfloor.json: configuresetup,run, andteardownscripts per project; scripts run in the workstream directory using your login shell, with all fields optional. - Environment variables available in every terminal and script: terminals and scripts receive variables such as project/workstream names, paths, and a deterministic
FF_PORT. - GitHub integration via
ghCLI: the project view can show repo info, open PRs, and branch PR status (powered by theghCLI). - Keyboard-first navigation and shortcuts: shortcuts are available for creating projects/workstreams, switching tabs/workspaces/projects, archiving workstreams, and opening editors/terminals (including external options).
How to Use Factory Floor
- Install Factory Floor: install it via
brew install --cask alltuner/tap/factoryflooror by downloading the source. - Add a project: drop a directory into the sidebar or create a new one; Factory Floor detects git repos, installed tools, and GitHub connections automatically.
- Create a workstream: create a workstream to generate a new git worktree and branch, start a Claude Code session, open a terminal, and add a browser tab.
- Run your dev server and preview: configure
setup,run, and (optionally)teardownin a.factoryfloor.jsonat the project root; when the run command starts listening, the embedded browser opens the detected port. - Switch tasks without losing context: move between workstreams; the tmux-based persistence and Claude Code session IDs are used to keep context across app restarts.
Use Cases
- Parallel feature work in one repo: create separate workstreams for different tasks so each has its own branch, terminal, Claude Code session, and browser tab while you switch between them.
- Task-scoped dependency setup: define a project
setupscript such asnpm installso dependencies are installed when a worktree/workstream is created. - Consistent dev-server runs with deterministic ports: use the
FF_PORTenvironment variable in yourrunscript (for example,PORT=$FF_PORT npm run dev) so each workstream uses its own predictable port. - Automatic cleanup when archiving: set a
teardownscript (for example,docker-compose down) to stop containers or clean resources when a workstream is archived. - Resume AI-assisted debugging across sessions: rely on persisted Claude Code session IDs and tmux socket persistence to continue work after restarting the app.
FAQ
-
Is Factory Floor open source? Yes. Factory Floor is MIT-licensed and the source code is available on GitHub.
-
How does the app open my dev server in the embedded browser? When you start the project via a workstream run script, Factory Floor uses auto-port detection to determine which port the run command is listening on and navigates the embedded browser to that address.
-
Where do I configure setup/run/teardown automation? Add a
.factoryfloor.jsonfile in your project root. It can includesetup,run, andteardownscript commands; all fields are optional. -
What environment variables are available to scripts and terminals? Every workstream terminal and any setup/run/teardown script can use environment variables such as
FF_PROJECT,FF_WORKSTREAM,FF_PROJECT_DIR,FF_WORKTREE_DIR, andFF_PORT. -
Does Factory Floor require GitHub tooling for its GitHub view? The GitHub integration in the project view is powered by the
ghCLI.
Alternatives
- Local terminal + tmux + manual git worktree workflow: you can approximate the same underlying approach (worktrees, tmux persistence, and dev-server monitoring) using separate tools, but you won’t get the single-window orchestration and embedded browser behavior.
- IDE-integrated multi-root workspaces: IDEs can manage multiple projects and terminals, but they may not provide explicit git worktree isolation per task with the same script-driven lifecycle and port-detection flow.
- Git branch-per-task with stashing: a simpler git approach can support context switching, but it typically relies on stashing/cleanup rather than isolated worktrees and task-scoped environments.
Alternatives
GitBoard
GitBoard is a native macOS menu bar app for GitHub Projects to view your kanban board, filter by status, search issues, and create or assign.
Biji
Biji is a versatile platform designed to enhance productivity through innovative tools and features.
Falconer
Falconer is a self-updating knowledge platform for high-speed teams to write, share, and find reliable internal documentation and code context in one place.
OpenFlags
OpenFlags is an open source, self-hosted feature flag system with a control plane and typed SDKs for progressive delivery and safe rollouts.
AakarDev AI
AakarDev AI is a powerful platform that simplifies the development of AI applications with seamless vector database integration, enabling rapid deployment and scalability.
Planndu: Daily Task Planner
Planndu is an intuitive productivity application designed to help users organize tasks, manage projects, build routines, and enhance focus using tools like AI generation and a built-in Pomodoro timer.