Skip to content

原文(日本語に翻訳)

Agentツールのsubagent_typeマッチングを改善し、大文字・区切り文字を区別しない値を受け付けるようになりました(例: "Code Reviewer"code-reviewerに解決されます)

原文(英語)

Improved Agent tool subagent_type matching to accept case- and separator-insensitive values (e.g. "Code Reviewer" resolves to code-reviewer)

概要

AgentツールのパラメータでサブエージェントのタイプIDを指定するsubagent_typeフィールドが、大文字・小文字や区切り文字(ハイフン、スペース、アンダースコアなど)を区別しないマッチングに対応しました。これにより、正確なkebab-caseを覚えなくても直感的な形式で指定できます。

基本的な使い方

以下の形式はすべてcode-reviewerとして解決されます:

"Code Reviewer"     → code-reviewer
"code_reviewer"     → code-reviewer
"CODE-REVIEWER"     → code-reviewer
"CodeReviewer"      → code-reviewer
"code reviewer"     → code-reviewer

実践例

Agentツールでのサブエージェント指定

javascript
// 以前は正確なkebab-caseが必要だった
Agent({
  subagent_type: "code-reviewer",  // 正確な形式
  prompt: "このコードをレビューしてください"
})

// 今後は以下の形式でもOK
Agent({
  subagent_type: "Code Reviewer",  // スペース区切り、大文字もOK
  prompt: "このコードをレビューしてください"
})

Agent({
  subagent_type: "code_reviewer",  // アンダースコアもOK
  prompt: "このコードをレビューしてください"
})

カスタムサブエージェントの指定

プラグインで定義したカスタムサブエージェントも同様に柔軟に指定できます:

javascript
// plugin.jsonで "my-custom-agent" として定義したエージェント
Agent({
  subagent_type: "My Custom Agent",  // 人間が読みやすい形式でOK
  prompt: "タスクを実行してください"
})

注意点

  • マッチングはベストエフォートで行われます。完全に一致するエージェントが見つからない場合はエラーになります
  • 正確なkebab-caseの形式(code-reviewerなど)は引き続き動作します
  • 大文字・小文字の区別がなくなったことで、自動生成されたコードやLLMが生成したAgentツール呼び出しでの互換性が向上します
  • 利用可能なサブエージェントIDは/agentsコマンドやclaude agentsで確認できます

関連情報