导语

如果你已经用 Ollama 在本地或局域网部署了开源大模型,大概率会想把它接入各种命令行 AI 编程工具(CLI 编程助手)里,看看哪个更好用。本文记录了我将同一个 Ollama 模型接入 10 款主流命令行 AI 编程工具的过程,并补充了新手友好的解释,方便你快速上手。

什么是 Ollama?
Ollama 是一个可以在本地运行开源大语言模型的工具,支持 Llama、Qwen、DeepSeek 等模型。它默认提供一个 HTTP 服务,很多 AI 工具可以通过 OpenAI 兼容接口连接它。

什么是命令行 AI 编程工具?
这类工具运行在终端里,可以读取你的代码仓库、执行命令、修改文件,像一个 AI 编程助手。常见的有 Claude Code、OpenAI Codex CLI、Qwen Code 等。


一、需求背景

  • 我用 Ollama 部署了 qwen3.8-cc:27b(请替换成你实际部署的模型名)。
  • 一开始使用 Claude Code,发现效果不理想。
  • 于是想测试:同一个模型、同一个任务,不同 AI 编程工具的表现差异
  • 因此整理了这些工具接入 Ollama 的配置方法,方便横向对比。

二、操作步骤

1. 安装 Node.js 环境(nvm)

大多数命令行 AI 编程工具都通过 npm 安装,所以需要 Node.js 环境。这里使用 nvm(Node Version Manager)来安装和管理 Node.js 版本。

# 安装 curl(Debian/Ubuntu 系统)
apt install curl -y

# 安装 nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash

# 让当前终端生效
source ~/.bashrc

# 安装 Node.js 24
nvm install 24

说明

  • 如果你已经安装了 Node.js 18+,可以跳过这一步。
  • 如果使用 zsh,请将 source ~/.bashrc 替换为 source ~/.zshrc
  • nvm 可以方便地切换 Node 版本,避免不同工具对 Node 版本要求不一致。

2. 安装并配置不同的 AI 编程工具

在开始之前,请先确认以下信息:

  • Ollama 服务地址:本文示例为 http://192.168.1.100:8080,你需要改成实际地址。
    如果 Ollama 和工具在同一台机器,默认地址通常是 http://127.0.0.1:11434
  • 模型名称:本文示例为 qwen3.8-cc:27b,请通过 ollama list 查看并替换成你的模型名。
  • API Key:本地 Ollama 通常不需要鉴权,但很多工具强制要求填写,可以填任意非空字符串,如 ollamanone

2.1 Anthropic Claude Code

Claude Code 是 Anthropic 官方推出的命令行编程助手。通过环境变量,可以把它指向任意兼容 Anthropic 协议的接口。

npm install -g @anthropic-ai/claude-code

# 配置模型
export AI_MODEL=qwen3.8-cc:27b
export AI_AUTH_TOKEN="ollama"
export AI_BASE_URL=http://192.168.1.100:8080

cat > ~/.claude.json << EOF
{
  "firstStartTime": "2026-04-17T07:13:49.158Z",
  "opusProMigrationComplete": true,
  "sonnet1m45MigrationComplete": true,
  "migrationVersion": 11,
  "changelogLastFetched": 1776410045295,
  "hasCompletedOnboarding": true,
  "env": {
    "IS_SANDBOX": "1",
    "ANTHROPIC_AUTH_TOKEN": "$AI_AUTH_TOKEN",
    "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1",
    "ANTHROPIC_BASE_URL": "$AI_BASE_URL",
    "ANTHROPIC_DEFAULT_SONNET_MODEL": "$AI_MODEL",
    "ANTHROPIC_REASONING_MODEL": "$AI_MODEL",
    "ANTHROPIC_MODEL": "$AI_MODEL",
    "ANTHROPIC_DEFAULT_OPUS_MODEL": "$AI_MODEL",
    "ANTHROPIC_API_KEY": "",
    "ANTHROPIC_DEFAULT_HAIKU_MODEL": "$AI_MODEL",
    "ANTHROPIC_SMALL_FAST_MODEL": "$AI_MODEL",
		"CLAUDE_CODE_MAX_CONTEXT_TOKENS":"49152"
  }
}
EOF

# 运行
claude --dangerously-skip-permissions

