deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
PROJECT README
[!WARNING] BROKEN / UNMAINTAINED — do not install this plugin.
It is superseded by
dsh-client-ui-forkspace. Forkspace takes over the entiresidebar.workspacesoccupant (the officialui-workspacerow is disabled and the fork fills the slot), and does strictly more than this plugin did — this one shadowed that same slot and did everything else worse.The code below is kept for historical reference only. It is not built, not mounted by any profile, and receives no fixes. There is no migration path worth writing: install forkspace instead.
English | 中文
DSH web plugin: replaces the native workspace browser in the left sidebar with a session tree in the style of pi-web by agegr — workspace → session → forks / subagents. Flat by default: forks-of-forks collapse into level-2 siblings; raise maxDepth to nest them for real.
| Sidebar | Hover actions |
|---|---|
![]() |
![]() |
workspace → session, with fork rows and collapsible > Subagents (N) groups underneath. At the default maxDepth: 2, forks-of-forks at any depth flatten into sibling rows at level 2 — set maxDepth ≥ 3 and they nest under their parent instead.Requires a DSH ≥ 0.0.1 web profile and Node ≥ 20.
One-liner via the dsh CLI (installs and auto-mounts — the plugin ships its own cordis.patch.yml; the CLI sees the dsh.bundle.patch declaration and appends it to the bundle stack, no profile file edits):
dsh plugin --profile web add github:an4nsi/dsh-fork-view # adjust profile name
Or manually with pnpm — inside your web profile directory (the one with package.json / cordis.patch.yml):
cd ~/.dsh/profiles/web # adjust to your profile path
pnpm add github:an4nsi/dsh-fork-view#main
# pnpm ≥ 10 asks to approve build scripts on first run: allow esbuild and
# dsh-fork-view's prepare; missed it? `pnpm approve-builds`, then check lib/ exists
The pnpm route also mounts the plugin row in the profile's cordis.patch.yml (the dsh CLI route already did):
- insert:
- id: dsh-fork-view
name: "dsh-fork-view"
# optional config, see "Configuration":
# config:
# maxDepth: 2
Restart dsh web (host-half change) and hard-refresh the browser.
git clone https://github.com/an4nsi/dsh-fork-view.git && cd dsh-fork-view
pnpm install # prepare hook builds lib/
pnpm test
| Key | Default | Description |
|---|---|---|
maxDepth |
2 |
Levels to render. 1 roots only; 2 roots + direct forks + subagent groups; ≥3 actually nests fork-of-fork under its parent |
showSubagents |
true |
Render > Subagents (N) groups |
subagentsCollapsedByDefault |
true |
Initial open/closed state of subagent groups |
Config lives on the plugin row (YAML above); validated host-side by schemastery, forwarded to the client half.
# dsh-fork-view:tree tab registration (better-sidebar) — wrapped in ctx.effect for HMR/disposer safety; old sidebar.workspaces slot kept as fallback so no-better-sidebar installs still work
src/client/index.jsx client half: sidebar component (real JSX) → CJS bundle
src/index.js host half: schemastery Config + no-op apply (client-only plugin)
cordis.patch.yml dsh.bundle.patch layer: inserts the plugin row
build.mjs esbuild dual-entry build → lib/client.js + lib/index.js
tests/ model tests against the built bundle (mock jsx-runtime)
lib/ build output, gitignored; produced by prepare on install
pnpm run build && pnpm test
src/client/index.jsx client half: sidebar component (real JSX) → CJS bundle src/index.js host half: schemastery Config + no-op apply (client-only plugin) cordis.patch.yml dsh.bundle.patch layer: inserts the plugin row build.mjs esbuild dual-entry build → lib/client.js + lib/index.js tests/ model tests against the built bundle (mock jsx-runtime) lib/ build output, gitignored; produced by prepare on install
```bash
pnpm run build && pnpm test
__ModuleLoader__, client slots) that makes a drop-in sidebar replacement possible.MIT © anansi & inogai
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。