Agentic Conding
※ まだメモ書きです
基本構造
- Issue:PR = 1:* ( 1つのイシューから複数のPR(プルリクエスト)が作られる)
- PR:branch = 1:1 1つのPR → 1つのフィーチャーブランチ(とする!)
- branch:agent = 1:1 1つのブランチ → 1つの担当エージェント
実際の作業フロー
イシュー(課題・要求)
├── PR #1 → フィーチャーブランチA → エージェントA
├── PR #2 → フィーチャーブランチB → エージェントB
└── PR #3 → フィーチャーブランチC → エージェントC
エージェント体制
オーケストレーション体制
リーダーエージェント(管理者)
- イシューの要件と各フィーチャーブランチの作業内容の整合性チェック
- 各PRのレビューと統合判断
ワーカーエージェント(実作業者)
- 個別のフィーチャーブランチでの実装作業
- 割り当てられたタスクの完了
専門化されたエージェント体制
単一のエージェントが全ての作業を担当するのではなく、役割に応じて専門化されたエージェントを配置する
- それぞれ専用に特化したCLAUDE.mdで設定
- 検索するドキュメントも変わってくる
- MCP構成も専用になる? 紛らわしいMCPを複数搭載すると取り違えそう
- 要件定義エージェント:要件の分析と整理を担当
- 設計エージェント:システム設計を担当
- コーディングエージェント:実装作業を担当
⚠️ 注意: これは実験段階のメモです。実際の検証はまだ行っていません。
背景・課題
現在の問題
Claude Codeを使用してローカルで開発作業を行う際、以下の課題が発生している:
- Claude CodeがPRを作成してくれるが、なぜその実装をしたのかの背景情報がGitHub上に残らない
- 作業過程での判断理由や試行錯誤がローカルにしか保存されず、ほかのメンバー(後日すべてを忘れた自分自身含む)が背景を理解できない
技術的な背景
- Claude Codeの会話履歴は
~/.claude/projects/**/*.jsonl
にローカル保存される - GitHub上のIssueやPRには、Claude Codeの思考過程や判断理由が記録されない
- 既存のClaude Code GitHub Actionsは、GitHub Actions上での実行を前提としており、ローカル実行の履歴は対象外
調査結果
既存事例の探索
GitHub OpsでClaude Codeの行動履歴をIssueに集めた事例を調査したが、以下のような状況だった:
アイディア
- headless mode:
claude -p "<prompt>" --output-format stream-json
でJSON形式の出力が可能 - GitHub CLI:
gh
でIssueにコメントを投稿できる
制約・限界
- claude-code-base-actionはGitHub Actions上での実行が前提で、ローカル実行履歴は対象外
- ローカル実行履歴をGitHub Issueに自動投稿する確立された事例は発見できず
- この分野はまだ未開拓領域と判断される
解決策(仮説)
提案するワークフロー
以下のシンプルなアプローチで課題解決を図る:
- Issue作成: GitHub上で作業内容のIssueを事前に作成
- Claude Code実行: headless modeでClaude Codeに明示的指示
claude -p "Issue #123を見て実装しろ。作業過程と判断理由をそのIssueにコメントとして投稿しろ" --output-format stream-json
- 自動記録: Claude CodeがGitHub CLIを使ってIssue commentに作業履歴を投稿
- PR作成: 実装完了後、PRも作成
この方法の利点
- シンプル: 既存機能のみで実現可能、複雑な追加開発不要
- トレーサブル: Issue上に「なぜこの実装をしたのか」が記録される
想定される技術要素
- Claude Code headless mode (
--output-format stream-json
) - GitHub CLI (
gh issue comment
) - Issue事前作成によるコンテキスト提供
次のステップ
検証予定項目
- Claude CodeがGitHub CLI経由でIssue commentを投稿できるかの確認
- headless modeでの指示内容の最適化
- 作業過程記録の品質評価
期待される効果
- PRレビュー時の文脈理解向上
- コードメンテナンス時の背景情報活用
- Claude Code利用時のトレーサビリティ確保
- チーム開発における透明性向上
すべての許可プロンプトを一括でスキップ
大変効率的ですが、大変危険なので利用は自己責任でお願いいたします。
claude --dangerously-skip-permissions
CLIのオプション一覧
公式ドキュメントはこちら
https://docs.anthropic.com/ja/docs/claude-code/cli-usage
トークン数を挙げるためのワード
https://simonwillison.net/2025/Apr/19/claude-code-best-practices/
下記でよりしっかり考えさせることができる(こともある)とのうわさ。
日本語だと
なのだとか。
https://x.com/millionbiz_/status/1929591134080454665
powershellでモデル一覧を表示
curl.exe "https://api.anthropic.com/v1/models" `
-H "x-api-key: $Env:ANTHROPIC_API_KEY" `
-H "anthropic-version: 2023-06-01"
未処理Issueを取得
gh issue list --label="claude-code" --json number,title,labels,body --jq '.[] | select([.labels[].name] | index("processing") | not)'
処理開始時
~/repositories/public-claude-example$ gh issue edit 1 –add-label “processing”
https://github.com/nakatatsu/public-claude-example/issues/1
処理完了時
プルリクを出すまで。
gh pr create --title "README作成" --body "fixes #1"