如何调用codebuddy或者其他ai编辑软件的api流量 给 atomcode 等用
2026/9/11 14:46:33 网站建设 项目流程

如何调用codebuddy或者其他ai编辑软件的api流量 给 atomcode 等用

CodeBuddy 原生 API 不是 OpenAI 格式,需要先通过桥接服务转成 OpenAI 兼容接口,AtomCode 等工具才能接入。

最成熟的方案是用CodeBuddy2api做中转。


一、部署 CodeBuddy2api(桥接服务)

CodeBuddy2api 是一个开源项目,能把 CodeBuddy 官方 API 包装成标准的 OpenAI API 格式。

1. 克隆并安装

gitclone https://github.com/Sliverkiss/CodeBuddy2api.gitcdCodeBuddy2api python3-mvenv venvsourcevenv/bin/activate# Windows 用 venv\Scripts\activatepipinstall-rrequirements.txt

2. 配置环境变量

cat > .env << ‘EOF’
CODEBUDDY_PASSWORD=your_secret_password
CODEBUDDY_AUTH_MODE=api_key
CODEBUDDY_API_KEY=your_codebuddy_api_key
CODEBUDDY_INTERNET_ENVIRONMENT=internal
CODEBUDDY_HOST=0.0.0.0
CODEBUDDY_PORT=8001
EOF
.env关键字段(国内版 CodeBuddy 推荐这样配):

# 访问此 API 服务的密码(AtomCode 连接时用的 API Key) CODEBUDDY_PASSWORD=your_secret_password # 认证模式:直接用 CodeBuddy API Key CODEBUDDY_AUTH_MODE=api_key # 你的 CodeBuddy API Key CODEBUDDY_API_KEY=your_codebuddy_api_key # 国内环境必填 CODEBUDDY_INTERNET_ENVIRONMENT=internal # 服务监听地址 CODEBUDDY_HOST=127.0.0.1 CODEBUDDY_PORT=8001

CODEBUDDY_INTERNET_ENVIRONMENT=internal表示走腾讯内网/国内节点,自动指向https://copilot.tencent.com

3. 启动服务

python web.py

服务启动后,OpenAI 兼容端点为:

http://127.0.0.1:8001/codebuddy/v1

二、AtomCode 接入配置

AtomCode 原生支持任意 OpenAI 兼容 API,只需改~/.atomcode/config.toml

配置文件示例

default_provider = "codebuddy" [providers.codebuddy] type = "openai" api_key = "your_secret_password" # 即 CODEBUDDY_PASSWORD model = "auto-chat" # CodeBuddy 默认模型 base_url = "http://127.0.0.1:8001/codebuddy/v1" context_window = 64000

验证连通

启动 AtomCode 后,直接对话测试:

atomcode--providercodebuddy-p"你好,测试连接"

或在 TUI 内用/provider切换后聊天。


三、其他工具同样适用

任何支持自定义base_url+api_key的 OpenAI 兼容客户端,都可以指向http://127.0.0.1:8001/codebuddy/v1,例如:

工具配置位置
OpenCode~/.config/opencode/opencode.json里改baseURL
CursorSettings → Models → OpenAI API → Override URL
Claude Code通过 MCP 或环境变量指向兼容端点
VS Code Copilot / Cline自定义 OpenAI 兼容 endpoint

四、常见问题

问题排查方向
401 Invalid passwordAtomCode 的api_key必须等于CODEBUDDY_PASSWORD
403/401来自 CodeBuddyCODEBUDDY_API_KEY过期或无效,去官网重新获取
找不到凭证确保.envCODEBUDDY_AUTH_MODE=api_key,且CODEBUDDY_API_KEY已填
网络不通检查CODEBUDDY_INTERNET_ENVIRONMENT是否为internal(国内)

五、替代方案(如果你已有 proxy-mcp)

你之前关注过proxy-mcp(OpenClaw Proxy),它的定位是聚合多模型免费算力并转为 OpenAI 兼容接口。如果 proxy-mcp 已经支持或后续支持 CodeBuddy 作为上游源,你可以直接把 AtomCode 的base_url指向 proxy-mcp 的地址,省去单独部署 CodeBuddy2api 这一步。不过目前看来,CodeBuddy2api 是最直接、文档最完整的桥接方案

方法二

对,如果没有 API Key,确实需要先登录获取认证凭证。CodeBuddy 的认证不是简单的静态 Key,而是基于 OAuth 登录后的 Bearer Token。


三种获取凭证的方式

