retro

DSH PLUGIN记忆与知识

仓库 stellatol/retro

记忆与知识 未标注验证等级 安全审查:未标注 可信度:未标注 可安装插件

为 DeepSeek Harness 提供会话复盘能力:把目标、反馈与工具失败整理成复盘草稿,人工审阅后沉淀进 Obsidian 知识库,并支持周报与规则提案。

一句话选型结论

按资料字段整理

retro 是记忆与知识类的 DSH 可安装插件,未做沙盒验证,暂无安全审查结论,列出 4 项功能,没有现成安装命令,需要按仓库 README 接入。验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么;涉及密钥或系统权限的,建议先在隔离环境试装。

分类记忆与知识 收录类型可安装插件 验证等级未标注验证等级 安全审查未标注
验证等级 UNKNOWN 未标注验证等级
GitHub 星标 0 复刻 0 · 未关闭 issue 0
最近更新 2026-09-09 创建于 2026-08-16
README 11.9 KB 正文体量,越大说明说明书写得越细

安装

可安装插件
在 DSH 里执行,装完用 dsh plugin list 确认已挂上;标了 L4 / L5 的命令已在沙盒里真实跑通
  1. 1
    确认版本与运行环境

    仓库没有标注兼容版本与 Node.js 要求,先确认你的 DSH 版本能装,再继续。

  2. 2
    执行安装命令

    在 DSH 里执行上面的命令;多包仓库要注意区分具体子包名,别装错包。

  3. 3
    确认已挂载

    用 dsh plugin list 查看列表里是否出现这个插件,出现即挂载成功。

  4. 4
    试跑并检查权限

    加载后跑一个最小用例,确认它能正常工作;同时看它申请了哪些文件、命令或网络权限。

兼容 DSH 版本未标注版本不匹配时安装会报错
Node.js 要求未标注来自仓库 package.json 的 engines 字段
前置依赖无需要同时安装的同级依赖
npm 包名未发布到 npm可用 npm view 查看包信息

能做什么

4 项功能
字段来自项目仓库与公开索引,中文说明由本站标注

retro:把 DeepSeek Harness 会话经验沉淀进 Obsidian 的 DSH plugin

  • 会话事件生成复盘草稿
  • 人工审阅后写入 Obsidian
  • 自动汇总周报
  • 生成规则提案与博客集成

上游标签

dsh-pluginobsidianretrospectivereview-tools

验证等级与安全审查

未标注验证等级
自动化流程结论,不是人工审核
验证等级未标注验证等级上游未给出验证结论,安装前请自行确认
安全审查未标注静态分析结论,未标注不代表已通过审查
仓库健康度未标注按仓库活跃度与最近更新时间给出
可信度未标注综合仓库活跃度与验证结果

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 列出了 4 项功能,能直接看出它解决什么问题。

先想清楚的地方

  • 安全审查还没结论,装之前先看仓库改了什么、要什么权限。
  • 没有现成安装命令,要按仓库 README 手动接入。
  • 验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么。

更适合

  • 需要在记忆与知识场景里给 DSH 补能力的人。
  • 能接受在本地装依赖、愿意自己确认权限的人。

不太适合

  • 只使用 DSH 官方内置能力、不接受第三方插件的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
插件验证等级安全审查星标兼容版本安装命令
retro当前 未做沙盒验证 未标注 0 未标注 无
ruflo L3 · 安装规范通过 低风险 7.4 万 未标注 无
OpenViking L3 · 安装规范通过 低风险 3.9 万 未标注 无
WeKnora L4 · 沙盒安装通过 低风险 3.3 万 未标注 有
distilly L4 · 沙盒安装通过 低风险 2.5 万 未标注 有
EverOS L4 · 沙盒安装通过 低风险 1.3 万 未标注 有

仓库档案

