快速结论:这个报错通常发生在 LobeHub 把设备接入为 DeepSeek Harness(agent type deepseek-harness)之后:模型发现逻辑没有为该 agent 走 ACP,反而回退到 --list-models 探测,而 dsh 不支持该 flag;同时前端缺少该 agent 的模型选择能力声明,所以既报错也不显示模型下拉。优先排查模型发现是否走 ACP、以及选择器能力表是否包含该 agent。
适用环境:@lobehub/cli 0.0.66;@deepseek-ai/dsh 0.2.1-rc.2(验证时也用到 0.2.2-rc.1);Ubuntu 26.04 x64、macOS arm64、WSL2;通过 lh connect --daemon(standalone daemon)连接,验证阶段使用 lh connect --gateway。
最快修复方案:升级到包含 #22542 修复的版本。该修复改为通过 ACP 向运行时请求模型目录,而不是调用 --list-models,并把选中的模型传递到设备执行阶段。
注意事项:修复后的模型选择器可能列出某个模型,但发送时仍返回 MISSING_CREDENTIAL。这是 dsh 自身的路由凭据状态:deepseek-official 走 API key 路由(解析 DEEPSEEK_API_KEY),登录态不会填充它;deepseek-account 才是账号 token 路由。需要在 Settings → Models 保存 key 或导出对应环境变量后,官方路由才可用。
问题场景
在 LobeHub 中把执行设备接为 DeepSeek Harness(agent type 为 deepseek-harness)后,打开模型选择器时列表为空,前端只显示 DeepSeek Harness model discovery failed,选择器里也不会出现模型这一维度。虽然 dsh 的 ACP profile 本身支持模型枚举与切换,但 LobeHub 这一侧的模型发现没有走 ACP。
报错原文
[Bug] DeepSeek Harness (deepseek-harness): model list is empty and no model picker
DeepSeek Harness model discovery failed
$ dsh --list-models
error: --profile <name> is required # exit 1
$ dsh --profile acp --list-models
error: unknown option '--list-models' # exit 1
原因分析
问题出在 CLI/前端侧的两处缺口:
listHeterogeneousAgentModels()没有deepseek-harness分支,落进默认的--list-models探测;而dsh不支持该 flag,命令以 exit 1 结束。- 失败被
classifyCatalogError()归为command_failed,前端据此显示DeepSeek Harness model discovery failed。 HETERO_SELECTOR_CAPABILITIES中没有deepseek-harness条目,前端因此认为该 agent 不具备模型选择能力,选择器里不会出现模型维度。
后续排查还补充到:当前 DshAcpSession 继承的是共享 ACP session 基类,并不继承 TRAE 的模型发现实现;其模型选择器按模型名匹配,而不是按持久化的完整 JSON 二元组匹配。这也是修复中需要一并调整的地方。
环境排查
- 确认
@lobehub/cli版本,Issue 复现环境为 0.0.66。 - 确认
@deepseek-ai/dsh版本,复现与验证使用 0.2.1-rc.2,验证也覆盖 0.2.2-rc.1。 - 确认连接方式:
lh connect --daemon(standalone daemon)或lh connect --gateway,Issue 中两种都出现过。 - 确认设备接入的 agent type 为
deepseek-harness。 - 手动执行
dsh --profile acp,确认 ACP 握手(initialize→session/new)能完成。 - 检查设备侧 dsh home 是否配置了
DEEPSEEK_API_KEY或已登录账号 token。
解决步骤
- 先确认基线问题:执行
dsh --profile acp --list-models,若返回unknown option '--list-models',说明模型发现确实不应依赖 CLI flag。 - 升级到包含 #22542 修复的版本。该实现为 deepseek-harness 增加 DSH 原生 ACP 目录发现:复用分组 config-option 遍历,暴露 provider/model 元数据,同时保留原始 value 作为选择 ID,并让精确二元组匹配优先于原有的模型名回退。
- 修复同时处理了两处细节(按 PR 说明):默认
dsh可执行文件通过运行时自带的探测器解析,因为通用解析器不覆盖 runtime provider 类型,否则会解析为空字符串;以及在resolveHeteroSpawnCommand之前收窄 catalog 类型,避免能力表扩展后出现类型错误。 - 升级后重启 LobeHub 与设备连接,重新进入该设备的模型选择器。
- 如果选择器已列出模型但发送时报
MISSING_CREDENTIAL:在 Settings → Models 保存 DeepSeek API key(或导出DEEPSEEK_API_KEY环境变量),使deepseek-official路由可用;仅登录账号只会创建deepseek-account路由。
验证方法
在绑定设备的 composer 中应能看到 DeepSeek Harness 的模型触发入口;展开后菜单列出设备运行时返回的模型(例如 deepseek-official 分组下的 deepseek-v4-flash),而不仅是 Default;选中后 composer 更新,并且刷新页面后仍然保持该选择。另需注意:未配置 key 时 ACP 模型目录仍会列出内置官方模型,选择器显示该条目属正常现象,真正发送时才会因凭据缺失失败。
参考来源
AI 工具推荐
想把多个 AI 模型放在一个入口?
GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。
推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。
这个方案解决了吗?
可以继续搜索完整报错,或查看同一工具的其他排查指南。
![[bug]: Z-Image, Qwen-Image and Anima LoRA converters ignore `.alpha` and drop DoRA magnitudes on lora_A/lora_B layers](https://www.chat-gpts.plus/wp-content/uploads/2026/11/10019-f156d1bf-768x403.jpg)

