DSH Plugins Marketplace

DSH Plugins

Plugins

/

harness2-recursion

H

harness2-recursion

Discovered

Harness² recursion: two auditable dsh plugins — task-level probe/compose evidence loop + harnessing-level experience library (frozen contract v4, 34/34 tests, real-session E2E)

harness2-recursion

Harness² 递归方案 —— 两个互相独立、可分别加载的 dsh 插件(第四轮冻结契约版本)。

包职责
packages/harness2-task-recursion任务级递归:Propose → Probe → probe/completed → 确定性 Compose 门禁 → 账本 v3 → compose/applied/compose/rejected → 下一个 pre-step 应用 pendingPatch
packages/harness2-meta-recursionHarnessing 级递归:消费三事件 → 事后归因(edit 只取事实)→ 经验库 → 冻结只读门面 harness2Experience

两个包的 src/index.ts 互不 import;src/constants.ts 逐字节相同。契约见 CONTRACT.md,验收见 SELF-CHECK.md。

目录

harness2-recursion/
├── CONTRACT.md                     # 第三轮冻结契约
├── SELF-CHECK.md                   # 第三轮 13 项验收清单逐项证据
├── README.md
├── package.json / tsconfig.base.json
├── test/loader-smoke.mjs           # 真实 Cordis 装载/事件/卸载 smoke
├── e2e/                            # 真实 headless 会话 E2E(安装/账本/applyMode/经验)
├── docs/                           # 社区 Discussion 提案 + 发布清单
├── LICENSE · .gitignore
└── packages/
    ├── harness2-task-recursion/
    │   ├── src/{index.ts, constants.ts}
    │   ├── lib/                    # tsc 产物(构建生成,不入库)
    │   ├── cordis.patch.yml · locale/ · icon.svg
    │   └── test/verify.mjs         # 15 项契约自检
    └── harness2-meta-recursion/    # 同上(13 项自检)

社区讨论

验证

要求 Node ≥ 24(node --test 直接 import src/index.ts,依赖类型剥离)。

npm install
npm run build        # lib/index.js + lib/index.d.ts + lib/constants.js
npm run typecheck
npm run verify       # task 15 + meta 14 + loader smoke 5 = 34 项

本次结果(2026-10-19):npm run verify 34/34 pass;typecheck/build exit 0;npm pack --dry-run 清单齐全;真实会话 E2E 通过(见下)。

第三轮新增(相对第二轮)

  1. 事件 schema:TrialRecord 三个候选元数据字段必填(Q1);ProbeMetrics.tokenCostSource(Q4);ComposeAppliedPayload.appliedEdits(R3-1);ComposeRejectedPayload.rejectedCandidateIds(Q3)。
  2. 账本 v3:{version,id,previousSnapshotRef,ledgerEntryId,event,payload,recordedAt};只写 v3,readLedgerTail 接受 v2|v3 并做内存映射、不重写 v2 文件(Q7)。
  3. 归因规则:反射必须带 edit.candidateId,且与来源事实严格一致;写入的 edit 字段永远取自来源载荷(R3-3/Q2);不一致 → onError('reflection-edit-mismatch') 且拒绝写入。
  4. confidence v3:base(0.6/0.5) × (0.5+0.5·min(1,trials/3)) × repeat(≤1.4) × sourcePenalty(estimated 0.9);trials=0 → 0 且不写入(Q4/Q5)。
  5. 双注入阈值:positive 用 minConfidenceToInject,negative 用 minNegativeConfidenceToInject(默认 0.3,Q6)。
  6. 组件表:COMPONENT_NAMES 八类冻结;7 项旧名迁移映射 + migratedFrom 审计;未知组件跳过并 onError('unknown-component');移除 workflow-control 回退(R3-7)。
  7. token 计量:Propose 用 usage chunk;Probe/baseline 用可选 tokenMeter;否则字符数/4 估算;同一 metrics 单一来源。
  8. 第四轮增量:新增终态事件 propose/failed(R4-1,与 Probe/Compose 互斥、append→emit、账本 revision 探测跳过它);rejectedCandidateIds 只取 trials 中出现的 id(R4-2 正式契约);outcome.tokenCostSource/migratedFrom 正式纳入 entry schema(R4-3)。

