jpskill.com
💬 コミュニケーション コミュニティ

commit-chat-push

コード変更と同時に、そのコードを生成したCodexとのチャット履歴を保存・コミットし、変更をリポジトリにプッシュすることで、開発過程の記録を残し、後から参照できるようにするSkill。

📜 元の英語説明(参考)

Commit and push repository changes while also exporting and committing the Codex chat/session transcript that produced the feature. Use when the user asks Codex to commit, push, save provenance, include the chat, commit the session, attach the Codex conversation, or preserve the implementation chat from ~/.codex/sessions alongside code changes.

🇯🇵 日本人クリエイター向け解説

一言でいうと

コード変更と同時に、そのコードを生成したCodexとのチャット履歴を保存・コミットし、変更をリポジトリにプッシュすることで、開発過程の記録を残し、後から参照できるようにするSkill。

※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o commit-chat-push.zip https://jpskill.com/download/17514.zip && unzip -o commit-chat-push.zip && rm commit-chat-push.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/17514.zip -OutFile "$d\commit-chat-push.zip"; Expand-Archive "$d\commit-chat-push.zip" -DestinationPath $d -Force; ri "$d\commit-chat-push.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して commit-chat-push.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → commit-chat-push フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-18
取得日時
2026-05-18
同梱ファイル
3

📖 Skill本文(日本語訳)

※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。

Commit Chat Push

概要

このスキルを使用すると、完了した作業を、コードの変更と、それらを作成した Codex セッションの編集済みの Markdown トランスクリプトの両方を含むコミットに変換し、ブランチをプッシュできます。

ヘルパースクリプトは、ローカルの Codex JSONL セッションからトランスクリプトをエクスポートします。生のセッションには、システム/開発者の指示、暗号化された推論ブロブ、完全なツール出力、およびシークレットが含まれている可能性があるため、生の JSONL よりもトランスクリプトを優先してください。

ワークフロー

  1. リポジトリの状態を検査します。

    • git status --short --branch を実行します。
    • プッシュの動作が明確でない場合は、git remote -vgit branch --show-current を実行します。
    • コミットする前に、git diff とステージングされた diff を確認します。
    • 関係のないダーティなファイルをステージングしないでください。関係のない変更がある場合は、そのままにしておきます。
  2. 変更を検証します。

    • 作業に対して最も狭く意味のあるテストまたはチェックを実行します。
    • テストが利用できない場合、または関係のない理由で失敗する場合は、最終的な応答でそれを明確に記録します。
  3. Codex トランスクリプトをエクスポートします。

    • docs/codex-sessions/codex-sessions/.codex/chats/devlog/ など、トランスクリプトの既存のリポジトリ規則が存在する場合は、それを使用します。
    • それ以外の場合は、docs/codex-sessions/ を使用します。
    • 実行:
python3 "${CODEX_HOME:-$HOME/.codex}/skills/commit-chat-push/scripts/export_codex_session.py" \
  --repo "$(pwd)" \
  --output-dir docs/codex-sessions \
  --tool-output none
  1. ステージングする前に、エクスポートされたトランスクリプトを確認します。
    • ファイルが意図したセッションであることを確認するために、ファイルの十分な部分を読みます。
    • 明らかなシークレットまたはプライベートな素材を検索します。
