@openbuff/cli
v1.8.1
Published
An AI coding agent that writes code for you. Run it from your project directory, tell it what to do, and it reads and writes files, runs commands, and iterates until the task is done. Supports sub-agents, custom tools, and Bring-Your-Own-Key providers.
Maintainers
Readme
Openbuff — The most powerful coding agent
Openbuff is an open-source, local-first agentic coding CLI that edits your codebase through natural language instructions using your configured OpenAI-compatible or Anthropic-compatible providers. No backend fallback, no credits, no subscription — bring your own keys (BYOK).
Instead of using one model for everything, Openbuff coordinates specialized agents that work together to understand your project and make precise changes.
- Run
openbufffrom your project directory - Tell it what to do
- It will read and write to files and run commands to produce the code you want
Note: Openbuff will run commands in your terminal as it deems necessary to fulfill your request.
Installation
To install Openbuff, run:
npm install -g @openbuff/cli(Use sudo if you get a permission error.)
Usage
After installation, you can start Openbuff by running:
openbuff --cwd /path/to/projectIf --cwd is omitted, Openbuff uses the current directory. Positional
arguments are treated as the initial coding prompt, not as a project path.
Once running, simply chat with Openbuff to say what coding task you want done.
Features
- Understands your whole codebase
- Creates and edits multiple files based on your request
- Can run your tests or type checker or linter; can install packages
- It's powerful: ask Openbuff to keep working until it reaches a condition and it will
- Multi-agent orchestration — a File Picker Agent, Planner Agent, Editor Agent, and Reviewer Agent work together so each step gets the right specialist
- Provider-flexible (BYOK) — route each agent to OpenAI, Anthropic/Claude, ChatGPT/Codex OAuth, OpenRouter, opencode gateways, GLM/Z.ai, or local Ollama/LM Studio
- Custom agents — run the
/initcommand to create your own.agents/with TypeScript generators for programmatic control
Our users regularly use Openbuff to implement new features, write unit tests, refactor code, write scripts, or give advice.
Knowledge Files
To unlock the full benefits of modern LLMs, we recommend storing knowledge alongside your code. Add a knowledge.md file anywhere in your project to provide helpful context, guidance, and tips for the LLM as it performs tasks for you.
Openbuff can fluently read and write files, so it will add knowledge as it goes. You don't need to write knowledge manually!
Some have said every change should be paired with a unit test. In 2024, every change should come with a knowledge update!
Tips
- Type
/helpor just/to see available commands. - Create a
knowledge.mdfile and collect specific points of advice. The assistant will use this knowledge to improve its responses. - Type
undoorredoto revert or reapply file changes from the conversation. - Press
EscorCtrl+Cwhile Openbuff is generating a response to stop it. - Run
/setup opencode-go(oropenai,anthropic,codex,openrouter,ollama,glm) to configure a provider, then/providerto manage config and/modelsto route individual agents.
Troubleshooting
Permission Errors
If you are getting permission errors during installation, try using sudo:
sudo npm install -g @openbuff/cliIf you still have errors, it's a good idea to reinstall Node.
Corporate Proxy / Firewall
If you see Failed to download openbuff: Request timeout or Failed to determine latest version, you may be behind a corporate proxy or firewall.
Openbuff respects standard proxy environment variables. Set HTTPS_PROXY to route traffic through your proxy:
Linux / macOS (bash/zsh):
export HTTPS_PROXY=http://your-proxy-server:port
openbuffWindows (PowerShell):
$env:HTTPS_PROXY = "http://your-proxy-server:port"
openbuffWindows (CMD):
set HTTPS_PROXY=http://your-proxy-server:port
openbuffTo make it permanent, add the export or set line to your shell profile (e.g. ~/.bashrc, ~/.zshrc, or Windows System Environment Variables).
Supported environment variables:
| Variable | Purpose |
| ----------------------------- | --------------------------------------------------------------------------------- |
| HTTPS_PROXY / https_proxy | Proxy for HTTPS requests (recommended) |
| HTTP_PROXY / http_proxy | Fallback proxy for HTTP requests |
| NO_PROXY / no_proxy | Comma-separated list of hostnames to bypass the proxy (port suffixes are ignored) |
Both http:// and https:// proxy URLs are supported. Proxy authentication is supported via URL credentials (e.g. http://user:password@proxy:port).
Feedback
We value your input! Please open a GitHub issue with your feedback. Thank you for using Openbuff!
