🛠️ Claude Code は実際どう使われているか — 実在確認した30の使い方
「Claude Code でこんなことができます」という記事は無数にある。この記事はそれをやらない。実在する個人と企業が、実際に何のために使い、結果どうなったかだけを集めた。GitHub の全リポジトリは API で実在を確認し、企業事例は自社のテックブログを一次情報として引いている。日記を GitHub Issue に変える人、経費精算を30分から5分にした人、エンジニア1,200人に年4億円を出す会社、そして終了を横取りして同じ命令を流し続ける Anthropic 公式プラグインまで。
📇 結論 — 実在確認した使い方カタログ
このセクションの3点
① 機能紹介ではなく、実在の使用例だけを30件集めた。コーディング以外の用途・企業の数字・フック/スキルの珍しい実装が混ざっている
② GitHubのリポジトリ名は全てAPIで実在確認済み。企業事例は公式ブログ・エンジニアリングブログのみを出典にした
③ 数字が公表されているものは数字を出し、無いものは「数値の公表なし」と正直に書いた
この記事は「Claude Codeでこんなことができます」という機能紹介ではない。実在が確認できた使用例だけを、誰が・何のために・どういう仕組みで・結果どうなったかで集めたカタログである。
企業事例はAnthropic公式ブログと各社(CyberAgent・DeNA・freee・LayerX・Mercari)のエンジニアリングブログから。個人の実装はGitHubのリポジトリをAPIで直接叩いて実在確認したものだけを載せている。発明したリポジトリ名・企業名・数値は一つもない。
| # | 使い方 | 誰が | 仕組み(1行) | 効果・規模 | 出典 |
|---|---|---|---|---|---|
| 1 | 非エンジニアが電話取次システムを内製 | Anthropic Legalチーム | 法務メンバーがClaude Codeでフォンツリーをプロトタイプし、社内の適切な弁護士へ自動接続 | 数値の公表なし | claude.com公式ブログ |
| 2 | 広告文をCSVから大量生成 | Anthropic Growth Marketingチーム | 成績の悪い広告を検出し文字数制限内で新バリエーションを自動生成、Figmaプラグインで見出し・説明文を組み替え | 数時間→数分/コピペ作業は1バッチ0.5秒に短縮 | claude.com公式ブログ |
| 3 | データカタログツールの代替 | Anthropic Infrastructureチームの新任データサイエンティスト | コードベース全体を読ませ、データパイプラインの依存関係や上流データソースを説明させる | 数値の公表なし | claude.com公式ブログ |
| 4 | 未経験言語でReact可視化ツールを構築 | Anthropicのデータサイエンティスト | JavaScriptを知らないまま強化学習モデルの性能可視化アプリを構築 | 数値の公表なし | claude.com公式ブログ |
| 5 | 専門外領域のリサーチ時間短縮 | Anthropic Inferenceチームの非ML出身者 | モデル固有の関数の説明をGoogle検索でなくClaudeに聞く運用に切替 | 1時間→10〜20分(80%減) | claude.com公式ブログ |
| 6 | 定例レポート作成の自動化 | Anthropic社内バックオフィスチーム | データソースをClaude Codeに接続し、レポート生成を自動化 | 複数人×1週間→1人×1時間 | DeNA Engineering Blog(Anthropic社内勉強会紹介) |
| 7 | 数千行のCLAUDE.mdを運用 | Anthropicエンジニア | プロジェクト構造・コマンド・ロードマップまで書き込み、/context で監査し /compact で圧縮 | 数値の公表なし(社内CLAUDE.mdは「数千行」) | DeNA Engineering Blog |
| 8 | Skillの自動発火率を改善 | Anthropicエンジニア | description欄に「具体的にどんな時に使うか」の実例を追記 | 数値の公表なし | DeNA Engineering Blog |
| 9 | Agent Teamsで手動起動を削減 | Anthropic社内 | 自然言語での委譲だけで複雑なタスクを自動構造化し、個別のサブエージェント起動を減らす | 数値の公表なし | DeNA Engineering Blog |
| 10 | GitHub Actions上でアクセス制御設定を自動生成 | LayerX | claude-code-base-actionを3段のサブエージェント(abac-departments-retriever→abac-config-member-conditions-generator→abac-config-group-generator)に分割 | 100以上のグループ設定を本番運用 | tech.layerx.co.jp |
| 11 | エンジニア全員にAIエージェント予算を全額会社負担 | サイバーエージェント(公式PR) | 対象エンジニア約1,200名に月額上限(Claude Max等)を会社負担 | 年間約4億円・1人月200米ドル(参考: 過去のGitHub Copilot導入実績でエンジニアリング業務時間の約40%を代替・18ヶ月実測) | cyberagent.co.jp公式プレスリリース |
| 12 | フレームワークアップグレードにSkillsを活用 | freee株式会社 | Rails 7系から8.1へのアップグレードをClaude Code Skillsで実施 | 数値の公表なし(全社標準ツール化は2026年2月頃〜) | developers.freee.co.jp |
| 13 | PdM・デザイナーが直接Claude Codeを使う | DeNA プロダクトマネージャー・デザイナー | PRD更新をSlack/ミーティングメモから自動化、Figmaのインタラクティブなプロトタイプを直接エンジニアと共有 | 仕様確定→動くプロトタイプが2〜4週間→1〜2日 | DeNA Engineering Blog |
| 14 | 個人の`~/.claude`資産を可視化・育成する社内アプリ | DeNAエンジニアチーム(「geniハーネスくん」) | セッションログやメモリからKPI・活動量を可視化し、CLAUDE.md改善案や再利用スキルを自動生成 | 数値の公表なし | DeNA Engineering Blog |
| 15 | PdM向けPRD自動生成エージェント | Mercari プロダクトマネージャー(mercari-pm-agent) | Notion/Slack/BigQuery連携MCP「Socrates」/Figmaの4つのMCPを並列クエリし、課題発見→PRD→UIモックまで1セッションで自動化 | 数値の公表なし(`/mercari-pm-agent` コマンド一発で起動) | engineering.mercari.com |
| 16 | 学術論文コードの98%以上を生成 | 研究者 Kevin Yang | 計画立案→スクリプト逐次生成→都度検証→Parquet中間ファイル→Git/Lazygitでロールバック | コードの98%以上をClaude Codeが生成 | Kevin Yang Substack |
| 17 | 家計・資産ダッシュボードをセルフホストで個人開発 | 個人開発者 Kevin Kinnett | React 19+Node.js 22+PostgreSQL+Docker+Windmill+Tailscaleで構築、AIの役割はCRUD・雛形生成に限定 | TypeScript約45,000行・27ページ・30APIルート・12日・132コミット | kevinkinnett.com |
| 18 | 経費精算・家計簿・工数レポートを一括自動化 | みのるん(KDDIアジャイル開発センター) | Gmailの領収書メールとカード明細を突合、PLAN/SPEC/TODO/KNOWLEDGEの4ファイルでセッションを跨いで運用 | 経費精算30分→5〜10分 | Qiita(みのるん) |
| 19 | 日記をGitHub Issueへ自動変換 | 個人開発者 @tobaru-hideyasu | 8つのカスタムスキル(/weekly-review /task /coach /reflect /sparring)でObsidian日記を要約・タスク抽出 | 1ヶ月分の日記から約50件抽出→46件のIssueにP0〜P3付与 | Qiita(@tobaru-hideyasu) |
| 20 | Notificationフックを4種類のmatcherで使い分け | congmnguyen/claude-code-wsl2-setup | idle_prompt / permission_prompt / agent_completed / agent_needs_inputを判定し、Windows Terminalが前面の間は通知しない | ★45 | GitHub API実在確認 |
| 21 | Stopフックで終了を横取りする自己ループ | Anthropic公式(anthropics/claude-code内 plugins/ralph-wiggum) | 同じプロンプトを完了合言葉が出るまで自己再投入し、外部bashループなしでセッション内完結 | 所属リポジトリ(anthropics/claude-code)★140,653 | GitHub API実在確認 |
| 22 | Ralphループにガードレールを追加 | frankbria/ralph-claude-code | Bash+tmuxでexit検知・レート制限・サーキットブレーカーを実装し無限ループとAPI浪費を防ぐ | ★9,590、テスト75本超 | GitHub API実在確認 |
| 23 | サブエージェントのトポロジーをライブグラフ化 | lookfree/cc-harness | セッションファイルを読み、トークン消費をソース別(ベースセッション/スキル/サブエージェント/MCP)に分解し具体的なメッセージまで遡れる | 数値の公表なし | GitHub API実在確認 |
| 24 | top風のセッション監視TUI | stefanprodan/cctop | 全セッションをbusy/idle・コンテキストサイズ・モデル・gitブランチで一覧、孤児化ポートも表示し暴走セッションへシグナル送信可 | ★130 | GitHub API実在確認 |
| 25 | フックイベントの実時間ダッシュボード | disler/claude-code-hooks-multi-agent-observability | フックイベントをBun/SQLite/WebSocket/Vueで記録し、並行稼働する複数エージェントを横断トレース | ★1,509 | GitHub API実在確認 |
| 26 | レート制限残量の学習型予測 | leeguooooo/claude-code-usage-bar | 5時間/7日のレート制限残量に加え、過去の消費パターンからウィンドウ終了時点を予測するステータスライン | ★343、テスト320本超、CPU使用率1%未満 | GitHub API実在確認 |
| 27 | AGENTS.mdでサンドボックス変数を自己言及的に保護 | openai/codex | CODEX_SANDBOX_*環境変数を変えるなという指示を、それを読むCodex自身が実行中である前提で記述 | AGENTS.md 322行 | GitHub API実在確認(raw取得) |
| 28 | AGENTS.mdを1行に圧縮しskillsへ詳細を逃がす | sveltejs/svelte | AGENTS.mdからは「パフォーマンス調査を頼まれたら`.agents/skills/performance-investigation`を使え」の1行のみ指示 | AGENTS.md 11行 | GitHub API実在確認(raw取得) |
| 29 | hooksでSkillを強制発火 | diet103/claude-code-infrastructure-showcase | skill-rules.json(プロンプト/ファイルパターン→発火すべきSkill)をhooksが評価し強制注入 | ★9,989 | GitHub API実在確認 |
| 30 | スマホから危険操作を承認 | Imolatte/claude-cli-telegram | Telegramボットの承認タップをtmux send-keysで実ターミナルへ直接注入し、セッションを殺さず承認 | ★31 | GitHub API実在確認 |
→ 次のSection 2では、この表の中でも「コーディング以外」に使っている4人の入力・出力を1人ずつ詳しく見る。
🧑💼 コーディング以外に使っている人たち
このセクションの3点
① 研究者・個人開発者・会社員の4人を実名で確認した。全員「何を入力し、何を出力させたか」がはっきりしている
② 効果は数字で出ている(論文コードの98%以上を生成、12日で家計アプリ完成、経費精算30分→5〜10分、日記から46件のIssue自動生成)
③ 4人とも設計判断はAIに委ねず、自分の手元に残している
研究者 Kevin Yang — 論文コードの98%以上をClaude Codeが生成
研究者Kevin Yangは、直近の学術論文でコードの98%以上をClaude Codeが生成したと自身のSubstackで明言している。ワークフローは5段階に分かれる。まずプロジェクト全体の計画を、データクレンジング・複数の研究課題ごとの分析・出力生成に分割する。次に各スクリプトを逐次生成し、各ステップの後に必ずレビューと検証を挟む。バージョン管理はGitとLazygitで行い、いつでもロールバックできる状態を保つ。データはParquetファイルで保存し、parquet-toolsコマンドで中身を検査する。
入力は生データ(CSV等)と分析方針、出力は検証済みの分析スクリプト・Parquet中間ファイル・最終的な論文用の図表とコードである。セットアップはiPadでClaude Codeを「第三の画面」として使い、Cursorでレビューと軽微な編集、Jupyter Notebookで探索を行う。本人は「もう手作業のコーディングには戻らない」と述べ、成功の鍵は事前の計画立案とコンテキストウィンドウの能動的管理にあるとしている。
個人開発者 Kevin Kinnett — 家計ダッシュボードを12日でセルフホスト
個人開発者Kevin Kinnettは、収入・支出・予算・純資産・投資・負債・キャッシュフロー予測・請求書管理までを含む家計管理アプリを、React 19・Node.js 22・PostgreSQL・Docker・Windmill(スケジュールジョブ)・Tailscale(安全なリモートアクセス)で構築した。規模はTypeScript約45,000行・27ページ・30 APIルート・40以上のDBテーブル。初コミットから動く状態まで12日・132コミットだった。
入力はアプリの要件と各機能の仕様、出力はDBマイグレーション・APIルートの雛形・UIコンポーネント・CRUD操作の反復部分のコードである。アーキテクチャ判断・機能の優先順位・設計方針は本人が保持し続けた。本人の言葉を借りれば「Claude Codeが変えたのは速度であって、責任ではない」。機密性の高い財務データを扱うため、意図的にセルフホストを選んでいる。
みのるん(KDDIアジャイル開発センター)— 家計簿・経費精算・勤怠まで一括処理
KDDIアジャイル開発センター所属のみのるん氏は、業務でAIエージェント開発を行う一方、個人の日常業務にもClaude Codeを常用している。家計簿はマネーフォワードのCSVエクスポートをClaude Codeに読み込ませて分析する運用に置き換え、月次支出分類・前年同月比・長期資産シミュレーション・退職後シミュレーションまで行う。業務側では、Gmailの領収書メールとクレジットカード明細を突合させて経費精算を自動化し、所要時間を30分から5〜10分に短縮した。月次出社日数の自動カウント、プロジェクト別に分類した工数レポートの作成、登壇依頼メールからのスプレッドシート抽出も行い、EventBridgeとBedrockを組み合わせたサーバーレス構成でGmailのスター付きメールを1日3回チェックしてSlack通知する仕組みも構築した。
入力はCSV・領収書メール・カード明細・カレンダー・登壇依頼メールといった業務データ、出力は家計/経費レポート・工数レポート・Slack通知である。運用の基盤としてPLAN.md(音声入力の脳内ダンプ)・SPEC.md(対話で仕様を固める)・TODO.md(セッションをまたぐタスク管理)・KNOWLEDGE.md(再発防止の知見蓄積)の4ファイルを使い分け、複数ターミナルでClaude Codeを並列起動している。
@tobaru-hideyasu — 日記をGitHub Issue化する8つの独自スキル
個人開発者の@tobaru-hideyasu氏は、Obsidianに書いた日記をGitHubのプライベートリポジトリに同期し、8つのカスタムスキルで運用している。/taskスキルは「2月の日記をスキャンして実行可能な項目をGitHub Issue化して」という指示で、1ヶ月分の散在した日記から約50件のタスクを抽出し、重複除去と関連グループ化を経て46件のIssueに優先度P0〜P3・領域タグ・種別タグを付与した。/weekly-reviewは7日分の日記を仕事・開発・家族・健康等の観点で要約するが、AIの言い換えを避け原文の言葉を保持する方針を貫く。
入力は日記本文(Obsidian経由)、出力はGitHub Issue・週次レビュー・ニュース収集結果である。加えて/coach(朝の対話で健康シグナルを検知し軌道修正を促す)・/reflect(本人の言葉を引用して感情パターンを指摘する)・/sparring(3つの視点でアイデアを批判的に検証する)という3つの対話パートナー型スキルも定義している。結果として3本の週次レビュー・70件のニュース収集・2本のGitHub Actionsが自律稼働するようになった。
| 誰 | 入力しているデータ | 出力 | 効果 |
|---|---|---|---|
| Kevin Yang(研究者) | 生データ(CSV等)と分析方針 | 検証済み分析スクリプト・Parquet中間ファイル・論文図表 | コードの98%以上をClaude Codeが生成 |
| Kevin Kinnett(個人開発者) | アプリの要件と機能仕様 | DBマイグレーション・APIルート雛形・UIコンポーネント | 12日・132コミットでセルフホスト家計アプリが稼働 |
| みのるん(KDDIアジャイル開発センター) | CSV・領収書メール・カード明細・カレンダー | 家計/経費レポート・工数レポート・Slack通知 | 経費精算が30分から5〜10分に短縮 |
| @tobaru-hideyasu(個人開発者) | 日記本文(Obsidian経由) | GitHub Issue・週次レビュー・ニュース収集 | 1ヶ月分の日記から46件のIssueを自動生成 |
4人に共通すること
4人とも、AIに判断そのものを委ねてはいない。何を作るか・どう優先順位をつけるか・どこまで自動化するかという設計は常に本人が握り、Claude Codeは計画を実行に移す速度を上げる役割に限定されている。Kevin Kinnettの「速度を変えるが責任は変えない」という言葉が、4人全員に当てはまる。
→ 次のSection 3では、企業がClaude Codeにいくら払い、何をしているかを見る。
🏢 企業はいくら払って、何をしているか
このセクションの3点
① Claude Code Enterpriseの公式実測は「1人1日約13ドル」「月150〜250ドル」「90%のユーザーは1日30ドル未満」
② 日本企業ではCyberAgent・DeNA・freee・LayerX・Mercariが、いずれも数字付きで事例を公表している
③ LayerXはサブエージェントを3段に分けてGitHub Actions上で本番運用、DeNAは職種の壁を越えた活用で仕様→プロトタイプを2〜4週間から1〜2日に短縮した
公式実測値
90%はこの額未満に収まる
出典: Claude Code公式ドキュメント(https://code.claude.com/docs/en/costs)ほか。上2本は1人1日あたり、下2本は1人1ヶ月あたりの金額(いずれも米ドル)
| 企業 | やったこと | 規模・数字 | 出典 |
|---|---|---|---|
| CyberAgent | 開発AIエージェント予算を全額会社負担 | エンジニア約1,200名に月額200ドルを支給、年間約4億円を投資決定。過去のGitHub Copilot実績ではエンジニアリング業務時間の約40%をAIが代替(18ヶ月実測) | cyberagent.co.jp/news/detail/id=32077 |
| DeNA | PdM・デザイナーが職種の壁を越えて直接Claude Codeを使う体制に切り替え | 仕様確定から動くプロトタイプまでのサイクルが2〜4週間から1〜2日に短縮 | engineering.dena.com/blog/2026/07/claude-code-team-collaboration/ |
| freee | Rails 7系から8.1へのフレームワークアップグレードにClaude Code Skillsを活用、全社標準ツール化 | 2026年2月頃から全社導入、新卒エンジニアが「AIモブプロ」でチームのAI活用促進を主導 | developers.freee.co.jp/archive/category/Claude%20Code |
| LayerX | claude-code-base-actionでABAC(属性ベースアクセス制御)の設定ファイルを部署データから自動生成するマルチエージェント構成を構築 | GitHub Actions上で100以上のグループ設定を本番運用 | tech.layerx.co.jp/entry/config-code-generation-with-claude-code-base-action |
| Mercari | PdM向けエージェント「mercari-pm-agent」を構築。Notion・Slack・BigQuery/Looker(Socrates)・Figmaの4つのMCPサーバーを並列でクエリ | 課題発見→データ収集→PRD作成→UIモックアップまでを1セッションで自動化 | engineering.mercari.com/en/blog/entry/20260427-mercari-pm-agent-design-automating-the-pm-workflow-with-claude-code-skills-and-mcp/ |
LayerX — ABAC設定を生成する3段のサブエージェント構成
- 1
Step 1
abac-departments-retriever
部署データを取得する - 2
Step 2
abac-config-member-conditions-generator
取得した部署データから、メンバーの所属条件の設定を生成する - 3
Step 3
abac-config-group-generator
メンバー条件をもとにグループ設定を生成する。この構成で100以上のグループ設定を本番運用している
DeNA — 職種の壁を越えた活用と「geniハーネスくん」
DeNAでは、プロダクトマネージャー(PdM)がミーティングメモやSlackの議論からNotionのPRD(製品要件文書)を自動更新し、GitHubチケットも自動生成する運用に切り替えた。デザイナーはラフ仕様からUI/UXモックを作成し、Figmaのデザインデータ(オートレイアウト適用済み)に変換、静的なデザインでなくインタラクティブなプロトタイプをエンジニアと共有して「実装可能か」を直接相談できるようになった。結果、仕様確定から動くプロトタイプまでのサイクルが2〜4週間から1〜2日に短縮された。週1回、職種をまたいでAI活用の成果や試行錯誤を共有する場も設けている。
加えてDeNAは、セッションログや~/.claude配下のメモリファイルが自動蓄積されても誰も見返さないという課題に対し、その中身(KPI・日次活動量・プロジェクト分布)を可視化し、CLAUDE.mdの改善案やセッションパターンから再利用可能な「自己知識スキル」を自動生成する社内アプリ「geniハーネスくん」を内製した。個人情報を除去したハーネスをチームメンバー間で共有できる仕組みで、暗黙知が異動や離職で失われるリスクに対処している。
→ 次のSection 4では、システムプロンプト自体を書き換えるOutput Stylesを見る。
🎭 Output Styles — 人格そのものを差し替える
このセクションの3点
① Output Stylesは、指示を追加するCLAUDE.mdとは別に、Claude Codeのシステムプロンプトそのものを書き換える機構である
② 組み込みの3種類と独自Markdownを使うと、実装の進め方だけでなく、説明のしかたや非エンジニア向けの人格まで切り替えられる
③ ただしスタイルが効く範囲には境界がある。サブエージェントには適用されず、forkだけが親のスタイルを継承する
まずCLAUDE.mdとの違いを分けておく。CLAUDE.mdは、システムプロンプトの後にユーザーメッセージとして追加される指示ファイルだ。対してOutput Stylesはシステムプロンプトそのものを書き換える。同じ「振る舞いを変える」設定に見えても、置かれている層が違う。
この違いは、既存の開発規約へ補足を足すのか、Claude Codeの説明のしかたや役割そのものを変えるのか、という使い分けになる。公式ドキュメントでは独自スタイルを.claude/output-styles/にMarkdownで置けるとしている。出典: https://code.claude.com/docs/en/output-styles
組み込みの3種類は、作業の分担を変える
| スタイル | Claude Codeの振る舞い | 人が担う部分 | 向く場面 |
|---|---|---|---|
| Proactive | 確認を挟まず、必要な作業を進める | 目的と完了条件を先に渡す | 実装を続けて進めたいとき |
| Explanatory | 実装上の判断を教育的に解説する | 説明を読み、判断を確認する | 選択肢や理由も追いたいとき |
| Learning | TODO(human) マーカーを残し、人間に一部を実装させる | 指定された箇所を実装しながら進める | 実装を共同作業として学びたいとき |
組み込みのProactiveは確認を重ねずに作業を進める。Explanatoryは、なぜその実装判断をしたかを教育的に説明する。LearningはTODO(human)という印を残し、人間が実装する部分を意図的につくる協働モードである。単に返答の口調を変えるだけではなく、作業を誰がどこまで担うかにも手を入れる。
さらにkeep-coding-instructionsを外すと、コーディング向けの指示を保たないスタイルにできる。公式資料では、ライティングアシスタントやデータアナリストのような、非エンジニアリング用途の人格に切り替える例が示されている。
実物は、内容を変えずに伝え方を変えている
hesreallyhim/awesome-claude-code-output-styles-that-i-really-likeには、Output Stylesの説明自体を異なる語り口で伝える3つの実例がある。tabloid-journalist.mdはタブロイド紙の煽り見出し調、zen-master.mdは禅僧の一人称、technical-evangelist.mdは標準的な技術解説調で書かれている。
ここで重要なのは、3つが別々の機能を説明しているのではないことだ。技術的な正確性を保ったまま、同じ内容を伝え方だけ変えるデモになっている。Output Stylesが追加の指示ではなく、エージェントの人格そのものを差し替える別レイヤーだという点が、この並びではっきりする。出典: https://github.com/hesreallyhim/awesome-claude-code-output-styles-that-i-really-like
4つの設定は、同じ場所を変えていない
| 仕組み | 主に変えるもの | 置き場所・単位 | 適用範囲 | 使いどころ |
|---|---|---|---|---|
| CLAUDE.md | プロジェクト固有の指示 | 指示ファイル | システムプロンプト後に追加されるユーザーメッセージ | 構成、コマンド、開発上の約束を渡す |
| スキル | 特定の仕事の手順と参照情報 | スキルごとのファイル | 呼び出した仕事 | 決まった作業の型や手順を再利用する |
| Output Styles | システムプロンプトと人格・説明のしかた | .claude/output-styles/のMarkdown | 現在の親セッション。forkは親のスタイルを継承する | 実装の進め方、語り口、非エンジニア用途を切り替える |
| サブエージェント | 委譲する作業の担当 | 個別に起動するエージェント | 親のOutput Stylesは適用されない | 独立した調査や実装を任せる |
適用範囲を取り違えない。Output Stylesはサブエージェントには適用されない。一方、forkは親のスタイルを継承する。親の語り口や役割を分けたつもりでサブエージェントを起動しても、その設定だけでは渡らない。
→ 次の章では、出力の人格ではなく、Claude Codeがイベントごとに動くフックの実例と罠を見る。
🪝 フックの珍しい使い方と、非自明な罠
このセクションの3点
① `Notification` フックには4種類の matcher があり、通知先を細かく分けられる
② WSL2からPowerShellを直接叩き、前面にあるウィンドウなら通知しない実装が実在する
③ `SessionEnd` フックはサブエージェントごとに個別発火する。並列で走らせると通知が爆発する
idle_prompt(入力待ち)、permission_prompt(権限確認待ち)、agent_completed(バックグラウンドagentの完了。v2.1.198以降)、agent_needs_input(バックグラウンドagentが入力待ち)の4つで、それぞれ別のスクリプトを紐づけられる。| matcher | 発火タイミング | 向いている用途 |
|---|---|---|
| idle_prompt | セッションが入力待ちで止まった時 | 離席中に「返事を待っている」ことを知らせる |
| permission_prompt | ツール実行の権限確認が出た時 | 承認待ちを見逃さないようにする |
| agent_completed(v2.1.198以降) | バックグラウンドで走らせていたagentが完了した時 | 並列実行しているタスクの完了検知 |
| agent_needs_input | バックグラウンドagentが入力待ちになった時 | 放置しているサブタスクの停止を検知する |
WSL2からPowerShellを直接叩く実装
SessionEndフックの罠 — サブエージェントごとに個別発火する
・`SessionEnd` フックは、メインセッションが終わった時だけでなく、起動した<strong>サブエージェントの終了1つひとつに対しても個別に発火</strong>する(congmnguyen/claude-code-wsl2-setupが原因付きで文書化)
・これに気づかずSessionEndフックに通知処理を書いたまま、複数のサブエージェントを並列で走らせると、タスクが終わるたびに通知が積み上がる
・対策は用途を分けること。全体の完了だけを知りたいなら `Notification` の `agent_completed` を使い、`SessionEnd` はセッション単位の後始末(ログ書き出し等)に限定する
→ 次のSection 6では、フックの中でも `Stop` フックを使って終了そのものを乗っ取り、同じ命令を流し込み続ける「Ralph Wiggum」という技法を見る。
🔁 Ralph Wiggum — 終了を横取りして命令を流し続ける
このセクションの3点
① 由来はGeoffrey Huntleyの命名「Ralphはただのbashループ」
② Anthropic公式が `plugins/ralph-wiggum` として実装を配布している
③ `Stop` フックで終了を横取りし、完了合言葉が出るまで同じ命令を流し込み続ける
Anthropic公式実装がリポジトリ内にある
plugins/ralph-wiggum にある。サードパーティの実験ではなく、公式が自分のリポジトリの中でこの技法をプラグインとして配布している。仕組み — Stopフックで終了を横取りする
/ralph-loop "タスク" --completion-promise "DONE" --max-iterations 50タスク文と、完了を示す合言葉、そして上限回数を指定する。
派生実装
| リポジトリ | ★ | 特徴 |
|---|---|---|
| mikeyobrien/ralph-orchestrator | 3,094 | 同技法のスタンドアロン実装。Anthropic公式Ralphプラグインのドキュメントからも引用されている |
| frankbria/ralph-claude-code | 9,590 | Bash+tmuxで構築。exit検知・レート制限・サーキットブレーカーで無限ループとAPI浪費を防ぐガードレールを持ち、テストが75本超ある |
完了条件を間違えると、トークンを溶かしたまま回り続ける
・この仕組みは「終わったと自己申告するまで繰り返す」だけなので、完了合言葉が出る条件をあいまいに書くと、タスクが実質終わっていても合言葉が出ず、無限に近い回数ループする
・`--max-iterations` は事故を止める最後の壁である。上限を指定しない、または大きすぎる値にすると、ループがそのままトークン消費とAPI課金に直結する
・frankbria/ralph-claude-codeがexit検知・レート制限・サーキットブレーカーを別途実装しているのは、公式のmax-iterationsだけでは足りない事故(ハング・レート制限超過)を想定しているため
→ 次のSection 7では、こうしたループやサブエージェントの動きを外から観察・可視化するツール群を見る。
👁️ 見えないものを見る — 監視と可視化のツール
このセクションの3点
① Claude Codeのセッションは、動いている間は中で何が起きているか外から見えない。ここに挙げる4つは、それぞれ違う角度からその中身を可視化する個人開発のOSS。
② トークン消費を具体的なメッセージまで遡れるもの、暴走セッションにシグナルを送って止められるもの、フックイベントを実時間で追えるもの、レート制限の着地を学習して予測するもの。
③ 全てGitHub APIで実在を確認したもののみ挙げる。スター数は研究ファイルに記載がある実数のみ記す。
lookfree/cc-harness
ライブグラフ・デスクトップアプリ
stefanprodan/cctop(★130)
top風TUI・ゼロ依存Bun
disler/claude-code-hooks-multi-agent-observability(★1,509)
Bun / SQLite / WebSocket / Vue
leeguooooo/claude-code-usage-bar(★343)
PyPI配布・テスト320本超
おまけ
kumamaki/Claude-Code-Personalities(★20)は毛色が違う。実務向けではなく、30種類以上の顔文字(kaomoji)がClaudeの状態にリアルタイムで反応するステータスラインで、エラーが積み重なるとフラストレーションがエスカレートし、最終的に卓袱台をひっくり返す表情になる。純Rustで描画2ミリ秒未満、単一バイナリという作り込み自体は本気である。
→ 次のSection 8では、AGENTS.md の実物を行数で比較する。
📜 AGENTS.md の実物 — 11行のSvelteと322行のCodex
このセクションの3点
① 実在確認した4つのAGENTS.mdは11行から322行まで幅があるが、長さだけでは役割を判断できない
② Codexの自己言及、Svelteの外部スキル参照、Temporalのペルソナ、GooseのIssue管理と、埋め込むものがそれぞれ違う
③ AGENTS.mdはLinux Foundation傘下の業界標準になり、CLAUDE.mdへのシンボリックリンクで一元管理する実例もある
AGENTS.mdは、エージェントにリポジトリ固有の仕事のしかたを渡すMarkdownファイルである。OpenAI Codex、Amp、Google Jules、Cursor、Factoryなど複数のツールベンダーの協業から生まれ、現在はLinux Foundation傘下のAgentic AI Foundationがスチュワードシップを持つ。任意の見出し構成で書けるため、実物の差は単なる行数よりも、何をエージェントの行動規則として置くかに表れる。出典: https://agents.md/
研究時点でmainブランチのAGENTS.mdを直接取得して確認した行数。
322行のCodexは、読んでいる主体まで前提にする
openai/codexの322行のAGENTS.mdは、Rustワークスペースのcodex-rs部分に向けた指示である。珍しいのは、CODEX_SANDBOX_NETWORK_DISABLED_ENV_VARとCODEX_SANDBOX_ENV_VARを絶対に変更しないよう命じている点だ。この指示を読むのが、まさにそのサンドボックス内で動くCodex自身であることを前提にした、自己言及的な書き方になっている。
また、特定のclippy lintへの準拠と、位置引数のリテラルに/*param_name=*/コメントを付ける独自lint argument_comment_lintも置かれている。一般的な規約だけでなく、このリポジトリ固有の検査まで渡している例である。出典: https://github.com/openai/codex
11行のSvelteは、詳細をツール非依存の場所へ逃がす
sveltejs/svelteのAGENTS.mdは11行と短い。本体の指示は.claude/skills/ではなく、ツールに依存しない.agents/skills/performance-investigation/にある。AGENTS.mdには、パフォーマンス調査を頼まれたらperformance-investigationスキルを使う、という参照を1行で置き、詳細は別ファイルに任せている。
短いのは、指示が少ないからではない。入口だけをAGENTS.mdに残し、詳しい手順を外へ分けているためである。出典: https://github.com/sveltejs/svelte
104行のTemporalは、最初に人物像を与える
temporalio/temporalの104行は、冒頭から2人称でエージェントへペルソナを与える。「あなたはtemporalプロジェクトで働く経験豊富な開発者であり、分散システム、データベースエンジン、スケーラブルなプラットフォームを背景に持つ」という書き出しだ。
続くCore Mandatesでは、ライブラリの存在を決めつけずにgo.modを確認するよう求める。手順だけでなく、調査するときの立場と慎重さを先に指定している。出典: https://github.com/temporalio/temporal
121行のGooseは、Issueの状態遷移を仕事の前提にする
block/gooseの121行は、コーディング規約ではなくIssue管理ワークフローをAGENTS.mdへ埋め込んでいる。PRの前に対応IssueがReady状態か確認し、Inbox、Needs info、Accepted / designのIssueは実装せず、まず議論の解決を優先する。
GitHub Projectsボードの状態遷移を、エージェントが実装に入る条件として明文化している。コードを書く前の仕事の流れまで、行動規則に含める例である。出典: https://github.com/block/goose
| リポジトリ | 行数 | 何を置いたか | 際立つ点 |
|---|---|---|---|
| openai/codex | 322行 | サンドボックス変数、lint、独自規約 | 読んでいるCodex自身を前提にした自己言及的な指示 |
| sveltejs/svelte | 11行 | 外部スキルへの参照 | .agents/skills/へ詳細を逃がすツール非依存の構成 |
| temporalio/temporal | 104行 | ペルソナとCore Mandates | 2人称で背景を与えてから調査上の注意を渡す |
| block/goose | 121行 | Issue管理ワークフロー | Projectsの状態遷移を実装の前提にする |
複数のエージェントツールを併用する場合、同じ指示を二重に保つ必要はない。個人開発者tatsukiは、AGENTS.mdをCLAUDE.mdへのシンボリックリンクにし、Claude CodeとCodex CLIが同じ指示ファイルを読む構成にしている。出典: https://note.com/nobel/n/nb87d014c8a8a
📎 結論 — 長さではなく、詳細の置き場所を見る
「長ければ良い」でも「短ければ良い」でもない。Anthropic社内のCLAUDE.mdは数千行に及ぶ一方、SvelteのAGENTS.mdは11行である。差をつくるのは、詳細を同じファイルに抱えるか、別ファイルへ逃がすかだ。
Codex、Temporal、Gooseのように、ひとつのAGENTS.mdへリポジトリ固有の規約や仕事の流れをまとめる形もある。Svelteのように入口だけ残してスキルへ分ける形もある。必要なのは行数の目標ではなく、エージェントが作業時に参照すべき情報が、迷わず届く置き方である。
→ 次の章では、指示ファイルの外へ分けたときに使える、スキルの変わり種を見る。
🧩 スキルの変わり種 — 教育理論・デザイン知・本物のブラウザ
このセクションの3点
① スキルは「コーディング支援の延長」に留まらない。教育理論をそのままエージェント設計に落としたもの、デザインの暗黙知を明文化したもの、今開いている本物のブラウザに接続するものまである。
② ここに挙げる8個は全て、キュレーションリポジトリ hesreallyhim/awesome-claude-code の中身を実物READMEまで読んで確認したもの。
③ それぞれ「なぜ珍しいか」を1文で添える。星数は研究ファイルに記載がある実数のみ記す。
Li-Evan/Bloom
教育理論のスキル化
bitjaru/styleseed(★872)
デザインの暗黙知を明文化
educlopez/ui-craft(★251)
採点可能・反証可能なデザイン批評
EndeavorYen/chrome-cdp-ex(★11)
今開いている本物のブラウザに接続
SFKislev/Flue(★65)
MCPでもcomputer useでもない第3の道
oubakiou/mdxg-redline
人間レビューを構造化データの往復にする
connect-src 'none'を強制し、文書の内容が外部に一切送信されない。なぜ珍しいか: 「AIの成果物に人間がフィードバックする」工程を、チャットではなく構造化データの往復として設計している点。Imolatte/claude-cli-telegram(★31)
承認をターミナルへ直接注入
tmux send-keysで実際のターミナルのプロンプトに直接キー入力として注入される。セッションを終了させず、文脈も失わずにスマホから承認できる。なぜ珍しいか: 承認を別チャンネルのAPI応答にせず、既存のターミナルセッションへの入力注入として実装している点。diet103/claude-code-infrastructure-showcase(★9,989)
hooksでSkillsを強制発火させる
skill-rules.json(プロンプトやファイルパターンから、発火すべきSkillを引くマッピング)を評価して強制的にSkillを注入する仕組み。6ヶ月の実プロジェクト運用から生まれ、setup.tsのウィザードが導入後に8項目のヘルスチェックを自走実行して自己検証する。なぜ珍しいか: 「本来は自動判断に任せる機能」であるSkillsを、hooksという決定的な仕組みで上から強制している点。→ 次のSection 10では、星が10万ついた新しいリポジトリを疑う。
⚠️ 星が10万ついた新しいリポジトリを疑う
このセクションの3点
① 作成4ヶ月強で★10万超(1日800★超のペース)のリポジトリが実在する。説明文の書き方に共通パターンがある
② 断定はできない。作成日・増加ペース・説明文のパターンという状況証拠であり、確定的な証拠ではない
③ 人力キュレーションリスト(awesome-claude-code)が「originality重視・マーケ排除」を掲げているのは、この種の汚染への対抗手段
この記事のためにGitHub検索 q=codex+cli を回すと、上位に星の数が異常なリポジトリが並ぶ。ここではその実例と、疑う根拠、読者自身が判定するためのチェック手順をまとめる。星の水増しを断定する記事ではない。断定できる証拠は今回の調査では取得できなかった。
実例 — 作成日と増加ペース
| リポジトリ | ★数 | 作成日 | 増加ペースの目安 |
|---|---|---|---|
| Graphify-Labs/graphify | 104,146 | 2026-04-03 | 4ヶ月強で10万超=1日800★超 |
| nexu-io/open-design | 84,457 | 取得できず | 取得できず |
| Egonex-AI/Understand-Anything | 77,919 | 取得できず | 取得できず |
1日800★超というペースは、真に爆発的に伸びたOSSプロジェクトでも稀である。3件とも、GitHub検索で「Claude Code」「Codex」関連のキーワードを入れた時に上位に出てくる点が共通している。
共通パターン — 説明文の書き方
この系統のリポジトリに共通するのが、説明文(description)の書き方である。「Claude Code, Codex, Cursor, Gemini CLI, OpenCode, Antigravity...」のように、話題のAIコーディングツール名を判で押したように羅列する。1つのツールに絞った具体的な説明ではなく、検索でヒットしやすいキーワードを並べているように読める。
断定は避ける。今回確認できたのは「作成日が新しい」「増加ペースが速い」「説明文がバズワード羅列型」という3つの状況証拠であり、星購入やボットによる水増しを確定する証拠ではない。急成長したOSSが実在する以上、この3条件だけで個別リポジトリを「不正」と断定するのは早計である。ここでは「疑いが強い」という書き方にとどめる。
読者が自分で判定するためのチェック手順
・作成日を見る — リポジトリのcreated_atを確認し、星数との比率で1日あたりの増加ペースを計算する
・1日あたりの増加ペースを計算する — 数百★/日を大きく超える場合は疑いの目を持つ
・説明文がバズワード羅列かを見る — 複数の競合ツール名を並べただけの説明文は要注意
・実際にコードを読んで動くか確認する — READMEの見た目だけで判断せず、中身が説明と一致しているかを見る
人力キュレーションという防波堤
この記事の他の章で引用してきた hesreallyhim/awesome-claude-code のような人力キュレーションリストは、「originality(独自性)を重視し、マーケティング目的の掲載を排除する」という方針を掲げている。星数だけを基準にリポジトリを評価すると、この章で見たような水増しの疑いが強い案件を拾ってしまう。人が中身を読んで選ぶキュレーションは、その汚染に対する防波堤として機能している。
→ 次のSection 11では、ここまでの実例をふまえて「どれから入れるか」を導入コストの低い順に並べる。
🧭 どれから入れるか — 導入順の提案
このセクションの3点
① ここまで見た実例を、導入コストが低い順に6段階で並べる
② 全部入れる必要はない。今困っていることに対応する1つだけ入れればよい
③ この記事で確認できなかったことも、最後に正直に列挙する
ここまで、フックの珍しい使い方から星の水増しの疑いまで、実在確認したものだけを見てきた。最後に、読者が明日から動けるように、導入コストが低い順に並べ直す。設定ファイルだけで終わるものから、リスクの理解が要るものまで段階が分かれている。
- 1
STEP 1・設定ファイルのみ
Notificationフックのmatcherを使い分ける
追加のツール導入は不要。idle_prompt/permission_prompt/agent_completed/agent_needs_inputの4種を使い分けるだけで、通知の粒度が上がる。Section 5で見た congmnguyen/claude-code-wsl2-setup の実装が参考になる。 - 2
STEP 2・Markdown1枚
Output Stylesを1枚書いてみる
CLAUDE.mdやスキルとは別レイヤーで、システムプロンプトそのものを書き換える機能。Section 4で見た tabloid-journalist.md や zen-master.md のように、既存の説明文を口調違いで書き直すだけでも仕組みが体感できる。 - 3
STEP 3・ツール1個導入
cctop か usage-bar を入れて、まず自分の消費を見る
改善する前に現状を見る段階。Section 7で見た stefanprodan/cctop(★130)か leeguooooo/claude-code-usage-bar(★343)を入れ、自分のセッション数・レート制限の残量・コンテキストサイズを可視化する。 - 4
STEP 4・仕組み化
skill-rules.json方式でスキルを強制発火させる
スキルが期待通りに自動発火しない問題への対処。Section 9・Section 7で触れた diet103/claude-code-infrastructure-showcase(★9,989)のskill-rules.json(プロンプト/ファイルパターン→発火すべきSkillのマッピング)をhooksで評価する方式が実例として存在する。 - 5
STEP 5・リスク理解が必要
Ralphループをmax-iterations付きで試す
Section 6で見た通り、Stopフックで終了を横取りし同じプロンプトを流し込み続ける技法。--completion-promiseと--max-iterationsを必ず設定し、完了条件を誤ると無限に回ってトークンを溶かす危険性を理解した上で試す段階。 - 6
STEP 6・運用への組み込み
GitHub Actionsでヘッドレス実行に出す
手元のセッションから、CI・cronでの無人実行へ。Section 3・Section 7の周辺情報で触れた anthropics/claude-code-action(公式)のように、Issue/PRで@claudeにメンションして委任する形が最も導入コストが低い入り口になる。
まとめ
全部入れる必要はない。今困っていることに対応する1つだけ入れる。通知がうるさいなら STEP 1、伝え方を変えたいなら STEP 2、自分の消費量が分からないなら STEP 3、それだけで十分なことが多い。
この記事で確認できなかったこと
実在確認できたものだけを書く、という方針で進めてきたが、以下は方向性だけ確認でき、詳細や一次ソースまでは今回の調査時間内で特定できなかった。
| 項目 | 確認できなかった内容 | 状況 |
|---|---|---|
| Agent Teams | 手動サブエージェント起動が減ったという言及の一次ソース | DeNAエンジニアブログ経由の二次情報のみで、Anthropic自身の一次ドキュメントは未特定 |
| Routines / Scheduled Tasks | 公式ドキュメントの直接URL | 複数の二次情報経由での確認にとどまり、公式ページのURLは特定できず |
| Claude Agent SDK | 非コード領域(法務・金融・カスタマーサポート)での具体的な実装例と数値 | 想定用途としての言及は確認できたが、方向性のみで詳細未検証 |
| 一部リポジトリのスター数 | gstack・AB Method・RIPER Workflow・FlyCrys等の★数 | GitHub API未認証のレート制限(60req/hour)を使い切ったため未取得。名前・URL・内容の実在は確認済み |
→ 以上、Claude Code / Codex CLI の実在確認した使われ方カタログを終える。