Back to directory

dsh-eval-harness

In a curated listMaintenance: Active

biboyang/dsh-eval-harness

Regression eval gate for DSH plugins/skills: YAML cases → real headless agent runs → session-trace assertions → baseline comparison with PASS/WARN/FAIL report and CI exit code; ships 11 real cases (bash/fs/search/todo/web_search/subagent/workflow) and skill helpers.

View on GitHub
$ dsh plugin --profile headless add github:BiBoyang/dsh-eval-harness

14

stars

1

forks

TypeScript

Language

2026-08-13

Created

2026-10-31

Last push

A DSH eval gate that runs YAML cases against a real headless agent, asserts on the session trace and compares the report with a baseline to produce a CI exit code — installed from GitHub, with no declared license and no release tag.

DSH integration

Native runtime

Author-claimed

Safety audit

Unaudited

Last verified

2026-11-13

License

Not specified by the author

01What can it help you accomplish?

  • Put a regression gate on a DSH plugin or skill before you ship it

    report.json + report.md per run, and a CI exit code (OVERALL=PASS|WARN|FAIL|N/A) from the baseline comparison

    DSH plugin and skill authors who need to catch prompt, tool and protocol regressions

  • Assert on a real agent's session trace instead of on answer text

    a per-case isolated workspace and session directory, with assertions on turn_end, tool call order, tool results, step/token caps and an optional LLM judge

    Developers who want proof that a tool was really called and returned the expected content

  • Run protocol-failure regressions offline, without an API key

    deterministic F0-F5 fault-matrix cases plus two mock sentinels that report `healthy: false` when the rig itself breaks

    CI owners who need a zero-cost, non-flaky gate for the streaming error paths

02How to install into DeepSeek Harness

Prerequisites

  • A working `dsh` CLI — every case forks `dsh --profile headless --patch <overlay> <prompt>`
  • Real-model runs need a model credential; the project's own CI passes it as the `DEEPSEEK_API_KEY` secret

Installation steps

  1. 01

    `dsh plugin --profile headless add github:BiBoyang/dsh-eval-harness` — install from the GitHub source; the npm channel is deprecated and stays at 0.3.1

    $ dsh plugin --profile headless add github:BiBoyang/dsh-eval-harness

Verify the integration

  • `dsh --profile headless --dump-config | grep dsh-eval-harness` lists the plugin

03DSH integration and capability boundaries

DSH integrationNative runtime