记忆与知识
字段来自项目仓库与公开索引,中文说明由本站标注
作者 / 维护方stellatol仓库 retro · 默认分支 main
分类记忆与知识memory
收录类型可安装插件声明了 dsh.bundle、可用 dsh plugin add 安装的条目
开发语言JavaScript仓库主语言
许可证MIT商用或二次分发前请确认条款原文
星标 / 复刻 / issue0 / 0 / 0收录时的数值,非实时
创建 / 更新2026-08-16 · 2026-09-09最后推送 2026-09-09
本站收录2026-09-10首次进入本站目录的时间

README 全文

11.9 KB
作者原文,中文版优先;只做安全转义,不改内容

dsh-retro

English | 简体中文

A retrospective plugin for DeepSeek Harness. Turn session goals, feedback and tool failures into drafts, review them, and save the lessons to an Obsidian vault. Includes weekly summaries, rule proposals and blog integration.

Session events → material / suggestions → retrospective drafts → manual review → notes / experience entries
Weekly summaries → rule proposals → manual adoption → skills / AGENTS.md

Installation

Requires Node.js 22 or later, pnpm to manage profile plugins, and DSH with a configured model. See the official repository for DSH installation and the quickstart for the Web UI and initial setup.

The current version has been checked against DSH 0.1.2-rc.1 for tool contracts, host and client loading, CLI installation and configuration composition.

Install into the Web profile:

dsh plugin --profile web add github:StellatoL/retro
dsh --profile web --dump-config
dsh web

--dump-config prints the composed configuration without starting the app. Look for id: retro and name: dsh-retro. If you use DSH through npx, replace dsh with npx @deepseek-ai/dsh. Installing from GitHub requires access to this repository.

For local development, run these commands from the repository root:

npm ci --ignore-scripts
dsh plugin --profile web add .

The package declares dsh.bundle, so the DSH CLI adds it to the profile's bundle list and inserts the id: retro, name: dsh-retro plugin row. The repository includes runnable JavaScript; no installation-time prepare or build script is needed. Restart DSH and refresh the browser after installation. The host loads the client module at runtime, so rebuilding the DSH frontend is unnecessary. See the official plugin publishing guide for the distribution conventions.

For another profile that provides the base services, replace web in the commands. The Web panel also needs the host's webServer and client module services.

Upgrading from an older version

  • The repository root is now the distribution package. Existing local links to dsh-retro/ remain supported; use the root for new installations.
  • If your personal cordis.patch.yml already inserts a retro row, save any custom configuration and remove that duplicate insertion when switching to bundle installation. Restore personal paths with /retro config.
  • When loading the plugin manually, use the bare package name dsh-retro in the row's name field. Client discovery uses the package metadata.
  • The bundled retro-writing skill is copied on first installation. Upgrades preserve an existing skill. If an older skill lacks YAML frontmatter, add name: retro-writing and a nonempty description so DSH can discover it.

Initial configuration

Run these commands in a DSH session. Quote paths that contain spaces:

/retro config vaultPath "D:/Notes/My Vault"
/retro config
/retro queue

Configure the optional blog integration:

/retro config blogPath "D:/Projects/my-blog"
/retro config blogBaseUrl https://example.com

Saved configuration changes take effect in the current plugin instance. Keep personal configuration out of the repository's bundle patch.

Option Default / purpose
vaultPath Empty; root of the Obsidian vault
blogPath Empty; root of the blog Git repository
blogBaseUrl Empty; base URL for public article links
stagingDir Index/06_Retro/_retro; staged retrospective cards
experienceRoot Index/06_Retro/经验库; permanent experience notes and index
proposalsDir Index/06_Retro/_proposals; rule proposals
entriesDir Index/06_Retro/_entries; entry drafts
settleDirs Index/03_Full_Notes/04_Retro, Index/04_Projects, Index/06_Retro/经验库
readWhitelist Index; vault-relative directories available for reading
templates Paths for the experience, permanent and weekly templates, under Index/99_system/_templates/ by default
autoProposeOnGoalComplete true; suggest a retrospective when a goal completes
weeklyReminderDays 7; reminder interval, not a scheduled task
llmProvider / llmModel deepseek-official / deepseek-v4-flash; must be available in DSH
distillMaxChars / chunkChars 30000 / 12000; positive integers for processing long sessions
blogAutoPush false; push the blog repository only when enabled or when --push is supplied

