Cursorは、同社がBugbotやSecurity Reviewer、Rolloutsといったマネージドエージェントを構築するために内部で使用しているフレームワーク「Agent SDK」を正式に公開した。このSDKの狙いは、エージェントを他のソフトウェアプロジェクトと同じようにコードで定義し、管理・デプロイできるようにすることにある。これまでは、他社のワークフローに合わせて設計された製品を採用するか、ゼロから構築するかの選択肢しかなかった。
Agent SDKが対象とするのは、開発ライフサイクル全体で繰り返し発生する作業だ。エージェントはチームが日常的に使用するシステムに接続し、プルリクエストのレビュー、コンプライアンスワークフローの実行、インシデントの調査といった関連イベントが発生した際に行動する。Cursorは、最も有用なエージェントは特定のチームの運用方法に合わせて調整されるべきだとしており、SDKではチーム自身のプロセスに基づいてエージェントの動作を定義し、検査・変更可能なポリシーに従わせることができる。
コードレビューは典型的なユースケースだ。どの変更に注意が必要か、誰がレビューすべきかはチームごとに異なる。Agent SDKを使えば、GitHub、GitLab、Bitbucketのプルリクエストイベントに反応するエージェントを構築できる。エージェントは変更のリスクを評価し、適切なチームにルーティングし、ポリシーを満たす変更を承認できる。Cursor内部のあるチームは、急速に成長する教訓のナレッジベースを蓄積しており、すべてのプルリクエストをそのナレッジベースと照合したいと考えていた。同チームはAgent SDKを用いて約1日で「kb-reviewer」を構築。現在ではメインコードベースのすべてのPRで動作し、記録された教訓と矛盾する変更をフラグし、各指摘の根拠となるノートを引用し、報告された不一致の調整をエンジニアに促している。
より複雑な作業では、エージェントは独自のツールとセッションを持つ別の専門エージェントにタスクを引き渡すことができる。また、ジョブを並列に動作するサブエージェントに分割することも可能だ。Agent SDKは評価とイベントリプレイを標準でサポートしており、重要なワークフローが期待通りに実行されることを保証しながら迅速な開発を可能にする。PGA TourはAgent SDKをソフトウェア開発ファクトリーの基盤として採用しており、評価によって迅速な反復を実現している。PGA AmericaのプリンシパルエンジニアであるMichael Gyarmathy氏は、Agent SDKによってPGAはソフトウェアファクトリーのすべてのコンポーネントをCursorのインフラ上に構築できたと述べ、開発プロセスを推進するエージェントを構築するための柔軟性と、新たなアイデアを素早く反復し既存機能を確実に最適化できる評価サポートを高く評価している。
Agent SDKのエージェントは、小さなソフトウェアプロジェクトのように構成される。エージェントを導く指示ファイルは、ツールのコード、外部サービスへの接続、テストに使用する評価ファイルとともに配置される。各ファイルはエージェントが知っていること、または実行できることを表す。プロンプトはMarkdownで記述され、ツールはTypeScript関数として定義される。すべてがコードであるため、変更は他のソフトウェアと同じバージョン管理とレビューのプロセスを経ることができる。
デプロイは、プロジェクトディレクトリでagent-sdk deployを実行するだけだ。このコマンドはエージェントをビルドし、URLを割り当て、Cursorのインフラ上で起動する。シークレットと統合はダッシュボードから管理でき、ローカルで利用可能な同じログ、評価、プレイグラウンドを引き続き使用できる。エージェントは自社インフラ上でも実行可能で、各エージェントは単一のNodeプロセスとして動作し、コンテナにパッケージできる。
Agent SDKの開始方法は、他のソフトウェアプロジェクトを始めるのと似ている。プロジェクトディレクトリを作成し、ローカルプレイグラウンドを起動する。サンプルコードでは、@cursor/agent-sdkのdefineAgentを使用して「Robo」という名前のエージェントを定義し、モデル、パラメータ、ローカル作業ディレクトリを指定している。その後、ローカルで反復し、評価を実行してからagent-sdk deployでデプロイできる。SDKにはコーディングエージェントを開発プロセスへ導くスキルも付属しており、エージェントをドキュメントに向けてボットの構築を支援させることができる。Agent SDKは本日より一般提供されている。