deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
INSTALL REFERENCE
dsh plugin --profile web add github:hunter118/dsh-s7r
该命令指向仓库当前默认分支;尚无绑定当前 commit 的完整验证结果。
PROJECT README
S7R is an original System 7-era workstation shell for the DeepSeek Harness Web UI. It turns real DSH Agents, Workspaces, files, terminals, tools, and persisted history into a coherent multi-window desktop instead of placing a retro skin over a chat page.
S7R is the desktop environment. Knowledge Desk is its Workspace, Agent, and conversation application.

DSH remains the source of truth. S7R does not copy conversations into its own chat database, start an unrelated shell server, or expose arbitrary host paths. It presents the capabilities already owned by DSH and keeps only desktop preferences—window positions, aliases, display choices, Scrapbook cards, and similar UI state—in the browser.
[!IMPORTANT] S7R currently targets DSH
0.1.0-rc.7exactly. DSH is in developer preview and later releases may require adapter updates. See Compatibility.
| Area | What it does |
|---|---|
| Workspaces | Registers a real folder with DSH, remembers recent folders, and uses the selected Workspace as the filesystem boundary for Agents, Finder, Preview, TextEdit, Terminal, and Find. |
| Knowledge Desk | Lists Workspaces and Agents together; searches names, paths, and IDs; creates and reopens Agents; renames, exports, archives, restores, or places them on the desktop. |
| Agent windows | Streams real DSH output and reasoning, shows tools and attachments, accepts steering/cancellation, reloads persisted history, and optionally renders completed Markdown safely. |
| Context and Timeline | Shows provider-reported context length and pressure, estimates content shares, requests compaction or a summary-carrying successor, and exposes the complete event stream with adjacent chunks folded into runs. |
| Files | Provides Workspace-contained Finder, conflict-aware plain-text editing, image/PDF Preview, and portable path drops into Agents. Host paths are validated again on every request. |
| Terminal | Opens an owner-scoped DSH terminal running /bin/zsh -f -i, even when no Agent window is open, with retained low-latency output and visible command acknowledgement. |
| Find | Searches file/folder names, source contents, visible messages, or all persisted Agent events as independent scopes, then opens the matching file, Agent, or Timeline location. |
| Monitor and notices | Combines live Agent state, background jobs, context pressure, host CPU/active RAM, and DSH process RSS; minimal notices appear when an Agent completes. |
| Desktop | Restores window geometry and z-order; supports Workspace, Agent, Finder-item, and Scrapbook aliases; marquee selection; group dragging; and reversible alias-only Trash. |
| Scrapbook and accessories | Captures editable conversation cards with one-click copy and desktop placement; includes Clock and a legally shuffled, always-solvable 4×4 Puzzle. |
| Display and wallpaper | Offers Fit Browser or fixed logical work areas, 10px/12px bitmap UI masters, exact 1×/2× magnification, Preview filters, built-in patterns, a seamless Cat tile, and processed imported wallpaper. |
| Credentials | Reads only DSH's configured/source/writable status and writes DEEPSEEK_API_KEY through DSH's loopback credential service; the saved secret is never returned to the page. |
22.19+ or 24+0.1.0-rc.7Download dsh-s7r-0.7.0.tgz from the latest GitHub Release, then install it into the DSH Web profile:
dsh plugin --profile web add ./dsh-s7r-0.7.0.tgz
dsh --profile web --dump-config
dsh web
Open the loopback URL printed by DSH, normally http://127.0.0.1:3080.
The Release also contains SHA256SUMS. Verify the downloaded archive on macOS with:
shasum -a 256 -c SHA256SUMS
On Linux, use sha256sum -c SHA256SUMS.
git clone https://github.com/hunter118/dsh-s7r.git
cd dsh-s7r
pnpm install --frozen-lockfile
pnpm check
pnpm build
dsh plugin --profile web add .
dsh web
dsh plugin --profile web remove dsh-s7r
Remove the installed version before adding a different tarball. S7R's browser-local display, desktop, and Scrapbook preferences may remain in that browser profile; real DSH Workspace files and session logs are not removed.
DEEPSEEK_API_KEY from its launch environment, save it here. S7R can report configured/source/writable state but cannot read the stored value back.Browser-owned shortcuts such as Command-N and Command-W are intentionally not advertised because a page cannot reliably override the browser tab.
Knowledge Desk is both a Workspace launcher and an Agent browser. Its Workspace side selects the folder that new work belongs to; its Agent side searches and manages the conversations already associated with that folder. Opening an existing result reconnects a window to the real DSH SessionRuntime rather than creating a second chat record.

