Audit each finished assistant turn with an independent reviewer model and steer the agent to fix failed output, with at most 2 review rounds per turn and SOP-folder standards injected as an extra review dimension.
Install
# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)
dsh plugin --profile web add github:CAI-MH/dsh-quality-review
Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time — pnpm blocks those until you allow them, so an install can stop with ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED or ERR_PNPM_IGNORED_BUILDS; dsh prints the exact key to add under allowBuilds in your profile’s pnpm-workspace.yaml, and the install works on the next run. Allowing a build is a trust decision: only install sources you trust, and pin a commit (github:owner/repo#sha).
README
English | 中文
AI response quality review for DeepSeek Harness (DSH): audits each finished assistant turn with an independent reviewer model and steers the agent to fix unreasonable output (up to 2 review rounds).
How it works
On agent/turn-stopping — the moment a turn is about to close — the plugin takes the assistant's latest visible reply, audits it with a reviewer model, and when the verdict is fail it steers the agent with a concrete fix request so the turn stays open and the model revises. Each turn allows at most maxRounds steered follow-ups (default 2), which is the hard loop guard.
Reviewed aspects (each can be toggled):
- Factual accuracy — obvious factual errors and fabricated information
- Completeness — any part of the user's question left unanswered
- Logical consistency — contradictory reasoning and unsupportable conclusions
- Instruction following — violations of explicit user format/language/constraint requirements
Install
dsh plugin --profile web add dsh-quality-review
Or add it to your profile's package.json dependencies and list it under dsh.profile.bundles, then restart dsh web.
Configuration
Every field has a safe default, so the bundle row can be inserted with no config at all. Override individual keys from your profile's cordis.patch.yml:
- id: quality-review
config:
enabled: true # master switch; the plugin stays loaded but inert when false
reviewer:
provider: '' # reviewer provider id; empty reuses the agent's own provider
model: '' # reviewer model id; empty reuses the agent's own model
maxRounds: 2 # max steered fix rounds per turn (loop guard, max 5)
aspects:
factualAccuracy: true
completeness: true
logicalConsistency: true
instructionFollowing: true
minReplyChars: 200 # skip replies shorter than this
sop:
enabled: true # SOP reference-standard switch (default on)
dir: '' # SOP folder; empty uses DSH_HOME/quality-review/sop
exemptPatterns: # extra static keywords: skip review on match (optional)
- 代码 review
Common-task SOP reference standards (sop)
For routine SOP-style tasks, reviewing against generic dimensions is noisy. The plugin reads a SOP folder and treats each file name (extension stripped) as a match keyword for the related task; when the user prompt matches any name (case-insensitive substring), it loads the content of every file in the folder — a SOP may span several files — and injects it into the review prompt as the task's quality standard, adding a "是否符合 SOP 规范" dimension the reviewer checks the answer against. Non-matching turns still use the generic four dimensions.
Default folder: DSH_HOME/quality-review/sop. Drop files in and fill them with the task's standard (what a good output must contain / avoid); no config or restart needed — the folder is re-scanned every turn. exemptPatterns is separate: a static keyword list that skips review on match.
Development
npm install
npm run build # tsc — compiles src/ to lib/
The published package ships the compiled lib/ output; src/ holds the TypeScript sources.
License
Links
More in this category
Clearailhc/clearai-dsh★ 664
An agent preset for evidence-checked research: every step advances only through system-verified observations, L3+ claims go to an independent evaluator, and the session folds into a replayable ledger that grows into a browsable domain ontology. Requires DSH >=0.1.7-alpha.1.
FuRongJun-1999/dsh-memory★ 446
White-box AGI architecture exploration: metacognition (self-cognition loop), continual learning (knowledge flywheel), world model (condition space, spatiotemporal memory graph), self-improvement (bootstrap discipline), zero-LLM white-box pipeline, and auditable trust guardrails.
pk14742952-AD/dsh-host-rsi★ 35
Reflective self-evolution plugin for local Qwen3.8 27B/3.8 Flash and online APIs: a coding-loop convergence steerer curbs Qwen3.8 27B/Flash repeated-verification deep-thinking to converge faster and cut thinking time; a five-state delivery guard detects and corrects stuck turns and infinite loops; model-agnostic host logic, mostly compatible with online APIs; per-use continual self-improvement with counter-reason self-checks, critic escalation, inverted-index memory retrieval, coding-loop convergence steering, and a five-state delivery guard.
MichengAI/dsh-pua★ 32
Adds /pua to steer the agent to try another approach and verify results before claiming completion, with 15 company styles, persona modes, global and per-conversation settings, and an optional loop that continues until a verification command passes, the iteration limit is reached, or the user cancels.
kenz1117/dsh-engram★ 30
Cross-session long-term memory under the "memory palace" metaphor: dual-scope SQLite stores (user + per-git-origin project), hybrid FTS5 + local-vector retrieval with RRF fusion and recency/proof ranking boost, automatic capture from the session log (including the final turn), provenance audit chains, consolidation distillation and decay forgetting, and a settings-page Memory Library panel with corridor topology, tour butler, and refurb list.
Kanadego/dsh-heartbeat★ 16
Heartbeat loop for DeepSeek Harness: every 20 minutes (by default) the agent wakes on its own to keep a local profile of your interests and preferences, search the web for things you care about, and keep what it finds. When it has something worth sharing, it sends a short package of notes to the sessions you link it to. A set of rules in code - quiet hours, busy windows, a daily limit, a cooldown - decides whether it may speak at all, and the agent in that session decides whether to actually say anything. Windows only.
Community comments
Comments are public GitHub Discussions. Loading them connects to GitHub and Giscus; a GitHub account is required to post.