dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
Into the Unknown
omdsh is the terminal client for DeepSeek Harness: a focused, keyboard-first DeepSeek coding agent built on its plugin architecture, with interaction quality inspired by oh-my-pi and the original Pi agent harness.
Documentation · English · 简体中文
A real Kaku recording at 150×39: one DeepSeek account turn reads a file, fixes it, runs it, and reports the verified result.
Requirements: Node.js 22.19 or later in the 22.x line, or Node.js 24 or newer, plus a DeepSeek account or API key for live model turns.
npm install --global @agi-fans/oh-my-dsh
omdshRun /login once inside omdsh to sign in with a DeepSeek account or save an API key, then start a conversation. To try it without a global installation, run npx @agi-fans/oh-my-dsh.
/resume; rewind, retry, compact, and export complete transcripts as Markdown or standalone HTML./login through the browser or store a key; a DeepSeek account grant shared with DSH is reused, /logout signs it out, and web search/fetch use the same credential.@, paste clipboard images, reuse persistent prompt history, edit multiline prompts externally, and retrieve queued follow-ups.Ctrl+O restores the process view. Scroll through either view, keep the current prompt pinned, and jump back to the latest message with End.Alt+O for full tool inputs and results in the current turn, use /trajectory for event details, see the files changed by each turn, and let the model search its earlier sessions in the same workspace. Open the Agent Hub with Alt+A to follow child agents and steer continuable tasks./context for an inline projection-backed breakdown that remains in the transcript.The full documentation is published at omdsh.agi.fans, and the Markdown under apps/site/content/ is its source of truth.
Start here
keybindings.json.Reference
/trajectory, /context, /diff, /tools, and /mcp.Extend and integrate
omdsh plugin.ctx.tui surface and the contribution layer.Internals
Report a bug or request a feature with a guided form for the version, environment, reproduction steps, and sanitized context.
DeepSeek Harness provides a capable agent runtime and a strong architectural idea: everything is a plugin. oh-my-dsh brings that runtime into a calm, keyboard-driven terminal experience without creating a second agent core or hiding Harness behind a parallel abstraction.
The TUI remains a presentation and interaction layer. Sessions, tools, permissions, models, Skills, MCP servers, commands, and telemetry come from Harness services and plugins; omdsh composes them into a terminal application and adds the interface behavior needed to use them comfortably. /trajectory opens a keyboard-driven event ledger with Turn/Step grouping, live following, search, folding, timing, token usage, tool payloads, results, and schemas. /context reads the same client-visible Harness projections as the status footer and distinguishes provider-anchored occupancy from heuristic prompt composition.
The project follows four principles:
Reference checkouts under refs/ remain read-only research material. Runtime code depends only on published packages and oh-my-dsh workspace packages.
DeepSeek Harness plugins and services
│
▼
@agi-fans/dsh-tui — terminal capability seam
│
▼
@agi-fans/oh-my-dsh — boot and plugin compositionThe TUI package is split into a service definition, local terminal Provider, session and interaction adapters, tool-presentation bridge, command contributions, and interactive Runner. This isolates terminal ownership from Harness domain state and exposes plugin seams only where a capability has an independent lifecycle or owner. See the architecture overview for the current boundaries and data flow.
Performance is part of the TUI architecture: durable sessions replay in linear time, Harness Projections avoid repeated history scans, settled transcript blocks retain formatted layout, and the terminal writer emits row-level diffs. The documented Apple M5 Pro measurements from August 2026 recorded a median 2.62 ms for restoring 10,000 conversation turns, 22.71 ms for 10,000 tool calls, and 0.35 ms per cached frame over a 5,000-turn surface. These are historical measurements, not a benchmark of the latest version.
See the reproducible TUI performance report or run pnpm benchmark:tui locally.
Run /login to configure a provider. DeepSeek opens the official key dashboard, validates the key, and stores it in the shared Harness credential store under DEEPSEEK_API_KEY; an environment-owned value is left untouched. A DeepSeek account can be signed in from /login: the TUI listens on a loopback callback for the browser flow and reuses any grant already established by DSH Web/Desktop. The account route (deepseek-account) then appears in /model beside the API-key route; sign-out is available from /logout or the same account prompt. When a mounted provider registers a Harness authorization flow, /login lists that flow and its methods and the terminal only renders the notices and prompts the flow asks for. The same command can also activate a catalog API-key provider or add a custom provider with its own id, base URL, protocol, and model ids. /logout removes only file-stored credentials and falls back to the environment when available.
Model settings and the rest of the plugin config persist into the active Profile's Cordis patch, $OMDSH_HOME/profiles/omdsh/cordis.patch.yml; a settings.yaml left by an earlier release is imported once at startup and renamed to settings.yaml.imported. Use /model favorite and /model unfavorite to maintain a small local cycle list, then use Ctrl+P/Alt+P to move through it and Ctrl+T to change reasoning effort. Skills and MCP configuration are documented in Skills and MCP.
After an upgrade, omdsh can show release notes once at startup. Use /changelog for recent entries or /changelog full for the complete packaged history. A cached daily npm check reports newer versions without installing anything automatically; both behaviors can be customized in /settings. Terminal notifications for completed long turns and human prompts are also configured there and remain off by default. Every setting, its allowed values, and its default are listed in Settings.
Generate shell integration without starting the TUI or making network requests:
omdsh completions bash
omdsh completions zsh
omdsh completions fishpnpm install
pnpm omdsh "list files" # run from source
pnpm typecheck # check TypeScript
pnpm test # unit and pipe-mode tests
pnpm build # build all workspace packages
pnpm smoke # interactive PTY smoke test
pnpm smoke:happy # mock-LLM happy pathThe checkouts in refs/deepseek-harness, refs/oh-my-pi, and refs/pi are read-only references. Do not use them as runtime dependencies or modify them while developing omdsh.
User-visible changes and release history are tracked in CHANGELOG.md.
oh-my-dsh exists because of these projects:
Thank you to these projects and their contributors. omdsh is an independent community project: it is built on DeepSeek Harness and learns from Pi and OMP, but is not an official distribution of any of them.
oh-my-dsh is available under the MIT License.