headless 使用指南
DSH 一次性任务运行包:在命令行提交一句任务,启动 Agent 执行后把最终答案打印到 stdout 退出。
本文为派生内容(基于 wiki / faq / compatibility_json 自动组装),非 AI 即时创作。
本文由本站基于该插件已收录的字段自动派生(wiki / faq / compatibility_json / readme),非 AI 即时创作。每节末尾标源字段。
快速上手
deepseek-harness-studio(headless 包)
— 源: plugin_wiki.wiki_content
安装与验证
dsh plugin --profile web add @deepseek-ai/dsh-headless
复制以上命令在 DSH Web Profile 内运行。安装完成后在「插件列表」启用即可。
— 源: plugins.install
关键要点
- Electron 桌面端:提供应用窗口、系统托盘、单实例运行、外部链接处理和安全的 preload 通信接口。
- 本地 Harness Host:桌面主进程启动
dsh web,等待本地服务就绪,并在应用退出时关闭 Host 进程。 - Web 工作区:保留 DeepSeek Harness 的会话、工作区、模型、工具、Skills 和插件运行能力。
- 插件发现与推荐:自动读取在线目录,通过精选、最近更新、生态热门、场景分类和搜索,帮助用户快速找到值得尝试的插件。
- Agent 智能找插件:用一句自然语言描述需求,Agent 自动检索公开
dsh-plugin目录、筛选相关候选并说明推荐理由。
— 源: plugin_wiki.readme_zh (fallback readme_raw)
常见问题
这个包和官方 dsh web 界面是一回事吗?
不是。headless 是不带 Host/HTTP/浏览器的 CLI 直接驱动入口;它跑完即退出,没有 Web UI、不会监听端口。Web 体验请用 packages/bundle/web-app 或带桌面的发行版(README.md:5 / cordis.patch.yml:1-5)。
必须通过 dsh launcher 启动吗?
必须。runner 显式依赖 ctx.appExit 这个由 launcher 提供的主机钩子来请求退出;在 dsh 启动器之外直接挂载会立刻抛 'the launcher must provide ctx.appExit'(src/index.ts:144-147 / tests/headless.spec.ts:243-245)。
任务里多个单词怎么传?
用位置参数;命令行解析器把多个词按空格拼成单个 task 字符串(src/startup.ts:31-41, 51-55),如 dsh --profile headless "run the tests" 或 dsh --profile headless run the tests。
不传任务或只传空白会怎样?
进入应用前就被拒绝,输出 usage 错误,进程退出码 1,runner 不会激活(src/startup.ts:52-53 / tests/startup.spec.ts:91-97)。
进程退出码怎么映射?
最终 turn/end 的 reason.kind 为 'completed' 时退出码 0;其它情况(包括 aborted / error)退出码 1;终止原因为 error 时,错误 code 与 message 会额外写到 stderr(src/index.ts:129-133 / tests/headless.spec.ts:146-173)。
会把任务结果持久化到磁盘吗?
会。runner 在退出前调用 ctx.sessions.flush 把会话事件落盘,Session 文件由 dsh-base 的 session-persistence-jsonl 行写到 dshHome/sessions/ 目录下;headless 只复用这一既有路径,本身不再额外存数据(src/index.ts:127 / packages/bundle/base/cordis.patch.yml:98-101)。
能在一次调用里连续追问吗?
不能。runner 没有交互式后续入口;它只提交一次任务,等 Agent 自然回到 idle 后取最后一个非空 assistant 消息就退出(README.md:18-19 / src/index.ts:120-129)。
我能换底层模型吗?
task 来自命令行,模型走 dsh-base 的 agent-default-model(默认 deepseek-official / deepseek-v4-flash),通过 dsh settings 文档(llm-deepseek / llm-pi-ai 段)改 runtime 选择,不需要在 headless 包内配置(packages/bundle/base/cordis.patch.yml:63-67, 78-79)。
— 源: plugin_wiki.faq_json
兼容性
- DSH: 0.1.0-rc.8
- Node: ^22.19.0 || >=24.0.0
— 源: plugin_wiki.compatibility_json
踩坑提醒
安装前请审阅上游仓库;本指南基于已收录字段自动派生,可能滞后于最新版本。如发现与官方文档冲突,请以上游为准。
— 来源:通用规则