Overview
OpenABCode is an LLM-routing coding agent that dynamically routes tasks to the best-suited models:
Google ecosystem–related coding tasks are routed to Gemini.
Code review and testing are routed to ChatGPT.
- General coding tasks are routed to Claude.
Quick start
Install OpenABCode with npm:
npm install -g --ignore-scripts @openabcode/coding-agent
--ignore-scripts disables dependency lifecycle scripts during install. OpenABCode does not require install scripts for normal npm installs.
On Linux or macOS, you can also use the installer:
curl -fsSL https://openabcode.com/install.sh | sh
To uninstall openabcode itself, use npm for curl and npm installs:
npm uninstall -g @openabcode/coding-agent
For pnpm, Yarn, or Bun installs, use the matching global remove command: pnpm remove -g @openabcode/coding-agent, yarn global remove @openabcode/coding-agent, or bun uninstall -g @openabcode/coding-agent.
Then run it in a project directory:
openabcode
Authenticate with /login for subscription providers, or set an API key such as ANTHROPIC_API_KEY before starting openabcode.
For the full first-run flow, see Quickstart.
Start here
- Quickstart - install, authenticate, and run a first session.
- Using OpenABCode - interactive mode, slash commands, context files, and CLI reference.
- Providers - subscription and API-key setup for built-in providers.
- Security - project trust, sandbox boundaries, and vulnerability reporting.
- Containerization - sandbox openabcode with Gondolin, Docker, or OpenShell.
- Settings - global and project settings.
- Keybindings - default shortcuts and custom keybindings.
- Sessions - session management, branching, and tree navigation.
- Compaction - context compaction and branch summarization.
Customization
- Extensions - TypeScript modules for tools, commands, events, and custom UI.
- Skills - Agent Skills for reusable on-demand capabilities.
- Prompt templates - reusable prompts that expand from slash commands.
- Themes - built-in and custom terminal themes.
- OpenABCode packages - bundle and share extensions, skills, prompts, and themes.
- Custom models - add model entries for supported provider APIs.
- Custom providers - implement custom APIs and OAuth flows.
Programmatic usage
- SDK - embed openabcode in Node.js applications.
- RPC mode - integrate over stdin/stdout JSONL.
- JSON event stream mode - print mode with structured events.
- TUI components - build custom terminal UI for extensions.
Reference
- Session format - JSONL session file format, entry types, and SessionManager API.
Platform setup
Development
- Development - local setup, project structure, and debugging.