Use /retro config to read an option and /retro config to update it. Separate directory lists with commas and use true or false for booleans. To change template mappings, edit the runtime JSON configuration file and reload the plugin.

Configuration precedence is defaults < Cordis row configuration < runtime configuration file. The environment variables DSH_RETRO_VAULT, DSH_RETRO_BLOG and DSH_RETRO_BLOG_URL fill the corresponding values only when they are still empty after merging.

Workflow

  1. After a DSH session, run /retro queue to view captured material and suggestions, or run /retro draft today directly.
  2. Open the staged card in Obsidian and review its content and questions awaiting confirmation.
  3. Run /retro review keep to save the reviewed note and create an experience entry draft.
  4. Edit the entry, then run /retro entry keep to save a permanent note and update the experience index.
  5. Run /weekly to summarize the last seven days of sessions, material and feedback. Review any rule proposals, then adopt them with /retro adopt.

Automatic collection does not call a model. Draft and weekly-summary generation sends the material to the configured DSH model service. Goal completion creates a suggestion; saving permanent notes, adopting rules and publishing blog posts are triggered by their respective commands.

Command Purpose
/retro or /retro queue View retrospective suggestions, cards, entries, proposals and the publishing queue
/retro draft today\|week\|all\|workspace\|session: Generate cards for a scope; skip sessions that already have a card
/retro review keep [--dir ] Read the reviewed staging file and save it; the directory must be in settleDirs
/retro review discard Mark a card as discarded; retain its staging file until cleanup
/retro review edit Record revision feedback; edit the staging file before running keep again
/retro entry keep Save an experience entry and refresh the index
/retro adopt Append proposed rules to a skill or global rules file; back up existing content as .bak
/retro cleanup Delete staging files for discarded cards while retaining their state records
/retro report Generate a standalone HTML report and try to open it with the system's default opener
/weekly [--force] Generate a seven-day summary; skip generation if a summary from today is awaiting review
/blog list List blog posts
/blog draft Generate a blog draft from a vault note or card
/blog publish [--push] Clear the draft flag, commit the article and optionally push
/blog capture [published\|recent\|all] Import article metadata as entry drafts; recent currently behaves like published, while all includes drafts

To limit model usage per invocation, today processes at most 5 sessions, week and workspace at most 8, and all at most 10. The workspace scope matches sessions against the DSH host's startup directory. Batch adoption groups proposals by text similarity, adopts one per group and marks duplicates as skipped.

Two tools are available to the model: retro_capture records material, and retro_draft creates a staged draft for a session. Neither tool saves permanent notes or publishes content.

Web panel and reports

A “复盘” (Retrospective) button appears at the bottom of the Web sidebar, with a floating button as a fallback when the slot is unavailable. While open, the panel refreshes statistics, cards awaiting review, entry drafts, pending proposals, recently saved notes and audit records every 30 seconds.

Click an item to copy its command, or use its file button to open the note through obsidian://. Run confirmation commands in the session. The browser's device must have Obsidian installed and access to a vault with the matching name.

The panel uses the same-origin, read-only GET /retro/api endpoint. It supports HEAD, rejects other methods and disables response caching. Standalone reports are saved as retro-report.html in the state directory. Windows uses the system file opener; macOS uses open, and Linux uses xdg-open. In a headless environment, open the generated HTML file manually.

Blog compatibility

