Skip to content

ビルトインツール

Koogフレームワークは、エージェントとユーザーの一般的な対話シナリオを処理するビルトインツールを提供します。

以下のビルトインツールが利用可能です:

ツール
名前
説明
SayToUser__say_to_user__エージェントがユーザーにメッセージを送信できるようにします。Agent says: プレフィックス付きでエージェントのメッセージをコンソールに出力します。
AskUser__ask_user__エージェントがユーザーに入力を求められるようにします。エージェントのメッセージをコンソールに出力し、ユーザーの応答を待ちます。
ExitTool__exit__エージェントが会話を終了し、セッションを終了できるようにします。
ReadFileTool__read_file__テキストファイルを読み込みます(オプションで行範囲選択可能)。0から始まる行インデックスを使用して、フォーマットされた内容とメタデータを返します。

ビルトインツールの登録

他のツールと同様に、ビルトインツールもエージェントが利用できるようにするためにツールレジストリに追加する必要があります。以下に例を示します:

kotlin
// すべてのビルトインツールでツールレジストリを作成
val toolRegistry = ToolRegistry {
    tool(SayToUser)
    tool(AskUser)
    tool(ExitTool)
    tool(ReadFileTool(JVMFileSystemProvider.ReadOnly))
}

// エージェント作成時にレジストリを渡す
val agent = AIAgent(
    executor = simpleOpenAIExecutor(apiToken),
    systemPrompt = "You are a helpful assistant.",
    llmModel = OpenAIModels.Chat.GPT4o,
    toolRegistry = toolRegistry
)

同じレジストリ内でビルトインツールとカスタムツールを組み合わせることで、エージェント向けの包括的な機能セットを作成できます。 カスタムツールの詳細については、アノテーションベースのツールおよびクラスベースのツールを参照してください。