Sobre o projeto
OnIt é um harness de agente de IA projetado para automação de tarefas. Ele fornece ao modelo de linguagem um conjunto de ferramentas, um diretório de trabalho e uma memória de ações concluídas, iterando até que a tarefa seja finalizada. O agente é consistente em todas as interfaces—apenas a interface muda.
**Interfaces**
- Interface de texto no terminal (padrão)
- Interface de chat no navegador com login Google (`onit serve web`)
- Servidor de protocolo A2A (`onit serve a2a`)
- Gateway de bot Telegram ou Viber (`onit serve gateway`)
- Modo contêiner Docker (`onit --container`)
**Suporte a Servidores de Modelo**
OnIt conecta-se a qualquer endpoint compatível com OpenAI. Backends suportados incluem:
- Auto-hospedados: vLLM, SGLang, Ollama, MLX (Apple silicon)
- Hospedados: OpenRouter, nuvem Ollama
O modelo deve suportar chamada de ferramentas para que o agente funcione.
**Ferramentas MCP**
O agente realiza o trabalho por meio de ferramentas MCP (Model Context Protocol), incluindo:
- Pesquisa web (via API de pesquisa web Ollama ou fallback DuckDuckGo)
- Consulta meteorológica (OpenWeatherMap)
- Execução de shell (restrita ao diretório de trabalho)
- Edição de arquivos
- Pesquisa de documentos (indexação local)
- Gerenciamento de repositórios GitHub
- Execução de código
**Instalação**
Requer Python 3.10–3.12. Instale a partir da fonte:
```
git clone https://github.com/sibyl-oracles/onit.git
cd onit && pip install -U --upgrade-strategy eager -e '.[all]'
```
**Configuração**
`onit setup` percorre a configuração do endpoint (URL, chave API, nome do modelo). As chaves API são armazenadas no chaveiro do sistema operacional, nunca em arquivos de configuração. Suporta múltiplos endpoints com failover e rotação.
**Integrações**
- GitHub: operações git e gerenciamento de repositórios via API
- Hugging Face: downloads de modelos e conjuntos de dados
- Pesquisa local de documentos com indexação
**Gerenciamento de Sessões**
Sessões persistem após reinicializações. Comandos como `\model`, `\host`, `\key` permitem alternância em tempo de execução. `\save` persiste a configuração do endpoint.
**Segurança**
- Shell é restrito ao diretório de trabalho
- Modo contêiner fornece isolamento reforçado
- Lista de permissão de comandos no modo contêiner
- Chaves API armazenadas no chaveiro do sistema operacional
**Licença:** Apache License 2.0
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.