Skip to content

Releases: Wenaixi/dsh-superpower

v6.3.0-dsh.9

Choose a tag to compare

@github-actions github-actions released this 23 Aug 12:18

更新内容详见 CHANGELOG.md

修复

  • 硬把 skills/ 目录重命名为 superpower- 前缀:前几版仅改了 SKILL.md#frontmatter.namesuperpower-<kebab>,目录仍为原 <kebab>(依赖 Provider 的“frontmatter 优先于目录名并 warn”逻辑)。本次把 14 个目录从 skills/<kebab> 硬重命名为 skills/superpower-<kebab>,使 entry.name === frontmatter.name 完全一致,消除 list() 的 warn 与 get() 的 name drift 校验风险,确保 skill("superpower-writing-plans") 等调用在 DSH 启动快照与 HMR 缓存下均可稳定命中。同步更新 README.md / scripts/verify.mjs / CLAUDE.md 中残留的旧路径引用与校验逻辑,pnpm pack 产物同步改为 skills/superpower-*verify 14/14 PASS。

完整更新日志: CHANGELOG.md

v6.3.0-dsh.8

Choose a tag to compare

@github-actions github-actions released this 23 Aug 08:50

更新内容详见 CHANGELOG.md

修复

  • cordis.patch.yml 加引号name: @wenaixi/dsh-superpower 未加引号导致 dsh --dump-configYAMLException: bad indentation of a mapping entry@ 开头在 YAML plain scalar 中不合法)。改为 name: "@wenaixi/dsh-superpower",与 @wenaixi/dsh-ponytail 保持一致。

完整更新日志: CHANGELOG.md

v6.3.0-dsh.7

Choose a tag to compare

@github-actions github-actions released this 23 Aug 08:37

更新内容详见 CHANGELOG.md

变更

  • npm 包名统一到 @wenaixi/dsh-superpower:与 @wenaixi/dsh-ponytail / @wenaixi/cfbridge 保持一致的 @wenaixi scope。变更内容:package.json#namedsh-superpower 改为 @wenaixi/dsh-superpower 并新增 publishConfig: { access: "public" }cordis.patch.ymlname 同步改为 @wenaixi/dsh-superpowerREADME.md 安装/卸载/验证/常见问题、release.ymlnpm dist-tag addsrc/superpowers.ts 注释、CONTRIBUTING.md / CLAUDE.md 全量替换为 scoped 名;pnpm pack 产物由 dsh-superpower-*.tgz 改为 wenaixi-dsh-superpower-*.tgz。GitHub 仓库名 Wenaixi/dsh-superpower 不变(仅 npm 名变更)。

废弃

  • 旧名 dsh-superpower(无 scope)已废弃:发版后执行 npm deprecate dsh-superpower@"*" "已迁移至 @wenaixi/dsh-superpower,请改用 \"dsh plugin --profile web add @wenaixi/dsh-superpower\"",后续不再向该名发布新版本。

完整更新日志: CHANGELOG.md

v6.3.0-dsh.6

Choose a tag to compare

@github-actions github-actions released this 22 Aug 13:38

更新内容详见 CHANGELOG.md

修复

  • npm latest dist-tag 站位问题:当仓库历史 6.3.0 基础版被 unpublish 后,npm 的"没有 latest 时回退到最高 semver 版本"默认行为会让最新发的 -dsh.N 抢占 latest。本次发版在 release.yml 的"发布到 npm"之后新增"为 -dsh.N 系列打 dsh dist-tag"步骤,把 dsh 系列从 latest 抽离;本地同步把 6.3.0-dsh.5 显式补 latest tag(仓库策略上 dsh.N 为事实稳定演进线,详见 CLAUDE.md 第 10 章)。今后发版路径固定为:npm publish → 命中 -dsh.Nnpm dist-tag add <pkg>@<ver> dsh,CI 自动完成。

文档

  • CLAUDE.md 第 10 章新增"dist-tag 策略"段,明示:
    • 仓库策略上 -dsh.N 系列为事实稳定演进线
    • 显式打 dsh dist-tag 与 npm 默认 latest 抢占的应对
    • release.yml 对应变更说明
  • release.yml 在"发布到 npm"后加"为 -dsh.N 系列打 dsh dist-tag"步骤

完整更新日志: CHANGELOG.md

