Claude Code の /insights を Codex CLI にも実装した(bash + AI 分析)

ツール

なぜ作ったか

Codex CLI を使い続けていると、こんな場面に覚えがある。

  • 「このプロンプト、前も似たようなこと書いたな」
  • 「確認質問が多くてテンポが悪い。提案型にできないか」
  • 「instructions.md に何を足せば効率上がるんだろう」

セッションログは ~/.codex/ に溜まり続けるが、振り返る仕組みがない。

Claude Code には /insights というコマンドがあって、セッション履歴を分析し、改善提案まで出してくれる。Codex CLI にはない。ないなら作る。

codex-insights の仕組み

codex-insights は、Codex CLI のセッションログを AI 分析し、改善提案を「そのまま貼り付けられるプロンプト」として出力するツール。

curl -fsSL https://raw.githubusercontent.com/atani/codex-insights/master/install.sh | bash

使い方はこれだけ。

codex-insights

内部では以下が全自動で走る。

codex-insights (entry point)
  ├── bash + jq → セッション統計の集計
  ├── codex exec → AI 分析 → insights.json
  └── analyze.sh → report.html 生成 → ブラウザ表示

依存は Codex CLI と jq だけ。API キーの設定は不要で、Codex の認証をそのまま使う。

レポートの中身

レポートのプレビュー

実際のレポート画面。統計情報と AI 分析が1ページにまとまっている。

統計情報

  • メッセージ数、セッション数、ツール呼び出し数
  • プロジェクト別・ツール別の利用チャート
  • キーワード頻度
  • Top セッション一覧

数字を並べるだけでも「あ、このプロジェクトばっかり触ってるな」という気づきがある。

AI 分析(ここがポイント)

codex exec を内部で呼び出して、セッションデータを AI に読ませる。

  • At a Glance — うまくいっていること / 摩擦が起きていること / すぐ改善できること
  • Wins — 成功パターンの抽出
  • Friction Points — 具体例付きの摩擦点
  • Suggestions — Codex にそのまま貼り付けられる改善プロンプト
  • instructions.md 追加ルール — コピーして貼るだけのルール提案

提案にはすべて「コピー」ボタンがついていて、クリックしたらそのまま Codex に貼り付けるだけでいい。

実際に使ってみた

初回実行で出てきた Friction Points がこれだった。

確認質問の多さ
質問より提案を求める意図が繰り返し表れており、確認のためにテンポが落ちている。
例: 「codexができるだけ質問ばかりせずに提案型にしてくれるようにできませんか?」

たしかに心当たりがある。Codex に作業を頼むたびに「どのファイルですか」「どのプロジェクトですか」と聞かれて、そのたびに「いや目の前にあるやつだよ」と返していた。

AI が提案してきた instructions.md のルール。

作業ディレクトリがリポジトリ配下の場合、プロジェクト選択の確認は省略してその場のファイルを読む。

これを instructions.md に追加したら、翌日から確認の往復がなくなった。1行追加するだけで毎セッション 2〜3 ターン節約できている。

こういう改善を自分で気づくのは難しい。ログを AI に読ませると「言われてみればそうだな」が出てくる。

技術的なポイント

bash 3.x 互換

macOS 標準の bash 3.x で動くようにした。連想配列(declare -A)は使えないので、一時ファイル + sort | uniq -c で代用している。

bc 依存の除去

パーセンテージ計算に bc を使っていたが、CI の ubuntu-latest に入っていなかった。awk "BEGIN {printf ...}" に置き換えて依存を減らした。外部依存は jq だけにしたかった。

AI 分析のキャッシュ

codex exec の呼び出しは数十秒かかるので、insights.json が 1 時間以内なら再利用する。--force で強制リフレッシュも可能。

統計と AI の分離設計

bash スクリプト(analyze.sh)が統計を集計し、AI が insights.json に分析結果を書き出す。HTML 生成時にこの JSON を読み込んで提案セクションをレンダリングする。

AI 分析が失敗しても統計レポートは必ず生成される。ネットワークエラーや API の不調でツール自体が壊れないようにした。

おわりに

Codex CLI は使えば使うほどセッションデータが溜まる。それを眠らせておくのはもったいない。

codex-insights を定期的に回せば、自分の使い方のクセが見えてくるし、AI が出してくれる改善プロンプトをそのまま貼り付けるだけで instructions.md を育てていける。

試してみる

curl -fsSL https://raw.githubusercontent.com/atani/codex-insights/master/install.sh | bash
codex-insights

リンク

  • GitHub: https://github.com/atani/codex-insights
  • Codex CLI: https://github.com/openai/codex
タイトルとURLをコピーしました