插件目录 / Developer / plane-dsh-plugin
plane-dsh-plugin
已验证 · 实测可装 Bene-2020
功能简介
Plane-powered project management for DeepSeek Harness (DSH).
可用 — 实测通过,早期项目
Plane-powered project management for DeepSeek Harness (DSH). 实测能干净安装、正常启动。早期项目,但功能可用。
「已验证」表示我们的自动化 CI 在干净 profile 里实际执行了 dsh plugin add 并启动成功——仅此而已。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。
README
plane-dsh-plugin
A native DeepSeek Harness (DSH) plugin that quietly turns meaningful coding work into Plane project updates.
The plugin recognizes tasks, bugs, decisions, ideas, risks, milestones, plans, progress, and completions during an agent session. It writes events to a local SQLite outbox first, synchronizes them to Plane asynchronously, and exposes a global floating panel for inspecting and updating work items.
[!NOTE]
This project is an early release. The storage and synchronization paths are extensively tested, but DSH and its external plugin APIs are still evolving.
Features
- DSH-native Cordis host and browser client plugin in one installable bundle.
- Eight agent tools for project discovery, binding, capture, and review.
- Durable local SQLite outbox with idempotency, retries, leases, and crash recovery.
- Asynchronous synchronization to Plane without blocking the main agent task.
- Incremental active-item context instead of repeating a full project snapshot every turn.
- Floating Plane-style panel with status filters, optimistic updates, and sync health.
- Manual project switcher for DSH's global overlay, including duplicate-name disambiguation and stale-response protection.
- Plane API keys resolved through DSH credentials and never written to the plugin database.
Requirements
- Node.js 22.19 or newer.
- pnpm available on
PATHfor DSH plugin management. - A recent
@deepseek-ai/dshrelease with external bundles, credentials, tools, client slots, and Typert remote support. - A Plane workspace and API key.
Install
Install the prebuilt npm package into DSH's Web profile:
npx @deepseek-ai/dsh plugin --profile web add plane-dsh-plugin
The npm package already contains the host and browser bundles. Installation does not build this repository or require an allowBuilds exception.
From a local checkout
Use this path only when developing the plugin itself:
git clone https://github.com/Bene-2020/plane-dsh-plugin.git
cd plane-dsh-plugin
pnpm install --frozen-lockfile
pnpm build
npx @deepseek-ai/dsh plugin --profile web add .
Configure
Store the Plane key in DSH credentials, never in cordis.patch.yml:
# $DSH_HOME/.credentials.yaml
PLANE_API_KEY: "your-plane-api-key"
Then override the bundle row in $DSH_HOME/profiles/web/cordis.patch.yml with your workspace slug:
- id: plane-dsh-plugin
config:
workspaceSlug: your-workspace-slug
planeBaseUrl: https://api.plane.so
planeMode: sdk
Start DSH with the same profile:
npx @deepseek-ai/dsh web
The agent will offer Plane project binding when it first encounters an unbound working directory. The panel appears as a floating button in the DSH web UI. See Configuration for every option and troubleshooting guidance.
How it works
flowchart LR
A[DSH session events] --> B[Context and capture rules]
B --> C[Local SQLite outbox]
C --> D[Background worker]
D --> E[Plane API]
C --> F[Typert live RPC]
F --> G[Global floating panel]
See Architecture for the design rationale.
Development
pnpm install --frozen-lockfile
pnpm test
pnpm run test:coverage
pnpm test builds the workspace and distributable bundle, validates the packed artifact, and runs the full test suite. Client coverage is held at 100% for statements, branches, functions, and lines.
Useful commands:
| Command | Purpose |
|---|---|
pnpm build |
Build internal packages and assemble the public bundle. |
pnpm test |
Build, verify the package contract, and run tests. |
pnpm run test:coverage |
Run the coverage gate. |
pnpm run pack:check |
Inspect the publishable tarball contract in a temporary directory. |
Privacy and security
- Source code, terminal output, and full transcripts are not stored by the plugin.
- The Plane API key is resolved per operation through DSH credentials.
- Local project metadata and the outbox are stored in SQLite at
~/.dsh/plugins/ambient-project/ambient.sqliteby default. - Before reporting a vulnerability, read SECURITY.md.
Contributing
Contributions are welcome. Read CONTRIBUTING.md and the Code of Conduct before opening a pull request.
License
MIT © 2026 Wenyan Wei.
安装
装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:
dsh plugin add dshbase-catalog 然后对 agent 说「帮我装 plane-dsh-plugin」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包。
该插件是 GitHub 源码(未发 npm)——直接从仓库装:
Web profile:
dsh plugin --profile web add github:Bene-2020/plane-dsh-plugin Headless(CLI)profile:
dsh plugin --profile headless add github:Bene-2020/plane-dsh-plugin 实测报告
验证通过:从 GitHub 源码完成 L1 安装 + L2 加载 + L3 运行(dsh 0.1.0-rc.6)。