Skills Plugins MCP Prompt Model 导航 博客 资讯 我的中心
界面增强 #claude-code#cli#deepseek#deepseek-harness#plugin#dsh

dsh-code

DeepSeek Harness 的 Claude Code 风格交互式 TUI bundle。

unlinearity @unlinearity ⬇ 1 ★ 4 main

安装

dsh plugin --profile web add github:unlinearity/dsh-code
下载安装清单

需要可复现安装时,可在仓库后追加 #commit 固定提交。

DeepSeek Harness 的 Claude Code 风格交互式 TUI bundle。

该插件未提供要点说明,请参考仓库 README。

claude-codeclideepseekdeepseek-harnessplugindsh
  1. 安装并启动 DeepSeek Harness:npx @deepseek-ai/dsh web
  2. 在终端执行上面的安装命令(CLI 会解析插件并核验来源)
  3. 用 dsh plugins list 确认已安装,必要时重启 Harness 生效

插件以当前 dsh 进程的权限运行,安装时可能执行代码。请先通读仓库源码与许可证,确认无破坏性命令与越权访问;本站只做索引,不对第三方插件安全性作担保。

代码仓库github.com/unlinearity/dsh-code
许可证MIT
主要语言main
下载量1
GitHub 星标4
最近推送2026-08-14
收录日期2026-09-19
分类界面增强

事实信息来自公开插件目录快照(2026-10-01),介绍文案由本站再加工。

以下为插件仓库 README 全文(原始内容,由公开目录抓取整理)。

# dsh-code

English | [中文](README.zh.md)

A Claude-Code-style interactive terminal (TUI) bundle for [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) (`dsh`), installed as an out-of-tree plugin bundle over the official `@deepseek-ai/dsh-base` — the same plugin ecosystem the official web surface composes, nothing forked.

## What you get

- DeepSeek-blue banner: the whale wordmark rasterized half-block from the exact FishLogo path, in a compact content-hugging header
- Live transcript streamed from the durable session log: user prompts, streaming assistant text, compact tool-call and slash-command rows with running/done/error marks, todo snapshots
- **Tool approval y/n bar**: when the agent asks for permission (a sandbox escalation, a hook's `ask` decision), an amber bar shows the reason plus the paired command line; `y` allows once, `n` rejects
- **`/model` panel**: list every provider route the live `llm` registry advertises, switch the session's model for the next step; a resumed session restores its own last model
- **Session resume**: `--resume ` continues a persisted session, `--continue` picks the newest one for the working directory; the full transcript replays from the log and appends to the same durable session
- **Slash-command passthrough**: every command registered in the shared `ctx.commands` registry (the same surface the web composer dispatches) is executable from the terminal, with a completion menu on `/`; user-invocable skills join the same menu (marked `skill`), and an unknown `/name` falls through to the prompt so the host's skill injection picks it up
- **Todo panel**: the live todo list renders inline with done/active/pending counts and three-state markers, cleared at each fresh turn (mirroring the web TodoPanel)
- **Thinking lines**: model reasoning renders as a Claude-Code-style `✻` fold — collapsed to a dim marker with a character count, expanded to dim-italic text, live-streamed while the model thinks; Ctrl+R toggles globally
- **Terminal markdown**: assistant replies render through a pure GFM-subset renderer (headings, fenced/inline code, emphasis, lists, quotes, links) wrapped to the terminal width; streaming stays plain until the message settles
- **Ctrl+O history inspector**: browse one retained transcript entry at a time without replacing the composer or status footer; ←/→ switches entries, ↑/↓ and PageUp/PageDown scroll the complete content, and `g`/`G` jump to either end
- **Structured tool details**: persisted edit/write diffs, numbered read windows, web-search sources, fetch summaries, and bounded raw output remain compact in the transcript and expand into their full presentation inside Ctrl+O
- **ask_user_question bar**: the model's questions appear as an option menu (↑/↓, space multi-select, `c` custom answer, Esc interrupts); plan reviews (`exit_plan_mode`) arrive through the same bar with the approve option highlighted
- **@ mentions**: `@` completion over workspace files and persisted sessions; session mentions expand into bounded read-only snapshots injected as sourced context before the prompt
- **Plan mode and permissions**: `⧉ plan` and `⛨ ` badges in the status line; `/permission ` switches the session preset, Shift+Tab cycles through them (the registry's own `/plan` command enables plan mode)
- **Local terminal workflows**: `/help` opens the complete key/command/skill surface, `/export` writes the folded transcript to Markdown, `/title` pins a session title, Ctrl+K deletes to end of line, Ctrl+L redraws the terminal, and bare workspace paths participate in Tab completion
- Input with history (↑/↓), cursor editing (←/→, Ctrl+A/E/U), Tab completion for slash commands, skills, and @ mentions; submitting while the agent runs steers the live turn (consumed at the next step boundary), `Esc` or Ctrl+C interrupts it, Ctrl+C on an empty idle input exits, Ctrl+D refuses to exit mid-turn
- A blended status line: Claude-Code-style identity facts (model, working directory, git branch, title/session, plan, permission preset, goal and sandbox overrides) beside the web composer's figures (turns/steps, llm and tool wall time, TTFT, decode tok/s, context occupancy, cache hit, token totals)
- Bounded live rendering: streaming output, Ctrl+O, `/help`, `/model`, approvals, and question/plan-review panels stay within terminal-aware viewports; the composer remains directly above its status footer, and a debounced resize reflows the screen once at the settled width

## Install

Requires Node `^22.19 || >=24` and the `dsh` CLI (`npm i -g @deepseek-ai/dsh@next`).

```sh
dsh plugin --profile cli add dsh-code       # from npm, once published
dsh plugin --profile cli add github:unlinearity/dsh-code  # track this repo
dsh plugin --profile cli add file:C:/path/to/dsh-code     # local checkout
```

Then:

```sh
dsh --profile cli                    # fresh session
dsh --profile cli --continue         # resume the newest session in this directory
dsh --profile cli --resume abc123    # resume by session id or unique prefix
dsh --profile cli --session my-id    # fresh session under an explicit id
```

Set `DEEPSEEK_API_KEY` in your environment (or a `.env` in the launch directory or `$DSH_HOME`).

Git-hosted plugins build on install via their install scripts, which pnpm blocks until allowed: if an `add` fails, append the key it prints under `allowBuilds` in `~/.dsh/profiles/cli/pnpm-workspace.yaml` and re-run.

## Develop

```sh
pnpm install
pnpm test         # vitest unit tests
pnpm typecheck
pnpm build        # tsdown bundles lib/*.mjs, tsc emits lib/types
pnpm run gen:whale   # regenerate src/whale-glyph.ts from the vendored logo path
```

The whale glyph is generated from the DeepSeek fish-logo path vendored in `scripts/fish-logo.ts` (source: [deepseek-harness](https://github.com/deepseek-ai/deepseek-harness), MIT).

## License

[MIT](LICENSE). The vendored fish-logo geometry is from DeepSeek Harness (MIT).

数据来源:公开的 DeepSeek Harness 插件目录与各插件 GitHub 仓库。本站为独立第三方目录,与 DeepSeek、幻方(High-Flyer)及插件作者均无隶属或背书关系。

每日精选 Skill 推荐,免费送到你邮箱

输入邮箱,每天接收一个精选 AI Agent 技能推荐。完全免费,持续更新。

提交后我们会发送一封确认邮件,点击邮件里的链接才会开始收信。

完全免费,取消任意时间。我们不会发送垃圾邮件。