跳转到主要内容
一个轻量级 AI agent CLI。官方仓库: https://github.com/HKUDS/nanobot
协议:OpenAI 兼容
  • Base URL: https://api.orcarouter.ai/v1必须包含 /v1

安装

先安装 uv,然后安装 nanobot 命令:
uv tool install nanobot-ai

配置

编辑 ~/.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"
    }
  }
}

运行

nanobot agent -m "Reply with exactly: OK" --no-logs --no-markdown
期待回复 OK

注意事项

  • 使用预定义的 custom provider——不要自创 provider 名称。自定义名称会被忽略,你会得到 provider 'None' 错误。
  • 不要custom provider 添加 apiType 字段。只有内置的 openai provider 支持 apiType;把它加到 custom 上会导致校验失败。
  • base URL 保留尾部的 /v1,且 agents.defaults.provider 必须设为 custom
  • 模型名称使用 vendor/model 格式。把 orcarouter/auto 换成具体模型,例如 anthropic/claude-opus-4.8google/gemini-2.5-flash

启用思考 / 推理

agents.defaults(或 modelPresets 条目)下设置 reasoningEffort。有效取值:none / low / medium / high / max。省略它(或设为 null)会遵循模型的默认行为。
{
  "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 必须大于思考预算。 nanobot 会把 reasoningEffort: high 转换成 Anthropic 的 thinking.budget_tokens;如果 maxTokens(例如默认的 4096)更小,上游会返回 400 max_tokens must be greater than thinking.budget_tokens。把 maxTokens 提高到 ~16000 即可解决。(已验证:返回 ✻ 391。)