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