v6.3.0-dsh.5

Choose a tag to compare

@github-actions github-actions released this 22 Aug 13:09

更新内容详见 CHANGELOG.md

⚠️ BREAKING CHANGE:本次发版将 14 个技能的 frontmatter.name 统一加上 superpower- 前缀。
-dsh.4 升级后,所有调用方式都必须更新:

  • 旧:skill("brainstorming") / /skill brainstorming
  • 新:skill("superpower-brainstorming") / /skill superpower-brainstorming

旧名不再注册,ctx.skills.get("brainstorming") 将返回 undefined
详见本节下方"变更"条目与 CONTRIBUTING.md"上游同步策略"。

变更

  • 14 个技能统一加 superpower- 前缀,与上游 obra/superpowers 永久脱钩
    14 个 SKILL.mdfrontmatter.name 由原 <kebab> 改为 superpower-<kebab>
    (如 brainstormingsuperpower-brainstorming);目录名保持不变;
    Provider 代码不动(沿用既有的"frontmatter 优先于目录名"约定,会输出 warn 提示);
    用户命令 /skill superpower-brainstorming 与模型调用 skill("superpower-brainstorming") 均能工作;
    上游同步策略详见 CONTRIBUTING.md 新增的"上游同步策略"节。

文档

  • skills/using-superpowers/references/dsh-tools.mdSKILL.md:把 superpowers:<name> 示例改为 superpower-<name>
  • 其它 references/*.md 与 14 个技能正文里引用旧名的位置同步替换(grep 全仓 superpowers: 残留为 0)
  • README.md 技能清单表与示例调用同步更新
  • CONTRIBUTING.md 新增"上游同步策略"节,明示脱钩代价与同步流程
  • scripts/verify.mjs 适配 frontmatter.name 与目录名可偏离的场景(用 ~ 标记)

回滚

  • 移除上一版未发布时尝试的"28 条别名 candidate"方案(DSH 上游 isSkillName = /^[a-z0-9]+(-[a-z0-9]+)*$/ 拒绝冒号,前缀方案只能走 kebab-case 短横线)

完整更新日志: CHANGELOG.md

v6.3.0-dsh.4

Choose a tag to compare

@github-actions github-actions released this 22 Aug 08:58

更新内容详见 CHANGELOG.md

修复

  • CI(Release):修复 release.yml 中 CHANGELOG 提取正则的 \z 非法锚点(JS 中退化为字面量 z,含 z 的末版正文被截断),改为定位标题行后手动切片到下一 ## [,并将输出路径改为 RUNNER_TEMP 避免并发覆盖
  • 健壮性(src/superpowers.tsparseFrontmatter 去 BOM;listreaddir 透传 signal 及时中断;get 增加 locator 守卫、readFile 透传 signalAbortError 直抛、非 ENOENTwarn,并补全 frontmatter/名称漂移/invocation 非法等诊断;明确 skills/changeemit 模式无需 next() 的注释

完整更新日志: CHANGELOG.md

v6.3.0-dsh.3

Choose a tag to compare

@github-actions github-actions released this 22 Aug 08:03

更新内容详见 CHANGELOG.md

修复

  • 规范对齐(dsh-plugin-devsrc/superpowers.ts 复用 dsh-skill/isSkillName 校验,移除本地正则;ConfigproviderName 改为必填(Schemastery 默认值仍在 schema),拒绝保留名 runtime 并补 .descriptionConfig 接口与 schema 已对齐可选/必填
  • 健壮性list/get 尊重 options.signal 并及时 throwIfAborted()list 内对重复 skill name 去重并 warnstat 失败记 debug、YAML 解析失败单独 warnparseSkillFile 不再静默吞错;移除 import.meta.url 静默降级,改为显式失败(“失败要响亮”)
  • 生命周期apply 改用单一 ctx.effect 包裹 registerProvider + skills/change 监听,卸载时按序清理,HMR 无残留
  • 打包package.json 新增 prepare 脚本(与 prepack 并存),修复 github:Wenaixi/dsh-superpower 直装时无 lib/ 构建的坑
  • 文档:同步 CLAUDE.md(技术栈/架构/目录/配置/注意事项/决策日志)与代码修复一致;明确 lib/ 已提交

完整更新日志: CHANGELOG.md