DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

Jev Loop — DSH Plugin for DeepSeek Harness
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins
J

dsh-jev-loop

Jev Loop

Jev (TypeSafe System One) judgments at the DeepSeek Harness agent-loop gates: pre-step, pre-execute, post-execute, and turn-stopping. No UI dependencies; mount it in any Harness composition.

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add github:JWE24-code/dsh-jev-loop#5779d920c6fedc24024075a338a50f63e76be9e2
READMECompatibilityVersions

Compatibility and provenance

Jev Loop is published as dsh-jev-loop and currently resolves to version 0.1.2. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
any
Release source
github
Registry updated
10/1/2026

Versions

0.1.2stable
10/1/2026
0.1.1stable
9/30/2026

Related plugins

Loading related plugins…

Latest
0.1.2
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
any
License
MIT
Source
github
GitHub
★ 0
Weekly downloads
0
Last push
10/1/2026
View source ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue

Related plugins

More verified plugins in agents-orchestration.

Skills Manager@michengai/dsh-skills-managerDSH Skills Manager — 在 DeepSeek Harness 中统一加载并安全管理本机 Agent Skills · Load and safely manage local Agent Skills in DSHDs Botds-botDS Bot: a team of long-lived Bots for DeepSeek Harness, with Main Bots, Bot-to-Bot messages and group chatsAgency Agents@michengai/dsh-agency-agentsDSH Agency Agents — 为 DeepSeek Harness 提供 331 名可召唤的专业智能体 · 331 summonable domain experts for DeepSeek HarnessDSCODE Desktop@toddzheng024/dscode-desktopCoding collaboration, memory, browser workflows and task management for Harness Desktop.

README

dsh-jev-loop

Jev (TypeSafe System One) judgments at the DeepSeek Harness agent-loop gates. No UI dependency: mount it in any Harness composition, headless or otherwise.

This is the core of the Jev loop for moqi. The optional /JevLoop control panel ships separately as moqi-jev-loop, and depends only on the jevLoop service this package provides.

Published to npm as dsh-jev-loop. This repository carries the dsh-plugin topic — the whole of the dshfind listing mechanism: the marketplace indexes public repositories by that topic and syncs daily, so there is no listing step per release.

Install

dsh plugin --profile <profile> add dsh-jev-loop

Then give it a key: set TYPESAFE_API_KEY (or TYPESAFE_APIKEY) in the environment, or store one in the Harness credential store under TYPESAFE_API_KEY. The gates fail open — no key, timeout, 429, or bad JSON never blocks the loop.

The gates

GateEventWhat Jev judgesDecision
Pre-stepagent/pre-stepis the request underspecified?inject an "ask before guessing" instruction
Pre-executetools/pre-executedestructive · exfiltration · off-tasklog / ask / deny
Post-executetools/post-executedid a successful call silently miss?log / block with corrective feedback
Turn-stoppingagent/turn-stopping"is the request actually done?"nudge the turn onward, or pass

All four are automatic. Jev supplies a calibrated probability; this package owns the thresholds and decisions, and every failure — no key, timeout, 429, bad JSON — fails open, so a judgment service that is down never blocks the loop.

Configure them on the dsh-jev-loop row in a profile's cordis.patch.yml (see this package's cordis.patch.yml), or in a profile's own patch layer. The *Enabled defaults can also be overridden at runtime from moqi's /JevLoop panel, which persists to $DSH_HOME/jev-loop.json.

Cost envelope

  • One POST /v1/systemone per judgment; pre-execute asks its three hazards in a single call.
  • State is capped (maxStateChars); the transcript gates only send the last turnStoppingMaxMessages messages.
  • Answers are cached by a SHA-256 of the exact request body, so an unchanged judgment is free.
  • Every judgment is appended to $DSH_HOME/jev-loop.jsonl with probabilities, cache hit/miss, latency, and token usage.

Config

Set on the dsh-jev-loop row in a bundle patch, or in a profile's own patch layer.

FieldDefaultMeaning
apiKey—literal key; prefer apiKeyEnv so no secret is in a config file
apiKeyEnvTYPESAFE_API_KEYenv var read for the key; TYPESAFE_APIKEY is also read
modeljev-latestTypeSafe model alias
baseUrlhttps://api.typesafe.ai/v1/systemoneevaluation endpoint
timeoutMs3000per-request timeout
maxRetries2retries on 429/529, network errors, timeouts
maxStateChars24000hard cap on state sent to Jev
cacheEntries500in-memory cache entries
auditPath$DSH_HOME/jev-loop.jsonlJSONL audit trail
statePath$DSH_HOME/jev-loop.jsonpersisted gate toggles
preStepEnabledfalsejudge the request before the first step
preStepThreshold0.7clarification probability that injects a question
preExecuteEnabledtruejudge tool calls before dispatch
preExecuteModeloglog observes, ask requests approval, deny refuses
preExecuteThreshold0.7hazard probability that flags a call
preExecuteSkip[]tool names to ignore
postExecuteEnabledtruecheck a successful tool result

Test it

npm install            # typescript + @types/node
npm run link-harness   # symlink the installed harness's @deepseek-ai packages
npm run build
npm test               # gates, keyring, loop — no Harness, no network
npm run install-profile -- jev-core   # throwaway profile with just this bundle
TYPESAFE_APIKEY=… dsh --profile jev-core

~/.dsh/jev-loop.jsonl records every judgment.

To exercise the Harness-only build inside your own profile, list just the core bundle:

bundles: ['@deepseek-ai/dsh-base', 'dsh-jev-loop']

Layout

src/gates.ts   the four judgments and their copy, as pure functions
src/keyring.ts key resolution order, storing, probing, clearing
src/loop.ts    JevLoop: state assembly, per-turn budgets, audit, one method per gate
src/jev.ts     the TypeSafe client: a Judger port and its live adapter
src/render.ts  derived session messages -> plain text
src/index.ts   the Cordis adapter: config, event wiring, effects
tests/         the modules above, driven directly
scripts/       harness linking and the throwaway profile installer

Docs

The module boundaries, the seams, and the generated whiteboard are documented in docs/ARCHITECTURE.md.

SonarQube Cloud

postExecuteModeloglog observes, block turns feedback into an error
postExecuteThreshold0.7miss probability that blocks a result
turnStoppingEnabledtruecheck the turn before it closes
turnStoppingThreshold0.5completion probability below which to nudge
turnStoppingMaxSteers2nudges per turn, so a wrong judgment cannot loop
turnStoppingMaxMessages14transcript messages fed to the completion judgment