安装前先看这几项
- 配置资料
- 配置资料完整
- 配置难度
- 较高
- 适合新手
- 建议具备相关经验
- 兼容状态
- 声明兼容,尚未实测
- 验证状态
- 源码已审阅,未标记运行实测
本页目录(9)
按照固定来源完成安装、配置与验证
教程包含独立 Profile、精确安装目标、配置证据、最小验证任务、回退和数据清理。
这个插件能做什么
为 DeepSeek Harness 提供 Claude Code 风格终端入口,支持流式状态、工具审批、会话管理、终端图片与公式、模型与 Preset 切换、Skills、MCP、子 Agent,以及内置订阅与 DeepSeek 账号登录。
需要OCR、截图识别、图片识别能力的用户。
该插件涉及较高配置难度或敏感权限,不建议在生产工作区直接试装。
安装前准备
- DSH 0.2.0-rc.2(必需):0.12.0 的部分 peer 只接受 0.2.0-rc.1 或 rc.2,旧宿主会被安装门禁拒绝。
- Node.js 与 pnpm 10+(必需):Node.js 需满足 ^22.19 或 >=24;pnpm 9 会导致 TUI 启动后立即退出。
- 交互式终端(必需):必须在真实 TTY 中启动;由 DSH Web 等非终端宿主启动时 TUI 会自动跳过。
- 专用测试 Profile(必需):作者默认使用 dsh-tui Profile;在已有 Profile 上安装前先备份用户 cordis.patch.yml。
- 测试模型凭据(必需):只使用测试 Provider 或测试账号,不把密钥、token 写入仓库或截图。
如何安装 dsh-TUI
本页命令固定使用 DSH 0.2.0-rc.2,与 npm 默认版本分别维护。切换 DSH 前核对本插件的兼容记录;新版 Session API 与格式变化见0.1.3-alpha.1 升级说明。源码审阅不等于运行验证。
下面的命令使用本站核验的 DSH 基线,并锁定插件版本或 Git commit,避免默认分支变化导致安装内容漂移。本站已核对安装目标,但尚未在你的系统和 Profile 中实际执行。
- 安装到
webProfile- DSH 基线
0.2.0-rc.2- 安装来源
- npm 预构建包(锁定版本)
- 固定目标
@deepseek-harness-tui/[email protected]
0.12.0 的 DSH peer 覆盖 0.2.0-rc.1 与 0.2.0-rc.2,其中 dsh-deepseek-account、dsh-host-webserver 只接受 0.2.0 系列,本页固定 DSH 0.2.0-rc.2;DSH 0.1.x 用户继续使用 0.9.3。仅静态复核,未在本站运行验证。
- 01检查 Node.js 与 pnpm
DSH 当前基线需要 Node.js 22.19 或 Node.js 24 及以上,并且
pnpm必须已在 PATH 中。先运行:环境检查node --version && pnpm --version - 02安装到 Web Profile
这条命令会把插件加入
webProfile,并在插件声明 DSH Bundle 时自动加入配置层。npm 预构建包(锁定版本)npx --yes @deepseek-ai/[email protected] plugin --profile web add @deepseek-harness-tui/[email protected] - 03确认 Bundle 已进入配置
安装成功后先导出组合配置,不启动 Agent。输出中应能找到包名 @deepseek-harness-tui/dsh-tui或对应 Bundle 层。
检查配置npx --yes @deepseek-ai/[email protected] --profile web --dump-config - 04启动并完成最小验证
启动 Web Profile 后,只测试一个与插件功能直接相关的最小任务,并检查日志、文件、网络和凭据访问是否符合预期。
启动 DSH Webnpx --yes @deepseek-ai/[email protected] web
测试不通过时先停止 DSH,再从同一 Profile 移除插件。移除后重新运行配置检查,确认对应 Bundle 层已经消失;插件自己创建的数据和外部账号配置可能需要另行清理。
npx --yes @deepseek-ai/[email protected] plugin --profile web remove @deepseek-harness-tui/dsh-tui插件专属配置
$DSH_HOME/profiles/web/cordis.patch.yml- 用户覆盖层:调整 dsh-tui 行的模型、推理档位、全屏、图片预览与 Preset;按作者默认安装时对应 profiles/dsh-tui/。
dsh-tui-webserver 行(同一 cordis.patch.yml)- DeepSeek 账号登录的本地回调监听,默认 127.0.0.1 随机端口;SSH 场景可改固定端口。
dsh-tui-auth 行(同一 cordis.patch.yml)- 内置订阅 OAuth 的 providers、credentialsFile 与 modelOverrides;覆盖时是整段替换。
环境变量
DEEPSEEK_API_KEY· 可选 · 敏感- 使用 deepseek-official 路由时需要;改用 deepseek-account 账号登录时可不设置。
DEEPSEEK_BASE_URL· 可选- 覆盖 DeepSeek 兼容 API 端点,也影响余额查询地址。
DSH_PERMISSION_MODE· 可选- 非 Windows 平台覆盖 sandbox policy;Windows 需直接核对 Profile。
DSH_TUI_SESSION_ROOT· 可选- 覆盖 JSONL 会话根目录,默认 $DSH_HOME/sessions。
DSH_AUTH_CREDENTIALS· 可选 · 敏感- 覆盖内置 OAuth 凭据文件路径,文件内含长期 refresh token。
DSH_TUI_RENDER_LOG· 可选 · 敏感- 记录原始渲染帧,可能捕获提示词与工具输出,排障后应删除。
DSH_TELEMETRY_MODE· 可选- TUI 补丁默认把遥测设为 DISABLED,显式设置此变量才会改变。
TUI 常用覆盖示例 · yaml。示例中的账号、路径和凭据占位符必须替换,不要提交真实密钥。
- id: dsh-tui
config:
provider: deepseek-official
model: deepseek-flash
effort: max
activity: true
contextBar: true
fullscreen: false
terminalImages: trueSSH 远程登录固定回调端口 · yaml。示例中的账号、路径和凭据占位符必须替换,不要提交真实密钥。
- id: dsh-tui-webserver
config:
host: 127.0.0.1
port: 43123安装 0.12.0 固定版本 · bash。示例中的账号、路径和凭据占位符必须替换,不要提交真实密钥。
npx --yes @deepseek-ai/[email protected] plugin --profile web add @deepseek-harness-tui/[email protected]- 在测试项目目录的终端中运行 npx --yes @deepseek-ai/[email protected] --profile web 启动 TUI;按作者默认安装到 dsh-tui Profile 时改用 --profile dsh-tui。
- 先运行 /preset status 与 /permission,确认实际 Preset、sandbox 和 approval。
- Windows 用户在接触敏感目录前先收紧 danger-full-access 与 approval=never。
- 如需 DeepSeek 账号登录,运行 /auth login deepseek-account,再用 /model 选择 deepseek-account 下的模型;它与需要 DEEPSEEK_API_KEY 的 deepseek-official 是不同路由。
配置检查与成功结果
- 01确认组合配置中出现 dsh-tui、dsh-tui-auth 与 working-activity 行。复制验证命令
npx --yes @deepseek-ai/[email protected] --profile web --dump-config期望结果:能看到 @deepseek-harness-tui/dsh-tui 及其补丁行,没有重复的 dsh-working-activity。
- 02在空测试仓库启动 TUI 并发送一个只读问题。
期望结果:流式输出正常,横幅显示 v0.12.0,状态行可见且没有文件变化。
- 03在足够高的终端窗口里触发一个需要审批的低风险测试动作。
期望结果:审批选项完整可见,行为符合当前 Profile;Windows 上不得假定存在沙箱。
第一次使用建议这样验证
- 用 /resume 查看测试工作区会话,再用 /new 创建空会话并确认模型和权限状态。
- 运行 /auth status 查看各账号登录状态,只在测试账号上尝试登录与退登。
它可能接触哪些数据和能力
复用所选 DSH Profile 的模型凭据、工具、文件、Shell、审批和会话存储,自身无沙箱;Windows 默认 danger-full-access 且 approval=never。新增内置 OAuth 保存长期 refresh token,DeepSeek 账号登录会在 127.0.0.1 启动本地回调监听;/update 会改写 profile 的 pnpm-workspace.yaml。
数据存储:会话写入 $DSH_HOME/sessions;TUI 偏好、输入历史、resume.txt 与 restart.log 写入 ~/.dsh-tui;/provider 添加的 API key 写入 ~/.dsh/.credentials.yaml;内置 OAuth 的 refresh token 写入 $DSH_HOME/dsh-auth/credentials.json;DeepSeek 账号凭据由宿主保存。
请注意:“源码已审阅”说明本站检查到的证据范围,不等于安全认证。重要工作区应锁定版本、备份数据并在最小权限下测试。
故障排查与数据清理
- 安装被门禁拒绝并提示与 dsh 0.1.x 不兼容
- 0.12.0 只适配 DSH 0.2.0-rc.1/rc.2;升级宿主到 0.2.0-rc.2,或继续使用旧插件版本,不要用版本豁免强行安装。
- 用 GitHub 地址安装报 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 WORKSPACE_PKG_NOT_FOUND
- 作者不支持 Git URL 安装,改用 npm 包 @deepseek-harness-tui/[email protected]。
- 启动后权限过大
- 停止 TUI,检查 Profile 的 sandbox 与 approval;不要用功能测试代替权限核对。
- 全屏下看不到审批选项
- 放大终端窗口或在覆盖层把 fullscreen 设为 false;看不清命令全貌时选择拒绝。
- /update 后新功能没有生效
- 若同时存在全局安装,DSH 可能仍读取旧全局补丁;同步把全局包对齐到同一版本后重启。
- 启动后立即退出且几乎没有报错
- 检查 pnpm 版本,升级到 10 及以上后重新安装插件。
- 导出需要保留的测试会话后,运行 npx --yes @deepseek-ai/[email protected] plugin --profile web remove @deepseek-harness-tui/dsh-tui。
- 用 /auth logout 退出测试账号,删除不再需要的 dsh-auth/credentials.json 与 .credentials.yaml 中的测试条目,并在服务端撤销测试凭据。
- 删除不再需要的 ~/.dsh-tui 偏好、restart.log 与调试渲染日志;若曾全局安装启动器,同时卸载全局 @deepseek-harness-tui/dsh-tui。
深入审计:兼容性、数据流与来源
兼容性与审阅记录
兼容性说明
0.12.0 的 dsh-* peer 声明覆盖 DSH 0.2.0-rc.1 与 0.2.0-rc.2,按 semver 7 判定满足 0.2.0-rc.2;dsh-deepseek-account 与 dsh-host-webserver 只接受 0.2.0 系列,0.1.x 宿主会被安装门禁拒绝。52DSH 仅做固定发行源码与 npm 包静态复核,未在真实 TTY、Windows、SSH 或 Herdr 中运行。
数据流
终端输入、附件与设置 → DSH Agent、会话日志和所选模型/工具 → session 事件、审批与插件 API → TUI Channel 和 Ink 界面返回终端;登录流程经浏览器与本地回调交给宿主或 pi-ai 凭据文件,更新检查访问配置的 npm registry。
源码审阅结论
对比 2dfab279 与 v0.12.0 发行提交,复核了 cordis.patch.yml 新增的 dsh-tui-webserver、dsh-tui-auth、遥测默认关闭与 plugin-package-inventory 关闭,以及启动器、更新流程、余额查询和求星动作。TUI 仍不自建沙箱而继承 Profile;Windows 默认权限需先收紧;OAuth 凭据文件、/provider 写入的 API key、调试渲染日志和 restart.log 可能含敏感信息;全屏矮窗口下审批选项可能被裁出屏幕(上游 #1212)。仅静态审阅,未运行插件。
来源与维护信息
本页根据固定提交的仓库、包清单和本站审阅资料生成。版本变化后,请重新核对作者说明。
- 来源快照
e483a501cec7- 固定提交
3066b29113bd- 许可证
- MIT
- 主要语言
- TypeScript
- 中文资料
- 有完整中文配置资料