跳转到主要内容
oh-my-pi(命令 omp,也称 pi-mono——同一个项目)是一个极简、可扩展的终端编码 agent。
协议:OpenAI 兼容
  • Base URL: https://api.orcarouter.ai/v1 /v1 后缀)

安装

bun install -g @oh-my-pi/pi-coding-agent
需要 bun >= 1.3.14。安装后的命令是 omp

配置

首先把你的 API 密钥导出为环境变量:
export ORCA_KEY="sk-orca-..."
配置文件:~/.omp/agent/models.yml
providers:
  orcarouter:
    baseUrl: https://api.orcarouter.ai/v1
    api: openai-completions
    apiKey: ORCA_KEY
    authHeader: true
    models:
      - id: orcarouter/auto
        name: OrcaRouter Auto
        reasoning: false
        input: [text]
        contextWindow: 200000
        maxTokens: 8192
        compat:
          supportsDeveloperRole: false
          maxTokensField: max_tokens
如果你愿意,可以把 orcarouter/auto 换成具体模型,例如 anthropic/claude-opus-4.8google/gemini-2.5-flash。模型 ID 始终使用 vendor/model 格式。

运行

omp -p --model "orcarouter/orcarouter/auto" "Reply with exactly: OK"
预期输出:OK

注意事项

  • 需要 bun >= 1.3.14。
  • base_url 必须包含 /v1
  • apiKey 字段填的是环境变量的名称,而不是密钥本身;配合 authHeader: true,它会以 Authorization: Bearer <value> 的形式发送。
  • 模型引用使用 provider/model 格式——这里是 orcarouter/orcarouter/auto(provider orcarouter + 模型 ID orcarouter/auto)。
  • 非交互运行使用 -p
  • oh-my-pi 和 pi-mono 是同一个项目;两者的命令都是 omp

启用思考 / 推理

上面默认的模型条目设了 reasoning: false。要启用推理并允许选择 effort,请在模型上声明一个 thinking 块外加一个 compat.reasoningEffortMap
models:
  - id: anthropic/claude-sonnet-4.6
    name: Claude Sonnet 4.6
    reasoning: true
    thinking:
      minLevel: low
      maxLevel: xhigh
      mode: effort
    input: [text]
    contextWindow: 200000
    maxTokens: 8192
    compat:
      supportsDeveloperRole: false
      supportsReasoningEffort: true
      maxTokensField: max_tokens
      thinkingFormat: openai
      reasoningEffortMap: { low: low, medium: medium, high: high, xhigh: high }
然后在运行时用 model:level 后缀挑选一个 effort 级别(须在 minLevel..maxLevel 范围内):
omp -p --model "orcarouter/anthropic/claude-sonnet-4.6:high" "What is 17*23?"
已验证::high 后缀会选择对应 effort 级别,并对 OrcaRouter 有效。