Ronin is a free, open-source desktop harness designed to streamline the workflow of developers using coding agents. It consolidates essential tools like CLIs for coding agents, terminal sessions, browser previews, diff viewers, and source control management into a single, local-first workspace. This eliminates the need to switch between multiple applications, allowing for a more focused and efficient development process.
- Local Execution: All provider processes, terminal sessions, filesystem reads, and git operations are handled locally on your machine, ensuring your code and data remain under your control.
- Bring Your Own CLI: Ronin supports a wide range of coding agent CLIs, including Codex, Claude Code, Cursor, Grok Build, OpenCode, Antigravity, Droid, Kilo, and Pi. You can connect the agents you already trust and switch between them seamlessly without altering your workflow.
- Permission Modes: For each thread, you can define specific permission levels, including Supervised, Auto-accept edits, Auto, and Full access, providing granular control over agent actions.
- Integrated Source Control: Treat Git as an integral part of your conversation. Review diffs, restore checkpoints, manage worktrees, commit, push, and open pull requests directly from the workspace, all without losing context.
- Browser Preview & Interaction: Ronin offers fourteen specialized browser tools, enabling agents to verify their work in real-time within your development server. This includes navigation, interaction, snapshotting, and recording capabilities.
- Unified Workspace: The core concept is the 'thread' as the workspace, with the repository as its foundation. Terminal, browser, diffs, and Git status are all kept within this context for immediate access and action.
- Cross-Platform Compatibility: Ronin is available for Linux, macOS, and Windows, providing a consistent experience across different operating systems.
Ronin is built around the idea that practical coding agent use requires a cohesive interface for managing the entire development loop, from initial prompt to final merge request.