メインコンテンツへスキップ
Jinba Toolboxは、すべてのツールを分離されたSandboxコンテナ内で実行します。エディタからインタラクティブにツールをテストしたり、組織の完全な実行履歴を確認したりできます。

ツールエディタからのテスト

ツールエディタには、ライブSandboxに対してツールを実行するための組み込みテストパネルがあります。
1

テスト入力を入力

テストパネル(エディタの下部セクション)に、ツールの入力スキーマに一致するJSONオブジェクトを入力または貼り付けます。例:
{
  "name": "Alice",
  "greeting": "Hi"
}
2

ツールを実行

Runボタンをクリックするか、Cmd/Ctrl + Enterを押します。ToolSetで設定された言語、パッケージ、環境変数を使用してSandbox内でツールが実行されます。
3

結果を確認

テストパネルは自動的にOutputタブに切り替わり、以下が表示されます:
  • Output — 成功時にrun関数が返したJSONオブジェクト。
  • Error — ツールが失敗した場合のエラー名とメッセージ。
  • Logs — 実行中にキャプチャされたstdoutstderrの出力。
エディタからのテストは、公開済みバージョンではなく現在のドラフトコードを使用します。これにより、公開前に素早く反復できます。

テスト実行の流れ

Runをクリックすると、バックグラウンドで以下の処理が行われます:
  1. コンソールがドラフトコードと入力JSONをAPIの/testエンドポイントに送信します。
  2. APIがToolSetで設定されたプロバイダー(E2BまたはDaytona)を使用してSandboxインスタンスを起動します。
  3. ToolSetで定義されたパッケージがSandboxにインストールされます。
  4. 環境変数がSandboxプロセスに注入されます。
  5. 提供された入力でコードが実行されます。
  6. Sandboxが戻り値、stdout、stderr、およびエラーをキャプチャします。
  7. 結果がコンソールに送信され、テストパネルに表示されます。

実行履歴

エディタ、REST API、MCPコールのいずれから実行されたかに関わらず、すべてのツール実行はRunレコードを生成します。実行履歴ページは、組織内のすべての実行を一元的に確認するためのビューを提供します。

実行の閲覧

組織のサイドバーでRunsに移動して実行履歴を確認します。 実行リストには以下が表示されます:
カラム説明
Tool実行されたツールのSlug
Status現在の状態:successfailedrunning、またはpending
Durationミリ秒単位の実行時間
Date実行が作成された日時
実行は作成日時の新しい順にソートされます。

ステータスインジケーター

各実行には、実行ライフサイクルのどの段階にあるかを示すステータスがあります:

Pending

実行が作成されましたが、Sandboxがまだ実行を開始していません。

Running

ツールがSandbox内で現在実行中です。

Success

ツールが正常に完了し、出力を返しました。

Failed

実行中にツールでエラーが発生しました。

実行詳細ページ

リスト内の任意の実行をクリックすると、詳細ページが開きます。詳細ビューには以下が表示されます: サマリーカード 上部に表示される4カラムのサマリーで、Duration、Created、Started、Completedのタイムスタンプを表示します。 タブ付きデータビュー
  • Input — ツールに送信されたJSON入力。
  • Output / Error — 成功時はツールが返したJSON出力。失敗時はエラー名とメッセージ。
  • Logs — Sandboxプロセスからキャプチャされたstdoutstderr。このタブはログが存在する場合のみ表示されます。

呼び出し側とプロバイダー側のビュー

実行には2つの視点があります:
  • 呼び出し側ビュー — 自分の組織がツールを実行した場合(自組織のツールでも他組織の公開ツールでも)、入力、出力、エラー、ログの完全な詳細を確認できます。
  • プロバイダー側ビュー — 他の組織が自分の公開ツールを実行した場合、実行のステータスとメタデータは確認できますが、入力、出力、ログは確認できません。これは呼び出し側のデータプライバシーを保護するためです。
プロバイダー側ビューでは、実行詳細は呼び出し側の組織のみが利用可能であることを示すメッセージが、呼び出し側の組織名とともに表示されます。

API経由の実行

コンソール以外にも、プログラムからツールを実行できます:

REST API

POST /v1/orgs/:orgId/toolsets/:slug/tools/:toolSlug/run — API経由で公開済みバージョンのツールを実行します。実行スコープを持つAPIキーが必要です。

MCP Endpoint

POST /v1/orgs/:orgId/toolsets/:slug/mcp — Model Context Protocol経由でツールを呼び出します。AIエージェントは標準のMCP JSON-RPCインターフェースを介してツールの発見と呼び出しが可能です。

公開ツールの実行

POST /v1/public/:orgSlug/:toolsetSlug/run/:toolSlug — 任意の組織のAPIキーを使用して公開ツールを実行します。

SDK

@jinba-toolbox/sdkを使用して、TypeScriptアプリケーションからシンプルな関数呼び出しでツールを実行します。
すべての実行方法は、コンソールの実行履歴に表示されるRunレコードを生成します。

実行ライフサイクル

ツール実行の完全なライフサイクル:
1

Pending

APIが実行リクエストを受信し、ステータスがpendingのRunレコードを作成します。
2

Sandboxの作成

設定されたプロバイダー(E2BまたはDaytona)を使用して、ToolSetの言語、パッケージ、環境変数を含むSandboxインスタンスが作成されます。
3

Running

検証済みの入力を使用して、Sandbox内でツールのコードが実行されます。ステータスがrunningに変更されます。
4

完了

Sandboxが出力(またはエラー)とキャプチャされたstdout/stderrログを返します。ステータスがsuccessまたはfailedに変更され、所要時間が記録されます。

ベストプラクティス

  • さまざまな入力でテストする — 公開前に、テストパネルでエッジケース(空文字列、大きな数値、オプションフィールドの欠如)をカバーします。
  • デバッグにはログを確認する — ツールが失敗した場合、stderrログにはスタックトレースやエラー詳細が含まれていることが多く、問題の特定に役立ちます。
  • 実行履歴を監視する — Runsページを定期的に確認して、失敗パターンや想定外の実行時間を発見します。
  • 失敗後にCopilotを活用する — テスト実行が失敗した後、AI Copilotはエラー出力にアクセスでき、修正を提案できます。