第三轮如实偏差(详见 CONTRACT §9 / SELF-CHECK §三)

  • 无逻辑偏差:第三轮 Q3 冲突已由 propose/failed 独立终态解决(原 TODO(ROUND3_PROPOSE_FAILURE) 移除);预算早停的 rejected ids 与 entry 增量字段已追溯为正式契约。
  • 环境依赖继续留 TODO/不验收:pre-step-patch 运行时 API(dsh 0.2.1 无)、Probe 工具沙箱、profile 安装(第四轮执行)。

第五轮:真实环境验证 + 社区材料

真实会话 E2E(已通过)

# 需要 dsh 0.2.1-rc.2 CLI 运行时(提取方式见 e2e/README.md)
E2E_CLI="<dsh-0.2.1-runtime>/dsh/node_modules/@deepseek-ai/dsh/lib/bin.js" node e2e/run.mjs

隔离 profile 内通过官方 dsh plugin add 安装两包,跑两次真实 headless 会话(假 provider:前 3 次主模型 500 → 触发 request-error 路径,随后延迟成功)。实测结果:

Ledger: 4 v3 records (2 probe/completed + 2 compose/applied)
applyMode: run1=noop-todo, run2=next-task-ledger
Revision anchor chain: null -> led-… -> led-… -> led-…
EXPERIENCE.md entries: 1 (confidence 0.50, measured tokens)
Sessions: 2 (exit 0)
  • 首次 noop-todo 是冻结语义(插件激活时尚无账本可读);第二次会话由 readRevisionAnchor 升级为 next-task-ledger。
  • 完整证据与复现步骤:e2e/README.md、e2e/artifacts/RESULTS.md。
  • 卸载残留:loader smoke 第 5 项验证真实 Cordis dispose 后 7 个监听器全部释放、不再写账本/经验文件。

社区材料

  • docs/discussion-proposal.md:Discussion 提案底稿(双插件契约、propose/failed 独立终态、元知识只改进编辑器三个差异点 + 34/34 证据 + 缺口 + 讨论问题)。
  • docs/publishing.md:Phase 1 原型仓库/npm/Plugin Directory 发布清单。
  • LICENSE(MIT)、.gitignore 已就绪;两包 keywords 含 dsh-plugin(发布前移除 private 并改用可发布包名)。

安装(第四轮/第五轮)

cd harness2-recursion && npm install && npm run build

然后在 Harness Web 的 Plugins 页分别安装两个本地 bundle(target 指向各包目录)。默认 observeOnly: true:只取证、不应用 Compose。

Comments

Loading…

Similar plugins

dsh-2origin

by dongsheng123132

Evidence-first 2Origin state projection, diff and immutable freeze for DeepSeek Harness

Tools & CapabilitiesModels & ProvidersManifest valid

★ 2

MIT

JavaScript

Oct 5, 2026

dsh plugin --profile web add dsh-2origin

by StvLi

The Deepseek Harness ROS 2 plugin can be used to efficiently diagnose issues and perform joint debugging.

Tools & CapabilitiesManifest valid

★ 23

↓ 13/wk

MIT

TypeScript

Oct 15, 2026

dsh plugin --profile agent add dsh-ros2

by Liu-Bot24

DeepSeek Harness(DSH)只读执行轨迹复盘插件,支持规则分析、独立模型解读、证据定位、任务概览与运行对比。

Development & InfrastructureManifest valid

★ 5

MIT

JavaScript

Sep 26, 2026

dsh plugin --profile web add dsh-plugin-trace-insight

by orangeofcarl0-sys

A contract-preserving context runtime for long-horizon agents on DeepSeek Harness

Sessions & MessagesManifest valid

★ 6

MIT

TypeScript

Oct 8, 2026

dsh plugin --profile web add dsh-epistemic-fold

by jingzhao-l

DeepSeek Harness (dsh) plugin that turns the iterate skill into an autonomous closed-loop code iteration — parallel reviews, deterministic dedup convergence, atomic fix + verify auto-stop, meta-review

Workflow & AutomationManifest valid

★ 2

↓ 431/wk

MIT

TypeScript

Sep 12, 2026

dsh plugin --profile web add iterate-plugin

by lkshjd

DeepSeek Harness multi-agent debate plugin: isolated research, cross-examination, judge convergence (background job + resume + parallel waves)

Workflow & AutomationManifest valid

★ 0

TypeScript

Aug 17, 2026

dsh plugin --profile web add @sky_sun/dsh-debate