About this project
OnIt is an AI agent harness designed for task automation. It provides a language model with a set of tools, a working directory, and a memory of completed actions, then iterates until the task is complete. The agent is consistent across all front ends—only the interface changes.
**Front Ends**
- Terminal text UI (default)
- Browser chat UI with Google login (`onit serve web`)
- A2A protocol server (`onit serve a2a`)
- Telegram or Viber bot gateway (`onit serve gateway`)
- Docker container mode (`onit --container`)
**Model Server Support**
OnIt connects to any OpenAI-compatible endpoint. Supported backends include:
- Self-hosted: vLLM, SGLang, Ollama, MLX (Apple silicon)
- Hosted: OpenRouter, Ollama cloud
The model must support tool calling for the agent to function.
**MCP Tools**
The agent drives work through MCP (Model Context Protocol) tools including:
- Web search (via Ollama web search API or DuckDuckGo fallback)
- Weather lookup (OpenWeatherMap)
- Shell execution (jailed to working directory)
- File editing
- Document search (local indexing)
- GitHub repository management
- Code execution
**Installation**
Requires Python 3.10–3.12. Install from source:
```
git clone https://github.com/sibyl-oracles/onit.git
cd onit && pip install -U --upgrade-strategy eager -e '.[all]'
```
**Configuration**
`onit setup` walks through endpoint configuration (URL, API key, model name). API keys are stored in the OS keychain, never in config files. Supports multiple endpoints with failover and rotation.
**Integrations**
- GitHub: git operations and repository management via API
- Hugging Face: model and dataset downloads
- Local document search with indexing
**Session Management**
Sessions persist across restarts. Commands like `\model`, `\host`, `\key` allow runtime switching. `\save` persists endpoint configuration.
**Security**
- Shell is jailed to the working directory
- Container mode provides hardened isolation
- Command allowlisting in container mode
- API keys stored in OS keychain
**License:** Apache License 2.0
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.