关键配置解释:

  • ANTHROPIC_BASE_URL:指定 API 地址,指向你的 Ollama 服务。
  • ANTHROPIC_AUTH_TOKEN:本地 Ollama 不需要真实密钥,填任意字符串即可。
  • 多个 ANTHROPIC_*_MODEL:把 Claude Code 在不同场景下使用的模型统一指定为你的本地模型。
  • CLAUDE_CODE_MAX_CONTEXT_TOKENS:限制上下文长度,避免超过模型的最大窗口。
  • --dangerously-skip-permissions:跳过所有权限确认,适合自动化测试,但有一定安全风险,请谨慎使用。

2.2 OpenAI Codex CLI

Codex CLI 是 OpenAI 官方的命令行编程工具。它通过 config.toml 配置自定义模型提供方。

npm install -g @openai/codex

# 创建配置文件
mkdir -p ~/.codex/
cat > ~/.codex/config.toml << 'EOF'
model_provider = "ollama-launch"
model = "qwen3.8-cc:27b"
model_catalog_json = "~/.codex/model-catalog.local.json"

[model_providers.ollama-launch]
name = "Ollama"
base_url = "http://192.168.1.100:8080/v1/"
wire_api = "responses"
requires_openai_auth = false
supports_websockets = false
EOF

cat > ~/.codex/model-catalog.local.json << 'EOF'
{
  "models": [
    {
      "slug": "qwen3.8-cc:27b",
      "display_name": "qwen3.8-cc:27b",
      "description": null,
      "supported_reasoning_levels": [],
      "default_reasoning_level": "medium",
      "shell_type": "shell_command",
      "visibility": "list",
      "supported_in_api": true,
      "priority": 1,
      "availability_nux": null,
      "upgrade": null,
      "base_instructions": "You are a helpful coding agent.",
      "supports_reasoning_summaries": false,
      "support_verbosity": false,
      "default_verbosity": null,
      "apply_patch_tool_type": null,
      "truncation_policy": { "mode": "bytes", "limit": 10000 },
      "supports_parallel_tool_calls": false,
      "experimental_supported_tools": [],
			"effective_context_window_percent": 95,
      "context_window": 49152
    }
  ]
}
EOF

# 运行 codex
codex --sandbox danger-full-access --ask-for-approval never

关键配置解释:

  • wire_api = "responses":使用 OpenAI Responses API 协议。如果连接失败,可尝试改为 "chat"
  • requires_openai_auth = false:关闭 OpenAI 强制鉴权,因为本地 Ollama 不需要。
  • model_catalog_json:指向自定义模型目录,用于声明模型能力和上下文长度。
  • --sandbox danger-full-access --ask-for-approval never:允许工具自动执行命令且不询问,适合测试环境。

2.3 腾讯 CodeBuddy

CodeBuddy Code 是腾讯推出的命令行 AI 编程助手。通过 ~/.codebuddy/models.json 可以添加自定义模型。

npm install -g @tencent-ai/codebuddy-code

mkdir -p ~/.codebuddy/
cat > ~/.codebuddy/models.json << EOF
{
  "models": [
    {
      "id": "qwen3.8-cc:27b",
      "name": "Auto",
      "vendor": "Tencent Cloud",
      "apiKey": "",
      "url": "http://192.168.1.100:8080/v1/"
    }
  ],
  "availableModels": ["qwen3.8-cc:27b"]
}
EOF

# 运行(首次运行会进入引导流程)
codebuddy-code

关键配置解释:

  • url:指向 Ollama 的 OpenAI 兼容根路径 /v1/
  • apiKey:本地 Ollama 可留空或填任意值。
  • 首次运行 codebuddy-code 时,可能需要进行登录或模型选择,按提示操作即可。

2.4 字节跳动 veCLI

veCLI 是火山引擎推出的命令行 AI 编程工具,配置非常简洁,直接在命令行参数中指定。

npm install -g @volcengine/vecli

# 运行
vecli --baseUrl http://192.168.1.100:8080/v1/ --modelName qwen3.8-cc:27b

说明:
只需将 --baseUrl--modelName 替换成你的实际地址和模型名。


2.5 阿里 Qwen Code

Qwen Code 是阿里推出的命令行 AI 编程助手,使用 ~/.qwen/settings.json 配置自定义 OpenAI 兼容模型。

npm install -g @qwen-code/qwen-code@latest

