@dimension-studios/ai-changelog

中文文档
1.0.8发布于 2026/10/27MITTypeScriptES Module构建来源已验证近 30 天下载 4146

语义-放出能生成AI放出注释并张贴到Discord的插件.

中文使用文档
文档目录14 节
  1. 目录
  2. 安装
  3. 快速启动
  4. 配置
  5. 需要的选项
  6. 选项
  7. 出版商
  8. 解析器
  9. 偷懒
  10. 乱七八糟
  11. 重试通知
  12. GitHub 动作重试
  13. CI 和测试
  14. 许可证

校对:soup

npm version CI Release License: MIT

AI-书面发布公告为语义发布. 从发布 diff 生成一个简洁的 changlog 消息,然后发布到 Discord, Slack, 或者两者兼而有之.

目录

安装

npm install --save-dev @dimension-studios/ai-changelog

快速启动

在语义释放生成释放注释后添加插件 :

export default {
  branches: ["main"],
  plugins: [
    "@semantic-release/commit-analyzer",
    "@semantic-release/release-notes-generator",
    "@dimension-studios/ai-changelog",
  ],
}

设置所需的 CI 秘密 :

AI_GATEWAY_API_KEY=...
AI_CHANGELOG_DISCORD_WEBHOOK=https://discord.com/api/webhooks/...
AI_CHANGELOG_SLACK_WEBHOOK=https://hooks.slack.com/services/...

除非 dryRun 已启用.

配置

export default {
  plugins: [
    [
      "@dimension-studios/ai-changelog",
      {
        branches: ["main"],
        model: "openai/gpt-5.4-nano",
        prompt: "Write concise release notes for non-developer readers.",
        discordWebhookUrl: process.env.AI_CHANGELOG_DISCORD_WEBHOOK,
        slackWebhookUrl: process.env.AI_CHANGELOG_SLACK_WEBHOOK,
        includePaths: ["src/", "packages/"],
        excludePaths: ["packages/generated/"],
        dryRun: false,
      },
    ],
  ],
}

需要的选项

除非 dryRun 已启用.

选项默认说明
discordWebhookUrlAI_CHANGELOG_DISCORD_WEBHOOKDiscord webhook URL. (原始内容存档于2018-09-29).
slackWebhookUrlAI_CHANGELOG_SLACK_WEBHOOK黑入的 Webhook URL .
gatewayApiKeyAI_GATEWAY_API_KEYVercel AI Gateway API 密钥.

选项

选项默认说明
modelopenai/gpt-5.4-nanoAI SDK Gateway 型号ID.
prompt内建发布通知提示用于生成公告标题和描述的系统提示.
branches["main"]各分会允许发布公告.
includePaths所有路径包含 Git 路径前缀 .
excludePaths常见生成/构建文件额外的排除路径.
dryRunfalse生成和记录有效载荷而不张贴.

出版商

解析器

Discord messages作为嵌入式发送,并带有生成的标题和描述.

export default {
  plugins: [
    // ...other semantic-release plugins
    [
      "@dimension-studios/ai-changelog",
      {
        discordWebhookUrl: process.env.AI_CHANGELOG_DISCORD_WEBHOOK,
      },
    ],
  ],
}

偷懒

黑信息使用块 Kit :

  • header 用于生成标题的块
  • 标记 section 生成描述的块
  • context 有版本和分支元数据块
  • 顶级 text 通知和可获取性退后
export default {
  plugins: [
    // ...other semantic-release plugins
    [
      "@dimension-studios/ai-changelog",
      {
        slackWebhookUrl: process.env.AI_CHANGELOG_SLACK_WEBHOOK,
      },
    ],
  ],
}

从您的 Slack 应用程序设置创建 Slack 导入的 Webhook, 然后将生成的 URL 存储为 AI_CHANGELOG_SLACK_WEBHOOK。 。 。 .

乱七八糟

export default {
  plugins: [
    // ...other semantic-release plugins
    [
      "@dimension-studios/ai-changelog",
      {
        discordWebhookUrl: process.env.AI_CHANGELOG_DISCORD_WEBHOOK,
        slackWebhookUrl: process.env.AI_CHANGELOG_SLACK_WEBHOOK,
      },
    ],
  ],
}

重试通知

