クロード・コードを使いこなす:最前線からのエージェント・ベース・コーディングの実践的なヒント
Claude Code
Agentic Codingは、エージェントコーディングのためのコマンドラインツールです。エージェンティックコーディングとは、単なるコード補完やQ&Aではなく、AIにタスクを理解し、ステップを計画し、コーディング関連の作業を行うためのアクション(ファイルの読み書きやコマンドの実行など)を実行する自律性を与えるという考え方を指します。このガイドでは、さまざまなコードベース、言語、環境で Claude Code
効果実証済みの実践的なヒントとトリック。
Anthropic
最近発表されたもの Claude Code
このツールは元々、社内のエンジニアや研究者たちが、より自然な形で、より高度な技術を統合できるようにするための研究プロジェクトとして開発されました。 Claude
モデルは日々のコーディング・プロセスに組み込まれている。
Claude Code
その設計思想は、意図的に低レベルで独断的なものであり、ユーザーに特定のワークフローを強いることなく、オリジナルモデルに近いアクセスを提供する。この設計により、柔軟でカスタマイズ可能、スクリプト可能で比較的安全な強力なツールとなっている。しかし、この柔軟性は、エージェントベースのコーディングツールを初めて使うエンジニアが、自分にとってのベストプラクティスを理解するまで、ある程度の学習時間が必要であることも意味します。
この記事では、これまでに発売された製品のいくつかを紹介する。 Anthropic
社内のチームや外部のエンジニアによって幅広く検証された効果的なモデル。これらの提案は、黄金律や普遍的に適用できるものではありません。出発点として検討し、大胆に実験して、あなたに最適なものを見つけてください。
1.作業環境のカスタマイズ
Claude Code
エージェントベースのコーディングヘルパーとして動作し、文脈情報を自動的にプロンプトに統合する。コンテキストの収集には時間とトークンを消費するが、環境設定を調整することで最適化できる。を理解し、うまく利用する。 CLAUDE.md
文書化は重要な第一歩である。
a. 創造 CLAUDE.md
書類
CLAUDE.md
は特別なファイルである。Claude Code
は、ダイアログが開始されると、その内容を自動的にコンテキストにロードします。そのため、以下の情報を記録する場所として最適である:
- 一般的なbashコマンド
- プロジェクトの中核文書とツール機能の説明
- コードスタイル指定
- テスト実行指示
- コードリポジトリのコラボレーション仕様(ブランチの命名規則、マージとバリアントベースの選択など)
- 開発環境の設定(例
pyenv
使用、該当するコンパイラのバージョン) - プロジェクトにおける特別な行動や、注意を要する警告がある場合
- その他の希望
Claude
長期的な「記憶」情報
CLAUDE.md
文書に必須の書式要件はなく、簡潔で読みやすい文書にすることが推奨されます。例
# Bash 命令
- npm run build: 构建项目
- npm run typecheck: 运行类型检查器
# 代码风格
- 使用 ES 模块 (import/export) 语法,而非 CommonJS (require)
- 尽可能使用解构导入 (例如 import { foo } from 'bar')
# 工作流程
- 完成一系列代码更改后,务必运行类型检查
- 为提高性能,优先运行单个测试,而不是整个测试套件
を設定することができます。 CLAUDE.md
ファイルは複数の場所に置かれる:
- 倉庫ルートディレクトリまたは
claude
コマンドのディレクトリ(最も一般的な使い方)。名前CLAUDE.md
に提出する。git
を設定することで、セッションやチームメンバー間で共有できるようになります(推奨)。ローカルのコンフィギュレーションを共有したくない場合は、コンフィギュレーションにCLAUDE.local.md
組み込む.gitignore
. - うごきだす
claude
コマンドディレクトリの任意の親ディレクトリこれは特にモノレポで役に立つ。これは特にモノレポで役に立つ。例えばroot/foo
ディレクトリでclaude
これはroot
歌で応えるroot/foo
ディレクトリに置かれる。CLAUDE.md
ファイルの両方が自動的にロードされる。 - うごきだす
claude
コマンド・ディレクトリの任意のサブディレクトリ.前の場合とは逆に、サブディレクトリ内のファイルを扱う場合はClaude
サブディレクトリは必要に応じてロードされる。CLAUDE.md
ドキュメンテーション - ユーザーのホームディレクトリ (
~/.claude/CLAUDE.md
).ここでの設定はclaude
セッション
うごきだす /init
コマンドはClaude
が自動的にベースを生成します。 CLAUDE.md
ドキュメンテーション
b. チューニング CLAUDE.md
書類
CLAUDE.md
ファイルは Claude
プロンプトの一部なのだから、一般的なプロンプトと同じように磨くべきだ。よくある誤解は、効果を検証せずに多くのコンテンツを追加することです。時間をかけて実験し、モデルがどの指示に従った方が良いかを確認しましょう。
を手動で編集することができます。 CLAUDE.md
について Claude Code
プレス #
キーを押して、次のコマンドを実行する。Claude
それは自動的に関連する CLAUDE.md
ファイル多くのエンジニアは #
コマンド、ドキュメント、スタイルガイドを文書化する。 CLAUDE.md
変更はコミットに含まれるので、チームメンバーも恩恵を受けることができる。
ある Anthropic
内部的には、時には 即効性向上剤 最適化する CLAUDE.md
文書を作成し、指示の文言を調整する(例えば、「重要」や「必ず」を使用して強調する)ことで、モデルのコンプライアンスを向上させる。
c. マネジメント Claude
でライセンスされているツールのリストです。
デフォルトではClaude Code
ファイルへの書き込み、多くのbashコマンドの実行、以下のコマンドの使用など、システムを変更する可能性のある操作には許可が必要です。 エムシーピー ツールなど。この保守的なデザインはセキュリティを優先しています。あなたはallowlistをカスタマイズして、安全であると確信できるツールを許可したり、簡単に元に戻せる潜在的に安全でない操作(例えばファイル編集など)を許可したりすることができます、git commit
).
ライセンスツールの管理には4つの方法がある:
- セッション中にプロンプトが表示されたら選択する "常に許可".
- アクティベート
Claude Code
使用後/allowed-tools
命令 ライセンスリストにツールを追加または削除します。例えばEdit
ファイルを常時編集できるようにする。Bash(git commit:*)
実行可能git commit
またはmcp__puppeteer__puppeteer_navigate
許容される使用Puppeteer
ナビゲーションのためのMCPサーバー。 - マニュアル編集 項目の下
.claude/settings.json
(チームと共有するためにバージョン管理に含めることが推奨される)、またはユーザーのホームディレクトリの~/.claude.json
. - 利用する
--allowedTools
コマンドラインフラグ 特定のセッションのパーミッションを設定する。
d. 使用する場合 GitHub
インストール gh
コマンドラインツール
Claude
使い方 gh
コマンドラインツールvs. GitHub
課題の作成、プルリクエストの立ち上げ、コメントの閲覧などのためのインタラクションです。もし gh
をインストールするとすぐに GitHub
APIまたは対応するMCPサーバー。Claude
このような交流はまだ可能である。
2. Claude
追加ツールの提供
Claude
はシェル環境にアクセスすることができ、便利なスクリプトと関数のセットを使って、自分でスクリプトを書くようにスクリプトを書くことができる。また、MCPやREST APIを通じて、より洗練されたツールを利用することもできる。
a. Claude
bashユーティリティの使用
Claude Code
はあなたのbash環境を継承するため、すべてのツールにアクセスできる。しかし Claude
ように理解する unix
ツールと gh
あなたのカスタムbashツールについて自動的に知ることはできない:
- 知らせる
Claude
ツールの名称と使用例。 - してもらう
Claude
うごきだす--help
ツールのドキュメントを見る - でよく使われるカスタマイズツールを記録する。
CLAUDE.md
真ん中だ。
b. Claude
MCPの使用
MCP、モデル・コンテキスト・プロトコル(モデル・コンテキスト・プロトコル)、言語モデルが外部のツールやサービスと相互作用できるようにするための仕様である。Claude Code
MCPサーバーとしてもMCPクライアントとしても使用できる。クライアントとして、いくつものMCPサーバーに接続し、そのツールに3つの方法でアクセスすることができます:
- プロジェクト構成(プロジェクト・ディレクトリで実行)
Claude Code
(利用可能な場合)。 - グローバル・コンフィギュレーションでは(すべてのプロジェクトで利用可能)。
- 倉庫
.mcp.json
ファイル(コードベースを使用するすべての人が利用可能)。例えばPuppeteer
歌で応えるSentry
サーバーは.mcp.json
これは、チームのすべてのエンジニアがこれらのツールをすぐに使えるようにするためだ。
MCPを使用する場合、MCPの設定は --mcp-debug
フラグ起動 Claude
設定の問題を診断するのに役立つ。
c. カスタム・スラッシュ・コマンドの使用
ループのデバッグやログ分析など、繰り返しの多いワークフローでは、プロンプトのテンプレートを .claude/commands
フォルダーに入力します。次のように入力すると /
そうすると、これらのテンプレートがスラッシュ・コマンド・メニューに表示される。これらのコマンドを git
他のチームが使用できるように。
カスタム・スラッシュ・コマンドは特別なキーワードを含むことができる。 $ARGUMENTS
これは、コール・コマンドに付随するパラメーターを渡すために使われる。
例えば、自動的に引き出されて修正されるものがある。 GitHub
スラッシュ・コマンドを発行する:
请分析并修复 GitHub issue: $ARGUMENTS。
请遵循以下步骤:
1. 使用 `gh issue view` 获取 issue 详细信息
2. 理解 issue 中描述的问题
3. 在代码库中搜索相关文件
4. 实现必要的代码更改以修复问题
5. 编写并运行测试以验证修复
6. 确保代码通过 linting 和类型检查
7. 创建描述性的 commit 消息
8. 推送代码并创建 PR
记住,所有与 GitHub 相关的任务都使用 GitHub CLI (`gh`)。
上記を .claude/commands/fix-github-issue.md
ファイルが Claude Code
正鵠を得る /project:fix-github-issue
コマンドを実行する。例えば /project:fix-github-issue 1234
を作っただろう。 Claude
同様に、個人的に使用するコマンドを ~/.claude/commands
フォルダに保存し、すべてのセッションで利用できるようにします。
3.一般的なワークフローの実験
Claude Code
特定のワークフローを課さないため、オンデマンドで柔軟に使用できる。この柔軟性により、ユーザー・コミュニティから多くの実績あるモデルが登場している:
a. 調査、計画、規約、提出
これは、さまざまな問題に適用される一般的なプロセスである:
- してもらう
Claude
関連文書、画像、URLを読む.大まかな指示("ロギングを処理するファイルを読む")や特定のファイル名("logging.pyを読む")を与えることができますが、当分の間はコードを書かないように明示的に指示します。- このステップでは、特に複雑な問題については、次のことを考慮する。
Claude
サブエージェントを使用して、詳細を検証したり、遭遇する可能性のある特定の問題を調査したりする。ダイアログやタスクの早い段階でこれを行うことで、多くの場合、効率をあまり犠牲にすることなく、コンテキストの使いやすさを保つことができる。
- このステップでは、特に複雑な問題については、次のことを考慮する。
- してもらう
Claude
特定の問題に対処するための計画策定.think "という単語を使って拡張思考モードをトリガーすることをお勧めする。Claude
選択肢をより完全に評価するための追加計算時間。このシステムには、「考える」<「一生懸命考える」<「もっと難しく考える」<「超思考する」というように、異なるレベルでの思考予算のマッピングが組み込まれている。それぞれのレベルでは、次のようにより多くの思考予算が割り当てられる。Claude
使用する。- このステップの結果が妥当なものであれば
Claude
計画を文書に書き出すか、作成するGitHub
そのため、その後の実装(ステップ3)が期待にそぐわない場合、この状態に戻ることができる。
- このステップの結果が妥当なものであれば
- してもらう
Claude
プログラムを実装するためのコードを書く.これはまた、実現しつつあるプログラムのさまざまな部分の健全性を明示的に検証するよう求める良い機会でもある。 - してもらう
Claude
結果を提出し、プルリクエストを作成する..関連性があれば、次のようなことも可能だ。Claude
更新README
もしかしたらchangelog
今何をしたかを説明する。
ステップ#1と#2は非常に重要です。Claude
多くの場合、あなたはすぐにコーディングの段階に飛びつきます。しかし、より深い思考を必要とする問題については、まず、その問題を解決するために、その問題を解決するために、その問題を解決するために Claude
調査と計画を行うことで、最終的な結果を大幅に改善することができる。
b. テストを書き、提出する。
これは Anthropic
特に、単体テスト、統合テスト、またはエンドツーエンドテストによって簡単に検証できる変更については、社内で高く評価されているワークフローです。テスト駆動開発(TDD)は、エージェントベースのコーディングによってさらに強力になります:
- してもらう
Claude
期待される入出力ペアに基づいてテストを書く.テスト駆動開発が行われていることを明示的に伝えることで、機能がまだ存在していなくてもモック実装を作らないようにする。 - 知らせる
Claude
テストを実行し、失敗することを確認する。.この段階で実装コードを書かないように明示的に指示することは、しばしば役に立つ。 - テストに満足したらしてもらう
Claude
テストコードの送信. - してもらう
Claude
テストに合格するコードを書くそして、テストそのものを変更しないように指示する。伝えるClaude
すべてのテストがパスするまでトライし続ける。通常は何度か繰り返す(コードを書き、テストを実行し、コードを微調整し、またテストを実行する)。- この段階で、実装がテストケースをオーバーフィットしていないことを検証するために、独立したサブエージェントを使うことが必要になることもある。
- コードの変更に満足したらしてもらう
Claude
コードを送信.
(落とす Claude
ビジュアル・モデルやテスト・ケース、その他の期待されるアウトプットのような、反復可能な明確なゴールがあるときに、最高のパフォーマンスを発揮する。テストケースのような期待されるアウトプットを提供することでClaude
変更を加え、結果を評価し、成功するまで段階的に改善することができる。
c. コードを書く、スクリーンショットを比較する、反復する
テストワークフローと同様に、次のようなテストワークフローを作成することもできます。 Claude
視覚的な目標を提供する:
- のために
Claude
ブラウザのスクリーンショットをキャプチャする方法(例えば Puppeteer MCPサーバーそしてiOSシミュレータ MCPサーバまたは、手動でスクリーンショットをコピーし、以下に貼り付ける。Claude
). - のために
Claude
ビジュアル・デザイン案コピー・アンド・ペースト、画像のドラッグ・アンド・ドロップ、または画像ファイルへのパスを指定することで可能です。 - してもらう
Claude
コードでデザインを実装するそして、その結果のグラフをインターセプトし、その結果がデザインと一致するまで繰り返す。 - 満足したらね。してもらう
Claude
コードを送信.
人間のようにね。Claude
の出力は通常、反復の後に大幅に改善される。最初のバージョンはまあまあかもしれないが、2-3回繰り返すと、たいていはもっとよくなる。には Claude
アウトプットを見るためのツールを提供することが、最良の結果を生む。
d. セキュリティYOLOモード
全体を監督したくない場合 Claude
を使用することができます。 claude --dangerously-skip-permissions
パラメータを使うことで、すべてのパーミッションチェックをバイパスし Claude
完了まで作業を中断しない。このモードは、lintバグの修正やサンプルコードの生成などのワークフローを実行するのに適しています。
警告:させる Claude
検証なしに任意のコマンドを実行することは危険であり、データ損失、システム破損、あるいは(プロンプト・インジェクション攻撃などによる)データ漏洩につながる可能性がある。このようなリスクを最小限に抑えるため、インターネットにアクセスできないコンテナでは --dangerously-skip-permissions
.を参照してください。 Claude Code
に基づいてリポジトリに提供される。 Docker
開発コンテナ 参照実装.
e. コードベースに関する質問と回答(Q&A)
新しいコードベースにアプローチするときは Claude Code
学び、探求する。とのペアプログラミングの時のように、プロジェクトの他のエンジニアから学ぶことができます。 Claude
質問だ。Claude
例えば、一般的な質問に答えるためにコードベースをエージェント的に検索する能力:
- ロギングシステムはどのように機能するのですか?
- 新しいAPIエンドポイントを作成する方法を教えてください。
foo.rs
以下は同文書の134行目の文章である。async move { ... }
何をするのですか?CustomerOnboardingFlowImpl
どのような国境の状況に対処したか?- なぜ
foo()
よりもbar()
? baz.py
ファイルの334行目のコードはJava
の対極にあるものは何か?
ある Anthropic
を使用している。 Claude Code
中核となったオンボーディング・プロセスは、新メンバーの慣れるまでの時間を大幅に短縮し、他のエンジニアの負担を軽減します。特別なプロンプトは必要ありません!質問するだけです。Claude
がコードを探って答えを見つける。
f. Claude
とともに git
お互い
Claude
多くの問題を効果的に処理できる git
オペレーション多くの Anthropic
エンジニアは上記の90% git
に渡す。 Claude
処理:
- 探す
git
歴史 といった質問に答える。誰がどの機能の責任者なのか?あるいは "APIはなぜこのように設計されているのか?"あるいは「なぜこのAPIはこのように設計されているのか?明確なヒントClaude
参照git
歴史的な記録は、そのような疑問に答えるのに役立つ。 - コミットメッセージの書き方.
Claude
は自動的にあなたのコード変更と最近の履歴を調べ、関連するすべてのコンテキストを総合してメッセージを作成する。 - 複雑な処理
git
リグたとえば、ファイル変更の取り消し、リベースの競合の解決、パッチの比較と適用(パッチグラフト)などである。
g. Claude
とともに GitHub
お互い
Claude Code
数多くの GitHub
交流だ:
- プルリクエストの作成::
Claude
pr "という略記法を理解し、コードの差分(diff)と周囲のコンテキストに基づいて適切なコミットメッセージを生成する。 - シンプルなコードレビューコメントのためのワンストップソリューションPRのコメントを修正するように指示し(より具体的な指示を添えることもできる)、それが終わったらPRブランチにプッシュバックすればいい。
- 失敗したビルドの修正 またはリンター警告。
- 未処理の問題の分類とトリアージ:させる
Claude
すべてのオープン状態を反復処理するGitHub
問題だ。
それは、覚えておく必要がないようにするためだ。 gh
コマンドの複雑な構文と同時に、多くのルーチン・タスクを自動化する。
h. Claude
扱う Jupyter
ノート
Anthropic
を使用する研究者やデータサイエンティストの Claude Code
読み書き Jupyter
ノートブックClaude
画像を含む出力を理解できることは、データを探索し、相互作用するための近道となる。特定のプロンプトやワークフロー要件はありませんが、推奨される方法は VS Code
で並んで開く Claude Code
歌で応える .ipynb
ドキュメンテーション
を作ることもできる。 Claude
同僚に見せる前に掃除をする。 Jupyter
ノートブックやデータの視覚化を「美的に美しく」するよう明示的に指示することで、人間の読書体験のために最適化されていることを思い出させることができる。
4.ワークフローの最適化
以下の推奨事項は、すべてのワークフローに適用される:
a. 指示は具体的に
Claude Code
指示がより具体的であれば、特に最初の試技の成功率は著しく高まる。最初に明確な指示を与えることで、その後の修正コストを減らすことができる。
例
具体的な指示が不十分 | より具体的な指示 |
---|---|
foo.py にテストを追加する | というのも foo.py ユーザーがログインしていないときの境界ケースをカバーする新しいテストケースを書きましょう。モックの使用は避けましょう。 |
何のために? ExecutionFactory APIはそんなに変ですか? |
参照 ExecutionFactory な git の歴史を振り返り、そのAPIが今日までどのように進化してきたかをまとめる。 |
カレンダーウィジェットを追加する | ホームページの既存のウィジェットの実装をチェックして、パターン、特にコードとインターフェースがどのように分離されているかを理解しよう。HotDogWidget.php は良い出発点である。次に、このパターンに従って、ユーザーが月を選択し、ページ送り/戻しで年を選択できる新しいカレンダー・ウィジェットを実装します。ゼロからビルドし、すでにコードベースで使われているもの以外に新しいライブラリを導入しないでください。 |
Claude
意図を推測することはできるが、心を読むことはできない。具体性を持たせることで、結果の整合性を高めることができる。
b. Claude
写真の提供
Claude
写真や図表を扱うのが得意で、視覚的な情報を提供する方法はいろいろある:
- スクリーンショットを貼り付ける(macOSの場合。
Cmd+Ctrl+Shift+4
クリップボードにスクリーンショットを取り、それをClaude Code
最終用途Ctrl+V
ペーストする。ここではCtrl+V
通常のCmd+V
(リモートペーストはサポートしていません)。 - ドラッグアンドドロップ 画像ファイルをプロンプト入力ボックスに入力する。
- 画像のローカルファイルパスを指定する.
これは、UI開発のためのデザイン・ドラフトや、デバッグのための分析やビジュアル・ダイアグラムを行う際に特に便利です。視覚的な入力を行わない場合でも Claude
また、最終結果のビジュアル・プレゼンテーションが重要であることを明示することも有効だろう。
c. 希望することを述べる Claude
閲覧または処理された文書
Tabキーのオートコンプリート機能を使って、リポジトリのどこからでもファイルやフォルダをすばやく参照できます。 Claude
正しいリソースを検索または更新する。
d. Claude
URLを提供する
プロンプトの横に特定のURLを貼り付けます。Claude
はそのコンテンツをクロールして読むことができる。同じドメインをクロールするリスクを避けるために(例えば docs.foo.com
)を使って許可要求を何度もポップアップさせることができます。 /allowed-tools
コマンドはドメインをライセンスリストに追加する。
e. 早期かつ頻繁な軌道修正
自動受付モード(プレス Shift+Tab
(スイッチ)により Claude
自律的に働くが、通常は積極的な協力者であり、指導者でもある。 Claude
の方が良い結果をもたらす。最初のうちは Claude
タスクを徹底的に説明することが最良の結果を生むが、いつでも修正することができる! Claude
道順
次の4つのツールは、オリエンテーションの修正に役立ちます:
- コーディング前リクエスト
Claude
計画を立てる..そのプランが機能することを確認するまで、コーディングを開始しないように明確に伝えてください。 - ある
Claude
プロセスのあらゆる段階(思考、ツール起動、文書編集)プレスEscape
キー割り込みこれは現在のコンテキストを保持し、コマンドのリダイレクトや拡張を可能にする。 - ダブルクリック
Escape
歴史をさかのぼることができるキーヒントを編集して、さまざまな方向性を探ることができます。納得のいく結果が得られるまで、何度でもヒントを編集することができます。 - リクエスト
Claude
変更を元に戻す以下は、オプション#2と併用されることの多い、異なるアプローチの例である。
たとえ Claude Code
最初のトライで完璧に問題を解決できることもあるが、こうした修正ツールをうまく活用することで、より早く、より良い解決策が得られるのが普通だ。
f. 使用 /clear
文脈重視の維持
長い会期中Claude
コンテキストウィンドウは、無関係なダイアログやファイルの内容、コマンドで埋め尽くされることがある。これはパフォーマンスを低下させ、時には Claude
注意の作業の合間に頻繁に使う /clear
コマンドはコンテキストウィンドウをリセットする。
g. 複雑なワークフローに対するチェックリストと一時的な記録ボードの使用
コードの移行、大量のlintバグの修正、複雑なビルドスクリプトの実行など、複数のステップを含む大規模なタスクや、網羅的なソリューションを必要とするタスクでは Claude
マークダウン・ファイル(あるいは GitHub
問題!)をチェックリストやスクラッチパッドとして活用し、パフォーマンスを向上させた:
例えば、大量の糸くずの問題を解決するには、こうすればいい:
- 知らせる
Claude
lintコマンドを実行するを作成し、結果のすべてのエラー (ファイル名と行番号を含む) を Markdown マニフェスト・ファイルに書き込みます。 - ディレクティブ
Claude
それぞれの問題にケースバイケースで取り組む修正と確認が終わったら、リストに完了マークを付けて次のリストに移る。
h. Claude
データを渡す
にメッセージを送る方法はいくつかある。 Claude
データを提供する:
- 直接コピー&ペーストをプロンプトに送る(最も一般的な方法)。
- とおすパイプ 入力
Claude Code
(例cat foo.txt | claude
ログ、CSVファイル、大量のデータを扱うときに特に便利です。 - 知らせる
Claude
bashコマンド、MCPツール、カスタムスラッシュコマンドでデータを引き出す. - リクエスト
Claude
ファイルを読むまたはURLを取得します(画像にも適用されます)。
ほとんどのセッションは、これらの方法を組み合わせて使用する。例えば、パイプを通してログファイルを渡し、それを Claude
これらのログをデバッグするために、追加コンテキストを引き出すツールのいずれかを使用します。
5.ヘッドレスモードでインフラを自動化する
Claude Code
組み込み ヘッドレスモード以下は、CI(継続的インテグレーション)、プレコミットフック、ビルドスクリプト、自動化タスクなど、非インタラクティブ環境におけるCIの最も一般的な使い方である。ビルドスクリプト -p
フラグでヘッドレスモードを有効にするプロンプトを表示するには --output-format stream-json
ストリーミングJSON出力を得ることができる。
ヘッドレスモードはセッション間で持続しないので、毎回トリガーする必要があることに注意。
a. 使用する Claude
問題のトリアージ
ヘッドレスモードは GitHub
リポジトリに新しいissueが作成されたときなど、イベントをトリガーとした自動化。例えば、公開されている クロード・コード・ウェアハウス 利用する Claude
新たな問題をチェックし、適切なラベルを付ける。
b. 使用する Claude
コードレビューリンターとして
Claude Code
利用可能 主観的コードレビュー従来のリンティング・ツールの範囲を超え、スペルミス、時代遅れのコメント、誤解を招く関数名や変数名などの問題を特定する。
6.マルチの採用 Claude
効率化のためのワークフロー
個別の Claude
最も強力なアプリケーション・シナリオのいくつかは、複数の Claude
例
a. Claude
コードを書き、他の Claude
を確認する
シンプルだが効果的な方法は、次のようなものだ。 Claude
インスタンスがコードの作成を担当し、別のインスタンスがレビューやテストを担当する。これは複数のエンジニアとの共同作業に似ており、コンテキストを分けることが有益な場合もある:
- 利用する
Claude
コードを書く。 - うごきだす
/clear
あるいは、別の端末で2つ目を始めるClaude
例 - 2つ目を作る。
Claude
最初のレビューClaude
作品だ。 - 別のことを始める
Claude
(またか)/clear
)でコードを読み、フィードバックをレビューする。 - これを
Claude
フィードバックに基づいてコードを編集する。
同様の方法でテストを扱うことができる。 Claude
テストを書いてから、別の Claude
これらのテストに合格するようにコードを書く。異なる作業用ドラフトボードを割り当て、どちらを書くのに使い、どちらを読むのに使うかを指示することで、これを行うこともできる。 Claude
インスタンス間のコミュニケーション。
このような職務の分離は、通常、単一の職務を持つよりも効果的である。 Claude
すべてを処理することが、より良い結果を生む。
b. コードリポジトリの複数のチェックアウトコピーの使用
Anthropic
を待たずに済むため、多くのエンジニアがこの方法を採用している。 Claude
各ステップを完了する:
- 別のフォルダ3-4を作る
git
チェックアウト. - 異なるターミナルタブで各フォルダを開く.
- 各フォルダ内アクティベート
Claude
異なるタスクを割り当てる - トグル・バイ・ターン進捗状況を確認し、許可リクエストの承認/拒否を行う。
c. 使用する git worktrees
このアプローチは、複数の独立したタスクを処理する場合に特に効果的であり、完全なコードベースのコピーを複数作成するよりも軽量である。Git worktrees
同じリポジトリの異なるブランチを、異なるディレクトリにチェックアウトできるようにします。各ワークツリーは、それぞれ別の作業ディレクトリとファイルを持ちますが、同じ Git
履歴とリフロッグにより、リポジトリのフルレプリケーションよりもディスク容量を節約できる。
利用する git worktrees
同時に複数を走らせることもできる。 Claude
プロジェクトのさまざまな部分を別々に扱うセッションで、各セッションは別々のタスクに焦点を当てる。たとえば Claude
認証システムのリファクタリング Claude
まったく関係のないデータ視覚化コンポーネントを構築する。タスクは重複しないので、それぞれ Claude
お互いの変更を待ったり、マージのコンフリクトに対処したりすることなく、どちらもフルスピードで作業できる:
- ワークツリーの作成::
git worktree add ../project-feature-a feature-a
- すべてのワークツリーで開始
Claude
::cd ../project-feature-a && claude
- 必要に応じてワークツリーを増やす(新しいターミナルタブでステップ1-2を繰り返す)。
使い方のヒントもある:
- 一貫した命名規則を使用する。
- 各ワークツリーのターミナルタブを保持する。
- MacでiTerm2を使用している場合、以下のことが可能です。 通知の設定 には
Claude
注意が必要なときにアラートを受け取る。 - ワークツリーごとにIDEウィンドウを使い分ける。
- 終わったら片付ける:
git worktree remove ../project-feature-a
d. カスタムスクリプトと組み合わせたヘッドレスモードの使用
claude -p
(ヘッドレスモード)を設定することができます。 Claude Code
ビルトインツールやシステムプロンプトを活用しながら、より大規模なワークフローにプログラムで統合します。ヘッドレスモードを使用するには、主に2つのモードがあります:
- ファンアウト大規模な移行や分析に対応(例えば、数百のログの感情分析や数千のCSVファイルの分析など):
- してもらう
Claude
タスクリストを生成するスクリプトを書く。例えば、フレームワークAからフレームワークBに移行する必要がある2000個のファイルのリストを生成する。 - タスクのリストを繰り返し、各タスクに対してプログラムで
Claude
そして、タスクと使用するツールのセットを与える。例えばclaude -p “将 foo.py 从 React 迁移到 Vue。完成后,如果成功,你必须返回字符串 OK,如果任务失败,则返回 FAIL。” --allowedTools Edit Bash(git commit:*)
- スクリプトを複数回実行し、ヒントを最適化することで、望ましい結果を得ることができます。
- してもらう
- パイプラインウィル
Claude
既存のデータ/処理パイプラインへの統合:- 各論
claude -p “<你的提示>” --json | your_command
どのyour_command
がパイプラインに対処するための次のステップだ。 - JSON出力(オプション)は、その後の自動処理のために構造化されたデータを提供するのに役立つ。
- 各論
どちらのケースでも --verbose
デバッグに役立つフラグ Claude
本番環境では、より簡潔な出力を得るために、冗長モードは通常オフにすることが推奨される。本番環境では、より簡潔な出力を得るために冗長モードをオフにすることが推奨されます。
これらのヒントが、あなたの仕事の効率化に役立つことを願っている。 Claude Code
.自分にとって最適なコーディング方法を見つけるために、探求と実験を続けてください。