Aclif Agent CLI フレームワークの概要

Aclif は、AIエージェントがSaaSプロバイダーと対話するための統一された抽象化を提供する

Aclif は、AIエージェントにおける「ツールの散在化(tool sprawl)」問題を解決するためのエージェントCLIフレームワークです。各SaaSプロバイダーごとに異なるAPI、ログイン方法、文法を管理する必要がなくなるように、Aclifは単一のツールと統一された文法、標準的な名前を提供します。これにより、エージェントは異なるプラットフォーム間で同じ名前で同じレコードにアクセスでき、クロスプラットフォーム操作の複雑さを大幅に軽減できます。

LLMコンテキストウィンドウの問題を解決する

従来のModel Context Protocol (MCP) サーバーは、エージェントのコンテキストウィンドウを毎ターン固定されたツールリストで占めます。これにより、カバレッジ(すべてのAPI操作を提供)とコスト(トークン消費)のトレードオフが生じます。

"すべての操作を公開する(典型的なAPIには数百の定義がある)と、API全体がアクセス可能になりますが、毎ターンすべての操作にトークンが消費されます。"

Aclifは、エージェントが明示的に要求した場合にのみコマンド定義を読み込むことで、この問題を解決します。これにより、すべてのプロバイダーのAPI全体がアクセス可能でありながら、コンテキストウィンドウに継続的なコストが発生せず、エージェントが1つのプラットフォームとやり取りしているか5つのプラットフォームとやり取りしているかに関わらず、トークン数が安定したままになります。

コア技術的機能

統一された文法と標準名

Aclifは、すべてのプロバイダーにわたって単一のコマンド構造、JSONエンベロープ、エラー語彙を実装しています。エイリアスセットを使用して、標準名をプロバイダー固有の用語にマッピングしています(例:Salesforceでは customerAccount に、ServiceNowでは core_company にマッピング)。デプロイ時にキャプチャされたテナントカタログにより、プロバイダーのコードを変更せずにカスタムオブジェクトやフィールドを扱うことができます。

インスペクション優先ワークフロー

エージェントは、コマンドを実行したりAPIクォータを消費したりせずに、利用可能なツールを発見し、学習できます。--schema--examples--shape などのフラグを使用することで、エージェントはコマンドの要件を調べ、ライブAPI呼び出しを行う前に応答をプレビューできます。

実行可能なエラー回復

Aclifのエラーはエージェントの回復を目的として設計されています。すべてのエラーは失敗の原因を特定し、修正に必要なコマンドを提案し、リライトルールが存在する場合は修正済みの入力を提供します。この分類はモデルではなく、単純なコードによって処理されるため、設計時シェル検証と実行時実行の間に一貫した振る舞いが保証されます。

宣言された安全性和監査可能性

Aclifのすべてのコマンドは、変更可能性、影響範囲、元に戻せるか、再実行可能かを宣言しています。これにより、コードがロードされる前にもポリシーチェックでコマンドを拒否できます。さらに、すべての変更は --dry-run をサポートし、メタデータに基づいて --confirm を要求できるようになっており、実行ごとに監査ログが生成されます。

デプロイと実行モデル

Aclifは信頼性とセキュリティのバランスを取るために、3つの異なる実行モードをサポートしています。

  1. エージェントによって実行: エージェントがバイナリを直接起動します。資格情報はフラグ、環境変数、またはローカルの設定ファイルで管理されます。これはエージェントとオペレーターが信頼境界を共有する単一オペレーター環境に適しています。
  2. ホストアプリケーションによって実行: モデルとAclifの間にホストアプリケーションが配置され、資格情報を保持し、プロセス内またはCLI経由でコマンドを実行します。これにより、モデルが資格情報を保持することを防ぎ、ツール定義をコンテキストウィンドウから除外できます。
  3. ゲートウェイによって実行: 長期間稼働するプロセスが複数のエージェントをサービスします。ゲートウェイはリクエストごとに企業用ボルトから資格情報を解決し、中央集権的なポリシーを適用し、単一の監査ログを維持します。これにより、エージェントが自身の範囲を拡大できず、すべての呼び出しが特定のユーザーに紐づけられるようになります。

サポートされているプロバイダーと拡張性

Aclifは、Salesforce、ServiceNow、DocuSign、Agentforce に対してネイティブなサポートを提供しており、Google Workspace(Gmail、Calendar)については貢献されたサポートも提供しています。このフレームワークはMITライセンスで、特定のプロバイダーのみを含むCLIを構築するためのスcaffoldコマンドを提供しています。新しいプロバイダーは、プラットフォームのAPI仕様をAclifのコマンド表面に翻訳することで追加できます。

開発者からの洞察

ツール選択の信頼性について、著者はランタイム時にモデルがツールを動的に選択させることでエラーとセキュリティリスクが生じる可能性があると指摘しています。

"多くの企業向けエージェントをデプロイした経験から、モデルがランタイム時にツールを選択させると問題が生じることがわかりました。エージェントは資格情報を保持しており、ときには誤ったツールを選択してしまうことがあります。同じツールを常に使うことで、このような問題を防げます。"

この洞察が、Aclifのアプローチを形作っています。設計時に人間または作成ツールが正確なコマンド文字列を定義し、エージェントはそれを通常のコードとして実行するだけで、さらなる推論を必要としないのです。

Sources

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • Dispatch
  • プロジェクト