---
name: commit
description: 変更を Conventional Commits 形式でコミットする。
---

# commit

## 手順

1. `git status` + `git diff --cached`（または `git diff`）で変更確認
2. `git log --oneline -10` で履歴確認
3. メッセージ生成。未ステージならファイル名を明示して `git add`（`git add .` / `-A` 禁止）
4. 機密情報チェック: API キー・シークレット・パスワード・トークン・秘密鍵・接続文字列・`.env` 内容・認証情報ファイル -> 検出したら中止して報告
5. コミット実行

1コミット = 1論理的変更。混ぜない。

## メッセージ形式

```
<type>: <summary>

<body（任意）>
```

| type | 用途 |
|------|------|
| `feat` | 新機能・新規ファイル |
| `fix` | バグ修正 |
| `docs` | ドキュメントのみ |
| `refactor` | リファクタリング（機能変更なし） |
| `test` | テスト追加・修正 |
| `chore` | ビルド・設定・CI |
| `style` | フォーマット・命名（動作変更なし） |

summary: 日本語・句点なし・体言止め or「〜を追加/修正」・50文字目安。
body: 大きい変更のみ。「なぜ」を書く（「何を」は diff で分かる）。`Co-Authored-By` はチーム運用で必要な場合のみ。

## 例

```
feat: 突合チェックエージェントを追加
fix: 科目名正規化で建設業科目が漏れていた問題を修正
docs: 要件定義・概要設計を追加
```