DSH plugin for the headless profile: four tools (eval_run / eval_gate / eval_judge_validate / eval_tps_run) plus an `eval` skill, driven by YAML cases

  • eval_run — headless eval runner

    a cases_dir of *.yml cases (prompt + assertions, optional mock / plugins / trials)→report.json + report.md with per-case status, attempt history, token breakdown and reliability

    forks one `dsh --profile headless` child process per case and writes an isolated session root and workspacewrites `eval-overlay-*.patch.yml` files into the output directory
  • eval_gate — baseline gate

    before (baseline report.json) and after (this run's report.json)→OVERALL / EXIT_CODE key=value lines, or a single JSON verdict for CI

  • eval_judge_validate — LLM judge calibration

    a hand-labelled JSONL set of `rubric` / `output` / `expect` rows→a confusion matrix with TPR/TNR reported separately and a `calibrated` verdict

    calls the judge once per labelled row, so it needs `EVAL_JUDGE_API_KEY` or `DEEPSEEK_API_KEY`
  • eval_tps_run — long-context TPS sweep

    a tps.yml with models, nominal context steps, repeats and budget_tokens→a fitted tps(n)=1/(a+b·n), the half-speed point n½ and a cross-model table

    sends real streaming requests to OpenAI-compatible endpoints and spends the declared token budgetruns strictly serially and refuses to start when the planned budget is exceeded
  • `eval` skill

    teaches the model the case format, how to write assertions and the limits of the built-in YAML subset

04Who is it for? When not to use it?

Good for

  • DSH plugin and skill authors who need to catch prompt, tool and protocol regressions
  • Developers who want proof that a tool was really called and returned the expected content
  • CI owners who need a zero-cost, non-flaky gate for the streaming error paths

Not for

  • The npm channel is deprecated: the registry copy stays at 0.3.1 and the README says not to install from npm — distribution goes through GitHub only.
  • Declaring `mock.plugins` authorizes the install-time build scripts of the plugins under test to run on your machine (arbitrary code execution) — only declare plugins whose source you trust, and pin the version or commit.
  • Mock mode covers structural assertions and protocol-failure paths only; `output_judge` semantic review and any case that depends on real model capability still need a live API, so mock is not a full offline substitute.

05Compatibility, maintenance and safety notes

  • The npm channel is deprecated: the registry copy stays at 0.3.1 and the README says not to install from npm — distribution goes through GitHub only.
  • Declaring `mock.plugins` authorizes the install-time build scripts of the plugins under test to run on your machine (arbitrary code execution) — only declare plugins whose source you trust, and pin the version or commit.
  • Installing `mock.plugins` specs needs network access (the tool does no offline install), and real-model cases need a model endpoint plus `DEEPSEEK_API_KEY`.
  • Mock mode covers structural assertions and protocol-failure paths only; `output_judge` semantic review and any case that depends on real model capability still need a live API, so mock is not a full offline substitute.
2026-08-132026-10-31Not specified by the author

No license declared · no release tag (npm channel deprecated, GitHub-only distribution) · README evidence only, not security audited

06Frequently asked questions

How do I install it into DeepSeek Harness?

Install from GitHub only: `dsh plugin --profile headless add github:BiBoyang/dsh-eval-harness`, then verify the mount with `dsh --profile headless --dump-config | grep dsh-eval-harness`. The npm channel is deprecated — the registry copy stays at 0.3.1 and the README says not to install from npm. No license is declared and there is no release tag.

What does eval_run actually do inside DSH?

For every case it forks a `dsh --profile headless --patch <overlay> <prompt>` child process in an isolated workspace and session directory, parses the on-disk `session.jsonl` / `session.jsonl.zstd` trace, runs the assertions, and writes report.json + report.md. A per-case `--patch` overlay switches session persistence to that isolated root, so cases can run in parallel without touching your real `~/.dsh`.

Can the gate run in CI without an API key?

Cases with a `mock:` block start an ephemeral mock provider on a random 127.0.0.1 port, generate an isolated `DSH_HOME`, and replay the F0-F5 fault matrix, so the chaos package runs fully offline. `output_judge` semantic review and cases that depend on real model capability still need a live endpoint and key.

Does declaring mock.plugins run third-party code?

Yes. eval_run installs each declared spec through dsh's own installer (`dsh plugin --profile headless add <spec>`), which authorizes that plugin's install-time build scripts to run on your machine. Only declare plugins whose source you trust and pin the version or commit — the README states this risk explicitly.

How does eval_gate decide PASS, WARN or FAIL?

It compares the run report against a baseline: a PASS turning into FAIL/error, a new FAIL/error case or a case missing from the run is FAIL with exit 1; improvements, token-total growth, new flaky cases and new tool-error recoveries are WARN with exit 0 (2 in strict mode); no baseline is N/A with exit 2. A breach of the mock sentinels forces FAIL regardless of the baseline.

08Data and sources

  • Author-claimedgithub.com2184ae446b7d…

    DSH 插件/skill 作者的回归评测门禁:写 yaml 用例 → headless 驱动真实 agent 跑 → 解析 session trace 断言 → 对比 baseline 出 PASS/WARN/FAIL 报告与 CI 退出码…

  • Author-claimedgithub.com2184ae446b7d…

    | `eval_run` | 跑 cases_dir 下全部用例:headless 驱动真实 agent → 采集 session trace → 断言 → 写 report.json/report.md |

  • Author-claimedgithub.com2184ae446b7d…

    | `eval_gate` | 对比 baseline 与本次报告,输出门禁判定(OVERALL/EXIT_CODE),strict 模式收紧 WARN 退出码 |

This page is generated from the project’s public documentation, repository metadata and a structured parse of DSH Plugins; last verified on 2026-11-13. Found an error? Submit a correction.

🏆

Best DeepSeek Harness Plugins

Twelve plugins worth installing first — picked from the whole catalog, across every category.

DSH Plugins is an independent community directory of DeepSeek Harness plugins. Not affiliated with or endorsed by DeepSeek. Third-party plugins are not security-audited — review the source before installing.

New DeepSeek Harness plugins, weekly. No spam.