rg -n "sk-|ghp_|github_pat_|BEGIN .*PRIVATE KEY|Authorization|Bearer |password|secret|token|api[_-]?key" docs/codex-sessions
  • 機密コンテンツが表示される場合は、コミットする前にトランスクリプトを編集するか、より厳密な省略の選択肢を使用してエクスポーターを再実行します。
  • リスクについて警告された後、ユーザーが生のログを明示的に要求しない限り、生の ~/.codex/sessions/*.jsonl をコミットしないでください。
  1. 意図したファイルを正確にステージングします。

    • エクスポートされたトランスクリプトを含めます。
    • ワークツリーに関係のない変更がある場合は、git add . よりも明示的な pathspec を優先します。
    • git diff --cached --stat および git diff --cached で確認します。
  2. コミットします。

    • 表示されている場合は、リポジトリのコミットメッセージスタイルを使用します。
    • 役立つ場合は、本文でトランスクリプトについて言及します。例:
feat: add commit transcript workflow

Includes Codex session transcript: docs/codex-sessions/2026-05-03-commit-transcript.md
  1. プッシュします。
    • ブランチにすでにアップストリームがある場合は、git push を実行します。
    • そうではなく、デフォルトのリモートが存在する場合は、git push -u origin HEAD を実行します。
    • プッシュが拒否された場合は、理由を調べて、リポジトリの通常の同期ワークフローを使用します。ユーザーが明示的に要求しない限り、強制プッシュしないでください。

セッションの選択

デフォルトでは、export_codex_session.py は、session_meta.cwd が現在のリポジトリと一致する最新の Codex JSONL セッションを選択します。それが間違っている場合は、--session /path/to/rollout-....jsonl を指定して再実行します。

役立つオプション:

python3 "${CODEX_HOME:-$HOME/.codex}/skills/commit-chat-push/scripts/export_codex_session.py" --help
  • --output-dir PATH: 生成された Markdown ファイル名を PATH に書き込みます。
  • --output PATH: 正確な Markdown パスに書き込みます。
  • --session PATH: 特定の JSONL セッションをエクスポートします。
  • --tool-output none|brief|full: トランスクリプトに含まれるコマンド出力を制御します。デフォルトは none です。前のコマンドがシークレットまたは生のセッション JSON を出力したかどうかを検討した後にのみ brief を使用してください。
  • --include-local-paths: メタデータに完全なローカルソースパスを含めます。デフォルトでは、ホームパスは ~ に短縮されます。

プライバシールール

  • トランスクリプトをプライベートなダンプではなく、ソース管理された出所として扱います。
  • ユーザーとアシスタントのメッセージ、ツール名、コマンド、およびコマンドの終了ステータスを保持します。
  • 開発者/システムの指示、暗号化された推論、トークン数イベント、およびかさばる生のログを省略します。
  • 編集はヘルパーであり、保証ではありません。コミットする前に、必ずトランスクリプトをスキャンしてください。
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開

Commit Chat Push

Overview

Use this skill to turn finished work into a commit that includes both the code changes and a redacted Markdown transcript of the Codex session that made them, then push the branch.

The helper script exports a transcript from local Codex JSONL sessions. Prefer the transcript over raw JSONL because raw sessions can contain system/developer instructions, encrypted reasoning blobs, full tool outputs, and secrets.

Workflow

  1. Inspect repository state.

    • Run git status --short --branch.
    • Run git remote -v and git branch --show-current when push behavior is not obvious.
    • Review git diff and staged diff before committing.
    • Never stage unrelated dirty files. If unrelated changes exist, leave them alone.
  2. Verify the change.

    • Run the narrowest meaningful tests or checks for the work.
    • If tests are unavailable or fail for unrelated reasons, record that clearly in the final response.
  3. Export the Codex transcript.

    • Use an existing repo convention for transcripts if one exists, such as docs/codex-sessions/, codex-sessions/, .codex/chats/, or devlog/.
    • Otherwise use docs/codex-sessions/.
    • Run:
python3 "${CODEX_HOME:-$HOME/.codex}/skills/commit-chat-push/scripts/export_codex_session.py" \
  --repo "$(pwd)" \
  --output-dir docs/codex-sessions \
  --tool-output none
  1. Review the exported transcript before staging.
    • Read enough of the file to confirm it is the intended session.
    • Search for obvious secrets or private material:
rg -n "sk-|ghp_|github_pat_|BEGIN .*PRIVATE KEY|Authorization|Bearer |password|secret|token|api[_-]?key" docs/codex-sessions
  • If sensitive content appears, edit the transcript or rerun the exporter with stricter omission choices before committing.
  • Do not commit raw ~/.codex/sessions/*.jsonl unless the user explicitly asks for raw logs after being warned about the risk.
  1. Stage exactly the intended files.

    • Include the exported transcript.
    • Prefer explicit pathspecs over git add . when the worktree has unrelated changes.
    • Confirm with git diff --cached --stat and git diff --cached.
  2. Commit.

    • Use the repo's commit-message style if visible.
    • Mention the transcript in the body when helpful, for example:
feat: add commit transcript workflow

Includes Codex session transcript: docs/codex-sessions/2026-05-03-commit-transcript.md
  1. Push.
    • If the branch already has an upstream, run git push.
    • If it does not and a default remote exists, run git push -u origin HEAD.
    • If push is rejected, inspect the reason and use the repo's normal sync workflow. Do not force-push unless the user explicitly requests it.

Selecting A Session

By default, export_codex_session.py selects the newest Codex JSONL session whose session_meta.cwd matches the current repository. If that is wrong, rerun it with --session /path/to/rollout-....jsonl.

Useful options:

python3 "${CODEX_HOME:-$HOME/.codex}/skills/commit-chat-push/scripts/export_codex_session.py" --help
  • --output-dir PATH: write a generated Markdown filename in PATH.
  • --output PATH: write to an exact Markdown path.
  • --session PATH: export a specific JSONL session.
  • --tool-output none|brief|full: control command output included in the transcript. Default is none; use brief only after considering whether prior commands printed secrets or raw session JSON.
  • --include-local-paths: include full local source paths in metadata. By default, home paths are shortened to ~.

Privacy Rules

  • Treat the transcript as source-controlled provenance, not a private dump.
  • Keep user and assistant messages, tool names, commands, and command exit status.
  • Omit developer/system instructions, encrypted reasoning, token-count events, and bulky raw logs.
  • Redaction is a helper, not a guarantee. Always scan the transcript before committing.

同梱ファイル

※ ZIPに含まれるファイル一覧。`SKILL.md` 本体に加え、参考資料・サンプル・スクリプトが入っている場合があります。