The Agent lifecycle is deliberately explicit:
Every Agent window keeps a compact single-line toolbar:
assistant/chunk fold into expandable runs.Completed output can safely render headings, emphasis, inline/fenced code, lists, quotes, and tables. Streaming remains plain text until the message is complete, raw HTML is never injected, and LaTeX remains source text. The rendering switch is per browser profile and never rewrites stored conversation data. Color Emoji are displayed as monochrome pixel-font symbols or short text for visual consistency.
Choosing a folder uses DSH's native picker and registers that external directory as a Workspace; S7R is not limited to the folder from which the Web UI was launched. The most recently used valid Workspace can be reopened on the next visit. Finder then reads the selected session's canonical root through DSH, and every host path is resolved again and rejected if it escapes that root.
./relative/path; outside paths remain absolute.Display can filter Preview images and PDF pages through either ordered 1-bit black/white dithering or direct luminance grayscale. Filtering is cached, non-destructive, and never rewrites the source file.
Terminal uses the official DSH terminal service and shell backend with /bin/zsh -f -i. DSH owns process spawning, sandbox policy, scrollback, signaling, terminal identity, and Agent ownership. S7R acknowledges submitted lines immediately and polls retained foreground output without overlapping reads.
File → New Terminal works independently of visible Agent and Finder windows. When no live owner exists, S7R creates a fresh blank owner in the current/recent Workspace, so the terminal does not fail with a missing Knowledge Desk session. Open in Terminal from Finder starts at the displayed directory.
DSH rc.7 is line-oriented: it does not expose a raw browser keystroke stream or post-spawn PTY resizing. Terminal therefore behaves like a responsive real line console, not an xterm-style raw attachment.
File → Find… has independent search depths:
node_modules skipped.Matches route to Finder/TextEdit/Preview, the Agent, or the exact Timeline event. Traversal stops at 5,000 files, skips hidden and node_modules directories, reads at most 1 MiB per source file, and returns at most 200 results.
Monitor combines:
RUNNING, IDLE, or terminal state), model, latest event time, and provider-reported context pressure.On macOS, inactive/file-cache pages are excluded from active RAM so reusable cache does not appear as application pressure. Minimal desktop notices appear only when an Agent crosses into a completed state; selecting one opens that Agent. Monitor is visible in the desktop overview above rather than presented as an isolated full-screen panel.
Window bounds, z-order, zoom/collapse state, desktop aliases, reversible Agent archives, Trash, and Markdown preference survive reload. Terminal windows are the intentional exception because serialized windows cannot safely reattach live owner-scoped PTYs.
Workspaces, Agents, Finder items, and individual Scrapbook cards can become desktop objects. Drag empty desktop space to marquee-select several aliases; then drag any selected item to move the group while preserving its layout. Opening an alias routes to its real object rather than a browser-local copy.
Folders have two explicit desktop meanings:
Delete/Backspace or a drop on Trash moves only aliases into S7R's reversible Trash. Put Away restores them; Special → Empty Trash… permanently discards aliases only. Real files, Workspaces, Agent logs, and Scrapbook cards are never deleted by desktop Trash.
Paths dropped into an Agent become portable ./relative/path references when they are inside that Agent's Workspace and remain absolute otherwise.
Add to Scrapbook captures a message into a browser-local editable card while retaining its source Agent reference. The capture link immediately takes on a visited-style state as feedback, each card has one-click copy, and a single card can be placed on the desktop without opening the whole Scrapbook.
Clock is a live analog/digital desk accessory. Puzzle is an original 4×4 sliding-number implementation; shuffling performs only legal moves, so every generated board is solvable.
System applications and preferences live in their workflow menus. Clock and Puzzle remain in the S7R application menu as desk accessories.

Display separates four concerns:
Classic Dots is the default wallpaper. Desk Gray, Pinstripes, seamless Cat, and imported images are also available. Cat and imports are sampled onto a genuine low-resolution grid, filtered, and baked into an integer nearest-neighbor PNG. Imports accumulate in a named dropdown library and can tile at pixel size or fill the desktop. Re-rendering offers 1px or 2px blocks; the original imported file is not retained after processing.
| Owner | Data |
|---|---|
| DSH | Agents, conversation/event logs, Workspace registration, files, terminal owners/processes, tools, credentials, and background jobs. |
| S7R browser profile | Display preferences, processed imported wallpaper, Scrapbook cards, window and desktop layout, alias Trash, reversible S7R archives, and Markdown preference. |
Browser-local records are versioned; malformed records fail closed and known older formats migrate explicitly. Closing an Agent window never deletes its DSH session. Clearing browser site data resets S7R's local desktop customizations but does not delete DSH conversations or Workspace files.
Please report credential exposure, path traversal, unsafe writes, terminal ownership errors, or injection privately as described in SECURITY.md.
This release was developed against official DeepSeek Harness commit 99f6f02fecdb7dff40c3fbc9470f5907c29f74ca (0.1.0-rc.7, inspected 2026-08-17). Exact adapter seams are documented in COMPATIBILITY.md.
pnpm install --frozen-lockfile
pnpm check
pnpm pack
pnpm check runs strict host/client TypeScript checks, 59 deterministic tests, and production host/client bundles. PDF.js and its worker implementation are embedded so Preview needs no CDN or runtime network dependency.
Project references:
S7R is MIT licensed. It is an independent project and is not affiliated with or endorsed by Apple Inc. or DeepSeek. No Apple artwork, system files, proprietary fonts, sounds, screenshots, or extracted resources are bundled. Icons and patterns are original CSS/text constructions; the Cat wallpaper is an original generated bitmap processed by S7R's local grayscale pipeline.
The browser bundle includes Simplified Chinese 10px/12px faces from Fusion Pixel Font under SIL OFL 1.1 and PDF.js under Apache-2.0. Copyright notices and full license texts are included in THIRD_PARTY_NOTICES.md and THIRD_PARTY_LICENSES/.
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。