원클릭으로
yy-commit
帮助用户创建规范的 Git 提交。 当用户想要提交代码、创建 commit、保存改动并提交时触发。 不适用于:仅暂存文件、仅查看 git 状态或历史、执行 push/pull/merge 等非提交操作、修改代码或实现功能。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
帮助用户创建规范的 Git 提交。 当用户想要提交代码、创建 commit、保存改动并提交时触发。 不适用于:仅暂存文件、仅查看 git 状态或历史、执行 push/pull/merge 等非提交操作、修改代码或实现功能。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
创建符合国人审美的网页界面设计。当用户需要设计网页、组件、页面或应用界面时使用。 专注于简洁、精致、和谐的设计风格,生成可直接使用的前端代码。 不用于审核已有 UI 代码、优化现有组件实现,也不用于生成纯后端代码或非 Web 端 UI。
用于撰写技术文章、技术教程、经验总结类长文。 当用户明确要写技术文章、技术博客、技术教程、踩坑记录、优化案例时触发。
创建或更新 AI 全栈 Web 项目的 PRD 产品需求文档。 用于用户明确要求生成 PRD、补充 PRD 内容、或更新现有 PRD 时触发。 不用于生成普通技术文档、API 文档或仅修改代码的场景。
管理项目的分层记忆系统,包括 work-log 更新、新记忆生成、容量检查和归档。 由用户手动执行本技能后触发记忆更新,不用于普通查询或非提交场景。
在目标项目中一键启用分层记忆管理系统,生成规则、技能和记忆库结构。 仅在用户明确要求为项目添加记忆功能时使用,不用于查询记忆、更新现有记忆或初始化普通配置文件。
创建基于当前技能 `scripts/` 参考工程的 Node.js + TypeScript 脚本项目骨架,或按同一结构补齐空白/轻量脚本项目。 当用户需要快速落地命令行脚本、批处理脚本或文件处理流水线时触发,不用于后端服务、前端项目、单文件脚本片段或成熟项目重构。
SOC 직업 분류 기준
| name | yy-commit |
| description | 帮助用户创建规范的 Git 提交。 当用户想要提交代码、创建 commit、保存改动并提交时触发。 不适用于:仅暂存文件、仅查看 git 状态或历史、执行 push/pull/merge 等非提交操作、修改代码或实现功能。 |
帮助用户创建规范的 Git 提交,生成符合项目自定义规范的提交信息或生成符合 Conventional Commits 规范的中文提交信息。
不应触发:
git add检测用户是否在调用时指定了文件/目录路径(如"提交 src/a.ts src/b.ts"、"提交 src/ 目录"、“提交全部变更”)。
决策分支:
并行运行以下命令(用户指定文件/目录时,git diff 和 git diff --staged 仅针对指定路径):
git status
git diff
git diff --staged
git log --oneline -5
git status 输出解读规则:
Changes not staged for commit + modified: 开头的行 → 有已修改文件,需要提交Untracked files: + 文件名 → 有新增文件,需要提交Changes to be committed: + 文件名 → 有已暂存文件,需要提交nothing to commit, working tree clean → 无改动,告知用户并终止流程no changes added to commit → 仅表示暂存区为空,不代表无改动;需结合上述条目判断收集以下信息供后续步骤使用:
git diff --staged 非空时记录已暂存文件清单,用于步骤 4 的副作用提示)快速提交模式判定:在本步骤一次性判定是否启用快速模式,避免后续步骤再做重复判断。
前置条件:仅在步骤 1 未检测到用户指定文件/目录时执行本步骤。用户已指定提交范围时,跳过本步骤直接进入步骤 3。
综合以下信息理解此次提交的目的:
以原子性为主要标准判断所有改动内容是否适合一次性提交。
本技能一次只处理一个原子单元的提交。如不适合一次性提交,告知用户哪些改动适合作为分组,让用户从以下选项中选择:
选项处理规则:
原子性判断标准:
确定提交信息生成规范:
复杂改动提供候选选项:
当单次改动涉及多个维度(如同时包含功能新增和重构),或改动意图可以从不同角度描述时,提供 2 个候选提交信息供用户选择,帮助用户找到最准确的表达。简单改动(意图明确、变更单一)只需生成 1 个即可。
候选选项展示与选择交互:
向用户展示:
git diff --staged 非空,且本次提交的暂存范围与已有暂存内容不一致时):明确告知"执行提交前会先 git reset HEAD 清空当前暂存区,仅暂存以下文件",并在用户确认前等待用户明确同意git status 输出包含 On branch main 或 On branch master 时,始终执行):提示用户当前位于主分支,建议在功能分支工作快速提交模式的限制:
常规模式: 以编号列表向用户展示确认选项
1. 确认提交
0. 取消提交
用户选择处理:
1:进入步骤 5 执行提交0:终止本次提交流程,输出"已取消"修改提交信息规则:
description 语义的修正,不要求用户手工重写前缀功能:、重构:、文档:)展示格式(项目使用中文前缀规范时,将示例中的 feat(auth): 替换为对应的中文前缀,如 功能:):
即将提交以下更改:
⚠️ 检测到当前暂存区已有改动,提交前将先清空暂存区,仅保留以下文件(仅在副作用场景出现)
📝 暂存文件:
- src/auth/login.ts
- src/components/LoginForm.vue
- vite.config.ts
⚠️ 敏感文件警告:
- [新增] .env(环境变量文件)
- [修改] config/credentials.json(凭据文件)
📊 主要变更:
- 新增 JWT token 生成逻辑
- 添加登录表单验证
- 调整 vite 构建别名以支持新模块
💬 提交信息:
feat(auth): 添加 JWT 用户认证功能
- 新增 JWT token 生成逻辑
- 添加登录表单验证
- 补充登录失败场景的错误提示
⚠️ 当前位于 main 分支,建议在功能分支工作。
是否确认提交?
用户确认后,按顺序执行(不可并行)。
# 1. 清空暂存区,确保最终暂存内容仅包含最终选定的改动
git reset HEAD
# 2. 暂存选定的文件
git add <file1> <file2> ...
# 3. 创建提交
# 默认:title + body
git commit -m "<title>" -m "<body>"
# 仅 title
git commit -m "<title>"
提交命令约束:
-m 参数传递,禁止使用 heredoc(cat <<'EOF')、here-string(@'...'@)或其他 shell 特定语法-m 参数:git commit -m "<title>" -m "<body line 1>" -m "<body line 2>",此写法在 bash、pwsh、zsh 等主流 shell 中均兼容禁止事项:
Co-Authored-By: 等署名备注-m 参数输出提交结果,包括:
输出内容参考示例如下:
✓ 提交成功
提交文件:
- skills/yy-create-rule/SKILL.md
- skills/yy-create-rule/resources/rule-best-practices.md
提交哈希:7660360
提交信息:refactor(yy-create-rule): 添加规则内容通用性约束
变更统计:2 files changed, 2 insertions(+)
如果 git status 显示没有变更,告知用户:
当前工作区没有未提交的变更。
如果你期望有变更,可能的原因:
- 文件尚未保存
- 变更已经在之前的提交中
- .gitignore 忽略了这些文件
在步骤 1 解析 git status 输出时识别以下信号并提醒用户:
UU、AA、DD、AU、UA、DU、UD 标记的文件 → 提醒用户先解决冲突再提交Your branch is ahead of 'origin/...' by N commit(s) → 仅提示存在未推送提交,不阻断本次提交Your branch is behind 'origin/...' → 仅提示,不阻断本次提交禁止主动执行:
--no-verify 等标志--force 或 --amend(除非用户明确要求)Co-Authored-By: 等署名备注主分支保护:
main/master 分支时,提醒用户考虑在功能分支工作,不得添加额外确认交互阻塞提交流程排除来源权威性:
.gitignore 为权威排除来源,不在其之上叠加二级黑名单