使用 Junie CLI
Junie CLI 支持通过自定义 LLM JSON Profile 接入 OpenAI 兼容服务。本文使用项目级配置,配置会随项目保存,但真实 API Key 只从环境变量读取。
准备工作
- 已安装 Junie CLI。
- API Key。
- 可调用的模型 ID。
1. 安装并检查 Junie CLI
Linux 或 WSL:
先安装 Junie CLI 所需的 unzip:
sudo apt-get update && sudo apt-get install -y unzip
curl -fsSL https://junie.jetbrains.com/install.sh | bash
export PATH="$HOME/.local/bin:$PATH"
junie --version
如需在以后打开终端时自动生效,执行:
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
macOS:
curl -fsSL https://junie.jetbrains.com/install.sh | bash
junie --version
Windows 请按 Junie CLI 官方安装说明 安装后,执行:
junie --version
2. 设置 API Key
Windows PowerShell:
$env:YOUR_API_KEY = "YOUR_API_KEY"
Linux、macOS 或 WSL:
export YOUR_API_KEY="YOUR_API_KEY"
请将右侧的 YOUR_API_KEY 替换为真实 API Key。不要把真实 Key 写入 JSON Profile。
3. 创建自定义模型 Profile
在代码项目根目录创建 .junie/models 目录。
Windows PowerShell:
New-Item -ItemType Directory -Force .junie\models
notepad .junie\models\clawdrouter.json
Linux、macOS 或 WSL:
mkdir -p .junie/models
nano .junie/models/clawdrouter.json
将以下内容写入 .junie/models/clawdrouter.json:
{
"id": "YOUR_MODEL_ID",
"baseUrl": "__DOCS_API_ORIGIN__/v1/chat/completions",
"apiType": "OpenAICompletion",
"apiKey": "${YOUR_API_KEY}"
}
将 YOUR_MODEL_ID 替换为当前 API Key 有权限调用的模型 ID。
Junie 的 baseUrl 必须填写完整接口地址。对于 OpenAI Chat Completions 协议,应以 /v1/chat/completions 结尾。
4. 启动并选择自定义模型
在项目目录中执行:
junie --model custom:clawdrouter
也可以先执行 junie,然后在交互界面中输入:
/model
在模型列表中选择 custom:clawdrouter。
配置参考
| 字段 | 说明 |
|---|---|
id | 服务端使用的模型 ID。 |
baseUrl | 完整接口地址。Junie 不会自动补充路径。 |
apiType | 请求协议;OpenAI Chat Completions 使用 OpenAICompletion。 |
apiKey | API Key,可使用 ${YOUR_API_KEY} 引用环境变量。 |
primaryModel | 可选。为主要编码模型单独覆盖配置。 |
fasterModel | 可选。为摘要等辅助任务单独配置较快模型。 |
常见问题
custom:clawdrouter 没有出现在模型列表
请确认配置文件路径为 .junie/models/clawdrouter.json,JSON 格式正确,并重启 Junie CLI。
提示缺少 YOUR_API_KEY
请在启动 Junie CLI 的同一个终端中设置环境变量。Windows 关闭 PowerShell 后需要重新设置。
返回 401、403 或 404
| 状态码 | 处理方式 |
|---|---|
401 | API Key 无效或未正确设置。 |
403 | 当前 API Key 无模型调用权限。 |
404 | baseUrl 或模型 ID 不正确。 |
出现工具调用失败或任务中断
Junie 是代理式编码工具,对模型的工具调用和上下文能力要求较高。请更换为支持工具调用、指令遵循能力更强且上下文足够的模型。