如果语义释放成功, 但是 AI 生成或 Webhook 发送失败, 请重试通知而不重运行 释放 :

npx ai-changelog retry --branch main

默认情况下,重试命令使用最新的可达到的 git 标记,将上一个标记的 AI 宣告重现为 发布标签,并张贴到每个配置的出版商。 使用 --version 用于特定释放:

npx ai-changelog retry --version 1.0.1 --branch main

当另一个消息已经发布时, 只重试一个出版商 :

npx ai-changelog retry --version 1.0.1 --branch main --publisher slack
npx ai-changelog retry --version 1.0.1 --branch main --publisher discord

使用 --dry-run 核查生成的有效载荷而不张贴:

npx ai-changelog retry --version 1.0.1 --branch main --dry-run

重试命令读取与语义放出插件相同的环境变量 :

AI_GATEWAY_API_KEY=...
AI_CHANGELOG_DISCORD_WEBHOOK=https://discord.com/api/webhooks/...
AI_CHANGELOG_SLACK_WEBHOOK=https://hooks.slack.com/services/...

您也可以在本地运行中覆盖这些值 --gateway-api-key, (中文(简体) ), --discord-webhook-url,以及 --slack-webhook-url。 。 。 .

GitHub 动作重试

要从 GitHub 动作 UI 中获取重试, 请在您的仓库中添加一个手动工作流程, 检查全部 git 历史、 安装依赖性、 构建软件包和运行 ai-changelog retry。仅显示重试中的特定输入 运算符需要:

  • version:留空以重试最新的标签,或输入一个版本,例如 1.0.1。 。 。 .
  • branch: Slack/Discord 元数据中显示的分支名称, 例如 main。 。 。 .
  • publisher数字 : both, (中文(简体) ), slack,或 discord。 。 。 .
  • dry_run: 不发送webhook请求而预览有效载荷.

用同样的 AI_GATEWAY_API_KEY, (中文(简体) ), AI_CHANGELOG_DISCORD_WEBHOOK,以及 AI_CHANGELOG_SLACK_WEBHOOK 秘密作为你的 发布工作流程 所以重试使用相同的模型和webhook配置.

完整的例子,请参见此寄存器 retry-changelog.yml 工作流程.

CI 和测试

使用 dryRun: true 当验证 CI 中的插件时。 该插件仍然收集释放上下文并生成通知有效载荷,但它不调用任何webhooks.

export default {
  plugins: [
    // ...other semantic-release plugins
    [
      "@dimension-studios/ai-changelog",
      {
        dryRun: true,
      },
    ],
  ],
}

此软件包以 :

bun run check
bun run type-check
bun run knip
bun run test
bun run build

许可证

麻省理工学院

版本与发布记录

@dimension-studios/ai-changelog 共发布 11 个版本,首次发布于 2026/06/23;过去 12 个月发布了 11 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
1.0.8latest2026/10/2716 天前
1.0.72026/10/101 个月前
1.0.62026/08/302 个月前
1.0.52026/08/302 个月前
1.0.42026/08/302 个月前
1.0.12026/08/053 个月前

其他发布通道:beta → 1.0.0-beta.3。

关于 @dimension-studios/ai-changelog 的常见问题

@dimension-studios/ai-changelog 是什么?

语义-放出能生成AI放出注释并张贴到Discord的插件.

如何安装 @dimension-studios/ai-changelog?

在项目目录运行 npm install @dimension-studios/ai-changelog,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:semantic-release(^25.0.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。它还提供命令行工具 ai-changelog,可以用 npx ai-changelog 直接运行。

@dimension-studios/ai-changelog 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@dimension-studios/ai-changelog 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@dimension-studios/ai-changelog 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js ^22.14.0 || >=24.10.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@dimension-studios/ai-changelog 可以商用吗?

@dimension-studios/ai-changelog 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@dimension-studios/ai-changelog 的下载量有多少?

根据 npm 官方下载统计,@dimension-studios/ai-changelog 在 2026/10/13 – 2026/11/11 这 30 天内被下载 4,146 次,日均约 138 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@dimension-studios/ai-changelog 还在维护吗?

最新版本 1.0.8 发布于 2026/10/27(16 天前);至今共发布 11 个版本,其中过去 12 个月发布了 11 个;首次发布于 2026/06/23。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。