mkdir -p ~/.qwen/
cat > ~/.qwen/settings.json << 'EOF'
{
  "modelProviders": {
    "openai": [
      {
        "id": "qwen3.8-cc:27b",
        "name": "qwen3.8-cc:27b",
        "baseUrl": "http://192.168.1.100:8080/v1/",
        "envKey": "QWEN_CUSTOM_API_KEY_OPENAI_HTTP_10_22_4_73_8080_V1_D5434E558C5F",
        "generationConfig": {
          "contextWindowSize": 49152
        }
      }
    ]
  },
  "env": {
    "OPENAI_API_KEY": "none",
    "QWEN_CUSTOM_API_KEY_OPENAI_HTTP_10_22_4_73_8080_V1_D5434E558C5F": "none"
  },
  "$version": 4,
  "ui": {
    "autoModeAcknowledged": true
  },
  "security": {
    "auth": {
      "selectedType": "openai"
    }
  },
  "model": {
    "name": "qwen3.8-cc:27b",
    "baseUrl": "http://192.168.1.100:8080/v1/"
  }
}
EOF

# 运行
qwen

关键配置解释:

  • modelProviders.openai:定义一个 OpenAI 兼容的模型提供方。
  • envKey:Qwen Code 自动生成的环境变量名,用于存储 API Key,这里设为 none
  • env 中需要同时设置 OPENAI_API_KEY 和自定义 envKey 的值,本地环境填任意非空值即可。
  • contextWindowSize:根据你的模型上下文长度设置,避免截断。

2.6 智谱 Crush

Crush 是智谱 AI 推出的命令行 AI 编程工具,通过 ~/.config/crush/crush.json 配置自定义 provider。

npm install -g @charmland/crush

mkdir -p ~/.config/crush/
cat > ~/.config/crush/crush.json << 'EOF'
{
  "$schema": "https://charm.land/crush.json",
  "providers": {
    "your-custom-provider": {
      "type": "openai-compat",
      "base_url": "http://192.168.1.100:8080/v1/",
      "api_key": "$YOUR_API_KEY",
      "models": [
        {
          "id": "qwen3.8-cc:27b",
          "name": "qwen3.8-cc:27b"
        }
      ]
    }
  }
}
EOF

# 运行
crush -y

关键配置解释:

  • type: "openai-compat":表示使用 OpenAI 兼容协议。
  • api_key:这里使用了占位符 $YOUR_API_KEY,你需要替换成任意字符串,例如 ollama
  • crush -y:跳过确认提示,适合自动化测试。

2.7 月之暗面 Kimi Code CLI

Kimi Code 是月之暗面推出的命令行 AI 编程工具,配置文件为 ~/.kimi-code/config.toml

npm install -g @moonshot-ai/kimi-code

mkdir -p ~/.kimi-code
cat > ~/.kimi-code/config.toml << 'EOF'
default_model = "kimi-code/ollama"
default_permission_mode = "manual"
default_plan_mode = false
merge_all_available_skills = true
telemetry = true

[providers."managed:kimi-code"]
type = "openai"
base_url = "http://192.168.1.100:8080/v1/"
api_key = "$YOUR_API_KEY"

[models."kimi-code/ollama"]
provider = "managed:kimi-code"
model = "qwen3.8-cc:27b"
display_name = "qwen3.8-cc:27b"
max_context_size = 49152
capabilities = [ "thinking", "always_thinking", "image_in", "video_in", "tool_use" ]
support_efforts = [ "low", "high", "max" ]
default_effort = "max"

[thinking]
enabled = true
effort = "high"
keep = "all"

[loop_control]
max_attempts_per_step = 10
reserved_context_size = 50000

[background]
max_running_tasks = 4
keep_alive_on_exit = false

[[permission.rules]]
decision = "allow"
pattern = "Read"

[[permission.rules]]
decision = "deny"
pattern = "Bash(rm -rf*)"
EOF

# 运行
kimi -y

关键配置解释:

  • default_model 指向自定义模型 kimi-code/ollama
  • [providers."managed:kimi-code"] 定义 OpenAI 兼容的 provider。
  • max_context_sizereserved_context_size 需要根据你的模型窗口调整。
  • capabilities 声明模型支持的能力,例如思考、工具调用等。
  • [[permission.rules]] 设置了权限规则:允许读取操作,拒绝 rm -rf 等危险命令。这是一个很好的安全实践
  • kimi -y:yolo模式。

