Commit Spark NuitsJp
winget install --id=NuitsJp.CommitSpark -e Generate Japanese Conventional Commits messages from the staged diff via Codex CLI and commit them.
winget install --id=NuitsJp.CommitSpark -e Generate Japanese Conventional Commits messages from the staged diff via Codex CLI and commit them.
staged diff から、Codex CLI(ChatGPT サブスクリプション経由)で日本語 Conventional Commits メッセージを生成し、そのままコミットする CLI。
Commit Spark は aicommits の fork です。API 課金ではなく
ローカルの Codex CLI(codex exec)をサブプロセスとして呼び出す
ことで、ChatGPT サブスクリプションの範囲内でコミットメッセージ生成を行います。複数 AI provider の
切り替えや対話的なコミットフローは持たず、csp コマンド1つで完結します。
前提条件:
go version で確認できます。ソースからビルドする場合のみ必要です)codex --version で確認できます)winget install NuitsJp.CommitSpark
scoop bucket add nuitsjp https://github.com/nuitsjp/scoop-bucket
scoop install nuitsjp/CommitSpark
winget / Scoop でインストールした場合、csp はインストール直後からどこからでも実行でき、
更新は winget upgrade NuitsJp.CommitSpark / scoop update CommitSpark で行います
(csp update はパッケージマネージャー管理下では無効です)。
GitHub Releases からお使いの OS・アーキテクチャ
向けのアーカイブをダウンロードし、展開した csp バイナリを PATH の通ったディレクトリに配置します。
この方法でインストールした場合は csp update で最新版へ自己更新できます。
git clone https://github.com/nuitsjp/commit-spark.git
cd commit-spark
go build -o csp ./cmd/csp
生成された csp バイナリを PATH の通ったディレクトリに配置します。
Codex CLI の疎通確認とコミットメッセージ形式の初期設定を行います:
csp setup
staged diff からコミットメッセージを1行生成し、そのままステージング済みの変更をコミットします:
git add
csp
変更のステージから push まで一気に行うこともできます:
csp --all --push
--all または -a: 未追跡ファイルを含む全ての変更を自動でステージする(default: false)--push または -p: コミット後に現在のブランチを push する(default: false)--exclude または -x: AI 解析から除外するファイル--type または -t: コミットメッセージ形式。plain・conventional・gitmoji に対応します--prompt または -pt: LLM の挙動を調整するカスタムプロンプト--version または -v: バージョン表示--prompt フラグでコミットメッセージ生成の挙動を調整できます:
# 特定の言語で生成する
csp -pt "Write commit messages in Italian"
# 変更の特定の側面に注目させる
csp -pt "Focus on performance implications of changes"
# 特定のスタイル・トーンを指定する
csp -pt "Use technical jargon suitable for senior developers"
csp setupCodex CLI が PATH 上で実行できるか確認し、コミットメッセージ形式(type)を対話的に設定します。
csp setup
csp config設定ファイルの内容を閲覧・変更します。
csp config # 現在の設定を表示
csp config get # 指定したキーの値を表示
csp config set = # 値を設定
csp config set locale=en type=plain # 複数同時に設定
csp config set locale= # 値を空にするとキーを削除し既定値へ戻す
csp pr現在のブランチとデフォルトブランチの diff から PR タイトル・本文を生成し、ブランチを push した うえで PR 作成ページをブラウザで開きます。GitHub / GitLab / Bitbucket / Azure DevOps に対応します。
csp pr
csp updateGitHub Releases から最新版を確認し、Commit Spark の実行ファイルを自己アップデートします。
csp update
設定は OS の設定ディレクトリ下の csp/config.toml(TOML 形式)に保存されます。場所は OS ごとに
異なります(Windows: %AppData%\csp\config.toml、macOS: ~/Library/Application Support/csp/config.toml、
Linux: $XDG_CONFIG_HOME/csp/config.toml または ~/.config/csp/config.toml)。csp config set =
で変更できます。
modelcodex exec --model に渡すモデル名。未設定の場合は gpt-5.3-codex-spark が使われます。
locale生成するコミットメッセージの言語(ISO 639-1 コード)。
未設定の場合は OS のロケール設定から自動検出します(日本語環境では ja)。検出できない場合は en
にフォールバックします。
timeoutcodex exec の実行タイムアウト。60s・2m・500ms のような期間文字列で指定します(下限 500ms)。
Default: 60s
csp config set timeout=90s
max-length生成するコミットメッセージの最大文字数(下限 20)。
Default: 72
csp config set max-length=100
type生成するコミットメッセージの形式:
plain: シンプルな非構造化メッセージconventional: Conventional Commits 形式(type + scope)gitmoji: 絵文字ベースのメッセージDefault: conventional
csp config set type=conventional
csp config set type=gitmoji
csp config set type=plain
git diff で staged changes を取得し、codex exec(Codex CLI)をサブプロセスとして起動して
プロンプトとして渡し、生成されたコミットメッセージで git commit を実行します。API キーは使わず、
ローカルの Codex CLI の認証(ChatGPT サブスクリプション)をそのまま利用します。
このプロジェクトは Nutlope/aicommits の fork です。 元プロジェクトの Maintainer に感謝します。