Skip to content

原文(日本語に翻訳)

/claude-apiスキルのガイダンスを改善しました。ツールサーフェスの決定、コンテキスト管理、キャッシュ戦略などのエージェント設計パターンを含むようになりました。

原文(英語)

Improved /claude-api skill guidance for agent design patterns including tool surface decisions, context management, and caching strategy

概要

/claude-apiスキルはClaude APIを使ったアプリケーション開発をサポートするスキルです。今回の改善により、エージェント設計に関するより詳細なガイダンスが提供されるようになりました。ツールをどこに配置するか(ツールサーフェスの選択)、コンテキストウィンドウの効率的な管理方法、APIコストを削減するキャッシュ戦略など、実践的な設計パターンが含まれます。

基本的な使い方

Claude Codeで/claude-apiスキルを呼び出します:

> /claude-api

エージェント設計について質問する例:

> /claude-api エージェントのツール設計について相談したい
> /claude-api コンテキスト管理のベストプラクティスを教えて
> /claude-api キャッシュ戦略の実装方法を見せて

実践例

ツールサーフェスの設計

どのツールをエージェントに提供するか決める際のパターン:

python
import anthropic

client = anthropic.Anthropic()

# ツールの定義 - 必要最小限のツールセットを選ぶ
tools = [
    {
        "name": "search_files",
        "description": "ファイルシステムを検索する",
        "input_schema": {
            "type": "object",
            "properties": {
                "query": {"type": "string"},
                "directory": {"type": "string"}
            },
            "required": ["query"]
        }
    }
]

response = client.messages.create(
    model="claude-opus-4-6",
    max_tokens=4096,
    tools=tools,
    messages=[{"role": "user", "content": "プロジェクト内のすべてのテストファイルを探して"}]
)

コンテキスト管理

長い会話でコンテキストウィンドウを効率的に使う:

python
# コンテキストの要約を使って履歴を圧縮する
def summarize_conversation(messages, client):
    """長い会話履歴を要約して圧縮する"""
    if len(messages) > 10:  # 閾値を超えたら要約
        summary_response = client.messages.create(
            model="claude-haiku-4-5-20251001",  # 要約にはHaikuを使用
            max_tokens=500,
            messages=[{
                "role": "user",
                "content": f"以下の会話を簡潔に要約してください:\n{str(messages[:8])}"
            }]
        )
        summary = summary_response.content[0].text
        # 要約 + 最新のメッセージを保持
        return [{"role": "assistant", "content": f"[会話要約]: {summary}"}] + messages[-2:]
    return messages

キャッシュ戦略

Prompt Caching APIを使ってコストを削減:

python
# システムプロンプトをキャッシュする
response = client.messages.create(
    model="claude-opus-4-6",
    max_tokens=1024,
    system=[
        {
            "type": "text",
            "text": "あなたはコードレビューの専門家です。...",
            "cache_control": {"type": "ephemeral"}  # キャッシュを有効化
        }
    ],
    messages=[{"role": "user", "content": "このコードをレビューしてください: ..."}]
)

注意点

  • /claude-apiスキルはClaude Code内で使用するためのもので、APIアクセスが必要です
  • エージェント設計では、ツールが多すぎるとモデルの判断精度が下がる場合があります。必要なものだけを提供しましょう
  • コンテキストウィンドウの上限は使用するモデルによって異なります(claude-opus-4-6: 200K tokens)
  • キャッシュは同じシステムプロンプトを繰り返し使う場合に特に効果的です

関連情報