deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
PROJECT README
A browser plugin for the DeepSeek Harness Web GUI. It adds a compact chat that can stay above other windows, switch the active Harness session, follow streaming replies, and send a reply without returning to the full page.
|
Empty new chat, ready for the first message. |
Active conversation with compact tool activity, progress docks, and reply controls. |
Session.prompt(..., "queue") API. While an agent is working, a reply is queued for the next turn and can be steered into the active turn with Send now.Enter sends; Shift+Enter inserts a new line.Switching a chat in the mini window calls
ctx.sessions.open(id), so the main Harness window follows the same active chat.
0.1.0-rc.6 or a compatible release with client plugins and the shell.overlay slot.dsh web).From npm after publication:
dsh plugin --profile web add @syncended/dsh-pip
From this checkout during development:
dsh plugin --profile web add /absolute/path/to/deepseek-harness-picture-in-picture-plugin
Some pnpm-backed profiles require the workspace-root flag:
dsh plugin --profile web add -w /absolute/path/to/deepseek-harness-picture-in-picture-plugin
Restart dsh web after first installation. A chat-bubble button then appears in the bottom-right corner of the Web GUI.
The published browser entry is deliberately dependency-free source in DSH's lazy client-module format; React and ReactDOM are resolved from the Web shell's platform module table.
npm run check
npm test
npm pack --dry-run
Tag-driven npm publication is documented in RELEASING.md.
The package has two faces:
lib/index.js — no-op Host loader entry.lib/client.js — browser implementation registered in the additive shell.overlay slot.package.json#dsh.client orders the client after runtime, layout, and conversation assembly. cordis.patch.yml inserts the package into the active profile.
The full API investigation and design rationale are recorded in docs/RESEARCH.md.
The implementation uses only supported DSH client seams:
ctx.slots.inject("shell.overlay", ...) for a lifecycle-safe floating UI contribution.ctx.sessions.list for the session list and current selection.ctx.sessions.open(id) to switch the active session.ctx.sessions.binding(id).session for conversation snapshots, projections, prompt/cancel/queue/history actions, and durable image reads.ConversationSnapshot.pending for approvals and structured questions.MarkdownText and writeClipboard primitives for safe transcript rendering and copy actions.react-dom#createPortal to render the same React mini-chat tree into the Document PiP window.The PiP view uses a compact presentation rather than cloning the full Harness conversation component. It renders tool activity as concise logs and provides compact attachments, approvals, plan review, and ask_user_question controls; the main window remains available for full-size inspection.
MIT — see LICENSE.
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。