go install github.com/devflowinc/uzi@latest
Make sure that your GOBIN is in your PATH.
export PATH="$PATH:$HOME/go/bin"
- 🤖 Run multiple AI coding agents in parallel
- 🌳 Automatic Git worktree management for isolated development
- 🖥️ Tmux session management for each agent
- 🚀 Automatic development server setup with port management
- 📊 Real-time monitoring of agent status and code changes
- 🔄 Automatic handling of agent prompts and confirmations
- 🎯 Easy checkpoint and merge of agent changes
- Git: For version control and worktree management
- Tmux: For terminal session management
- Go: For installing
- Your AI tool of choice: Such as
claude
,codex
, etc.
Create a uzi.yaml
file in your project root to configure Uzi:
devCommand: cd astrobits && yarn && yarn dev --port $PORT
portRange: 3000-3010
devCommand
: The command to start your development server. Use$PORT
as a placeholder for the port number.- Example for Next.js:
npm install && npm run dev -- --port $PORT
- Example for Vite:
npm install && npm run dev -- --port $PORT
- Example for Django:
pip install -r requirements.txt && python manage.py runserver 0.0.0.0:$PORT
- Example for Next.js:
portRange
: The range of ports Uzi can use for development servers (format:start-end
)
Important: The devCommand
should include all necessary setup steps (like npm install
, pip install
, etc.) as each agent runs in an isolated worktree with its own dependencies.
-
Start agents with a task:
uzi prompt --agents claude:3,codex:2 "Implement a REST API for user management with authentication"
-
Run uzi auto
uzi auto automatically presses Enter to confirm all tool calls
uzi auto
-
Monitor agent progress:
uzi ls -w # Watch mode
-
Send additional instructions:
uzi broadcast "Make sure to add input validation"
-
Merge completed work:
uzi checkpoint funny-elephant "feat: add user management API"
Creates new agent sessions with the specified prompt.
uzi prompt --agents claude:2,codex:1 "Build a todo app with React"
Options:
--agents
: Specify agents and counts in formatagent:count[,agent:count...]
- Use
random
as agent name for random agent names - Example:
--agents claude:2,random:3
- Use
Lists all active agent sessions with their status.
uzi ls # List active sessions
uzi ls -w # Watch mode - refreshes every second
AGENT MODEL STATUS DIFF ADDR PROMPT
brian codex ready +0/-0 http://localhost:3003 make a component that looks similar to @astrobits/src/components/Button/ that creates a Tooltip in the same style. Ensure that you include a reference to it and examples on the main page.
gregory codex ready +0/-0 http://localhost:3001 make a component that `
Monitors all agent sessions and automatically handles prompts.
uzi auto
Features:
- Auto-presses Enter for trust prompts
- Handles continuation confirmations
- Runs in the background until interrupted (Ctrl+C)
Terminates agent sessions and cleans up resources.
uzi kill agent-name # Kill specific agent
uzi kill all # Kill all agents
Executes a command in all active agent sessions.
uzi run "git status" # Run in all agents
uzi run --delete "npm test" # Run and delete the window after
Options:
--delete
: Remove the tmux window after running the command
Sends a message to all active agent sessions.
uzi broadcast "Please add error handling to all API calls"
Makes a commit and rebases changes from an agent's worktree into your current branch.
uzi checkpoint agent-name "feat: implement user authentication"
Removes all Uzi data and configuration.
uzi reset
Warning: This deletes all data in ~/.local/share/uzi
Running different AI tools:
uzi prompt --agents=claude:2,aider:2,cursor:1 "Refactor the authentication system"
Using random agent names:
uzi prompt --agents=random:5 "Fix all TypeScript errors"
Running tests across all agents:
uzi run "npm test"