Introduction¶
The core philosophy of DSH is “everything is a plugin”. When developing plugins, developers often face unclear permission boundaries: which data channels are officially supported, which are undocumented workarounds, and which operations are physically infeasible. The dsh-plugin-boundary plugin packages these boundary rules to help developers make trade-off decisions before writing code.
Plugin Positioning¶
This is a plugin development boundary skill plugin for DeepSeek Harness (DSH), maintained by KoanJan. It packages the platform’s boundary capability specifications into a loadable skill, clearly answering what can and cannot be done during development.
Core Features¶
The plugin registers a skill via ctx.skills.registerProvider: dsh-plugin-boundary.
This skill provides the following boundary information:
- Data channel layout: boundaries of data interaction between the client and the host.
- Filesystem limitations: scope of filesystem operations exposed by official APIs.
- Lifecycle differences: lifecycle differences between dynamic plugins and bundle plugins.
- Hard rules: mandatory rules regarding installation and effect debugging.
A skill consists of two parts: SKILL.md (describes purpose, loading timing, and usage points) and rules/*.md (rule bodies).
Installation and Enablement¶
Before installation, ensure that pnpm is installed (the official dependency for DSH plugins).
Installation Steps¶
1. Install from a local directory
dsh plugin --profile web add file:/path/to/dsh-plugin-boundary
2. Install from the npm registry
dsh plugin --profile web add @koanjan/dsh-plugin-boundary
3. Enable
After installation is complete, restart DSH. In a new session, the dsh-plugin-boundary skill should appear in the skill catalog.
Development and Configuration¶
The core directory structure of the plugin is as follows:
dsh-plugin-boundary/
├── package.json # 包清单,dsh.bundle.patch 声明其为 bundle 层
├── cordis.patch.yml # 补丁层:将插件行插入配置
├── lib/index.js # 插件主体:skills.registerProvider 提供技能
└── skills/ # 技能资源(纯 Markdown)
└── dsh-plugin-boundary/
├── SKILL.md
└── rules/
Modifying Skill Content¶
Directly edit skills/dsh-plugin-boundary/SKILL.md and rules/*.md, then reinstall (remove first, then add) and restart DSH.
Modifying Plugin Logic¶
Directly edit lib/index.js, then reinstall and restart DSH.
Notes¶
- Version validation: the boundary conclusions were validated against DSH 0.1.0-rc.6. After upgrading DSH, key rules need to be revalidated.
- Runtime permissions: the plugin runs with the permissions of the current DSH process.
- License: check the source code and license (MIT) before use.
This plugin provides reference boundaries for DSH plugin development and avoids blind trial-and-error during development. Plugin details and source code are available at: GitHub | Plugin Catalog