主题
语言

OMP (oh-my-pi)

通过 ~/.omp/agent/models.yml 将 OMP (oh-my-pi) 编程智能体连接到 GetVibe API:一个 baseUrl 为 getvibeapi.com/v1、支持自动发现模型的 OpenAI 兼容提供方。

OMP(oh-my-pi,命令 omp)是基于 Pi 构建的终端编程智能体。它从 ~/.omp/agent/models.yml 读取自定义提供方(YAML,而非 JSON)。如果还没有 YAML 文件,OMP 会一次性将旧的 models.json 迁移为 models.yml。

1. 添加提供商

创建或补充 ~/.omp/agent/models.yml。discovery 块会从 https://getvibeapi.com/v1/models 拉取模型列表,并附带每个模型的上下文大小、输出上限和图像支持,因此无需手动列出模型。

providers:
  getvibe:
    baseUrl: https://getvibeapi.com/v1
    apiKey: GETVIBE_API_KEY
    api: openai-completions
    discovery:
      type: openai-models-list
apiKey 是环境变量的名称,而不是密钥本身。如果该变量未设置,OMP 会把变量名当作密钥发送,服务器将返回 401。你也可以直接把密钥粘贴到文件中,但使用变量更安全。

2. 设置密钥并选择模型

在控制台中创建密钥。

export GETVIBE_API_KEY="sk-pv-..."
omp --model getvibe/gpt-6.1-sol

在会话中,可用 /models 或 Ctrl+P 切换模型。示例 ID:getvibe/deepseek-v4.1-flash, getvibe/gpt-6.1-sol, getvibe/claude-sonnet-5.5。完整列表见目录。请使用不带 :suffix 的纯名称:后缀会固定单个通道,并关闭自动切换到健康通道的功能。

检查

omp -p --model getvibe/gpt-6.1-sol "Reply with a single word: ready"

Anthropic 格式的 Claude(可选)

上面的提供方会通过 /v1/chat/completions 发送所有模型(包括 Claude),这已足够。如需原生 Anthropic 格式(/v1/messages),请在同一个 providers 下添加第二个块:

  getvibe-claude:
    baseUrl: https://getvibeapi.com
    apiKey: GETVIBE_API_KEY
    auth: apiKey
    api: anthropic-messages
    models:
      - id: claude-sonnet-5.5
        name: Claude Sonnet 5.5
        reasoning: true
        input: [text, image]
        contextWindow: 1000000
        maxTokens: 128000
这里的 baseUrl 不带 /v1:OMP 会自行追加 /v1/messages。请保留 auth: apiKey,否则 OMP 会按 Claude Code 订阅的方式构造请求。选择模型时使用 getvibe-claude/claude-sonnet-5.5。

文件格式见 OMP 文档:docs/models.md。

OMP (oh-my-pi) + GetVibe API — models.yml 提供方 | GetVibe API