dsh-plugin-lint

Review DeepSeek Harness plugins for declaration consistency, contract compliance, and release readiness.

636|91|Updated Jan 7, 2026
One-click install
npx skills add https://github.com/cat-xierluo/legal-skills --skill dsh-plugin-lint
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: dsh-plugin-lint
Source: https://github.com/cat-xierluo/legal-skills/tree/main/skills/dsh-plugin-lint
Command: npx skills add https://github.com/cat-xierluo/legal-skills --skill dsh-plugin-lint

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

DeepSeek Harness (DSH) plugins can silently break when declarations mismatch artifacts, harness API references are outdated, or client bundles violate the module loader contract. This Skill provides a structured three-mode review workflow (design pre-check, quick review, formal acceptance) so plugin defects are caught before release instead of after deployment.

Core Features & Use Cases

  • Mechanical Linting: Run scripts/lint.mjs against a plugin directory to check package.json declarations, dsh.bundle patch consistency, client artifact banner/footer contracts, and entry file existence, with exit code equal to the number of failures.
  • Five-Layer Review Checklist: Covers mechanical checks, fact verification against harness source code, contract pitfalls (lossless JSON, DSL limits, subprocess handling, fail-loud semantics), documentation sync, and candidate-bound acceptance evidence.
  • Formal Acceptance with Evidence Binding: Binds release verdicts to a specific commit, clean-profile installation, boot logs, and browser rendering screenshots, marking unverifiable items as NOT_VERIFIED.
  • Use Case: Before publishing a DSH plugin with a browser client half, run the lint script for mechanical checks, trace every event/slot/API reference to harness source files, walk the ten contract pitfalls, and produce a quality report from the provided template.

Quick Start

Review the DSH plugin in the current directory with dsh-plugin-lint, starting with the mechanical lint script and then walking the fact and contract checklists.

Frequently Asked Questions about dsh-plugin-lint

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I review a DeepSeek Harness plugin before release?

Run scripts/lint.mjs against the plugin directory for mechanical checks on declarations and client artifacts, then trace every harness API, event, and slot reference to source code. Finish with the contract checklist and bind acceptance evidence to the candidate commit.

What does the dsh-plugin-lint script check?

The lint.mjs script verifies package.json parsing, dsh.bundle patch file existence and name consistency, node entry existence, and client artifact contracts including the __ModuleLoader__ banner, module/exports construction, footer, and .js extension. Exit code equals the number of failures.

Why does a DSH plugin client bundle fail with exports is not defined?

The client bundle banner must construct var module = { exports: {} }; var exports = module.exports; before the factory body. Without it, the browser-side module loader throws exports is not defined when loading the plugin.

Can DSH plugin tools return objects containing undefined values?

No. The harness recursively rejects any return value containing undefined properties as not lossless JSON. Tool implementations must deep-strip undefined values before returning results.

What are the limitations of the mechanical lint layer?

The mechanical layer uses regex-level parsing and does not handle full YAML syntax or complex patch structures. It also does not run the target repository's build or test commands, so fact tracing, contract review, and acceptance evidence remain manual steps.