Secure Git Commit Validator

VerifiedCaution

Automates Git commits with security checks and Conventional Commits message generation. Detects sensitive files before pushing changes.

Sby Skills Guide Bot
DevelopmentBeginner
206/2/2026
Claude CodeCursorWindsurf
#git#commit#push#version-control#conventional-commits

Recommended for

Our review

Commits and pushes changes after verification and automatic generation of Conventional Commits-style messages.

Strengths

  • Automatically scans for sensitive files before committing
  • Generates commit messages following Conventional Commits
  • Requires user confirmation before any action

Limitations

  • Only handles basic add/commit/push workflow
  • May not detect all types of sensitive files
  • Requires repository to be already initialized and configured
When to use it

When you want to quickly commit and push changes with a standardized commit message and security check.

When not to use it

When you need partial commits or advanced Git history manipulation.

Security analysis

Caution
Quality score85/100

The skill automates git commit and push operations with user confirmation and a basic security check for sensitive files. While the intention is legitimate, the use of network-pushing commands and potential for incomplete security coverage warrants caution.

Findings
  • Uses git push to remote repository, which could expose code if misused.
  • git add . could accidentally stage and commit sensitive files not covered by the security check patterns.

Examples

Commit all changes
変更をコミットして
Push changes
プッシュして
Commit with auto message
コミット

name: committer description: 変更をコミットしてプッシュする。「コミット」「コミットして」「変更をコミット」「プッシュして」などで起動。 allowed-tools: [Read, Bash, Glob, Grep]

Committer

変更をコミットしてリモートにプッシュします。

ワークフロー

1. 変更内容の確認

# 変更状態を確認
git status

# 変更差分を確認
git diff
git diff --staged

2. セキュリティチェック

以下のパターンを検出したら警告し、.gitignore への追加を提案:

| パターン | 説明 | |----------|------| | .env* | 環境変数ファイル | | *.pem, *.key | 秘密鍵 | | credentials.json | 認証情報 | | *_secret*, *_token* | シークレット | | node_modules/ | Node.js 依存パッケージ | | vendor/ | PHP/Go 依存パッケージ | | .DS_Store | macOS システムファイル |

警告が出た場合:

⚠️ 機密ファイルが検出されました:

- .env.local

.gitignore に追加しますか?

3. コミットメッセージ生成

変更内容を分析し、Conventional Commits 形式でメッセージを自動生成:

プレフィックス判定:

| 変更内容 | プレフィックス | |----------|---------------| | 新規ファイル追加(機能) | feat: | | バグ修正 | fix: | | ドキュメント変更 | docs: | | リファクタリング | refactor: | | テスト追加・修正 | test: | | ビルド・依存関係 | chore: |

メッセージ例:

feat: ユーザー認証機能を追加

- ログインフォームを実装
- JWT トークン認証を追加
- セッション管理を実装

4. ユーザー確認

## コミット内容の確認

### 変更ファイル
{git status --short の出力}

### コミットメッセージ
{自動生成されたメッセージ}

この内容でコミット・プッシュしてよろしいですか?

5. コミット実行

git add .
git commit -m "{コミットメッセージ}"

6. プッシュ実行

# リモートブランチが設定されていない場合
git push -u origin {現在のブランチ名}

# リモートブランチが設定されている場合
git push

7. 完了報告

## コミット完了

コミット: {commit_hash}
ブランチ: {branch_name}
プッシュ: ✅ 完了

変更内容:
- {変更ファイル1}
- {変更ファイル2}

重要な注意事項

  • ✅ コミット前に必ずユーザー確認を行う
  • ✅ 機密ファイルをコミットしない
  • ✅ Conventional Commits 形式を使用
  • ❌ 確認なしでコミット・プッシュしない
  • ❌ main ブランチへの直接コミットは避ける(警告を出す)
Related skills