mcpField
O
oma-commit

oma-commit

github.com/gracefullight开发49105 次安装1 天前更新
代码仓库

关于 oma-commit

oma-commit 是用于分析代码变更并按 Conventional Commits 格式创建提交的技能。它指导选择类型与范围、拆分相互独立的变更,并提供暂存和敏感信息防护规则。

主要功能

  1. 01检查状态、暂存差异和近期提交
  2. 02选择提交类型、范围与描述
  3. 03将独立变更拆分为多个提交
  4. 04指定文件暂存并避免提交敏感信息

适用场景

  1. 01根据本地变更准备 Conventional Commit
  2. 02提交前拆分无关变更
  3. 03避免暂存敏感信息或使用宽泛添加命令

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/gracefullight/stock-checker --skill oma-commit

安装后在 Claude Code 中输入/oma-commit确认已加载。

附带文件config/commit-config.yamlresources/conventional-commits.md

详细介绍

提交技能 - Conventional Commits

使用时机

  • 用户请求“提交这个”“提交”或“保存更改”时
  • 调用 /commit 命令时

配置

项目专属设置:.agents/skills/commit/config/commit-config.yaml

提交类型

类型描述分支前缀
feat新功能feature/
fix修复错误fix/
refactor改进代码refactor/
docs文档变更docs/
test添加或修改测试test/
chore构建、配置等chore/
style代码风格变更style/
perf性能改进perf/

提交格式

<type>(<scope>): <description>

[optional body]

Co-Authored-By: First Fluke <[email protected]>

工作流

步骤 1:分析更改
git status
git diff --staged
git log --oneline -5
步骤 1.5:按功能拆分(如有需要)

如果更改的文件涉及多个功能/领域,请按功能拆分提交。

拆分标准:

  • 作用范围不同(例如,工作流、技能和文档)
  • 类型不同(例如,feat 与 fix、docs)
  • 逻辑上相互独立的更改

示例:

# Changed files:
.agents/workflows/*.md (7 files)     → fix(workflows): ...
.agents/skills/**/*.md (4 files)     → fix(skills): ...
USAGE.md, USAGE-ko.md               → docs: ...

# Split into 3 commits

以下情况不要拆分:

  • 所有更改都属于同一项功能
  • 更改的文件较少(5 个或更少)
  • 用户要求只进行一次提交
步骤 2:确定提交类型

分析更改 → 选择适当的类型:

  • 添加新文件 → feat
  • 修复错误 → fix
  • 重构 → refactor
  • 仅涉及文档 → docs
  • 添加测试 → test
  • 构建/配置变更 → chore
步骤 3:确定作用范围

使用更改的模块/组件作为作用范围:

  • feat(auth):与身份验证相关
  • fix(api):与 API 相关
  • refactor(ui):与 UI 相关
  • 也可以不指定作用范围:chore: update dependencies
步骤 4:编写描述
  • 少于 72 个字符
  • 使用祈使语气(add、fix、update、remove……)
  • 首字母小写
  • 末尾不加句号
步骤 5:执行提交

显示提交信息并立即继续,无需请求确认:

📝 Committing:

feat(orchestrator): add multi-CLI agent mapping support

- Add user-preferences.yaml for CLI configuration
- Update spawn-agent.sh to read agent-CLI mapping
- Update memory schema with CLI field

Co-Authored-By: First Fluke <[email protected]>
git add <specific-files>
git commit -m "<message>"

参考

  • 配置:config/commit-config.yaml
  • 指南:resources/conventional-commits.md

重要说明

  • 绝不在未获明确许可的情况下使用 git add -A 或 git add .
  • 绝不提交可能包含机密的文件(.env、凭据等)
  • 始终在暂存时使用具体文件名
  • 始终使用 HEREDOC 编写多行提交信息

评论

支持 Markdown