DeepSeek Harness 插件

Learn-as-you-go-dsh

Learn As You Go — keep the technical output, put the plain-language Chinese meaning directly below it. A native DSH (DeepSeek Harness) bundle plugin: system-prompt policy section, settings namespace(英文原文)

跳到安装方式

来源信息

GitHub 仓库
TimYuann/Learn-as-you-go-dsh
最近更新
2026年8月15日
分类
文档与渲染
GitHub stars
0
载体类型
plugin
目录证据
上游声明已找到 dsh.bundle
证据路径
package.json#dsh.bundle
核对版本
0.1.0-rc.8
上游核对日期
2026-08-20

该证据由上游目录提供。本站没有安装、运行或安全审核这个插件。

安装

默认先复制一段 Prompt,让 Agent 读 GitHub 仓库和源码;需要自己装时再切到命令。

复制这段 Prompt,发给 DSH、Codex 或其他 Agent,让它先读 GitHub 仓库和源码。

请先不要安装或执行任何命令。阅读这个插件的 GitHub 仓库、README 和关键源码,然后用清楚、直接的方式回答以下问题,帮助我判断它是否适合我的需求:

1. 这个插件是什么,解决什么问题;
2. 适合哪些用户和典型使用场景;
3. 安装后如何使用,并给出一个最小使用示例;
4. 有哪些已知限制,以及隐私、安全、兼容性或维护风险;
5. 给出“推荐 / 有条件推荐 / 不推荐”的明确建议和理由。

请区分仓库明确说明、根据源码推断和未知信息。证据不足时请明确说明,不要猜测或照抄 README。

GitHub:https://github.com/TimYuann/Learn-as-you-go-dsh
插件名:Learn-as-you-go-dsh
作者:TimYuann

检查来源文件

安装前先看这个插件目录里的 README 和其他文件。

文件资源管理器3 个文件
README.md来源说明 · 只读预览

Learn As You Go · DSH 原生插件

> Keep the technical output. Put the plain-language Chinese meaning directly below it. > > 保留可复制、可检索的技术原文,在下一行补充中文白话解释。

learn-as-you-go-dsh 是 Learn-As-You-Go 理念在 DeepSeek Harness (DSH) 上的原生实现: 一个零 pi 依赖、直接消费 DSH 服务的 Cordis bundle 插件。它向 agent 的系统提示词注入 "↳ 通俗解释"格式规则,让技术输出旁边始终带着给非技术读者的中文白话解释。

The retry loop can create duplicate writes because the idempotency key is generated inside the retry callback.
↳ 重试时可能写入重复数据,因为“判断是不是同一次操作”的 key 是每次重试时重新生成的。

效果展示

真实案例(默认档位 L1 · 入门,30–50 字,口语化、可加类比):

`dsh` 是 DeepSeek Harness 的 profile 启动器;profile 是多个 **bundle 插件**按序叠加的配置树,每个 bundle 是一个在 `package.json` 声明 `dsh.bundle.patch` 的 npm 包。配置树以空根起步,逐层应用 `dsh.profile.bundles` 中每个 bundle 的 patch、profile 自身的 `cordis.patch.yml`、home 级 `$DSH_HOME/cordis.patch.yml` 与 `--patch` 覆盖层,patch 按 `id` 寻址、整行替换、后层胜出。

↳ dsh 启动时把一组插件包按先后顺序叠成一份总配置,每层补丁按条目标记整行替换,越靠后的层越优先,最后盖上去的说了算。

同一锚点切到 L2 · 标准(15–25 字,简短直白):

`dsh` 是 DeepSeek Harness 的 profile 启动器;profile 是多个 **bundle 插件**按序叠加的配置树,每个 bundle 是一个在 `package.json` 声明 `dsh.bundle.patch` 的 npm 包。配置树以空根起步,逐层应用 `dsh.profile.bundles` 中每个 bundle 的 patch、profile 自身的 `cordis.patch.yml`、home 级 `$DSH_HOME/cordis.patch.yml` 与 `--patch` 覆盖层,patch 按 `id` 寻址、整行替换、后层胜出。

↳ profile 配置由插件层叠拼出,后层按 id 整行覆盖,越靠后越优先。

与 pi 移植版的区别

这是全新实现,不复用旧项目的 Core/pi 契约:

