# The Engine
Onebird is a lightweight, CLI-native AI coding framework. Instead of forcing you into a rigid workflow, it bends to your habits. You can endlessly customize it using TypeScript plugins, custom tools, and dynamic prompt architectures, then share your setups as modular packages.
We ship with robust fundamentals while intentionally omitting bloat like native sub-agent orchestration or rigid planning modes. If you need those, just have Onebird code them for you—or grab a community module.
Operate in four different paradigms: interactive TUI, raw JSON streams, RPC endpoints, or a programmatic SDK.
# Intelligence Layer
Endless permutations across 15+ platforms
Connect instantly to OpenAI, Anthropic, Google, Mistral, xAI, Groq, Cerebras, Hugging Face, OpenRouter, Ollama, and plenty more. Secure your connection seamlessly using standard API keys or OAuth flows.
Need a different reasoning engine mid-task? Swap models instantly using /model or the Ctrl+L shortcut. Speed through your pinned favorites via Ctrl+P.
Want to hook up a local or obscure API? Define it in models.json or inject it via plugin.
# State and History
Non-linear, version-controlled conversations
Your chat history isn't a flat log—it's a branching tree. Jump back to any previous node using /tree and fork a new path. Everything is securely saved in one unified file. You can easily apply filters or drop bookmarks on critical insights.
Branching interface in Onebird
Easily render your entire session out as static HTML via /export, or instantly publish an interactive view to a GitHub Gist using /share.
# Semantic Awareness
Precision context engineering
We get out of your way. Onebird's barebones base prompt allows you to design your AI's context window exactly how you envision it.
- Workspace Rules: Automatically load AGENTS.md directives from your root, parent, or global directories.
- Core Personality: Completely rewrite or augment the baseline instructions via SYSTEM.md.
- Memory Compaction: Smart summarization keeps you under token limits. Swap in your own chunking logic or specialized models via plugins.
- Toolkits: Modular capability bundles loaded only when requested. Maximize power while protecting your prompt cache.
- Snippets: Store reusable markdown queries. Expand them instantly by prefixing with /name.
- Active Context: Use plugins to intercept queries, inject RAG results, or read/write to long-term vector storage on the fly.
# Execution Flow
Asynchronous steering
Don't wait for generation to finish. Hit Enter to instantly steer the AI (interrupting its upcoming actions and overriding direction), or use Alt+Enter to queue a polite follow-up command once it completes the current job.
# Customization
Architectural primitives
Instead of bloated built-in features, we give you the raw materials. Plugins are pure TypeScript modules holding deep access to TUI overlays, event loops, keybindings, and internal tool structures.
Want bespoke SSH execution, sandbox environments, strict permission guardrails, MCP servers, or complex sub-agent networks? Build it. (Yes, you can even port Doom to it).
Running custom TUI overlays
Not in the mood to write it yourself? Command Onebird to code the extension for you, or pull from dozens of community examples.
# Guiding Principles
Addition by subtraction
Our core philosophy is absolute minimal interference. If an opinionated feature can be deferred to a plugin or script, we don't put it in the core binary.
- No native MCP: Keep it simple with CLI tools, or load a community plugin if you want robust MCP bridging.
- No forced Sub-agents: Manage concurrent processes via tmux, build your own orchestrator scripts, or download a dedicated extension.
- No disruptive Popups: Hardcode your security in isolated containers, or build custom TUI confirmation prompts that fit your compliance needs.
- No rigid Plan UI: Jot down architecture files, or let a community plugin manage step-by-step progressions.
- No proprietary Task Tracking: Just use a standard TODO.md.
- No hidden Background Bash: Run your servers via standard multiplexers where you have 100% observability.
Check out our manifesto for the complete mental model.