一键导入
headless-commit
ステージ済みの変更からコミットメッセージを自動生成し、コミットする (ヘッドレスモード)。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
ステージ済みの変更からコミットメッセージを自動生成し、コミットする (ヘッドレスモード)。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
ハンドオーバー文書を読んで作業を引き継ぐ。
ctx (https://ctx.rs/) を使ってコーディングエージェントのトランスクリプトを検索・参照するときに使う。「過去のセッションを調べて」「前にやった作業を確認して」「Claude Code セッションID xxx の内容を教えて」「あのときの経緯を教えて」と依頼されたときに必ず使う。
herdr(ターミナルマルチプレクサ、https://herdr.dev/)の中で動いているときに、workspace・tab・pane・agent をソケット API 経由で操作する。他 pane の出力を読む、コマンドを実行する、出力やエージェント状態の変化を待つ、新しいエージェントを起動する、pane のレイアウトを操作する、git worktree を作る、といった操作をするときに使う。HERDR_ENV=1 で動いているときのみ有効。
OPINIONS.local.md を入力に、全マシン共通の要約版 (dotfiles 版) を蒸留する。
ワークスペース内における過去の Claude Code 対話ログ (ctx が索引した全 primary セッション) から、ユーザーの durable な意見・信念・判断基準を蒸留して OPINIONS.local.md を生成する。
コミット依頼があったら必ず使うスキル。「コミットして」「commit」「変更をコミット」「ここまでの作業をコミット」等の指示を受けたら、このスキルを呼び出してコミットを実行する。直接 git commit を実行せずこのスキルを経由すること。
| name | headless-commit |
| description | ステージ済みの変更からコミットメッセージを自動生成し、コミットする (ヘッドレスモード)。 |
| disable-model-invocation | true |
| model | haiku |
| allowed-tools | ["Glob","Grep","Read","Bash(git commit *)","Bash(${CLAUDE_PLUGIN_ROOT}/scripts/git-claude-attribution)"] |
ステージ済みの変更のみをコミットします。確認を挟まず、メッセージを決めたら直ちに Bash ツールで git commit を実行してください。
このスキルはヘッドレスモード (claude --print) で起動されます。確認プロンプトを出しても応答する人間はおらず、呼び出し元シェルスクリプトがハング/誤動作します。「このメッセージで大丈夫ですか?」のような問いかけは禁止です。
また、出力テキスト中に git commit ... をコードブロックや擬似コマンドとして書いても 実行にはなりません。ヘッドレス起動には、それを見て手動で実行してくれる人間はいません。git commit は必ず Bash ツール (Bash(git commit *) が許可済み) を呼び出して実行してください。テキストとしての提示で完了報告に進むと、HEAD は動いていないのに「コミット完了」と嘘の報告を出すことになります。
このスキルでエージェントが実行してよい操作は git commit のみです。それ以外の CLI コマンド (例: git add, git reset, sed, perl, ファイル整形ツール) や、Write / Edit ツールによるファイルの作成・更新は 一切行ってはいけません。
git commit がフックによって拒否された場合、フックの種類で挙動を分けます:
git add の追加、ステージから外す git reset) は禁止です。pre-commit はワークツリー/インデックスの問題を指摘するフックであり、これを直すのはこのスキルの責務範囲外です。git commit を 再実行 してよい (リトライは最大 3 回まで。初回失敗後のリトライを 3 回まで、合計で最大 4 回試行)。3 回リトライしても通らなかった場合は中止し、最後の拒否事由を「コミット失敗」として報告します。なお、フックの種類を問わず、preprocessing が期待通り動かなかった場合 (展開結果が空、エラー出力等) も、独自にコマンドを補って情報を取りに行ってはいけません。
理由: このスキルはヘッドレス起動 (claude --print) で人間の確認なしに動くため、エージェントがスコープ外の副作用 (ファイル編集、ワークツリーやインデックスの状態変更) を独断で起こすと、呼び出し元から制御不能な変更が混入します。スキルの責務は「与えられたステージ済み差分をコミットするか、できなければ報告するか」の二択に限定されています。
注意:
git status --short 実行結果:
!git status --short
git diff --cached --stat 実行結果:
!git diff --cached --stat
git diff --cached 実行結果:
!git diff --cached
直近のコミット履歴からプロジェクトの規約を把握する。
git log --oneline -10 実行結果:
!git log --oneline -10
CLAUDE.md にコミットメッセージ規約があれば、既にコンテキストに含まれているのでそれに従う。
!${CLAUDE_PLUGIN_ROOT}/scripts/git-claude-attribution
会話の文脈がないため (ヘッドレス起動)、コミットメッセージは差分の内容、コミット履歴から読み取れる規約、そしてユーザーが渡した経緯メモ ($ARGUMENTS) のみを統合して生成します。
ルール:
$ARGUMENTS) の扱い:
git diff には現れない情報 (なぜその変更を行ったか、どういう経緯か) を表すユーザー本人の言葉です。git diff から読み取れる「何を変えたか」とは独立した、捨てると失われてしまう情報なので、必ずコミットメッセージに反映してください。unused だから消した → refactor(foo): unused な bar を削除前任者が試験的に入れたが結局使われなかったので整理する → subject に変更内容、body に経緯$ARGUMENTS が空でも、経緯メモの不足についてユーザーに確認しない。空は「経緯メモなし」を意味するものとして扱い、そのままコミットする。ユーザーが渡した経緯メモ: $ARGUMENTS
確認を挟まずに Bash ツールで git commit を実行する (ヘッドレスモードのため確認は届かない)。出力テキストに git commit ... を書くのは実行ではない (冒頭の注意を参照)。
git commit がフックで拒否された場合、出力からどのフックで失敗したかを読み取り、フック種別で挙動を分ける (「スコープと禁止事項」を参照):
git commit を再実行する。リトライは最大 3 回まで (初回失敗後のリトライを 3 回まで、合計で最大 4 回試行)。3 回リトライしても通らなかった場合は最後の出力を持ってステップ 5 の失敗フォーマットで報告する。成功時は次のフォーマット:
コミットが完了しました
~~~
<タイトル・本文・フッターを含む完全なコミットメッセージ>
~~~
失敗時 (フック拒否を含む) は次のフォーマット:
コミット失敗 (<フック拒否 / その他の理由>)
~~~
<git commit の終了コード、stderr、フック出力など、原因特定に必要な情報>
~~~