robotframework-agentguard は何をしますか?
Robot Frameworkライブラリ。MCPサーバー、エージェントスキル、フック、サブエージェント、コーディングエージェントCLIをテストします。LiteLLMによるプロバイダー非依存、BFCLグレードのツール呼び出しマッチング、デフォルトで統計的N≧10。
概要
manykarim/robotframework-agentguardは、Robot Frameworkのテストスイート内でAIエージェントの振る舞いを検証するための拡張ライブラリです。以下のような様々なエージェントコンポーネントのテストを自動化します:
- MCPサーバー
- エージェントスキル
- フック
- サブエージェント
- コーディングエージェントCLI(例: Claude Code、Cursor、Codex)
主な機能
| 機能 | 説明 |
|---|---|
| プロバイダー非依存 | LiteLLMを使用して、OpenAI、Anthropic、GoogleなどのLLMプロバイダーを透過的に切り替え可能 |
| BFCLグレードのマッチング | ツール呼び出しの関数名や引数を高精度で検証するマッチングアルゴリズム |
| 統計的テスト | デフォルトでN≧10回のテスト実行により、結果の信頼性を向上 |
| 包括的なテストカバレッジ | MCP、スキル、フック、サブエージェント、CLIなど多様なエージェントコンポーネントをサポート |
インストール
pip install robotframework-agentguard
または、ソースからインストールする場合:
git clone https://github.com/manykarim/robotframework-agentguard.git
cd robotframework-agentguard
pip install .
クイックスタート
- Robot Frameworkテストファイル(例:
test_agent.robot)を作成し、AgentGuardライブラリをインポートします:
*** Settings ***
Library AgentGuard
*** Test Cases ***
Agent Should Call Correct Tool
[Setup] Initialize Agent model=gpt-4
Run Agent Task 「東京の天気を教えて」
Tool Call Should Match get_weather location=東京
[Teardown] Close Agent
- テストを実行します:
robot test_agent.robot
設定
環境変数またはテスト設定でライブラリを設定できます:
| 環境変数 | 説明 | デフォルト値 |
|---|---|---|
AGENTGUARD_MODEL | 使用するLLMモデル | gpt-4 |
AGENTGUARD_PROVIDER | LLMプロバイダー | openai |
AGENTGUARD_N | テスト実行回数 | 10 |
AGENTGUARD_TIMEOUT | 1回のエージェント呼び出しのタイムアウト(秒) | 60 |
キーワードリファレンス
Initialize Agent
Initialize Agent model=gpt-4 provider=openai temperature=0
エージェントを指定されたモデルとプロバイダーで初期化します。
Run Agent Task
Run Agent Task task=「こんにちは」 timeout=30
エージェントにタスクを実行させます。
Tool Call Should Match
Tool Call Should Match tool_name=get_weather args=location=東京
エージェントが指定されたツールを正しい引数で呼び出したことを検証します。
Agent Response Should Contain
Agent Response Should Contain expected_text=東京の天気
エージェントの応答に指定されたテキストが含まれていることを検証します。
Agent Statistics Should Be Valid
Agent Statistics Should Be Valid min_success_rate=0.8
N回のテスト実行結果の統計が有効であることを検証します。
サポートされているプラットフォーム
- MCPサーバー
- エージェントスキル(Claude Code、Cursor、Codexなど)
- フック(プリフック、ポストフック)
- サブエージェント
- コーディングエージェントCLI
ライセンス
MITライセンスの下で公開されています。詳細はLICENSEファイルを参照してください。
貢献
バグ報告や機能リクエストはGitHub Issuesへお寄せください。プルリクエストも歓迎します。