跳到正文
heng-agent v0.5.0
Esc
使用指南目录

开始

服务商与配置文件

heng-agent 内置 9 个服务商配置档(DeepSeek、Kimi、GLM、通义千问等),设好密钥就能用;自己的中转站、默认服务商、按项目区分写在 ~/.heng-agent/config.json。

预计用时
约 5 分钟
适用版本
v0.5.0 及以上
需要准备
一个服务商的 API 密钥

看看有哪些服务商

heng-agent 支持 Anthropic 与 OpenAI 两种协议,内置下面 9 个配置档。运行 heng-agent --list-providers 列出全部配置档、默认用哪个、密钥是否已设置(只显示已设置 / 未设置,不显示密钥)。

配置档 协议 密钥环境变量
deepseek DeepSeek anthropic DEEPSEEK_API_KEY
kimi Kimi(月之暗面) anthropic MOONSHOT_API_KEY
glm 智谱 GLM anthropic ZHIPU_API_KEY
qwen 通义千问(阿里云百炼) openai DASHSCOPE_API_KEY
anthropic Anthropic 官方 anthropic ANTHROPIC_API_KEY
openai OpenAI openai OPENAI_API_KEY
openrouter 一个密钥用多家模型 openai OPENROUTER_API_KEY
ollama 本机 Ollama openai 不需要
heng 本机 heng serve(自己的模型) anthropic HENG_AGENT_API_KEY

预设里的模型名只是建议值(各家改名很频繁),用 --model 临时换,或在配置文件里改。

设好密钥,选一个用

密钥推荐放环境变量。以 DeepSeek 为例:

export DEEPSEEK_API_KEY=你的密钥        # PowerShell:$env:DEEPSEEK_API_KEY="你的密钥"
cd 你的项目目录
heng-agent --provider deepseek

用起来以后随时切换,对话历史保留:

  • /provider deepseek:换服务商;
  • /model:向服务商取可用模型,方向键选,当前会话立即生效,可以顺手存成默认;/model 名字 直接换。

接中转站、改默认:配置文件

自己的中转站、改默认服务商、改预设的模型名都写在用户目录的 ~/.heng-agent/config.json:

{
  "default": "deepseek",
  "profiles": {
    "deepseek": { "preset": "deepseek", "model": "你想用的模型名" },
    "我的中转站": {
      "protocol": "anthropic",
      "base_url": "https://你的中转站地址",
      "model": "模型名",
      "api_key_env": "MY_RELAY_KEY"
    }
  }
}
  • default:启动时默认用哪个配置档;
  • preset:继承一个内置预设,只写要改的字段;
  • 密钥二选一:api_key_env(读环境变量,推荐)或 api_key(写在这个文件里;文件只在你的用户目录,不会进任何项目);
  • auth:密钥放哪个请求头,auto(默认,两种都带)/ x-api-key / bearer。中转站报 401 时试试改这个。

配置档里还能写这几项(都可以不写):

字段 说明
proxy 只管这个服务商的代理:http://主机:端口、socks5://主机:端口,或 direct(不走代理)。写在 settings 里则管全部请求(模型、MCP 的 http 连接、web_fetch);都不写按 HTTP_PROXY / HTTPS_PROXY 环境变量走
price_in / price_out / currency 每百万 token 的价格(照服务商控制台填),填了 /cost 按金额显示。预设不带价格:各家常调价,写死容易显示错的数
price_cache_read / price_cache_write 命中缓存部分的价格;不填按输入价的 0.1 倍 / 1.25 倍。走 OpenAI 协议的服务商写入一般不另收钱,price_cache_write 填 0 金额才准
context_window 上下文长度。不写就自动定:先向服务商查,查不到按模型名推断,都不认识用 128K;/status 里写着长度从哪来

例如国外的走代理、国内的直连:"settings": {"proxy": "http://127.0.0.1:7890"},再给 deepseek 配置档写 "proxy": "direct"。本机地址(localhost、127.0.0.1)始终直连;/doctor 会显示当前实际走的代理。

对话里也能直接改:/config set settings.permission_mode plan 这类写法改一项,/config edit 用编辑器打开配置文件;改错了会自动恢复原配置。

按项目区分:三层配置

配置分三层,后面的覆盖前面的:

层 位置 用途
内置预设 程序自带 deepseek、kimi、glm…
用户配置 ~/.heng-agent/config.json 你的中转站、密钥、默认服务商
项目配置 项目根目录/.heng-agent/config.json 这个项目默认用哪个服务商、哪个模型

项目配置例子(这个项目默认用 DeepSeek 的另一个模型,密钥仍在用户配置或环境变量里):

{ "default": "ds-fast", "profiles": { "ds-fast": { "preset": "deepseek", "model": "模型名" } } }

preset 也能引用用户配置里定义的配置档(比如带密钥的中转站),项目里只写要改的字段。

要一套完全独立的配置(不同账号、不同客户),用环境变量 HENG_AGENT_HOME 或 --home 指到另一个目录,配置、会话、输入历史都分开。

让别的程序直接给服务商

别的程序(编辑器插件、桌面应用)启动 heng-agent 时,可以用环境变量直接给服务商:只在这次运行里用,不写进配置文件,也不会弹第一次用的引导。终端模式、-p 与 --acp 都认。

环境变量 说明
HENG_AGENT_BASE_URL 服务地址。设了它才启用,设了就是这次运行的默认服务商(名字叫 env)
HENG_AGENT_API_KEY 密钥
HENG_AGENT_MODEL 模型名(必填)
HENG_AGENT_PROTOCOL anthropic(默认)或 openai
HENG_AGENT_AUTH auto(默认)、x-api-key 或 bearer

命令行的 --provider 仍然优先。heng-agent 不读 ANTHROPIC_BASE_URL 这类变量:不少人为别的工具全局设着 ANTHROPIC_API_KEY,一看到就用会悄悄绕开你在 heng-agent 里配好的默认服务商。

做完是这样

heng-agent --list-providers 里你要用的服务商显示「已设置」,启动后欢迎页的「模型」一行是它;/provider 名字 能来回切换。连不上时运行 /doctor,它会真的连一次服务商并说明原因。

最后更新: