DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins
F

@local/dsh-fang

Fang

dsh-Fang (瓮城) — 用于 DeepSeek Harness 的母体/分叉插件开发环境:一个只读母体、每个任务一个可弃用的子插件 dsh-Web、1 个编排器 + 12 个子插件。

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add github:TwinsEarth/dsh-fang#3e0fe5a017cd7d2bb1f1106e03cf8b92155f2769
README兼容性版本

兼容性与来源证明

Fang 以 @local/dsh-fang 发布,当前版本为 2.6.1。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
web
发布来源
github
Registry 更新时间
2026/11/1

版本

2.6.1stable
2026/11/1
2.3.1stable
2026/11/1

相关插件

正在加载相关插件…

最新版
2.6.1
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
未提供
文件数
未提供
Surface
web
许可证
AGPL-3.0-or-later
发布源
github
GitHub
★ 1
周下载
0
最近提交
2026/11/4
查看源码 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

相关插件

继续浏览 developer-tools 分类下经过校验的插件。

Web App@deepseek-ai/dsh-web-appdsh 浏览器界面捆绑包:位于 dsh-base 之上的 Web 补丁层,加上运行时粘合插件(提供前端 dist、Web 界面提示符、bash 运行时变量和 URL 行)Sdk Minimal@deepseek-ai/dsh-sdk-minimal独立的最小 SDK 配置包:JSON-RPC、一个 DeepSeek 适配器、持久化 Shell 和 JSONL 会话Sdk App@deepseek-ai/dsh-sdk-appdsh SDK 配置包:基于 dsh-base 提供 stdio JSON-RPC 服务和进程生命周期管理Experimental Inspector@deepseek-ai/dsh-experimental-inspector用于 Host 调试和 Client Runtime 检查的实验性跨 realm CDP hub

README

瓮城

让DSH不再需要反复重启客户端:

加载、运行、更新、回滚、卸载、回收,全生命周期管理。

技术原理:

1.用dsh-Web,当瓮城完成风险阻隔&审批(Beta) 2.DeepSeekHarness,当主城保存原样不变(稳定版)

母体大脑 + 分身器官 + 容器兜底:一个只读母体,每个任务派生一个用完即弃的子 dsh-Web; 开发都在分身里,母体只在「提升」时被显式更新。崩溃不扩散、污染不残留、插件不串味。

v2.3.1 把「瓮城」做进 Web UI(左侧导航 + 3:7 分屏控制面板 + 双击派生 + 母体/分身会话继续开发); v2.0.0 按三层拓扑重新部署, 新增 Adapter 跨进程桥、任务语义、端口池、干净模板、Router 双阶段、评分环境阈值、 审计汇总、容器执行与申报写代理、商用钩子。

当前状态(2026-11-01,v2.3.1)

  • UI:左侧导航「瓮城」(红色城门图标)· 中列控制面板 3:7 分屏(左=母体项目&会话,右=分身项目&会话,两栏独立滚动)· dock 徽标双击快速派生;
  • 测试:292 tests / 291 pass / 0 fail / 1 skip(skip = FANG_CONTAINER_LIVE=1 手动容器探针,已单独跑 9/9);
  • 实机端到端:node tools/e2e.mjs → 41/41 checks passed(临时 $DSH_HOME + 真实 dsh 母体 + 真分身: 派生 → Adapter 握手 → 角色矩阵 → 任务/分身会话标题 → 归档 → 审计链 → 回收);
  • desktop profile 已挂 @local/dsh-fang bundle 层(通过 link: 指到本仓库,包版本 2.3.1);
  • ✅ v2.1.0 的「瓮城」UI 已在运行中的宿主生效(活体实测):sidebar.panellist 有 id=fang(order 90, active)、 main 的 key fang 已注册、dock 的 fang-badge active;宿主行 include:fang-session-catalog 已加载。
  • 🔧 v2.3.1(3:7 分屏面板 + 分身会话 API + 会话原生标题 + 僵尸防护)代码与测试已就绪; 宿主侧需重启加载、页面刷新即可看到新布局与新标题。 交付与证据见 docs/v2.3.1-交付报告.md 与 docs/UI-瓮城入口.md。
  • ✅ v2.3.1 已发布:GitHub Release 附 dsh-fang-2.3.1.tgz + manifest.json,CI/compat 全绿;
  • ⏳ npm:@twinsearth/dsh-fang@2.3.1 构建与本地 healthz 已就绪,等待 npm 组织 @twinsearth 创建后发布;
  • 🔒 main 为 PR-only:直接 push 会被拒绝;变更走分支 + PR + 维护者手动审核合并(见 CONTRIBUTING)。

v2.1.0 新增入口

  • 左侧导航「瓮城」:红色城门图标(sidebar.panellist);单击 → 中列控制面板;双击图标 → 快速派生并打开分身标签页。
  • 控制面板(main key=fang):任务列表 + 母体已有会话列表,选中 → 确认条 → 继续开发(会话走 ≤32KiB lineage 种子)。
  • 输入框 dock 徽标:单击开面板,双击快速派生(可发现性提示在 tooltip 里)。

