math-lrz
dsh-plugin-meta
DSH meta-plugin suite: plugin-forge + plugin-auditor + skill-forge — the meta capability layer where everything is a plugin
- Stars
- 1
- Language
- JavaScript
- Created
- Aug 14, 2026
- Updated
- Aug 15, 2026
Introduction
dsh-plugin-meta
三个 DSH 插件:生成插件骨架、审查插件、生成 skill 组件。
在 DSH 里,工具、命令、skill 都是 cordis 组件({ name, inject, apply }),通过 loader entry 挂载。这三个插件分别负责把这类组件造出来和验合规。
组成
| 插件 | 工具 | 命令 | 做什么 |
|---|---|---|---|
| plugin-forge | forge_plugin | /scaffold | 按输入规格生成插件骨架:入口模块、package.json、dsh.plugin.json、mount entry。生成物自带 cordis 规范注释 |
| plugin-auditor | audit_plugin | /audit | 静态审查一个插件是否符合 cordis 规范,输出 PASS/WARN/FAIL 报告(组件形状、ctx.effect/LIFO、inject、错误模式、值/呈现分离、signal、cwd、读回、注册防护、提示词、脱敏、清单、entry、测试,共 15 项) |
| skill-forge | forge_skill | /skill | 生成 skill 组件骨架:一个注册到 ctx.skills 的 cordis 组件(lib 入口 + SKILL.md 方法论 + evals + 资源目录) |
skill 组件是什么:一个 skill 就是一个 cordis 组件,inject 只声明 skills,apply 里通过 ctx.effect 调用 ctx.skills.register() 把方法论注册进运行时。注册时 content 只放摘要,完整方法论放在目录里的 SKILL.md,经 resourceBase 按需读取。skill-forge 就是生成这个组件骨架的工具。
设计原则
- 互相独立:三个插件各自自包含,互不引用;
- 规范自包含:每个插件内置自己依据的规范(
CORDIS_SPEC/AUDIT_SPEC/SKILL_SPEC_CORE),不依赖外部 skill; - revertible effects:一切 ctx 突变经
ctx.effect,卸载时 LIFO 恢复;注册失败 warn 不 throw; - reactive coeffects:
inject声明硬依赖,服务消失自动停用、出现自动重载; - 值/呈现分离:
output { schema, render },错误走{ code, message }; - 会话锚定与写后读回:工具 cwd 用
exec.agent.session.header.cwd,写盘后读回验证。
安装
三个插件都是 file:// 挂载的本地组件。放进工作区后,在 profile 的 cordis.patch.yml 加 loader entry:
- insert:
- id: plugin-forge
name: 'file://<你的路径>/plugin-forge/lib/index.mjs'
- insert:
- id: plugin-auditor
name: 'file://<你的路径>/plugin-auditor/lib/index.mjs'
- insert:
- id: skill-forge
name: 'file://<你的路径>/skill-forge/lib/index.mjs'
保存后 loader 对账生效,无需重启。
测试
每个插件自带零依赖冒烟测试(tests/smoke.mjs):
node plugin-forge/tests/smoke.mjs
node plugin-auditor/tests/smoke.mjs
node skill-forge/tests/smoke.mjs
许可
MIT