Introduction

In agent environments like DeepSeek Harness (DSH), where “everything is a plugin,” a single plugin’s installation merely indicates it has entered the runtime. Whether multiple plugins can coordinate to modify, verify, take effect, and recover around a common goal is another matter.

dsh-loom (Loom / Loom) is a second-validator plugin for DeepSeek Harness. It provides a verifiable evolution control plane: the Actor focuses on the current task, the Builder implements and tests in an isolated environment, and the Verifier/Gate is responsible for adjudicating whether the candidate can take effect as a whole.

What is it

dsh-loom is maintained by ZTCNO0NE and is licensed under MIT. It is described as a silent external coach that weaves the agent’s tools, skills, config, and even the model from usage history, and provides deterministic verification and cold-apply.

Verified capabilities include:

  • Actor natural language Plan/Execute and persistent task cards (Verified)
  • Isolated implementation and independent adjudication of Config/New Skills (Verified)
  • Builder read-only directional diagnosis (Verified)
  • Natural language plugin delegation (v1.3.0 Preview)
  • Coordinated source code evolution of up to three plugins (v1.3.0 Preview)
  • Deterministic plugin lifecycle (v1.3.0 Preview)
  • package-aware atomic activation/recovery (v1.3.0 Preview)
  • General plugin installation, update, removal, and recovery (v1.3 Preview · Verified E2E)
  • Multi-plugin source code coordination and atomic Profile activation (v1.3 Preview · Verified E2E)

Version boundaries need attention: v1.3.0 Preview has released natural language plugin delegation, coordinated source code evolution of up to three plugins, deterministic plugin lifecycle, and package-aware atomic activation/recovery. First-party plugin transactions are only enabled with a real cold Loader in a recognizable DSH source code checkout; ordinary global CLI installations continue to provide v1.2 Config/Skill capabilities but will not pretend the plugin transactions are ready. Complex Loop replacement is still Research.

Core Mechanisms

dsh-loom splits the evolution process into classes of responsibilities to prevent the Builder from implementing, verifying, and releasing by itself.

  1. The Actor is responsible for the current task context: parsing the goal, proposing candidates, explaining risks, and retaining a queryable task card state.

  2. The Builder is responsible for isolated implementation and testing. It can explore and implement, but cannot select a live target, extend the transaction scope, or release itself.

  3. The Verifier reads the frozen candidate and does not accept temporarily rewritten acceptance rules by the Builder.

  4. The Gate is the only holder of installation and recovery permissions.

Within these boundaries, dsh-loom, DSH, credentials, and Verifier/Gate are never ordinary evolution targets. It explicitly does not do:

  • Automatic npm publish
  • Modification without source
  • Builder self-approval
  • Modifying Loom/Verifier/Gate by itself
  • Pretending atomic combination with a single patch to the Gate

Installation and Activation

Prerequisites: DeepSeek Harness is running; Node ^22.19 or >=24; Python >=3.10.

  1. First, configure credentials. You can configure DEEPSEEK_API_KEY in DSH Settings/Models or $DSH_HOME/.credentials.yaml. The Builder reuses these credentials by default and does not need to send the key into the conversation.

  2. Install dsh-loom 1.3.0:

pnpm dsh plugin --profile web add dsh-loom@1.3.0
  1. Check if the Loom-related validation entry appears in the DSH configuration:
pnpm dsh web --dump-config

The output should include meta-validate.

  1. Install the isolated implementation runtime.

Windows PowerShell:

$env:DSH_META_VALIDATE_ROOT = "$env:USERPROFILE\.dsh\meta-validate"
$runtimeRoot = Join-Path $env:USERPROFILE ".dsh\meta-validate\runtime\mini-swe-agent-2.4.6"

powershell -ExecutionPolicy Bypass `
  -File "$env:USERPROFILE\.dsh\profiles\web\node_modules\dsh-loom\bin\setup-windows.ps1" `
  --runtime-root $runtimeRoot

node "$env:USERPROFILE\.dsh\profiles\web\node_modules\dsh-loom\bin\dsh-loom.mjs" start --profile web --runtime-root $runtimeRoot

macOS / Linux:

export DSH_META_VALIDATE_ROOT="$HOME/.dsh/meta-validate"
runtime_root="$HOME/.dsh/meta-validate/runtime/mini-swe-agent-2.4.6"

sh "$HOME/.dsh/profiles/web/node_modules/dsh-loom/bin/setup-unix.sh" \
  --runtime-root "$runtime_root"

node "$HOME/.dsh/profiles/web/node_modules/dsh-loom/bin/dsh-loom.mjs" \
  start --profile web --runtime-root "$runtime_root"
  1. Keep the Web process running and open:
http://localhost:3080

Typical Usage

Below are some natural language requests from verified examples that can be used to observe the Plan, isolated implementation, adjudication, and recovery chain.

Single plugin or Config/Skill type requests:

Add a skill for pre-release configuration checks, show the plan first, do not install directly.

After confirmation of execution, the flow is: Background isolated implementation → Verifier/Gate adjudication → Return whether it has taken effect or not.

Query evolution status:

How is the evolution progress?

View current plugins:

List current plugins

Multi-plugin coordinated evolution examples:

Add a model dimension to the statistics in dsh-cost, give the plan first
Make cost and notify work together, take effect as a whole only after combined verification
Restore the previous plugin combination

Multi-plugin tasks also require the host to pre-configure an independent integrationCommand. The Actor will not let the Builder invent its own verification.

Applicable Scenarios and Notes

Suitable for:

  • Developers who need to keep Config and new Skill changes in DSH planned, verifiable, and queryable;
  • Teams that need to have multiple plugins coordinate source code evolution, combined verification, atomic activation, and recovery around a common goal;
  • DSH plugin developers who wish to separate the responsibilities of Builder, Verifier, and Gate to prevent implementers from releasing by themselves.

Notes:

  • dsh-loom runs with the permissions of the current dsh process; check source code, dependencies, and the MIT license before installation;
  • DEEPSEEK_API_KEY should be placed in DSH credential configuration or $DSH_HOME/.credentials.yaml, do not write it into the conversation;
  • The plugin transaction capabilities of v1.3.0 Preview depend on the DSH source code checkout and the dsh-loom start path;
  • Ordinary global CLI installations only provide v1.2 Config/Skill capabilities and do not imply full plugin transaction readiness;
  • Multi-plugin tasks require the host to configure integrationCommand;
  • Complex Loop replacement is still Research; the Preview capabilities cannot be extrapolated to guarantee success in arbitrary complex refactoring;
  • Do not rely on it to automatically execute npm publish, and you should not allow the Builder to self-approve or modify Loom/Verifier/Gate.

Links

Repository: https://github.com/ZTCNO0NE/dsh-loom

License: MIT