规格与平台约束见 docs/UI-瓮城入口.md;交付记录见 docs/v2.3.1-交付报告.md。

快速开始

git clone https://github.com/TwinsEarth/dsh-fang.git && cd dsh-fang

# 1. 离线自检(不修改任何东西)
node tools/fangctl.mjs doctor
node tools/fangctl.mjs status

# 2. 全量单测(node v24 不接受目录参数)
node --test --test-concurrency=1 "test/*.test.mjs"

# 3. 实机端到端验收(临时 $DSH_HOME + 真实 dsh 母体 + 真分身,不碰你的 profile)
node tools/e2e.mjs

# 4. 安装到当前 profile(DSH 内 plugin_manager install_bundle,target = 本目录)

安装后刷新页面:输入框下方出现「瓮城 N/M」徽标,点「门户」进入 /fang/panel:

  • 派生新任务:端口池确定性分配(18000–18100)、独立 $DSH_HOME、干净模板、Adapter 握手后 ready;
  • 打开:带 token 的分身标签页;
  • 归档:先让分身 flush 缓冲并落审计,再 kill 进程树 + 安全删除 home(junction 只解链);
  • 提升插件…:跨进程取源码 → 母体阈值复核 → Router 初判 → 审批 → A/B 备份 → 母体 staging。

十一个插件(部署矩阵)

行 id模块母体分身职责服务 key
fang-orchestratororchestrator.mjs✅❌任务语义:create/status/promote/archive、门户fang
fang-forkerforker.mjs✅❌端口池、spawn/kill、junction、URL 解析fangForker
fang-restart-guardrestart-guard.mjs✅❌母体重启唯一闸门(只决策/审批/审计)fangRestart
fang-scorerscorer.mjs✅(复核)✅(主)静态 A–E + 动作灯色,阈值按环境分叉fangScorer
fang-routerrouter.mjs✅(初判)✅(复核)decide / confirm(只升不降)/ 容器分支fangRouter
fang-healerhealer.mjs❌✅自检/证据/G1–G12/补丁建议(不放行)fangHealer
fang-approverapprover.mjs✅(汇总)✅(本地)待批队列/A-B/监控/回滚fangApprover
fang-hot-reloaderhot-reloader.mjs❌✅真 ESM 换版 + 健康窗fangHotReloader
fang-buffer-keeperbuffer-keeper.mjs❌✅三态监视 + 容器申报写代理fangBuffer
fang-auditorauditor.mjs✅✅双侧哈希链审计 + aggregatefangAudit
fang-adapteradapter.mjs❌✅跨进程桥:HTTP 控制/状态/审批/审计fangAdapter

契约:CONTRACTS-V2.md · 协议:PROTOCOL-V2.md · 架构:ARCHITECTURE-V2.md · 变更:CHANGELOG.md。


安全与边界

  • 角色矩阵由 src/kernel/role.mjs 单点决定;DSH_FANG_ROLE=fork 由 forker 注入,分身无法自升为母体。
  • 数据目录:$DSH_HOME/fang/<profileTag>/;分身各用自己的 $DSH_HOME,天然隔离。
  • 分身 node_modules 指向母版 junction;删除必须走 kernel removeTree()(junction 只解链)。
  • 审计是哈希链 sha256(canonical(record)+prevHash),可发现改字段/删行/换序/伪造追加。
  • 红灯不可被自动批准绕过:strictRedLine=true 时 risk==='red' 必须显式 decide();无人应答 fail-closed。
  • 容器写代理:容器内插件无直接写权限,写请求必须落在 bufferRoot 内 + 命中申报名单 + ≤1MB。
  • parseWebUrl 只认带 ?token= 的启动行——裸地址 401。

已知限制(v2.0.0,诚实清单)

AppContainer 真实执行需 FANG_CONTAINER_LIVE=1 手动探针(CI 只覆盖降级路径); Job Object 层未接入;分身会话迁移/跨宿主接管未做;Relay 付费五项只有钩子与配置开关。 v1 运行中的宿主缓存旧模块,v2 生效需母体重启(红线:由用户确认执行)。 完整清单见 ARCHITECTURE-V2.md §8。


许可证(分层)

层路径协议你能做什么
核心层src/ · probes/ · client.js · cordis.patch*.yml · test/ · tools/e2e.mjsAGPL-3.0-or-later自由使用/修改;对外提供网络服务时须按 AGPL 提供源码
生态层sdk/ · tools/fangctl.mjsMIT零摩擦复制、修改、二次分发、闭源集成
商业层relay-server/ · enterprise/商业许可(闭源)需购买许可;不随开源分发包
  • 逐目录许可地图:NOTICE;方案与边界分析:docs/LICENSING.md。
  • 许可全文:LICENSE-CORE · LICENSE-SDK · LICENSE-COMMERCIAL。
  • 贡献前请阅读并签署 CLA.md(用于双许可证与商业授权)。
  • 商业授权/OEM:fangwenxin@geefish.com。
  • 本仓库不含第三方运行时依赖;vendored schemastery/cosmokit 保留上游 MIT(见 LICENSES/cordis-MIT.txt)。
  • 所有源码文件头带 SPDX-License-Identifier;test/licensing.test.mjs 防止分层漂移。