deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
INSTALL REFERENCE
dsh plugin --profile web add github:xxwj225-James/tomilite-dsh-plugin
该命令指向仓库当前默认分支;尚无绑定当前 commit 的完整验证结果。
PROJECT README
A DeepSeek Harness plugin that gives your DSH agent access to your local TomiLite — tasks, notes, and project stats.
The agent creates a task in TomiLite and it shows up in your Tasks panel instantly. Your DSH agent becomes the hands, TomiLite stays the workspace.
This plugin needs the TomiLite desktop app running on the same machine.
Windows one-liner (skips install if TomiLite is already running, otherwise downloads + installs + starts it):
powershell -ExecutionPolicy Bypass -Command "irm https://raw.githubusercontent.com/xxwj225-James/tomilite-dsh-plugin/main/scripts/install-tomilite.ps1 | iex"
Or download the installer manually: TomiLite Releases
If TomiLite is not running, the tools fail with an actionable message (with the download link) — the agent will relay it to you.
npx @deepseek-ai/dsh web, or built from source)http://localhost:3192 (localhost calls are token-exempt; no API key needed)# npm (recommended once published)
dsh plugin --profile web add tomilite-dsh-plugin
# git (installs from this repository)
dsh plugin --profile web add github:xxwj225-James/tomilite-dsh-plugin
# local checkout
dsh plugin --profile web add ./tomilite-dsh-plugin
Restart the DSH web UI (or dsh CLI) after installing.
Defaults work out of the box for the local TomiLite app. Override in your profile's cordis.patch.yml:
- id: tomilite
name: tomilite-dsh-plugin
config:
baseUrl: http://localhost:3192 # default
apiToken: '' # only for remote instances (Settings → API Keys)
projectId: proj-default # default single-user project
apiToken can also come from the TOMILITE_API_TOKEN environment variable. For remote instances prefer HTTPS — the token travels in plain HTTP otherwise.
| Tool | Description |
|---|---|
tomilite_list_tasks |
List tasks, optional status filter (todo / in_progress / done). Returns compact rows (description truncated to 300 chars) |
tomilite_create_task |
Create a task (title, description, type, priority, story points) |
tomilite_update_task |
Update status / priority / description |
tomilite_list_notes |
List knowledge-base notes, optional category filter. Returns compact rows (content preview truncated to 500 chars) |
tomilite_create_note |
Create a Markdown note |
tomilite_get_stats |
Board statistics — counts per status / priority / type — handy before writing daily reports |
If TomiLite is not running, tools fail with an actionable message (the agent will tell you to start TomiLite). Every HTTP call carries a 15-second timeout so a hung TomiLite never stalls an agent turn.
The plugin is a host-side Cordis plugin that speaks the same tRPC wire format as TomiLite's own web frontend (apps/web/src/lib/api.ts):
GET /api/<router>.<procedure>?input=<urlencoded JSON>POST /api/<router>.<procedure> with a JSON body{ result: { data: ... } }x-tl-token header, only needed for non-localhost instancesThe tools registered by this plugin (ctx.tools.register + defineTool from @deepseek-ai/dsh-tools) become regular model-visible tools — schemas are enforced before execute runs, results are rendered as compact JSON blocks.
Tool descriptions and result messages are in English. DSH's locale service is browser-side only, so host-side tool plugins (including every official DSH tool package) ship static English copy; translations can be added once DSH exposes a host-side locale.
npm install
npm run build # tsc → lib/
npm test # smoke + real-Cordis load tests (no network)
npm run test:integration # round-trips against a RUNNING TomiLite on :3192
test/smoke.mjs — registration + model-surface checks with a mock context (no network)test/cordis-load.mjs — boots a real @deepseek-ai/cordis context, loads the plugin through ctx.plugin(), verifies inject resolution, tool registration, and Config-schema rejection of invalid config (no network)test/integration.mjs — live round-trips against a running TomiLite; creates and deletes its own rows, no user data touchedlib/ is committed so git installs work without a build step; CI rebuilds it to guarantee freshness (npm run build before committing).
dsh-tools@0.1.0-rc.7.dsh-plugin (for plugin ecosystem discovery)MIT © 2026 Tomatovector
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。