跳到正文
MyDSH我的 DSH 实战笔记
English
独立维护,非DeepSeek官方;与mydsh.dev等其他MyDSH站点无关联。

首页/开发者与插件开发/开发环境与脚手架

凭据从哪来:报错里就写着完整修复路径

换了 DSH_HOME 或者新机器,一跑就报没 key,不知道该往哪写。

已核验版本与环境核验日期2026-11-14
宿主
0.1.2-alpha.5
场景
隔离DSH_HOME(相当于全新环境)
核验日期
2026-11-14

可复制指令

export DEEPSEEK_API_KEY=sk-... && dsh --profile headless "任务"

在一个全新的DSH_HOME下跑headless,报错原文是这样的:

dsh: MISSING_CREDENTIAL: llm-deepseek: no API key for provider route "deepseek-official";
store DEEPSEEK_API_KEY through the credentials service (the web Models page writes it),
or export DEEPSEEK_API_KEY in the launching environment

这一行信息量很大

它说了什么对应
缺的是什么provider route "deepseek-official" 没有API key
存在哪凭据服务(credentials service),web的Models页面会写它
两条补齐路径① 通过凭据服务写;② 在启动环境里export DEEPSEEK_API_KEY

路径二实测可用

export DEEPSEEK_API_KEY=sk-...
dsh --profile headless "你的任务"

在隔离DSH_HOME下只设环境变量就能正常跑(实测回答出了正确结果),不需要预先写任何凭据文件。这一点对CI和临时环境很重要。

凭据文件长什么样

version: 1
refs:
  DEEPSEEK_API_KEY: sk-...
records:
  client-connection/browser-session:
    kind: grant

三个顶层键:version、refs(密钥本体)、records(浏览器会话等授权记录)。换DSH_HOME等于换了一整套凭据与授权,所以隔离实验必须自己提供key。

这也是做隔离实验最常卡住的地方:把DSH_HOME指到临时目录后,原来的key和授权都不在了。不是配置坏了,是环境换了。

怎么算跑通

照着逐条对,全过才算完成。有一条没过,先解决它再往下。

  • 能背出MISSING_CREDENTIAL指出的两条路径
  • 知道换DSH_HOME会连凭据一起换
  • CI场景优先用环境变量而不是写文件

会失败在哪

现象 / 原因 / 怎么办,按实际踩到的顺序写。

现象原因怎么办
设了环境变量还是报没key变量名写错或没在启动进程的环境里确认是DEEPSEEK_API_KEY且在同一进程环境;用printenv核对
换了DSH_HOME后一切都要重配凭据与授权跟着DSH_HOME走这是预期行为;隔离实验记得单独提供key

来源

标「已核验」的,来自本站实跑;标「公开资料整理」的,逐条附出处。