方式适用场景操作
API Key(cb-sk-xxx)有官方 API Key直接填.envCODEBUDDY_API_KEY
CLI 登录个人用户,无 API Keycodebuddy命令扫码登录,token 自动存本地
Web UI 自动认证不想装 CLI启动 CodeBuddy2api 后,浏览器里点「开始认证」

方案一:用 CodeBuddy CLI 登录(推荐,最省事)

1. 安装 CLI

npminstall-g@tencent-ai/codebuddy-code

2. 执行登录

codebuddy

首次运行会弹出选择界面:

Select login method: › Log in via Chinese Site ← 国内用户选这个(微信扫码) Log in via International Site ← 海外用户 Log in via Enterprise Domain ← 企业版 Log in via iOA ← 腾讯内部

Chinese Site,浏览器会打开微信扫码页面,扫码完成即登录成功。

3. CLI 登录后 token 存哪

登录成功后,CLI 会把凭证存到本地(通常是~/.codebuddy/或类似路径)。此时你有两个选择:

A) 让 CodeBuddy2api 自动读取 CLI 凭证

有个更简单的项目codebuddy2openai专门做这个——它直接读取本机 CLI 登录后的 token,自动刷新,无需手动配置。

gitclone https://github.com/HanHan666666/codebuddy2openai.gitcdcodebuddy2openai pipinstallfastapi"uvicorn[standard]"httpx# 此时不再有root警告,再安装依赖# pip install fastapi httpx loguru matplotlib msguard numpy openpyxl opentelemetry-exporter-otlp-proto-grpc==1.33.1 opentelemetry-exporter-otlp-proto-http==1.33.1 packaging pandas~=2.2 cannsim==0.1.0 psutil pyyaml scipy tzdata uvicornpython converter.py

默认跑在127.0.0.1:8787,AtomCode 配base_url = "http://127.0.0.1:8787/v1"即可。

AtomCode 调用 codebuddy2openai

当前服务已经启动:

✅ 本地地址:http://127.0.0.1:8787
提供兼容 OpenAI 的接口:

  • /v1/models
  • /v1/chat/completions

⚠️注意:127.0.0.1仅容器内部可访问。

  • 如果你在容器内运行 converter.py,宿主机不能直接访问,需要改成监听0.0.0.0:8787

第一步:修改 converter.py 监听地址

找到启动 uvicorn 那一行,把127.0.0.10.0.0.0

# 修改前uvicorn.run(app,host="127.0.0.1",port=8787)# 修改后uvicorn.run(app,host="0.0.0.0",port=8787)

重启python converter.py

容器启动时记得暴露端口-p 8787:8787


AtomCode(VSCode 插件)配置

打开 AtomCode 设置 → OpenAI‑兼容模型(自定义 OpenAI endpoint)

配置项

  1. API Endpoint
http://宿主机IP:8787/v1

如果是容器内IDE访问,写http://127.0.0.1:8787/v1

  1. API Key
    随便填字符串,例如dummy(codebuddy2openai 不校验这个key)
dummy
  1. Model 名称
    调用/v1/models获取可用模型,填入返回的模型ID,示例:
codebuddy

AtomCode 多 Provider 配置(json)

{"atomcode.llm.providers":[{"id":"codebuddy-proxy","type":"openai","apiBase":"http://127.0.0.1:8787/v1","apiKey":"dummy","model":"codebuddy"}],"atomcode.llm.default.providerId":"codebuddy-proxy"}

保存配置,切换模型为codebuddy-proxy,即可走 codebuddy token。


排错清单

  1. 连接失败 Connection refused
  • converter.py 必须监听0.0.0.0,不能是127.0.0.1
  • docker run 需要-p 8787:8787端口映射
  • 防火墙放行8787端口

token状态正常,代理层不需要填真实key,随便填dummy。

  1. Function‑call / tool_calls 异常
    你的启动日志标注:原生 function calling,该版本已经原生支持tools,AtomCode的Agent/工具调用可直接启用。

快速自测代理接口是否通(curl)

curlhttp://127.0.0.1:8787/v1/models

能返回模型列表代表代理正常。

curl-XPOST http://127.0.0.1:8787/v1/chat/completions\-H"Authorization: Bearer dummy"\-H"Content-Type: application/json"\-d'{ "model":"codebuddy", "messages":[{"role":"user","content":"hello"}] }'

修改配置文件 提示词、

atomcode 配置文件 ~/.atomcode/config.toml 增加 提供者 codebuddy 模型 glm-5.2 glm-5.3 http://127.0.0.1:8787/v1/

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询