| 维度 | 旧移植版(learn-as-you-go) | 本插件 | |---|---|---| | 宿主 | pi 原生 + DSH 双宿主,共享 host-agnostic Core | 纯 DSH 原生 | | 依赖 | @earendil-works/pi-coding-agent peerDeps、Core 抽象 | 仅 @deepseek-ai/* 服务包 | | 契约 | PromptPolicyCapability / complete-prompt 压制(DSH 中为死代码) | 无;依赖 DSH 自身的 complete-section 机制 | | 命令 | on\|off\|status(level 不可调) | on\|off\|status\|level 1\|2 | | 设置 | 无 UI 字段 | schema 驱动设置面板(enabled + level),热更新 | | 测试 | mock ctx | 真实 Cordis + 真实 DSH 服务集成测试 |

安装

从 GitHub Release 直接安装(v0.1.1):

dsh plugin --profile web add https://github.com/TimYuann/Learn-as-you-go-dsh/releases/download/v0.1.1/learn-as-you-go-dsh-0.1.1.tgz

或自行打包安装(包名带当前版本号,以 npm pack 实际输出为准):

npm run build
npm pack                          # 产生 learn-as-you-go-dsh-<实际版本号>.tgz
dsh plugin --profile web add ./learn-as-you-go-dsh-<实际版本号>.tgz

启动 profile(如 dsh web)后,启动日志出现 [learn-as-you-go-dsh] plugin loaded ...。新安装默认开启,默认档位 1 · 入门/learn-as-you-go off 或设置面板可随时关闭。

开发 overlay(不安装)

dsh web --patch ./cordis.patch.yml

零 harness 独立运行

npm run dev      # 通过 Cordis loader 挂载 ./cordis.yml,加载后退出

使用

命令效果
/learn-as-you-go on开启解释(写入 settings,持久化)
/learn-as-you-go off关闭解释
/learn-as-you-go status显示当前状态与 section 挂载情况
/learn-as-you-go level 1入门档(30–50 字,口语化、可加类比,默认)
/learn-as-you-go level 2标准档(15–25 字,简短直白)

设置面板(Web UI 设置 → 插件)中可编辑 learn-as-you-go 命名空间的 enabledlevel,即时生效(live applies)。

读者档位

档位解释行为配对目标长度
1 · 入门概念术语换成日常中文,给具体因果或类比每个技术段落/列表项各一条 30–50 字
2 · 标准技术名词保留在原文,只解释核心含义或影响每个语义块一条;同类短列表可合并15–25 字

两种档位下,APP_DATABASE_URL、路径、命令、端口、ID、hash、产品名等标识符原样保留。

输出规则(理念核心)

  • 用户要求的输出形态优先:要求精确 JSON/XML/YAML、只要代码/命令/日志、只要技术结论、

或要求当前请求不做白话解释时,不加

  • 永不进入代码块、shell 命令、表格、路径、URL、hash、标识符内部;
  • 技术锚点跟随用户请求的语言,不为了配对而切换语言;
  • 用户提供的源文本原样保留;生成的解释写成"技术锚点 + ↳ 行";
  • 不添加原文没有的事实、风险、确定性或更强语气。

开发

npm install
npm run check     # typecheck + 全部测试 + 合规门禁

npm run check 覆盖:

  • 7 个 policy 单测test/policy.test.ts)——档位文本契约、level 解析别名;
  • 14 个集成测试test/plugin.test.ts)——真实 Cordis Context 挂载真实

SystemPrompt / SettingsProvider / CommandRuntime,断言 section 组装、 热更新、命令行为、设置持久化,全程零 mock;

  • 合规门禁scripts/validate.mjs)——manifest、patch 行、entry 契约。

项目结构

learn-as-you-go-dsh/
├── src/index.ts          # 插件入口:name / inject / Config / apply
├── src/policy.ts         # L1/L2 档位提示词正文(理念核心,字节冻结)
├── test/policy.test.ts   # 档位与 level 解析单测
├── test/plugin.test.ts   # 真实服务集成测试
├── scripts/loader.mjs    # 零 harness standalone loader
├── scripts/validate.mjs  # 合规门禁
├── cordis.patch.yml      # bundle patch 层
├── cordis.yml            # standalone 组合
└── lib/                  # 构建产物(npm run build)

License

MIT