插件目录 / Developer / dsh-codex-side-outline
dsh-codex-side-outline
已验证 · 实测可装 EnkiduGilgamesh
功能简介
Codex style side outline for Deepseek Harness
可用 — 实测通过,早期项目
Codex style side outline for Deepseek Harness 实测能干净安装、正常启动。早期项目,但功能可用。
「已验证」表示我们的自动化 CI 在干净 profile 里实际执行了 dsh plugin add 并启动成功——仅此而已。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。
README
dsh-codex-side-outline
A Codex-style side outline for the DeepSeek Harness chat column. It extracts an
outline of the current conversation and shows it as a thin rail along the left
edge of the center (conversation) column, adjacent to the sidebar.
- Gray short lines — one line per conversation turn, stacked top-to-bottom.
The hovered turn is the longest and lengths step down in both directions
(5 levels), so the rail reads like a minimap. - Hover to inspect — a summary card shows:
- first line = the user question (bold, brand accent bar);
- following lines = the agent's final reply only (thinking/chain-of-thought
and intermediate narration before tool calls are excluded).
- Click to jump — clicking a line scrolls the conversation to that turn's
user message. - Pager — long conversations get ▲/▼ buttons to scroll the rail.
- Auto-hides on the trajectory view, and follows the sidebar in real
time as you drag or collapse it.
Package layout
This is an installable bundle (dsh.bundle) that also ships a browser
(client) half (dsh.client), following the
official plugin guide.
| File | Purpose |
|---|---|
package.json |
Bundle + client manifests (dsh.bundle.patch, dsh.client). |
cordis.patch.yml |
The layer applied when a profile lists this bundle. |
index.js |
Host half — a no-op entry (browser-only plugin). |
client.js |
Browser half — the outline rail UI. |
src/conversation-outline.client.js is a retained reference copy of the
original process-local dynamic plugin, kept for provenance; it is not shipped
in the npm package.
Install
Install from GitHub into the default web profile:
dsh plugin --profile web add github:EnkiduGilgamesh/dsh-codex-side-outline
dsh web
Or clone to a local directory first, then install from there:
git clone [email protected]:EnkiduGilgamesh/dsh-codex-side-outline.git
cd dsh-codex-side-outline
dsh plugin --profile web add .
Verify the layer before booting (optional):
dsh --profile web --dump-config # shows a "# == dsh-codex-side-outline" layer
⚠️ Restart required. The web app composes its client bundle roster at
boot. Afterdsh plugin add— or after editing this plugin's code — stop the
runningdsh webprocess and start it again. A page refresh alone is not
enough for a newly added or updated bundle to load.
How it works
- Slot:
shell.overlay(frame-wide floating layer). This keeps the rail
outside every column's scroll container. The rail's horizontal offset is read
from the frame's inlinegrid-template-columnsvia aResizeObserver, so it
tracks sidebar drag / collapse / window-resize with zero-frame lag. - Data: read from the client
sessionsservice (not the Host):useSessions((s) => s.current)(standard prop ofshell.overlay) yields
the current session id;sessions.binding(id).sessionexposes anObservableSnapshotwhosegetSnapshot().nodescarries the foldedConversationNode[];usernodes contribute the question text (contenttext blocks), andassistantnodes contribute the reply text (blocksofkind: 'text').- Folded/older history is auto-loaded via
session.loadOlder()so the rail
shows every turn without a manual "load more".
- Jump: each turn's
seqis mapped to the chat node key viasnapshot.chat.nodes.values()(anchorSeq→key); clicking scrolls the
row carryingdata-chat-anchor-keyinside the[data-conversation-scroll]
scrollport. - Trajectory: the rail hides while
[data-trajectory-scroll]is present in
the DOM (i.e. the trajectory view is the active conversation view). - Styling: a package-local
<style>tag colored with theme CSS variables
(--dsw-alias-*), so light/dark modes follow the active theme.
安装
装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:
dsh plugin add dshbase-catalog 然后对 agent 说「帮我装 dsh-codex-side-outline」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包。
该插件是 GitHub 源码(未发 npm)——直接从仓库装:
Web profile:
dsh plugin --profile web add github:EnkiduGilgamesh/dsh-codex-side-outline Headless(CLI)profile:
dsh plugin --profile headless add github:EnkiduGilgamesh/dsh-codex-side-outline 实测报告
验证通过:从 GitHub 源码完成 L1 安装 + L2 加载 + L3 运行(dsh 0.1.0-rc.6)。