2.8 OpenCode

OpenCode 是一个开源的终端 AI 编程工具,通过 ~/.config/opencode/opencode.json 配置。

npm install -g opencode-ai

mkdir -p ~/.config/opencode/
cat > ~/.config/opencode/opencode.json << 'EOF'
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "ollama": {
      "name": "Ollama",
      "npm": "@ai-sdk/openai-compatible",
      "options": {
        "baseURL": "http://192.168.1.100:8080/v1/"
      },
      "models": {
        "qwen3.8-cc:27b": { "name": "qwen3.8-cc:27b" }
      }
    }
  },
  "model": "qwen3.8-cc:27b"
}
EOF

# 运行
opencode --auto

关键配置解释:

  • provider.ollama:定义了一个名为 ollama 的 provider,使用 @ai-sdk/openai-compatible 适配器连接 OpenAI 兼容 API。
  • models:列出可用的模型 ID。
  • model:指定默认使用的模型。
  • opencode --auto:进入自动模式,工具会自动执行操作。

2.9 Hermes Agent

Hermes Agent 是 Nous Research 推出的智能体框架,支持多种模型后端。

# 安装 Hermes Agent(两种方式任选其一)
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
# 或者
curl -fsSL https://hermes-agent.nousresearch.com/install.sh > install.sh
chmod +x install.sh
./install.sh --skip-browser

# 配置
cat > ~/.hermes/config.yaml << 'EOF'
model:
  default: "qwen3.8-cc:27b"
  provider: "ollama"
  base_url: "http://192.168.1.100:8080/v1/"
  api_key: "sk-xxxxxxxx"             # 替换为你的 API Key,本地可填任意值
EOF

关键配置解释:

  • 使用官方脚本安装,--skip-browser 表示跳过浏览器相关组件(如果不需要 Web UI)。
  • base_url 指向 Ollama 的 OpenAI 兼容地址。
  • api_key 需要替换成你的实际值,本地 Ollama 可以填任意非空字符串。

2.10 DeepSeek Harness

DeepSeek Harness(dsh)是 DeepSeek 推出的工具,可以启动一个 Web 界面来与模型交互。

npm install -g @deepseek-ai/dsh

# 启动 Web 服务
dsh web --port 3081

# 如果服务运行在远程机器,使用 SSH 本地转发:
# 访问本地 3081 端口会被转发到远端的 Harness 服务
ssh -L 3081:127.0.0.1:3081 root@192.168.1.100 -p 22

# 浏览器访问
# http://127.0.0.1:3081/

说明:

  • dsh web --port 3081 会在本地启动一个 Web 服务。
  • 如果你的 Ollama 或 DeepSeek Harness 运行在远程服务器,可以通过 SSH 隧道将远程端口映射到本地。
  • 然后在浏览器打开 http://127.0.0.1:3081/ 即可使用。

三、注意事项与常见问题

  1. 模型名必须一致
    所有配置中的 qwen3.8-cc:27b 都需要替换成你实际部署的模型名。可以用 ollama list 查看。

  2. Ollama 地址要正确
    本文示例地址为 http://192.168.1.100:8080,请改成你的 Ollama 服务地址。
    如果 Ollama 默认监听 11434 端口,且支持 OpenAI 兼容,可以写 http://127.0.0.1:11434/v1

  3. API Key 可以随便填
    本地 Ollama 一般不需要鉴权,但很多工具强制要求填写,这时可以填 ollamanonesk-xxx 等任意非空字符串。

  4. 上下文长度需要手动设置
    不同工具默认上下文长度可能比你的模型窗口小或大,建议在配置中显式指定,避免模型输出被截断或报错。

  5. 安全风险
    --dangerously-skip-permissions-y--auto 这类参数会跳过人工确认,工具可能会自动执行修改文件、运行命令等操作。建议在隔离环境、容器或测试项目中尝试,避免误操作影响重要数据。

  6. 协议兼容性问题
    这些工具大多依赖 OpenAI 兼容接口,但具体实现可能略有差异。如果某个工具连接失败,可以检查:

    • 是否使用 /v1 路径;
    • 是否需要 chat/completions 而不是 responses
    • 工具版本是否过旧/过新,参考官方文档更新配置。
Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