Skip to main content

content-studio-release-workflow

准备并执行 content-studio 通用版本发布流程。适用于用户要求更新 Content Studio / 布谷AI 版本号、同步 package.json / package-lock.json / RELEASE_NOTES.md、运行发布前验证门禁、构建桌面包、创建 commit 或 tag、推送 tag 到 GitHub,或从中断的版本发布流程恢复;发版涉及 Lime App Server sidecar、resources/app-server、runtime provider store、Agents 状态机/UI 时联动 content-studio-app-server;不处理 bugu/seenx OEM latest、R2、download-manifest 或官网下载卡片分发。

معلومات المصدر

المستودع
limecloud/content-studio
آخر نشاط في المصدر
١٤ يونيو ٢٠٢٦ في ٠٥:٣٩
لغة SKILL.md المكتشفة
الصينية
النجوم
٢
التفرعات
١

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

مستكشف الملفات
2 ملفات

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
content-studio-release-workflow
description
准备并执行 content-studio 通用版本发布流程。适用于用户要求更新 Content Studio / 布谷AI 版本号、同步 package.json / package-lock.json / RELEASE_NOTES.md、运行发布前验证门禁、构建桌面包、创建 commit 或 tag、推送 tag 到 GitHub,或从中断的版本发布流程恢复;发版涉及 Lime App Server sidecar、resources/app-server、runtime provider store、Agents 状态机/UI 时联动 content-studio-app-server;不处理 bugu/seenx OEM latest、R2、download-manifest 或官网下载卡片分发。
# Content Studio 通用发版流程 ## 边界 - 本 skill 只处理仓库版本发布:版本号、发布说明、本地门禁、桌面包构建、commit / tag / push 确认和 Release workflow 跟进。 - 发版涉及 Lime App Server sidecar、`resources/app-server/`、runtime provider store、Agents 工作台继续对话、`AI Agent 对话未启动` 或 Agents UI 回归时,先使用 `.codex/skills/content-studio-app-server/` 并读取 `docs/aiprompts/app-server-workflow.md`。 - bugu / seenx 的 stable、latest、R2、download-manifest、官网下载卡片和控制面 latest 继续使用 `.codex/skills/content-studio-oem-release/`。 - 发版属于高风险流程。`git commit`、`git tag`、`git push`、GitHub Release 创建 / 更新、删除文件、覆盖 tag、真实调用生产 API 前,必须按 `AGENTS.md` 的中文危险操作格式确认。 - 如果工作区已有大量未提交改动,先声明本轮写集;只修改发版事实源,不回滚、不覆盖用户改动。 ## 启动检查 1. 先读: - `AGENTS.md` - `.codex/skills/README.md` - `docs/aiprompts/app-server-workflow.md`(仅当本次发布涉及 App Server / Agents runtime) - `package.json` - `RELEASE_NOTES.md` 2. 盘点现状: ```bash git status --short git log --oneline --decorate --max-count=20 git tag --list "vX.Y.Z" ``` 3. 明确目标版本: - 用户给出 `vX.Y.Z` 或 `X.Y.Z` 时,规范化为版本 `X.Y.Z` 和 tag `vX.Y.Z`。 - 用户未给版本时,只能读取当前版本并建议 bump;不能擅自发版。 4. 如果上一轮命令仍在跑,只处理自己启动且已被用户中断的进程;不要终止明显属于用户的 dev server / Electron / 测试进程。 ## 版本事实源 版本改动必须同步: - `package.json` - `package-lock.json` - `RELEASE_NOTES.md` 检查项: ```bash rg -n '旧版本|目标版本' "package.json" "package-lock.json" "RELEASE_NOTES.md" "electron-builder.yml" "forge.config.mjs" ".github/workflows" ``` 说明: - `electron-builder.yml` 和 `forge.config.mjs` 目前不硬编码应用版本;只在发布相关配置变更时修改。 - `resources/app-server/app-server.release.json` 默认是本地 sidecar manifest,不等同桌面应用版本;只有发布任务明确涉及 App Server sidecar 资源时才修改。 - 修改 `resources/app-server/` 或 App Server manifest 时,必须按 `docs/aiprompts/app-server-workflow.md` 记录 manifest / binary 来源、sha256、`--data-dir` 与 `modelProvider/list` 预检结果。 - 锁文件优先用 `npm version --no-git-tag-version X.Y.Z` 或结构化 JSON 更新,避免手工漏改。 ## Release Notes 事实源是根目录 `RELEASE_NOTES.md`,中文为 primary。 生成内容时参考: ```bash git describe --tags --abbrev=0 git log <last-tag>..HEAD --pretty=format:"%s (%h)" --no-merges git diff --stat ``` 格式保持现有风格: ```markdown ## vX.Y.Z - YYYY-MM-DD ### 主题 - 面向发布对象描述变更,不逐条照搬内部 commit message。 ### 验证 - `npm run verify:local` ``` 如只做 release note 或文档更新,可降级验证,但最终汇报必须说明降级理由。 ## 验证矩阵 版本发布前默认执行: ```bash npm run verify:local ``` 根据变更范围补充: ```bash npm run dist:mac npm run dist:win npm run dist:linux npm run smoke:app-server npm run app-server:prepare:test npm run app-server:backend:test ``` 规则: - 普通代码变更至少跑 `npm run typecheck`。 - 可交付功能变更跑 `npm run build`。 - 主工作台 / preload / IPC 主链改动优先补跑 `npm run smoke:electron`。 - 打包、图标、release 配置改动跑对应 `npm run dist:*`;macOS 本地优先 `npm run dist:mac`。 - App Server sidecar / resources / runtime provider store 改动必须补跑 `npm run app-server:prepare:test`、`npm run app-server:backend:test`、`npm run smoke:app-server`;真实 provider store 或平台宿主链路按场景补跑 `npm run app-server:runtime:live` 或 `npm run platform-host:runtime:live`。 - Agents 工作台状态机或 UI 改动必须补跑 `node scripts/run-functional-tests.mjs --test-name-pattern "等待用户补充的 agents 普通对话可以继续"` 和 `npm run test:e2e -- --grep "agents 寒暄对话保持普通回复"`;不得发布会把第二轮普通对话误判为 `AI Agent 对话未启动` 的版本。 - GUI / E2E 失败必须修真实用户路径;不能通过跳过测试、放宽断言或无意义等待绕过。 ## Commit / Tag / Push 执行任何 git 写操作前,先汇总: - 目标版本与 tag。 - 将纳入提交的文件列表。 - 已通过、失败、未执行的验证。 - 是否存在未提交的非发版改动。 - 是否会触发 GitHub Release / Actions。 然后按 `AGENTS.md` 危险操作格式请求确认。确认后才执行: ```bash git add <release-files-and-intended-changes> git commit -m "Release vX.Y.Z" git tag -a vX.Y.Z -m "布谷AI vX.Y.Z" git push origin main git push origin vX.Y.Z ``` 如果 tag 已存在,不要覆盖;先说明本地与远端 tag 状态,并单独确认删除或重建策略。 ## Release / CI 跟进 推送后按仓库事实源跟进: ```bash gh run list --workflow "Release Desktop Packages" gh run watch <run-id> ``` 如 CI 或 release workflow 失败,先读取日志、复现或对齐失败,再修复并重新跑本地相关验证;不要只依赖远端 CI 试错。 ## 收尾输出 最终汇报必须包含: - 本轮完成度百分比。 - 版本号、tag、release note 路径。 - 实际修改的发版事实源。 - 验证命令结果与任何环境限制。 - 是否已经 commit / tag / push。 - 如需要用户可见下载更新,明确下一步转入 `content-studio-oem-release`。
عرض على GitHub