BobはIBMのAIコーディングアシスタントであり、セッションとは彼との1つの継続した会話です。あなたが完了した作業にBobcoinsを費やすことはありません。Bobが読み書きしなければならないテキストに費やします。この2つの違いが、ほとんどの無駄の原因です。
目標は、支出を減らすことではありません。大規模なリファクタリングはコストがかかりますが、それだけの価値があります。目標は、価値のない作業への支払いをやめることです。
このブログでは、context windowを管理し、context poisoningを避け、効果的なプロンプトを書き、繰り返しのコストを削減するようBobを設定し、支出がどこに向かうかを測定することで、すべてのBobcoinを最大限に活用する方法を学びます。
長いcontext windowがより多くのコストがかかる理由
メッセージを送信するたびに、Bobは最新のメッセージだけでなく、会話全体を再度受け取ります。したがって、context window開始から1時間後に送信されたメッセージは、開始時に送信した同じメッセージよりもコストがかかります。会話が長くなるほど、Bobはより多く読む必要があり、Bobがより多く読む必要があるほど、より多くのBobcoinを消費します。
2つ目の効果があり、それはおそらくさらにコストがかかります。会話が長くなるほど、Bobが作業するのが難しくなります。回答の精度が低下します。精度の低い回答には修正が必要です。各修正により会話が長くなり、次の回答が悪化します。コストが上昇し、品質が同時に低下します。
たとえば、Bobが毎ターン全履歴を再読するような長いデバッグセッションは、同じ修正をいくつかの集中した新しいcontext windowに分けて行う場合よりも、結果的にコストがかかることがあります。
- context windowの開始と管理方法を学ぶ
- context poisoningを避ける方法を学ぶ
コスト節約の戦略
関連のないタスクごとに新しいcontext windowを開始する。 タスクを完了したら、新しいcontext windowを開始します。次のタスクで同じcontext windowから作業を続けると、Bobは毎ターンそれをすべて読み続けます。ただし、Bobがすでに与えた背景情報を再学習しなければならないほど頻繁に分割しないでください — その再説明は、長い会話にかかるコストよりも高くなります。
- 新しいcontext windowを作成する方法と理由を学ぶ
リクエストの範囲を指定する。 @メンションをできるだけ使用して、Bobに特定のファイルを指し示します。context mentionがないと、Bobはリポジトリを検索して何が重要かを判断し、その検索に多くのBobcoinがかかる可能性があります。
- context mentionの使用方法を学び、それらを使用するためのベストプラクティスを確認してください。
効果的なプロンプトを書く。 プロンプトはBobへのリクエストです。それが精密であればあるほど、Bobが推測する必要が減り、あなたが修正する必要も減ります。
- 効果的でコスト効率の良いプロンプトの書き方を学ぶ
繰り返し修正するのではなく、ロールバックする。 Bobがあなたのプロンプトを複数回誤解した場合、ロールバックするか、元のリクエストと学んだことを加えて最初からやり直すべきです。ロールバックまたは新しいcontext windowの開始により、多くの修正を伴う長い会話のコストを削減できます。
ロールバックを使用すると、次のことができます:
- AIが提案する変更を安全に試す
- 望ましくない変更から簡単に回復する
- 異なる実装アプローチを比較する
- 作業を失わずに以前のプロジェクトの状態に戻す
- ロールバックの仕組みを学ぶ
- ロールバックのベストプラクティスを学ぶ
コストを削減するようBobを設定する
AGENTS.md。 プロジェクトの規約と構造を書き留めて、Bobが各context windowで再度それらを理解する必要がないようにします。AGENTS.mdは簡潔に保ってください。BobはAGENTS.mdファイルを常に読むため、肥大化したファイルは一度限りの利益を永続的なコストに変えます。
/initを使用して、BobにAGENTS.mdファイルを作成するよう指示する方法を学ぶ。- 各モードごとにカスタムルールを作成する。
Skills。 Skillは、常にcontext windowのスペースを占有するのではなく、必要なときにのみロードされるドメイン知識を保持します。使用するときに料金を支払います。
- Skillsについて学ぶ。
- Bobでskillを作成して使用する方法を学ぶ。
Hooks。 Hookは、linter、formatter、またはtestコマンドを直接実行し、Bobcoinはかかりません。Bobにhookと同じアクションを実行するよう依頼すると、Bobcoinがかかります。ツールがチェックできる場合は、モデルに料金を支払ってそれを行わせないでください。
- lifecycle hooksについて学ぶ。
接続されたツール。 Bobは、それらのツールを使用するかどうかに関係なく、すべてのリクエストで接続されたすべてのMCP(Model Context Protocol)サーバーの説明を読みます。先月1つのタスクのためにオンにしたサーバーは、まだコストがかかっています。アクティブに使用していないときはMCPをオフにしてください。
- MCPサーバーについて学ぶ
- MCPサーバーを作成してBobに接続する方法を学ぶ。
複雑なタスクでBobcoinを節約する
構築する前に計画する。 計画とは、タスクを完了するための手順のリストです。箇条書きのリストでも、完全な設計文書のように複雑なものでもかまいません。計画は、構築フェーズ中に必要な修正の数を減らし、類似のタスクに再利用できます。あなたとBobが計画を作成したら、実装する前にそれを確認してください。
- 計画を作成して複雑な機能を実装する方法を学ぶ。
- 計画作成のベストプラクティスを学ぶ。
Subagents。 Bobは自動的にsubagentsに作業を引き渡すため、依頼する必要はありません。タスクが大量の調査を必要とする場合、subagentに直接作業を割り当てることもできます。調査はメインのcontext windowの外で行われ、結果のみが戻ってきます。subagentsはcontext windowのスペースを解放しますが、常にコストが少ないわけではなく、複数を同時に実行するとコストが増える可能性があります。タスクが大量の孤立した調査を必要とする場合はsubagentを利用し、短く連続したタスクはメインのcontext windowに保持してください — 複数のエージェントを調整すると、タスクを直接行うよりもコストがかかる可能性があります。
- subagentsについて学ぶ
Bobcoinの使用状況を測定する
Bobalyticsは、実際に費やした金額を示します。合計だけでは何もわかりません。発見したいのは無駄です。小さなタスクでの長いcontext window、繰り返し行われる同じ修正、そして毎朝入力する背景情報でAGENTS.mdに属するものです。
- あなたのBobalyticsを見る方法を学ぶ
- あなたのBobcoinの使用状況を監視する方法を学ぶ
結論
これらのどれも、試みることができることを制限しません。プロジェクトの再説明、回避可能な誤解の修正、そして一度も必要としなかったコンテキストへの支払いから、Bobcoinを作業そのものへと移します。
より多くのBobcoinは、あなたが使える金額を増やします。無駄を減らすことで、実際の問題にどれだけ到達するかが決まります。
