DeepSeek Harness

DeepSeek Harnessdsh)是 DeepSeek AI 开源的 Agent Harness。把 ApiGo 注册为自定义 llm-pi-ai provider 后,Harness 即可使用 ApiGo Key、模型目录、用量控制与调用日志。

DeepSeek Harness 当前仍处于 Developer Preview,后续可能出现不兼容变更。

前置条件

1. 保存 ApiGo Key

创建 ~/.dsh/.credentials.yaml

APIGO_API_KEY: sk-apg-...

限制 Harness 目录与凭据文件的访问权限:

chmod 700 ~/.dsh
chmod 600 ~/.dsh/.credentials.yaml

不要把 Key 写入 settings.yaml、项目文件、Shell 历史或 Git。这里的 APIGO_API_KEY 是下一步 provider 配置通过 apiKeyEnv 引用的凭据名称。

2. 注册 ApiGo provider

创建或编辑 ~/.dsh/settings.yaml

ui-onboarding:
  welcomeNoticeVersion: 2026-08-13.1
agent-presets:
  default: code
llm-pi-ai:
  providers:
    apigo:
      displayName: apigo
      apiKeyEnv: APIGO_API_KEY
      api: openai-completions
      baseURL: https://api.apigo.ai/v1
      models:
        - id: deepseek-v4-flash
          name: deepseek-v4-flash
        - id: deepseek-v4-pro
          name: deepseek-v4-pro
agent-default-model:
  provider: apigo
  model: deepseek-v4-flash

这段配置是必要前置条件:ApiGo 在 Harness 中是一条自定义 provider 路由。仅设置 DEEPSEEK_BASE_URL 会继续使用原生 deepseek-official 路由,并不会选中 ApiGo provider。

模型必须使用 ApiGo 当前目录中的精确 slug。切换模型时,同时更新 provider 的 models 列表与 agent-default-model.model

3. 启动 Harness

启动 Web UI:

npx @deepseek-ai/dsh web

打开 http://127.0.0.1:3080,新建会话,并确认当前 provider 与模型显示为 apigo / deepseek-v4-flash

也可以用 Headless 模式做一次终端验证:

npx @deepseek-ai/dsh --profile headless \
  'Reply with exactly APIGO_HARNESS_OK and nothing else.'

配置成功时会输出:

APIGO_HARNESS_OK

随后到 工作空间 → Call Logs 核对请求。

配置速查

配置项 用途
凭据文件 ~/.dsh/.credentials.yaml 在通用设置之外保存 ApiGo Key
凭据名称 APIGO_API_KEY 与 provider profile 的 apiKeyEnv 对应
Provider 路由 apigo agent-default-model 选择的 Harness provider ID
API 协议 openai-completions 使用 ApiGo 的 OpenAI 兼容 Chat Completions API
Base URL https://api.apigo.ai/v1 ApiGo OpenAI 兼容网关前缀
默认模型 deepseek-v4-flash ApiGo 模型目录中的精确 slug

常见问题

现象 处理方式
MISSING_CREDENTIAL 确认 ~/.dsh/.credentials.yaml 包含 APIGO_API_KEY 且 YAML 格式有效
401 / 403 更换有效的 ApiGo Key,并检查所属工作空间权限与消费上限
UNKNOWN_MODEL llm-pi-ai.providers.apigo.models 中加入模型目录的精确 slug
请求仍使用 deepseek-official agent-default-model.provider 设为 apigo,然后重启 Harness
workspace_tpm_exceeded Agent 系统提示与工具循环可能产生多次大请求;提高 Workspace TPM,或等待容量恢复后重试
Call Logs 没有请求 确认 Base URL 包含 /v1,并确认当前模型的 provider 显示为 apigo

相关资源