一键导入
git-commit-standard
【禁止自动加载 — 不可被「技能强制评估」自动匹配】仅限用户手动调用。加载后必须向用户确认版本号是否递进及递进方式、更新固件产物和 README。触发词仅限"按标准流程提交""按提交流程提交",不含"提交""提交一下""commit"等泛化提交词。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
【禁止自动加载 — 不可被「技能强制评估」自动匹配】仅限用户手动调用。加载后必须向用户确认版本号是否递进及递进方式、更新固件产物和 README。触发词仅限"按标准流程提交""按提交流程提交",不含"提交""提交一下""commit"等泛化提交词。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
在当前会话里按已写好的实现计划顺序执行任务时使用
在已有规格或多步骤任务需求、且在动代码之前使用。若上游 ddev-pc-test 已产出测试用例,自动走 TDD 流程:先实现测试 demo 代码(红灯),再实现被测代码(绿灯),测试覆盖不到的部分直接开发。
文档审查技能。将文档审查任务派发给独立子代理,重点审查文档基于代码改动的合理性、说明正确性、前后一致性、错漏和逻辑谬误,以及 AI 实现过程中产生的决策记录(implementation-notes.md)。当用户需要审查技术文档、spec文档、设计文档、计划文档、API文档、README 或任何与代码改动相关的文档时使用。
代码修改场景下,spec 文档确认后,需要继续以图优先方式梳理结构体定义、数据流和流程时使用
在代码修改前需要编写 spec 文档且应优先用图表达边界、入口、流程和改动关系时使用(仅限代码改动场景,非项目级架构文档初始化)
在代码实现完成后、准备结束任务或进入发布前使用,用来核对代码实现是否与 spec 文档以及 detail 文档一致,并通过代码质量审查、清理、编码规范和注释审查后给出最终验收结论
| name | git-commit-standard |
| description | 【禁止自动加载 — 不可被「技能强制评估」自动匹配】仅限用户手动调用。加载后必须向用户确认版本号是否递进及递进方式、更新固件产物和 README。触发词仅限"按标准流程提交""按提交流程提交",不含"提交""提交一下""commit"等泛化提交词。 |
加载本 skill 时必须同时加载以下 skill 并严格遵循其规范:
git-commit-template — 定义 commit message 的模板、字段和写作风格。model-version-locator — 定位当前机型宏和版本号。优先使用此 skill 自动发现版本信息,而不是手动搜索 *_cfg.h 文件。本 skill 定义提交流程和门禁。
用于执行仓库约定的提交、版本、固件产物归档和 changelog/release record 同步。核心原则:提交前先确认仓库规则,再默认检查并同步版本元数据、README/changelog、固件产物和发布记录,最后 commit。
默认行为(最高优先级):每次执行任何 commit 相关操作时,只要存在代码改动,就必须先重新编译并更新最新固件产物,再同步 README/changelog 总结。 这条规则对 commit 和 amend 一视同仁,不受是否修改版本号影响;它是本 skill 的硬性门禁,不能当作额外功能、可选增强或 commit message 里的“变更点”。只有仓库规则、用户明确要求或历史证据明确证明本次没有对应固件/README/changelog 记录项时,才可跳过,并在执行记录中说明依据。禁止把“未递进版本”“只是 amend”“只是 fix/中间提交”作为跳过固件或履历同步的理由。
该 skill 设计为通用技能:不要写死某个仓库的版本头、固件目录、构建宏、产物命名或 README 路径;这些信息必须从当前仓库的配置、AGENTS.md、历史提交和实际文件结构中推导或维护。
必须使用:
git-commit-template,不得触发版本递进确认、固件重编译等本 skill 的重流程。禁止使用:
每个仓库先按下面顺序找规则,不要凭经验写死路径:
model-version-locator skill 自动发现当前活跃的机型宏和版本号。若已知机型名则传入机型名;否则从当前 git 分支名或上下文推断。输出包含 project 目录、cfg.h 路径、活跃 #if 分支和版本宏值。AGENTS.md / README / release 文档。.agents/release-config.md.agents/git-commit-standard.md.release-config.mdFIRMWARE_VERSION、VERSION_BETA、VERSION、APP_VERSION、BUILD_VERSION、RELEASE_VERSION 等。firmware_record/、release/、releases/、dist/、out/、bin/ 等。README.txt、ReadMe.txt、readme.txt、CHANGELOG.md、RELEASE.mdarch/*/change log/、arch/*/change_log/、arch/**/readme* 等非标准路径(注意包含空格、大小写变体和多级嵌套)docs/release/、doc/、release-notes/ 等常见子目录**/readme*、**/change*log*/**),不能只在根目录搜索
确认找到的每个 readme/changelog 文件的完整路径和格式,以便后续更新。如果规则不明确,先向用户确认;不要默认 fallback 到某个仓库的规则。
允许在仓库中维护一个小型配置/状态文件,用来记录跨 commit 的 release 信息。推荐路径:.agents/release-config.md。如果仓库已有等价文件,沿用已有文件。
该文件可记录:
# Release Config
## Version Sources
- default: `path/to/version.h`, macros: `FIRMWARE_VERSION`, `VERSION_BETA`
- variant-a: `path/to/version.h`, compile macro/env: `<VARIANT_MACRO>`, artifact prefix: `<product-variant>`
## Build Variants
| variant | build command | compile macro/env | output artifact | archive dir | archive name pattern |
|---|---|---|---|---|---|
| default | `<repo build command>` | none | `<out artifact path>` | `<archive dir>` | `<artifact-prefix>_v<version>_<beta>.bin` |
## Changelog
- file: `path/to/ReadMe.txt`
- insert: top
- block separator: `================================================================`
- fields: version, date, author, change points
## Release State
- last_version_bump_commit: `<commit>`
- last_released_version: `<version>`
- last_archived_artifacts:
- `<path>`
用途:当“多个 commit 才递进一次版本”时,用 last_version_bump_commit 或上一个版本记录位置作为汇总边界,不要只拿当前 commit 写 changelog。
硬性门禁:每次执行提交前,必须先向用户询问本次提交的修改依据。此后所有门禁(版本号确认、固件产物、README)方可执行。不存在例外。
| 选项 |
|---|
| 需求变更 |
| Bug 修复 |
| 性能优化 |
| 代码重构 |
| 代码审查优化 |
| 文档更新 |
| 配置变更 |
| 测试补充 |
| 其他(请在输入中说明) |
硬性门禁:每次加载本 skill 执行提交,必须向用户确认版本号是否递进及递进方式,必须更新固件产物,必须更新 README。不存在例外。
向用户确认版本号递进方式之前,必须先完成以下两层定位,避免改错宏或改错分支:
第一层:定位活跃机型宏块。 在版本配置文件中搜索机型宏定义(如 #define TP806L),确认当前活跃的 #ifdef/#if 分支区域;只在活跃分支内修改版本号。常见错误:改了非活跃分支的版本宏,版本号未实际生效。
第二层:区分显示控制宏与真实版本标识宏。 注意某些宏仅控制 UI 显示(如 VERSION_BETA 0 表示自检页不显示 beta 编号),并非真实版本号;真实版本标识宏通常是字符串常量(如 VERSION_BETA_TEST "v1.0.1")。参考 git log 确认历史开发者实际修改的是哪个宏。常见错误:把显示控制宏从 0 改成 1,而非修改真实版本字符串。
硬性门禁:所有版本号相关字段确定后、提交前,必须使用 question 工具将即将使用的版本号展示给用户确认。未获得用户确认不得提交。
展示内容必须覆盖版本号出现的所有位置:
question 工具,以 select 形式列出即将写入的版本号:
VERSION_MAJOR=x VERSION_MINOR=y VERSION_TEST=z(含 VERSION_BETA 值)<型号>_Vx.yy.zz_<后缀>(.bin / .dfu 等)版本:<型号>_Vx.yy.zz_<后缀>写 changelog 前必须确认:
.bin。git config user.name,除非仓库规则另有要求。YYYY.MM.DD。生成 changelog 内容时:
.agents/release-config.md 中的 last_version_bump_commit。ReadMe.txt / changelog 默认写精简版版本摘要,不写详细实现过程;除非用户明确要求详细版,否则一律按发布说明风格输出,而不是设计文档风格。ReadMe.txt。收口鉴权入口、补充打印阻断、完善回归日志点当仓库要求归档固件产物时:
encrypt、enc 或 _e 标记)。question 工具向用户确认:"构建产物包含以下变体:[加密版: <encrypt_file> ( bytes)] [非加密版: <plain_file> ( bytes)],按规则将归档加密版本。" 用户确认后继续;未获确认不得归档。不要假设所有仓库都把产物放在同一个目录;必须从历史文件和 git log 中确认。
提交正文的模板、字段定义、写作风格和正反示例由 git-commit-template 定义。使用本 skill 时必须同时遵循 git-commit-template 的所有书写规范。关键约束摘要:
执行 commit 前按顺序处理:
*encrypt*/*enc*/*_e* 文件。若存在加密变体,执行 Firmware Artifact Rules 第 3 条确认门禁(question 工具确认)。
b. 将构建产物按历史命名规则复制到归档目录
c. 验证产物已存在于归档目录中
此门禁对 commit 和 amend 一视同仁,不可跳过、不可推迟到后续步骤。.agents/release-config.md 的 release state(如果仓库采用该文件)。question 工具将即将写入的版本号展示给用户确认(参见 Version Bump Rules > 版本号确认门禁)。未获用户确认不得继续。out/ 名称。arch/*/change log/ 等深层嵌套路径。question 工具向用户确认加密变体文件名及大小,直接归档(跳过了加密变体优先门禁)。提交前至少确认:
git-commit-template(强制依赖)。ReadMe.txt / changelog 已按精简版版本摘要写法输出:默认发布说明风格、短句概括、每个一级字段子项默认不超过 3 点,且已合并同类项。修改方法、修改影响 未写入函数级、协议级、状态级、字节级、session/payload 分段或调试日志布置等过细细节;相关内容已留在更合适的设计/计划/回归/注释位置。question 工具向用户确认加密变体文件名及大小,并选择加密版本归档。question 工具将版本宏值、固件文件名、changelog 记录和 commit message 中的版本号展示给用户并获得确认。git-commit-template 规范。