DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins

dsh-input-history

Input History

Shell-style prompt history in the DeepSeek Harness composer: ArrowUp walks back through the messages you already sent, ArrowDown walks forward and restores your draft.

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add dsh-input-history@1.1.3
READMECompatibilityVersions

Compatibility and provenance

Input History is published as dsh-input-history and currently resolves to version 1.1.3. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
web
Release source
npm
Registry updated
11/4/2026

Versions

1.1.3stable
11/4/2026
1.1.2stable
11/4/2026
1.1.1stable
11/3/2026
Show 6 more versionsCollapse versions
1.1.0stable
11/3/2026
0.3.2stable
10/6/2026
0.3.1stable
10/4/2026
0.3.0stable
10/2/2026
0.2.0stable
8/20/2026
0.1.0stable
8/18/2026

Related plugins

Loading related plugins…

Latest
1.1.3
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
21.1 kB
Files
9
Surface
web
License
MIT
Source
npm
GitHub
★ 1
Weekly downloads
441
Security scan
✓ v1.1.3 scan passed
Last push
11/4/2026
View source ↗Project homepage ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue

Related plugins

More verified plugins in memory-context.

Experimental Session Search@deepseek-ai/dsh-experimental-session-searchGive Agents tools to search and read earlier sessions from the current workspace.Hindsight Coding Agents@vectorize-io/hindsight-coding-agentsReflect-only Hindsight long-term memory for coding agents (harness-pluggable: opencode, …), with automatic background ingestion (no setup CLI).Ab Memorydsh-ab-memory--- description: "The dsh-ab-memory package: a cross-session, file-backed agent memory with five tools (remember / recall / forget / load_skill / distill) and an always-on light injection." kind: "package-reference" ---Fish Memorydsh-fish-memoryGive conversations in DSH a fading long-term memory, with every entry timestamped.

README

dsh-input-history

在输入框中按 ↑ / ↓ 逐条回溯本会话已发送的消息,并回填为草稿。


效果

输入框为空时按 ↑ 从最近一条开始向前回溯,↓ 向前返回。回溯时右下角显示位置:

3/19        ← 当前第 3 条(由新到旧),共 19 条

↑  然后再开发一个插件 就是在输入框按上下键 能按顺序回填之前发过的消息
↑  换
↓  换
↓  (恢复原草稿)

越过最新一条后,恢复开始回溯前的草稿。手动编辑即退出回溯。


安装

市场索引

https://raw.githubusercontent.com/Dogtiti/dsh-predict/main/market-index.json

设置 → 插件 → 启用实验性市场 bundle → Discover → 添加上面的地址 → 安装 dsh-input-history。

npm

npm i dsh-input-history

在 Plugins 页用「添加」填写包名。

本地目录

git clone https://github.com/Dogtiti/dsh-input-history

Plugins → 添加 → 选择该目录。


行为

按键行为
↑输入框为空时开始回溯,从最近一条向前;到达最旧一条后停止
↓向前返回;越过最新一条时恢复原草稿

不接管的情况:

条件行为
输入框已有内容或附件↑ 保留给编辑器的光标与选区移动
焦点不在该输入框不处理
带 Alt / Ctrl / Cmd / Shift不处理
/ 或 @ 菜单已认领输入方向键归菜单

配置

- insert:
    - id: composer-history
      name: 'dsh-input-history'
      config:
        limit: 50
键默认说明
enabledtrue总开关;关闭后路由返回 503,客户端不接管按键
limit200保留的历史条数(取最近)
maxChars2000单条消息最大字符数(保留头尾)
cacheTtlMs30000相同会话事件序号下的缓存时间

实现

┌──────────────── 浏览器 ────────────────┐        ┌───────────── Host ─────────────┐
│ conversation.composer.dock             │        │ POST /api/composer.history     │
│  · 捕获阶段拦截 ↑ / ↓                    │  HTTP  │  · sessions.get(id)            │
│  · 状态机:index = -1 表示未回溯          │ ─────► │  · session.deriveMessages()    │
│  · setDraft(items[index])               │ ◄───── │  · 按 source kind 过滤          │
│  · 位置计数,编辑后退出                    │  JSON  │  · 按 seq 缓存 30s             │
└────────────────────────────────────────┘        └────────────────────────────────┘

历史来自会话日志。Host 侧仅保留 role: user 且 source.kind === 'user' 的文本,其余按来源排除:

{ "kind": "user" }             // 用户输入,计入历史
{ "kind": "runtime-context" }  // 运行时上下文快照,排除
{ "kind": "skill-catalog" }    // 技能目录,排除
{ "kind": "time-context" }     // 时间戳提示,排除
{ "kind": "user-approval" }    // 审批策略通知,排除

相邻重复消息合并为一条。结果按会话事件序号缓存 30 秒。

回填使用 inputActions.setDraft(),与手动输入共用同一条草稿链路(可撤销、按会话持久化),不直接操作 DOM。


兼容性

  • DSH ^0.2.1-0(engines.dsh)。
  • 依赖公开的 inputActions.setDraft()。

开发

node --test "test/*.test.mjs"

11 项:提取顺序、注入内容过滤、相邻去重、数量与长度限制、缓存失效、开关、槽位注册形状、计数渲染、缺少 hooks 时不渲染。


相关插件

插件说明
dsh-predict预测下一条指令并显示为占位文字,Tab 采纳
dsh-input-history(本仓库)输入框中按 ↑ / ↓ 回填历史消息
dsh-subagent-bridge让 Codex 通过本机 MCP 把 DSH 当 subagent 用(spawn / wait / followup),反向也能把任务派给 Codex
dsh-quota-meter在模型选择器旁显示供应商套餐额度余量(目前 GLM Coding Plan),点开是明细浮层
dsh-provider-icons在模型名旁显示供应商品牌 logo(24 个厂商,支持前缀匹配)

许可

MIT © Dogtiti