把 oh-my-pi (omp) 固定到 Infimaker 聚合网关:维护模型白名单、角色模板、快捷命令、advisor 配置和一键启用脚本。同学只要配置 ai_sk 环境变量,就能一键切到同一套 OMP 模型路由。
当前推荐:OMP 默认、规划、advisor 均使用 infimaker/gpt-5.5:xhigh;慢模型和视觉模型使用 infimaker/claude-opus-4-8;日常任务使用 infimaker/deepseek-v4-pro;轻量任务使用 deepseek-v4-flash / glm-5-turbo。
不维护第二套模型路由,不恢复已删除的旧模板。
写入 Infimaker provider 模型白名单、安装 infimaker.yml 模板、维护 omp-model-switch 切换命令(bootstrap 另生成 omp_infi 别名),并启用 advisor。
omp(oh-my-pi)是一个本地 AI 编程/对话助手,类似 Claude Code,通过 omp 命令在终端启动,把"调用哪个大模型"这件事按任务角色自动路由,免去每轮手动选模型。当前版本 v16.3.11,二进制位于 ~/.local/bin/omp,官方安装 curl -fsSL https://omp.sh/install | sh。
omp 不直接绑定单一模型,而是把任务分为若干"角色",每个角色挂一个模型档位。配置在 ~/.omp/agent/config.yml 的 modelRoles 段:
default 日常对话与编码主力slow 深度推理(复杂调试/架构分析)plan 架构规划advisor 顾问(每 N 轮自动介入,subagents 协同)designer 设计/前端task 工具型任务(fast)vision 图像理解commit / smol / tiny 提交、轻量、极轻量Infimaker 是聚合网关,一份 ai_sk Token 可调多家模型(GPT/Claude/DeepSeek/GLM)。omp 作为本地客户端,把上述角色按"任务复杂度 × 模型擅长项"路由到 Infimaker 的不同模型,实现:
目录结构(本地已初始化):
| 路径 | 作用 |
|---|---|
~/.local/bin/omp | omp 主程序(v16.3.11,约 118MB 单二进制) |
~/.omp/agent/config.yml | 当前生效配置:modelRoles + advisor + theme 等 |
~/.omp/agent/models.yml | provider 白名单(Infimaker 网关 + 34 个模型) |
~/.omp/templates/ | 档位模板:INFIMAKER.md、omp-model-switch、models/infimaker.yml |
~/.omp/agent/{agent,history,models}.db | 会话/历史/模型元数据(SQLite) |
启动与常用 flag:终端运行 omp 进入交互;omp --model opus 临时指定模型(模糊匹配);--slow/--plan/--smol 临时覆盖对应角色;-p "提示" 非交互单轮;-c 续上一会话;--profile <name> 隔离配置。运行 omp --help 看全部。
本节按操作系统给出 omp 本体的安装、配置、启动命令,全部使用各系统自带终端,无需 Python。当前环境:macOS arm64 · omp v16.3.11 · ~/.local/bin/omp · zsh。完整参考见 github.com/can1357/oh-my-pi。
通用前置:Infimaker 网关从环境变量 ai_sk 读取 Bearer Token。各平台均需先设置 ai_sk,再写入 provider 白名单 models.yml(已提供静态文件 OMP_INFIMAKER_MODELS.yml,apiKey: ai_sk 占位、不含真实密钥),最后用 omp config set 写入角色路由。
在"终端"(Terminal.app,默认 zsh)中执行:
# 1. 安装(三选一)
curl -fsSL https://omp.sh/install | sh # 官方脚本,装到 ~/.local/bin/omp
brew install can1357/tap/omp # Homebrew
bun install -g @oh-my-pi/pi-coding-agent # Bun(需 bun ≥ 1.3.14)
# 2. 验证
omp --version # 期望: omp/16.3.11
# 3. 设置 Infimaker Token(持久化写入 ~/.zshrc)
echo "export ai_sk='<Infimaker Bearer Token>'" >> ~/.zshrc
source ~/.zshrc
# 仅当前会话: export ai_sk='<Infimaker Bearer Token>'
# 4. 写入 provider 白名单 + 角色路由(一条 bootstrap,纯 sh 无 Python)
ai_sk='<Infimaker Bearer Token>' sh -c "$(curl -fsSL http://192.168.29.162:22345/ai/ceo-it-plan-practical/modules/ai/OMP_INFIMAKER_BOOTSTRAP.sh)"
# 5. 启动
omp
若 command -v omp 无输出:echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc && source ~/.zshrc。
在 PowerShell 中执行(无需 Git Bash / Python):
# 1. 安装 omp(装到 $env:LOCALAPPDATA\omp)
irm https://omp.sh/install.ps1 | iex
# 2. 验证
omp --version
# 3. 设置 Infimaker Token
$env:ai_sk='<Infimaker Bearer Token>' # 仅当前窗口
[Environment]::SetEnvironmentVariable('ai_sk','<Infimaker Bearer Token>','User') # 持久(重开终端生效)
# 4. 创建配置目录 + 下载 provider 白名单
New-Item -ItemType Directory -Force "$env:USERPROFILE\.omp\agent", "$env:USERPROFILE\.omp\templates\models" | Out-Null
Invoke-WebRequest -Uri http://192.168.29.162:22345/ai/ceo-it-plan-practical/modules/ai/OMP_INFIMAKER_MODELS.yml -OutFile "$env:USERPROFILE\.omp\agent\models.yml"
# 5. 写入角色路由(omp 自身命令,跨平台)
omp config set advisor.enabled true
omp config set modelRoles '{"default":"infimaker/gpt-5.5:xhigh","slow":"infimaker/claude-opus-4-8:xhigh","plan":"infimaker/gpt-5.5:xhigh","advisor":"infimaker/gpt-5.5:xhigh","designer":"infimaker/claude-sonnet-4-7:high","task":"infimaker/deepseek-v4-pro:high","vision":"infimaker/claude-opus-4-8:high","commit":"infimaker/glm-5-turbo:medium","smol":"infimaker/deepseek-v4-flash:low","tiny":"infimaker/glm-5-turbo:minimal"}'
# 6. 启动
omp
Windows bash 工具(可选):安装器 install.ps1 会自动在 %USERPROFILE%\.omp\agent\settings.json 写入 shellPath(优先 Git Bash C:\Program Files\Git\bin\bash.exe,其次 PATH 上的 bash.exe)。未找到时 bash 工具不可用,但 omp 本体与上述安装/配置/启动命令不受影响。需要 bash 工具时安装 Git for Windows 并手动写入 settings.json:
{ "shellPath": "C:\\Program Files\\Git\\bin\\bash.exe" }安装命令统一为 curl -fsSL https://omp.sh/install | sh(装到 ~/.local/bin/omp),各发行版仅前置依赖不同:
# ── Ubuntu / Debian(apt)──────────────────────────────────
sudo apt update && sudo apt install -y curl ca-certificates
curl -fsSL https://omp.sh/install | sh
# ── RHEL / CentOS / Rocky(dnf / yum)──────────────────────
sudo dnf install -y curl ca-certificates # 旧版用 sudo yum install -y curl
curl -fsSL https://omp.sh/install | sh
# ── Arch / Manjaro(pacman)────────────────────────────────
sudo pacman -S --noconfirm curl ca-certificates
curl -fsSL https://omp.sh/install | sh
安装后配置与启动(三发行版通用,在各自终端 bash 中):
# 验证
omp --version
# 设置 Token(持久化;bash 用 ~/.bashrc,zsh 用 ~/.zshrc)
echo "export ai_sk='<Infimaker Bearer Token>'" >> ~/.bashrc
source ~/.bashrc
# 写入 provider 白名单 + 角色路由(纯 sh bootstrap)
ai_sk='<Infimaker Bearer Token>' sh -c "$(curl -fsSL http://192.168.29.162:22345/ai/ceo-it-plan-practical/modules/ai/OMP_INFIMAKER_BOOTSTRAP.sh)"
# 启动
omp
若 command -v omp 无输出:echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc && source ~/.bashrc。
omp # 交互式(默认)
omp --model opus # 临时指定模型(模糊匹配)
omp --slow # 深度推理
omp --plan # 规划模式
omp --smol # 轻量
omp -p "列出 .ts 文件" # 非交互单轮
omp -c # 续上一会话
omp --profile <name> # 隔离配置
omp --help # 查看全部
# zsh(macOS 默认)— 写入 ~/.zshrc
eval "$(omp completions zsh)"
# bash(Linux 默认)— 写入 ~/.bashrc
eval "$(omp completions bash)"
# fish
omp completions fish > ~/.config/fish/completions/omp.fish
Windows PowerShell:omp 暂未提供官方 PS 补全脚本。
| 路径 | 用途 | 是否需要分享 |
|---|---|---|
~/.omp/agent/models.yml | Infimaker provider 与 34 个模型白名单。 | 由 bootstrap 生成;Windows / 手动路径下载 OMP_INFIMAKER_MODELS.yml 写入 |
~/.omp/templates/models/infimaker.yml | Infimaker modelRoles 模板。 | 需要 |
~/.omp/templates/omp-model-switch | 模板切换脚本,支持 infimaker / opgo。 | 需要 |
modules/ai/OMP_INFIMAKER_BOOTSTRAP.sh | 从未安装 OMP 到同款配置的一条指令 bootstrap(纯 POSIX sh,macOS / Linux)。 | 需要 |
modules/ai/OMP_INFIMAKER_MODELS.yml | Infimaker provider 白名单静态文件,供 Windows PowerShell Invoke-WebRequest 下载(apiKey: ai_sk 占位、不含密钥)。 | 需要 |
~/.local/bin/omp_infi | 快捷切换命令(POSIX sh wrapper,macOS / Linux)。 | 由 bootstrap 生成;手动三步不创建 |
~/.omp/templates/INFIMAKER.md | 这套分享包的文字说明。 | 需要 |
modules/ai/AI_OMP_INTEGRATION.html;目录结构沿用现有 modules/<domain>/UPPER_SNAKE_CASE.html 命名。筛选依据:先探测 Infimaker 下 65 个联通模型;再按 AI 公司分组,每家最多保留前 3 个;Claude / Claude Code >= 4.6 全部保留。gpt-5.4 和 gpt-5.5 采用 Responses streaming 复测通过。
claude-opus-4-8, claude-opus-4-8-real, claude-opus-4-7, claude-opus-4-7-real, claude-opus-4-6*, claude-sonnet-4-7, claude-sonnet-4-6*, claude-fable-5-real, claude-haiku-4-6*。
gpt-5.5, gpt-5.4, gpt-image-2。
glm-5.2, glm-5.1, glm-5-turbo。
deepseek-v4-pro, deepseek-v4-flash。
kimi-k2.7-code, Kimi-K2.6。
MiniMax-M3, MiniMax-M2.7, MiniMax-M2.7-highspeed。
doubao-code, doubao。
qwen3.7-plus, qwen3.7-max, qwen3.6-plus。
模板文件:~/.omp/templates/models/infimaker.yml。
modelRoles:
default: infimaker/gpt-5.5:xhigh
slow: infimaker/claude-opus-4-8:xhigh
plan: infimaker/gpt-5.5:xhigh
advisor: infimaker/gpt-5.5:xhigh
designer: infimaker/claude-sonnet-4-7:high
task: infimaker/deepseek-v4-pro:high
vision: infimaker/claude-opus-4-8:high
commit: infimaker/glm-5-turbo:medium
smol: infimaker/deepseek-v4-flash:low
tiny: infimaker/glm-5-turbo:minimal
注意:新 session 会读取新的角色配置;当前已运行 session 是否热切换取决于 OMP runtime 是否重新读取配置。
本节给出两条路径:从零安装(新机器无 omp,一条指令完成安装 + 配置)与 已安装 OMP(仅写入 Infimaker 模板与 modelRoles)。两者最终都落到同一份 ~/.omp/agent/config.yml + Infimaker 白名单,启用 advisor,并支持快捷切换(bootstrap 生成可选 omp_infi;手动路径用 ~/.omp/templates/omp-model-switch infimaker)。
ai_sk='<Infimaker Bearer Token>' sh -c "$(curl -fsSL http://192.168.29.162:22345/ai/ceo-it-plan-practical/modules/ai/OMP_INFIMAKER_BOOTSTRAP.sh)"
适用于没有安装 OMP 的新机器。脚本会先检测 omp,不存在时执行官方安装脚本 curl -fsSL https://omp.sh/install | sh,再写入 Infimaker models、模板、omp_infi 和 advisor/modelRoles 配置。Windows 用户请按 §0.6 Windows(PowerShell) 用 irm https://omp.sh/install.ps1 | iex 安装并配置。
已安装 omp 的机器,直接重跑 bootstrap 即可(检测到 omp 已存在会跳过安装,只写入 models.yml、模板与 modelRoles):
ai_sk='<Infimaker Bearer Token>' sh -c "$(curl -fsSL http://192.168.29.162:22345/ai/ceo-it-plan-practical/modules/ai/OMP_INFIMAKER_BOOTSTRAP.sh)"
或手动三步(macOS / Linux / Windows 通用;Windows 在 PowerShell 中将 curl -o 换成 Invoke-WebRequest -OutFile,详见 §0.6)。手动方式不创建 omp_infi 快捷命令;需要快捷切换请用上方 bootstrap:
# 1. 下载 provider 白名单
curl -fsSL http://192.168.29.162:22345/ai/ceo-it-plan-practical/modules/ai/OMP_INFIMAKER_MODELS.yml -o ~/.omp/agent/models.yml
# 2. 启用 advisor
omp config set advisor.enabled true
# 3. 写入角色路由
omp config set modelRoles '{"default":"infimaker/gpt-5.5:xhigh","slow":"infimaker/claude-opus-4-8:xhigh","plan":"infimaker/gpt-5.5:xhigh","advisor":"infimaker/gpt-5.5:xhigh","designer":"infimaker/claude-sonnet-4-7:high","task":"infimaker/deepseek-v4-pro:high","vision":"infimaker/claude-opus-4-8:high","commit":"infimaker/glm-5-turbo:medium","smol":"infimaker/deepseek-v4-flash:low","tiny":"infimaker/glm-5-turbo:minimal"}'
# 切全局到 Infimaker(主命令,macOS / Linux)
~/.omp/templates/omp-model-switch infimaker
# omp_infi 是 bootstrap 生成的快捷别名(macOS / Linux,可选;手动三步不创建)
omp_infi
# 只切当前项目
~/.omp/templates/omp-model-switch infimaker --project .
omp_infi --project .
# 预览不写盘
~/.omp/templates/omp-model-switch --diff infimaker
Windows PowerShell 无 omp-model-switch(其为 sh 脚本);快捷切换等价于重跑 §0.6 Windows 第 5 步的 omp config set modelRoles 命令。
omp-model-switcher skill 的作用:当用户说“切换模型 / 切到 opgo / 切到 infimaker / 换模型档位 / 用中转站”等时,agent 不手动编辑 config.yml,而是调用确定性脚本 ~/.omp/templates/omp-model-switch。
| 模板 | 快捷命令 | 说明 |
|---|---|---|
infimaker | omp_infi(bootstrap 生成)/ omp-model-switch infimaker | Infimaker 聚合网关,advisor/default=GPT-5.5。 |
opgo | omp_go | opencode go 套餐,全开源模型组。 |
--project <dir>。切换脚本会备份原配置为 config.yml.bak.<timestamp> 并打印 diff。omp config get advisor.enabled
omp config get modelRoles
omp models
~/.omp/templates/omp-model-switch --status
command -v omp_infi || echo "omp_infi 未创建(手动三步不生成,可用 omp-model-switch)"
echo $ai_sk;一键脚本会在未检测到 token 时直接失败。omp_infi 仅由 bootstrap 生成(macOS / Linux);未生成时直接使用 ~/.omp/templates/omp-model-switch infimaker,效果相同。.omp/config.yml 时会覆盖全局;使用 --project 单独切项目。infimaker 与 opgo 两个档位。分发以下文件到同学机器对应路径:
~/.omp/templates/omp-model-switch
~/.omp/templates/models/infimaker.yml
~/.omp/templates/INFIMAKER.md
modules/ai/OMP_INFIMAKER_MODELS.yml # Windows PowerShell 下载用
同学执行一条指令即可(macOS / Linux;Windows 按 §0.6 Windows(PowerShell) 步骤):
ai_sk='<Infimaker Bearer Token>' sh -c "$(curl -fsSL http://192.168.29.162:22345/ai/ceo-it-plan-practical/modules/ai/OMP_INFIMAKER_BOOTSTRAP.sh)"
如果已经手动同步了模板文件,也可以执行(macOS / Linux,纯 shell 无 Python):
chmod +x ~/.omp/templates/omp-model-switch
export ai_sk='<Infimaker Bearer Token>'
curl -fsSL http://192.168.29.162:22345/ai/ceo-it-plan-practical/modules/ai/OMP_INFIMAKER_MODELS.yml -o ~/.omp/agent/models.yml
omp config set advisor.enabled true
omp config set modelRoles '{"default":"infimaker/gpt-5.5:xhigh","slow":"infimaker/claude-opus-4-8:xhigh","plan":"infimaker/gpt-5.5:xhigh","advisor":"infimaker/gpt-5.5:xhigh","designer":"infimaker/claude-sonnet-4-7:high","task":"infimaker/deepseek-v4-pro:high","vision":"infimaker/claude-opus-4-8:high","commit":"infimaker/glm-5-turbo:medium","smol":"infimaker/deepseek-v4-flash:low","tiny":"infimaker/glm-5-turbo:minimal"}'
omp models
完成标准:omp config get modelRoles 中 advisor 为 infimaker/gpt-5.5:xhigh;omp models 中出现 infimaker provider。
~/.omp/templates/INFIMAKER.md + ~/.omp/templates/models/infimaker.yml + skill://omp-model-switcher