# Commit

> 当用户想提交代码、git commit、推送更改时使用 — 自动检查代码规范、扫描敏感信息、生成规范的 commit message

- Skill: `lightpointventures/commit` (Agent Skill)
- Install (CLI): `npx skillmds@latest add lightpointventures/commit`
- Raw SKILL.md: https://api.skillmd.com/api/skills/lightpointventures/commit/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: lightpointventures (https://skillmd.com/u/lightpointventures)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/lightpointventures/commit

---


# 安全提交流程

按以下步骤执行提交，每一步都要完成才能进入下一步。

## 步骤

### 1. 检查是否有可提交的更改

运行 `git status` 查看当前状态。如果没有任何更改，告诉用户「没有需要提交的更改」并结束。

### 2. 运行代码规范检查

读取 CLAUDE.md 中的 lint 命令。如果配置了 lint 命令（不是「暂无」），运行它。

- 如果 lint 通过：继续下一步
- 如果 lint 失败：展示错误，询问用户「要我帮你修复这些问题吗？」
  - 修复后重新运行 lint，直到通过
- 如果没有配置 lint：跳过这一步

### 3. 扫描敏感信息

检查所有 staged 文件，扫描以下内容：
- `.env` 文件或包含 `API_KEY`、`SECRET`、`PASSWORD`、`TOKEN` 赋值的行
- 硬编码的密钥（长字符串，看起来像 key/token 的值）
- 私钥文件（.pem、.key）

如果发现敏感内容：
- 列出有问题的文件和行
- 建议用户移除这些文件或使用环境变量
- 在用户确认处理完之前，不要继续提交

如果没有发现问题：继续下一步。

### 4. 展示更改摘要

展示 `git diff --staged` 的摘要（改了哪些文件、大致改了什么）。不需要展示完整 diff，给出简洁的中文摘要即可。

### 5. 生成 commit message

根据更改内容，生成一个符合规范的 commit message：
- 格式：`type: 简短描述`
- type 选择：feat / fix / docs / refactor / test / chore
- 描述用中文，简洁说明改了什么

展示生成的 message，询问用户：
> 提交信息：`xxx`
> 确认提交吗？可以直接说「好」，或者告诉我你想改成什么。

### 6. 执行提交

用户确认后，执行 `git commit`。展示提交结果。

