Kaleidoscope is a command-line tool that enables developers to run multiple AI models in parallel on the same coding task, compare their outputs, and choose the best solution seamlessly. It integrates with tmux and git worktrees to provide an efficient and safe workflow for AI-assisted coding.
- Multi-model parallel execution: Run multiple AI models (Claude, GPT, etc.) on the same prompt simultaneously
- Git worktree integration: Each model works in its own isolated git worktree
- Branch management: Automatically creates and manages feature branches
- Interactive iteration: Send follow-up prompts to specific models using @model syntax
- Smart cleanup: Choose winning solutions and automatically merge, or bail and cleanup everything
- Defaults persistence: Save your preferred provider and models in .kaleidoscope config
- Command autocomplete: Tab completion for commands and model names
Currently only MacOS is supported.
- tmux: Must be running inside a tmux session
- brew install tmux (macOS)
 
- opencode: The opencode CLI tool must be installed and configured
- brew install sst/tap/opencode (macOS)
 
Run Kaleidoscope with the required --run flag specifying the command to execute after opencode completes:
Let the fireworks begin!
When launched, Kaleidoscope presents a TUI with the following fields:
- branch-name: Name of the feature branch to create
- task-name: Description of the task
- prompt: Multi-line prompt to send to AI models
- model provider: Select between github-copilot, OpenAI, etc.
- models: Multi-select dropdown to choose which models to run
Navigate with:
- Tab: Cycle between fields
- ↑↓: Navigate dropdowns and multi-line text
- Space: Toggle model selection
- Enter: Submit (creates worktrees and opens panes)
- Ctrl+C or Esc: Cancel and cleanup (press Esc once)
- Alt+b / Alt+f (or Esc then b/f quickly): Move cursor by word in all text inputs
Once models are running in separate panes, you can use these commands in the iteration prompt:
- /bail: Cancel everything and cleanup all panes, worktrees, and branches
- /next <model>: Merge the specified model's changes to the feature branch, push, and cleanup
- /wrap <model>: Similar to next, but returns to new task screen instead of exiting
- @<model> <prompt>: Send a follow-up prompt to a specific model
Example:
Save your preferred provider and model selections:
This creates a .kaleidoscope file in your current directory with your preferences. The file includes:
- Default provider
- Selected models per provider
- Usage statistics for each model (tracked when using /next)
The .kaleidoscope file is a JSON file storing:
- 
Start kaleidoscope in a tmux session: kaleidoscope --run "go test ./..."
- 
Fill in the form: - branch-name: feature/add-auth
- task-name: add-jwt-authentication
- prompt: Add JWT authentication to the API
- Select provider and models (e.g., claude-sonnet-4.5, gpt-5)
 
- 
Press Enter - creates worktrees and opens panes for each model 
- 
Models run in parallel in separate panes 
- 
Review outputs and send follow-up prompts: @claude-sonnet-4.5 add rate limiting
- 
Choose the best solution: 
- 
Kaleidoscope commits changes, merges to feature branch, pushes, and cleans up 
- Setup: Creates a feature branch from your current branch
- Worktrees: For each selected model, creates a git worktree in ../<repo>-<branch>-<task>-<model>/
- Execution: Opens a tmux pane for each worktree and runs opencode run -m <provider>/<model> <prompt>
- Iteration: Allows sending additional prompts to specific models
- Selection: When you /next a model:
- Commits all changes in that model's worktree
- Merges to the feature branch with --no-ff
- Pushes to origin
- Cleans up all panes, worktrees, and temporary branches
 
- Cleanup: /bail removes everything without merging
To use Kaleidoscope to help develop itself, you can run:
This command will run Kaleidoscope to help implement changes to its own codebase, and then build the updated binary. The inner go run main.go --run 'echo "hello world"' command just spins up a simple test command to verify functionality for you to see in the panes.
MIT License - see LICENSE file for details
Edward Champion
- personal website: hec.works
- github: paradise-runner
This project stands on the shoulders of giants:
.png)
 6 hours ago
                                1
                        6 hours ago
                                1
                     
  





