DSH Console 是一个面向 DeepSeek Harness 的键盘优先、DSH 原生终端工作台。它以精致的…
数据截至 2026/10/24 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
dsh plugin --profile web add cofy-x/dsh-console状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
安装兼容性检查需源码安装缺少 main/exports/bin 入口声明;engines.node 要求 >=24.0.0,不满足 Node 22.19.0;仓库 package.json 标记 private,未发布到 npm,需从源码安装
展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/30 04:33:50
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
查看扫描证据(共 5 处,展示前 5 条)
- 写入本地文件packages/test-utils/src/file-system-test-helpers.ts:62
await fs.writeFile(newPath, content); - 写入本地文件packages/test-utils/src/file-system-test-helpers.ts:64
await fs.mkdir(newPath, { recursive: true }); - 写入本地文件packages/test-utils/src/file-system-test-helpers.ts:67
await fs.writeFile(path.join(newPath, item), ''); - 写入本地文件packages/test-utils/src/file-system-test-helpers.ts:73
await fs.mkdir(newPath, { recursive: true }); - 删除本地文件packages/test-utils/src/file-system-test-helpers.ts:97
await fs.rm(dir, { recursive: true, force: true });
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
@deepseek-ai/dsh@deepseek-ai/dsh-agent@deepseek-ai/dsh-llm给这个插件打分还没有人投票↓
界面预览
1 张 · 点击查看大图功能亮点
- 持久会话管理
- 结构化工具调用
- 子代理与计划
DSH 原生终端工作台(TUI),为 DeepSeek Harness 提供持久会话、结构化工具、计划、子代理,还有轮换的宝可梦启动画面。
README
由 DeepSeek 最新模型翻译生成展开完整文档(README 剩余 1 节)
DSH Console DSH Console 是一个面向 DeepSeek Harness 的键盘优先、DSH 原生终端工作台。它以精致的 React/Ink 界面整合持久化 Session、结构化工具与审批流程、Plan 与 Subagent 视图、本地 Shell 工作流,以及轮换展示的 Pokémon 启动画面。 DSH Console 创建并运行 Python 程序 [!WARNING] DSH Console 目前处于公开预发布阶段。它已经使用真实的 DSH 契约和持久化 Session,但命令和界面细节在首个稳定版本之前仍可能发生变化。 快速开始 DSH Console 需要 Node.js 24 或更高版本,并需要 PATH 中有 pnpm 来安装 DSH profile。安装 pnpm 及经过审计的精确 DeepSeek Harness 与 DSH Console 版本组合: npm install --global pnpm@12.15.0 npm install --global @deepseek-ai/dsh@0.2.1-rc.2 @cofy-x/dsh-console@0.1.0-rc.4 dsh-console dsh-console launcher 会先解析 PATH 实际选择的 dsh executable 并检查版本,再初始化专属 DSH profile,并在启动交互式 TUI 前确保 profile package 与已安装的 launcher 版本一致。可执行 dsh --version,并在 macOS/Linux 使用 command -v dsh、在 PowerShell 使用 (Get-Command dsh).Source、在 Command Prompt 使用 where dsh 检查实际选中的安装。 如果要使用已有 DSH profile 中自定义的 provider、模型或工具,请在 Console 参数之前选择该 profile: dsh-console --profile my-profile --prompt "hello" --profile <名称> 优先于 DSH_CONSOLE_PROFILE;都未设置时继续使用由 launcher 管理的 dsh-console profile。先通过 DSH 创建自定义 profile(例如 dsh plugin --profile my-profile add @cofy-x/dsh-console@0.1.0-rc.4,该命令需要 PATH 中有 pnpm)。Launcher 只在选定 profile 中安装或更新 Console bundle;provider、凭据、其他 package 和 patch 仍由 DSH 管理。同一个 DSH_HOME 下的 profile 共享 Session、凭据、设置和附件;需要完全隔离时使用不同的 DSH_HOME。缺失或无效的自定义 profile 会报错,不会悄悄退回默认 profile。在源码 checkout 中可使用 node apps/cli/bin/dsh-console.js --profile my-profile;pnpm start 是另一条开发路径。 此 Console 版本支持 DSH 0.2.1-rc.2,最大测试版本也是 0.2.1-rc.2。DSH Console 跟随经过审计的 DSH release,兼容的 prerelease 可能不同于 npm latest,因此安装命令会精确固定两个产品版本。过旧版本会在 profile 修改前被拒绝;未经审计的较新版本只会收到警告,用户仍可自行尝试。 较新版本能否加载插件仍由 DSH 自身的兼容检查决定;Console 不会自动授予版本例外或绕过 Host 限制。 也可以直接带 Prompt 启动: dsh-console --prompt "hello" 可以续接当前目录下最新的可恢复 Session,或通过完整 Session ID 精确恢复;两种方式都可以在恢复后立即提交 Prompt: dsh-console --continue dsh-console --resume dsh-console-01234567-89ab-cdef-0123-456789abcdef --prompt "继续这项工作" 如果 DeepSeek 官方 provider 缺少可由 DSH 配置的凭据,DSH Console 会在提交首个 Prompt 之前打开 masked setup dialog,并通过 DSH 写入凭据。凭据优先级和可写性由 DSH 决定;已保存的 DeepSeek 凭据优先于环境变量,可写的环境凭据可通过 DSH 保存新值。尚未提供 Console setup adapter 的 provider 继续使用其既有 DSH 配置路径。DSH Console 不会维护独立的凭据存储。 公开预发布版本使用 0.1.0-alpha.x 和 0.1.0-rc.x 等版本号,当前已发布的 Console 继续通过 npm 默认安装方式提供。 发布包启动会使用全局安装的 launcher,并将其精确 package 版本协调到 dsh-console profile。源码 checkout 中的 pnpm start 会解析当前 checkout,它是开发路径,不能替代发布包行为验证。 主要能力 - 支持 Markdown、reasoning、中断和 usage 展示的流式多轮对话 - 展示 DSH 工具调用、结果、审批、问题和 todo 状态,并提供可浏览的 /tools 与 /skills 目录 - 通过 /preset 管理每个 Session 的 DSH Agent 组合,并在恢复时确定性重建 - 支持 DSH 原生模型选择、通过 @path 或剪贴板输入图片,以及隔离的 prompt completion - 支持启动续接,并使用 /new 和 /sessions 管理持久化 DSH Session - 支持本地 Shell 模式、主题、设置、安全的终端清理,以及在普通 PTY 或 Orca 等嵌入式终端中持续运行 交互命令 | 命令 | 用途 | | /model | 选择当前 DSH 模型 | | /new | 创建新的对话 | | /sessions | 搜索、预览、重命名、恢复或 fork 当前目录的 Session | | /jobs | 查看和停止当前 Session 的后台任务 | | /goals | 管理 Session Goal、激活状态与轮次上限 | | /tools | 查看当前 DSH Agent 暴露的工具 | | /skills | 查看并发现用户可调用的 DSH Skill | | /preset | 查看或修改空白 Session 的 Agent preset | | /theme | 选择终端主题 | | /settings | 修改 Console 设置 | | !command | 在本地执行命令,不提交给模型 | Turn 运行期间,Ctrl+C 会取消当前 DSH 操作。空闲时,Ctrl+C 会释放运行时、恢复终端并退出。 Session 与本地数据 DSH 是对话历史的唯一事实源。DSH Console 会列出当前工作目录下可恢复的 dsh-console-* 主会话及其持久化 fork,回放其规范 DSH event surface,并通过 DSH 恢复 Session。它不会维护一套并行的客户端 Session 数据库。 当前使用的 DSH_HOME 决定 profile、JSONL Session 日志和附件对象的存储位置。可以通过它隔离运行环境: DSH_HOME=/tmp/dsh-console-home dsh-console --prompt "hello" DSH 原生设计 DeepSeek Harness 负责 Agent 执行、模型、provider 设置和凭据、Session、工具、审批、附件、持久化和规范事件。DSH Console 负责终端交互、输入预处理、界面呈现,以及面向这些公开 DSH 服务的专用 adapter。 - Runtime adapter 使用 DSH 官方规范类型,并在 React 渲染前将其投影成稳定的 Console View Model。 - 原生工具与 PTC 嵌套工具共用结果展示路径,并保留 DSH 管理的展示元数据。Agent 目录保留外部执行条目,并明确指出没有本地 DSH Session 历史的情况。 - Session replay 和实时流式事件共用同一个 projector,使文本、reasoning、工具、todo 状态、usage、错误和中断保持一致。 - 图片必须先由 DSH attachment service 接纳,随后才能创建用户 Turn;接纳失败时不会静默降级为纯文本输入。 - Prompt completion 使用独立的临时 Agent/Session,绝不会写入当前对话。 公开 package 包含 launcher、编译后的 Console runtime、DSH plugin bundle、许可证和归属声明。Runtime plugin 仍由所选 DSH profile 提供。 预发布边界 当前版本暂不提供跨目录 Session 搜索、Session 删除、通用文件/PDF/audio/video 附件、原生终端图片协议、Web UI 或独立 provider/auth 层。 后台任务、Goal 与可复用历史 /jobs 只观察当前交互 Session 的任务;停止任务需要确认,不会抢占模型的输出游标或完成通知。任务输出继续由 DSH 和 Agent 的 job_output 流程管理。/goals 可创建目标、修改目标与轮次上限、暂停、恢复、完成或清除目标;轮次不是 token 或费用预算。恢复的目标保持 disarmed,必须明确恢复才能继续自动执行。原有 /goal ... 命令与附件语义保持不变。 在 /sessions 中按 / 搜索标题、ID 和规范会话正文,Enter 打开分页预览和后续操作。用户重命名通过 DSH 持久化并固定标题。fork 只能选择已完成的 Turn,保留会话谱系、Agent preset 和该位置的模型路由;新会话先落盘再切换,不回滚文件,也不会自动提交 Prompt。持久化 fork 同样支持后续恢复。 全文搜索会在首次查询时按需打开 DSH_HOME 下由 DSH 管理、可重建的 SQLite 索引,不增加启动时的索引开销。JSONL 日志仍是唯一持久化事实源;用户 profile 显式禁用搜索时,该覆盖设置仍然有效。 开发 使用 Node.js 24 或更高版本以及固定版本 pnpm 12.15.0,安装 workspace 并首次构建 CLI: pnpm install --frozen-lockfile pnpm run build:cli pnpm start 日常启动使用 pnpm start;修改源码后使用 pnpm build-start:cli 重新构建并启动。两个命令都使用与发布包相同的官方 Console launcher。需要提交初始 prompt 时,运行 pnpm start -- --prompt "hello"。 主要质量检查包括: pnpm run format:check pnpm run lint pnpm run typecheck pnpm run build:cli pnpm run test:ci pnpm run test:integration:dsh pnpm run test:package format:check 会增量检查已变更文件且不会修改工作树。test:integration:dsh 使用确定性的 fake LLM adapter 组合真实 Cordis/DSH runtime。test:package 会打包公开 package,在隔离目录中安装它,初始化隔离的 DSH_HOME,并运行已安装的 launcher。 许可证与归属 DSH Console 使用 Apache License 2.0。详见 LICENSE、NOTICE 和 THIRD_PARTY_NOTICES.md。部分终端 UI 和支持工具衍生自 Gemini CLI,并保留其原始版权声明。
预览分享卡片长什么样 ↓
DSH Console 是一个面向 DeepSeek Harness 的键盘优先、DSH 原生终端工作台。它以精致的…
相关插件 · UI / 主题
这是你的仓库?认领条目