关于 elements-new-package
这是用于在 Elements 仓库中创建 `@editframe/*` 工作区包的技能,可自动生成所需文件并注册 TypeScript 路径别名,也提供发布与依赖维护说明。
主要功能
- 01生成工作区包文件
- 02注册 TypeScript 路径别名
- 03配置包导出与构建
- 04说明 npm 发布步骤
适用场景
- 01创建新的 Elements 包
- 02为包注册导入路径
- 03准备将包发布到 npm
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ editframe/ skills --skill elements-new-package安装后在 Claude Code 中输入/elements-new-package确认已加载。
详细介绍
创建新的 Elements 包
使用 scripts/new-package 为新的 @editframe/* 工作区包搭建脚手架。它会创建所有必需文件,并在 tsconfig.json 中注册该包——这是路径别名的唯一事实来源。
快速开始
# From the elements/ directory (or via the runner)
./scripts/new-package <name>
# e.g. ./scripts/new-package captions
# Then install to symlink the workspace package
./scripts/npm install
脚本的作用
创建 packages/<name>/,其中包含:
src/index.ts— 空导出占位文件package.json— 正确的版本、ESM 导出和publishConfig.access: "public"tsconfig.json— 继承根配置tsdown.config.ts— 最简构建配置
在 elements/tsconfig.json 中添加路径条目:
"@editframe/<name>": ["./packages/<name>/src/index.ts"]
两个 vitest 配置(vitest.config.ts、vitest.config.browser.ts)都会通过 vitest.aliases.ts 自动从 tsconfig.json 派生别名——无需手动更新。
将新包发布到 npm
CI 通过 OIDC 可信发布进行发布(不存储令牌)。OIDC 要求先在 npm 上创建包,才能配置可信发布,因此首次发布需要手动完成:
# One-time, run locally while logged in to npm
npm publish --access public --workspace @editframe/<name>
首次发布后:
- 前往 npmjs.com →
@editframe/<name>→ Settings → Trusted Publisher - 添加 GitHub Actions:仓库
editframe/elements、工作流release.yaml、环境npm-publish
之后的所有版本都会通过 CI 自动发布。
注册路径别名
只需在 tsconfig.json 中添加条目。脚本会自动添加。如果需要,子路径导出(例如 @editframe/foo/node)必须手动添加到 tsconfig.json 中——基础别名通过 Vite 前缀替换即可自然处理子路径导入,因此只有不符合 src/<name>.ts 模式的文件才需要显式添加条目。
添加对其他工作区包的依赖
在新包的 package.json 中,将同级包添加到 dependencies,并使用当前工作区版本(查看根目录的 package.json)。运行 ./scripts/npm install 以重新创建符号链接。版本升级后运行 ./scripts/node scripts/deps.js update-dependencies,使所有跨包版本固定保持同步。