Individual skill
plugin-write
Use when creating a DeepSeek Harness plugin, choosing public names for a new external DSH plugin, validating a dsh-plugin.naming.json manifest, checking reviewed central registrations for known conflicts, or creating a workspace package inside the deepseek-harness repository. Covers the full workflow from repository-mode and plugin-form selection through separate offline naming validation, optional online registry lookup, and package validation. Routes tool, LLM adapter, hook, service, and configuration forms to their corresponding references while separating upstream-monorepo rules from external-package rules. For an existing plugin crossing Harness versions, use this Skill's built-in version-adaptation workflow before implementing against the exact target contract.
.dsh/skills/plugin-write/SKILL.md
Source commit 3331b903f0e954d59ac69be1a75fd4fd7e1de20e
What was checked
- Matches the observed repository HEAD
- Yes
- Scanner rules are current
- Yes
- Repository scan complete
- No
- Skill scan complete
- No
- Observed behavior
- Network or broad shell
- Last checked
- Nov 2, 2026
These are observations at the recorded commit, not a guarantee of safety. Review the source before running it.
Install this skill
Choose an agent in your Stack or copy a command below. Commands fetch the pinned commit and copy only this skill directory. Existing destinations are refused. Copying a command does not install anything.
An install command is unavailable: current rules, complete repository and skill scans, an eligible behavior level and a permitted license are required.
Repository context
- Repository stars (not skill ratings)
- 2,757
- Repository last updated
- Nov 6, 2026
- License
- MIT
Observed agent integration: No specific integration evidence. Standard SKILL.md installation does not imply verified compatibility.
- agentteams Repository topic
- dsh Repository topic
- deepseekharness Repository topic
- dsh-agent-teams Repository topic
- dsh-plugin Repository topic
- legal Derived category
- operations Derived category
Files and excerpt
File metadata and permitted, redacted excerpts come from the recorded scan. Source links are pinned to that commit.
Browse files
SKILL.mdcore · 13,608 bytesSKILL.mdcore · 13,608 bytesSKILL.mdcore · 13,608 bytesSKILL.mdcore · 13,608 bytesreferences/README.mddoc · 1,139 bytesreferences/config-plugin.mddoc · 3,998 bytesreferences/hook-plugin.mddoc · 5,866 bytesreferences/llm-adapter-plugin.mddoc · 9,052 bytesreferences/naming-conventions.mddoc · 8,036 bytesreferences/naming-policy.v1.jsonasset · 4,344 bytesreferences/plugin-naming.schema.jsonasset · 4,678 bytesreferences/registry-check.mddoc · 6,040 bytesreferences/service-plugin.mddoc · 5,961 bytesreferences/tool-plugin.mddoc · 10,180 bytesreferences/version-adaptation.mddoc · 4,229 bytesscripts/query-registry.check.mjsruns · 17,136 bytesscripts/query-registry.mjsruns · 32,522 bytesscripts/validate-names.check.mjsruns · 10,035 bytesscripts/validate-names.mjsruns · 15,407 bytes
Read excerpt
# Write DeepSeek Harness Plugins
Create a plugin package. First classify the repository mode and plugin form, then read the matching reference files, and finally validate the published entry with the smallest set of gates that covers the change.
## Select the Repository Mode First
| Target | Rules to apply |
|---|---|
| A package inside the official `deepseek-harness` monorepo | Use the in-repository package, tsconfig, documentation, and root-gate rules below. |
| An externally installable DSH plugin | Preserve that repository's package layout and scripts. Use only packages and exports published by the exact target DSH version. Do not copy `private`, workspace versions, root tsconfig registration, or monorepo-only README gates. |
| An existing plugin being adapted to a new DSH host | Read [`references/version-adaptation.md`](references/version-adaptation.md), build the complete version corridor, and run the seven-class touchpoint preflight. If a change is `breaking` and the user has not yet authorized implementation, present the migration plan and wait for confirmation. After authorization, complete the version adaptation before using this Skill's form references. Form examples must never override target source, type declarations, or release notes. |
Derive Cordis, Schemastery, and DSH package names and version ranges from the manifest of the exact target version. Current examples use scoped `@deepseek-ai/*` identifiers. Older targets may differ and must follow their own published contracts.