Saltar para o conteúdo principal
Uma CLI de agente de IA leve. Repositório oficial: https://github.com/HKUDS/nanobot
Protocolo: compatível com OpenAI
  • Base URL: https://api.orcarouter.ai/v1 (deve incluir /v1)

Instalação

Requer primeiro o uv, depois instale o comando nanobot:
uv tool install nanobot-ai

Configuração

Edite ~/.nanobot/config.json:
{
  "agents": {
    "defaults": {
      "model": "orcarouter/auto",
      "provider": "custom",
      "maxTokens": 4096,
      "temperature": 0.1
    }
  },
  "providers": {
    "custom": {
      "apiKey": "sk-orca-...",
      "apiBase": "https://api.orcarouter.ai/v1"
    }
  }
}

Execução

nanobot agent -m "Reply with exactly: OK" --no-logs --no-markdown
Espere a resposta OK.

Notas

  • Use o provedor predefinido customnão invente seu próprio nome de provedor. Nomes personalizados são ignorados e você recebe um erro provider 'None'.
  • Não adicione um campo apiType ao provedor custom. Apenas o provedor openai integrado suporta apiType; adicioná-lo ao custom falha na validação.
  • A base URL mantém o /v1 final, e agents.defaults.provider deve estar definido como custom.
  • Os nomes de modelos usam o formato vendor/model. Troque orcarouter/auto por um modelo específico como anthropic/claude-opus-4.8 ou google/gemini-2.5-flash.

Ativar thinking / raciocínio

Defina reasoningEffort em agents.defaults (ou em uma entrada de modelPresets). Valores válidos: none / low / medium / high / max. Omiti-lo (ou null) segue o padrão do modelo.
{
  "agents": {
    "defaults": {
      "model": "anthropic/claude-sonnet-4.6",
      "provider": "custom",
      "maxTokens": 16000,
      "reasoningEffort": "high"
    }
  },
  "providers": { "custom": { "apiKey": "sk-orca-...", "apiBase": "https://api.orcarouter.ai/v1" } }
}
maxTokens deve ser maior do que o orçamento de thinking. O nanobot traduz reasoningEffort: high em um thinking.budget_tokens da Anthropic; se maxTokens (por exemplo, o padrão 4096) for menor, o upstream retorna 400 max_tokens must be greater than thinking.budget_tokens. Aumentar maxTokens para ~16000 resolve. (Verificado: retorna ✻ 391.)