The current adapter targets src/content/posts/*.md with simple YAML frontmatter containing fields such as title, published, draft, description, tags and category. It supports this directory and field convention rather than arbitrary Astro content collections.

New posts use draft: true. Excluding drafts from production builds depends on the site's code; implement filtering in its content queries. Publishing updates the article and runs Git. Deployment after a push depends on the blog repository's CI. If Git fails, the article may already have been updated; the command reports the failure.

Data locations

$DSH_HOME/                              (defaults to ~/.dsh)
├── retro/
│   ├── config.json                    (personal runtime configuration)
│   ├── store.json                     (state and the latest 2,000 audit records)
│   ├── retro-report.html              (generated on request)
│   └── apply-error.log                (created if initialization fails)
├── skills/retro-writing/SKILL.md       (installed once; adopted rules are appended)
└── AGENTS.md                          (written when adopting agents proposals)

DSH_RETRO_DIR overrides the retro/ state directory only; it does not change the skill or global rules locations. State storage is designed for a single DSH process. Assign separate state directories when running multiple profiles concurrently to avoid overwriting the same JSON file.

Default vault layout:

Index/
├── 03_Full_Notes/04_Retro/             (reviewed retrospective notes)
└── 06_Retro/
├── _retro/                       (staged cards)
├── _entries/                     (experience entry drafts)
├── _proposals/                   (skill and rule proposals)
└── 经验库/00_索引.md

Cards, regular entries and proposals use date-time-topic filenames, with a numeric suffix for collisions. Blog imports use internal IDs. File operations check configured roots, relative paths, read whitelists and existing directory links, rejecting traversal and protected directories such as .git, .obsidian and .trash. The vault does not need to be a Git repository; use your preferred backup method.

Development

Run from the repository root:

npm ci --ignore-scripts
npm run check
npm test
npm run test:package

Static checks validate manifests, exports, skill metadata and JavaScript syntax. Tests cover official DSH tool contracts, filesystem boundaries, workflows and client smoke checks. The package check creates and extracts a tarball and verifies loading by package name. Tests use temporary state, vault and blog directories with substitutes for model calls, Git and browser launchers.

  • Architecture (简体中文)
  • Changelog (简体中文)
  • Contributing (简体中文)

License

MIT

常见问题

7 问
答案由本站依据条目字段整理,不引用上游原文
retro 怎么安装?

本站没有抓到该条目的安装命令,请到仓库主页确认安装方式;这类条目多数是生态应用或尚未发布安装包的项目。

retro 的验证等级是什么意思?

未标注验证等级。上游未给出验证结论,安装前请自行确认

retro 安全吗?

未标注。

retro 装之前要先确认什么?

先看它会读写哪些文件、执行哪些命令、连接哪些网络地址;验证等级只说明装得上、跑得起来,不等于安全。涉及密钥或系统权限的,建议先在隔离环境试装。

retro 用的是什么许可证?

上游标注为 MIT。商用或二次分发前请到仓库确认许可证原文。

retro 有哪些功能?

会话事件生成复盘草稿、人工审阅后写入 Obsidian、自动汇总周报、生成规则提案与博客集成。

这条记录的数据可靠吗?

本站按仓库名去重后合并整理,字段以作者仓库与 npm 元数据为准;安装命令、仓库地址与 README 保持原文,带 L4 / L5 标记的安装命令已在隔离沙盒里真实跑通。

记忆与知识
按星标排序,可作替代方案

ruflo

ruflo

L3 · 安装规范通过 7.4 万 星

OpenViking

OpenViking

面向 DeepSeek Harness 的 OpenViking 记忆与上下文插件:pre-step 自动召回与画像注入、会话捕获、`vik

L3 · 安装规范通过 3.9 万 星

WeKnora

WeKnora

把 WeKnora 知识库接入 dsh 的四个只读工具:列出知识库、混合检索原文片段、按顺序还原单篇文档,以及直接取用 WeKnora 自己

L4 · 沙盒安装通过 3.3 万 星

distilly

distilly

Distilly — Distill how they think into reusable Skills for any Agent o

L4 · 沙盒安装通过 2.5 万 星

EverOS

EverOS

L4 · 沙盒安装通过 1.3 万 星

MemOS

MemOS

L4 · 沙盒安装通过 1.2 万 星

插件的元信息来自作者仓库;分类、验证等级与安全结论的中文说明为中文整理,最近核验 —。