dsh-web-search-ddg
aooyoo
Zero-token DuckDuckGo search provider for the DeepSeek Harness (DSH) web seam — local headless browser, no API key, no m…
PROJECT TOPICS
PROJECT README
三个 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;ctx.effect,卸载时 LIFO 恢复;注册失败 warn 不 throw;inject 声明硬依赖,服务消失自动停用、出现自动重载;output { schema, render },错误走 { code, message };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
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。