openai-compat provider type 连接任意 OpenAI-compatible service,因此可以接入 siflow endpoint。可用模型请查看 模型广场,例如 glm-5.2。
配置
Crush 会先读取项目级.crush.json / crush.json,然后读取全局 ~/.config/crush/crush.json。在 API 密钥 页面创建 API Key 后,在项目根目录创建 crush.json:
models.large / models.small 会显式设置默认 provider。如果您的 shell 中残留了 OPENAI_API_KEY 或 ANTHROPIC_API_KEY 等变量,这一点很重要;如果没有显式默认值,Crush 可能会自动发现并使用这些官方 providers。
导出 api_key 引用的环境变量:
如果要完全忽略自动发现的官方 providers,可设置
"options": { "disable_default_providers": true }。这样只会使用配置中完整指定的 providers。
如果要自动同步模型列表,可在 provider 下添加 "discover_models": true。Crush 会将从 https://api.siflow.cn/model-api/v1/models 获取的模型与手写条目合并(手写条目优先);对于 openai-compat providers,models 为空也会触发自动发现。
export 只在当前 shell 中有效;如需持久化,请添加到 ~/.bashrc / ~/.zshrc。
验证
glm-5.2 启动。models.large / models.small 已将其固定为默认模型,无需再选择。发送一个任务,例如 “list the current directory and summarize it”,确认 tool calls 和 responses 正常工作。(Ctrl+L 可打开 model picker 切换模型。)
也可以以非交互方式运行单个任务:
crush run 常用 flags 包括:-m provider/model(为本次运行选择模型,例如 -m siflow/glm-5.2)、-q(quiet,不显示 spinner),以及 stdin piping(curl -s https://example.com | crush run "Summarize this")。注意,run 不支持 --yolo;请通过 permissions.allowed_tools 预先允许所需工具:
FAQ
- 模型没有出现在 picker 中,或请求走到了 OpenAI 官方 API:请确认
crush.json位于启动目录(或全局路径),且是合法 JSON;type必须为openai-compat;如果环境变量中设置了其他 providers 的 API key,请添加models.large/models.small来强制默认模型。 - 出现 401 错误:如果
api_key引用环境变量,请确认该变量已导出。也可以直接设置 key,但不要提交到代码仓库。
EBADENGINE warnings 可以忽略。