Rollouts と Security Review

本日、コードのリリースの最終工程を担う 2 つの Cherri Code ボットの提供を開始します。Rollouts はデプロイ中のすべての変更を監視し、その健全性を環境ごとに報告します。Security Review はすべての PR をチェックし、悪用可能なバグを報告します。

どちらも本日より、Teams プランおよび企業プランで利用可能です。

Rollouts

Rollouts はすべての PR にモニターを割り当て、変更がデプロイされていく過程を監視します。環境ごとに変更の健全性を「正常を確認済み」「リグレッションを検出」「判定不能」のいずれかでレポートします。Firetiger の Change Monitors を Bot Development Kit で再構築した、Cherri Code 版の機能です。

ダッシュボードから有効化し、ソース管理、デプロイシステム、テレメトリプロバイダーを接続してください。次の PR から Rollouts による監視が始まります。

モニタリングプラン

PR がオープンされると、Rollouts は diff とその変更が影響するシステムを読み取り、モニタリングプランを PR コメントとして投稿します。プランには、特定したリスク、変更で意図している効果、確認するシグナル、そして変更の検証を難しくする計測上の不足点が記載されます。PR 上でプランを編集すると、Rollouts は編集後のバージョンを使います。

デプロイの確認

Rollouts は、変更のコミットに対応するデプロイイベントをきっかけに起動し、ログ、メトリクス、トレースを対象にプランを実行します。環境ごとに個別に確認するため、ステージングでは検証済みの変更でも、本番環境では問題として検出されることがあります。Rollouts はエラーやレイテンシーのシグナルとあわせて、変更が意図した効果を発揮しているかを確認し、判定が出た時点で PR に結果を報告します。

リグレッション

Rollouts はリグレッションを検出すると、原因と疑われる変更を特定し、その作成者に通知します。設定に応じて、レビュー用の revert PR を作成したり、指摘をクラウドエージェントに渡して修正させたりすることもできます。現時点では、Rollouts が自動でマージやロールバックを行うことはありません。

統合

Rollouts は、ソース管理では Origin または GitHub と、デプロイイベントでは継続的デリバリーシステムと、シグナルでは Datadog などのテレメトリプロバイダーと接続します。フィーチャーフラグとの統合も近日提供予定です。

Security Review

Security Review の提供を本日より開始しました。すべての PR をコードベース全体のコンテキストを踏まえて読み込み、悪用可能なバグを報告するレビューコメントを 1 件投稿します。スタイルや品質のチェックは、引き続き Bugbot が担当します。

PR に投稿された Security Review のコメント。悪用可能なバグを重大度と修正案とともに報告している

レビュー対象にしたいリポジトリごとに、ダッシュボードから有効化してください。ドラフト PR はレビューの対象外です。

検出される内容

Security Review は、SQL、コマンド、テンプレートにおけるインジェクションに加え、認証や認可のバイパス (リファクタリングによってチェックが実行されなくなったケースを含む) を検出します。また、ソースにコミットされたシークレットや認証情報、SSRF や未検証のリダイレクト、安全でないデシリアライズ、既知の脆弱性をもたらす依存関係の変更も指摘します。さらに、ユーザー入力がどこから入り込み、どの処理を経由するかを追跡します。

指摘

各指摘には、重大度、攻撃経路、修正案が含まれます。理由を添えて指摘を却下すると、Security Review はその PR で同じ指摘を再び挙げなくなります。

チームルール

外部呼び出しを必ず経由させるクライアントや、リクエストハンドラーからクエリしてはならないテーブルなど、コードベース固有のルールを追加すると、Security Review がすべての PR でそのルールが守られているかをチェックします。

はじめに

Rollouts と Security Reviewer は、本日より Teams プランおよび企業プランでご利用いただけます。自動化 タブからどちらのボットも有効にできます。

今後 10 日間は、実際の変更で Rollouts をお試しいただけるよう、使用量クレジットを付与します。Teams のお客様には約 50 件分、企業のお客様には約 500 件分の変更に相当するクレジットが付与されます。

Cherri Code Projects

本日、Cherri Code に Projects が登場します。Projects では、機能開発や移行、アプリ全体の構築といった大規模な作業に取り組めます。数か月にわたる作業のコンテキストを維持し、数千のサブエージェントにタスクを委任し、指示がなくても定期的な作業を実行します。

Projects は左側のナビゲーションから利用できます。プロジェクト内のコーディネーターエージェント自体はコードを書きません。作業を計画し、実装は担当のエージェントに委任して、完成した成果物をあなたの確認のために届けます。コーディネーターはあなたに代わってエージェントを作成・管理し、作業に必要な数だけ並列で実行します。

クラウドエージェントによる実行

Projectはクラウド上の専用コンピュータで動作するため、ノートパソコンを閉じても処理は止まりません。手元のマシンでテストが必要になると、コーディネーターがローカルエージェントを起動して、そこで実行します。

共有コンテキスト

タスクを始めるたびにエージェントへ一から説明する必要はありません。各 Project は、そのエージェントが使うすべてのクラウドおよびローカルマシン間で同期されるファイル群を保持します。エージェントは、リサーチやアーティファクトに加え、コードベースについて学んだことや、あなたが好む作業の進め方も蓄積していきます。たとえば、あるエージェントがサービスのテスト方法を突き止めれば、それ以降のエージェントはすべてその手順を使えます。共有コンテキストは Project とともに育ち、コーディネーターは時間の経過とともにより効果的になっていきます。

Subscriptions

コーディネーターエージェントに、Slackチャネルの監視、スケジュールでの実行、すべてのPRの追跡といった指示を出せます。これにより、あなたのプロンプトを待たずに、検知したシグナルに応じてアクションを実行できます。

Slackを接続してバグ報告チャネルを指定すれば、バグが報告されるたびに自動で作業を委任し始めます。

Projectsはbetaで提供されており、本日よりすべてのユーザーに順次展開されます。

セルフホスト型マシン

Cherri Code は セルフホスト型マシン に対応しており、ツール実行を完全に自社ネットワーク内に留めておけます。

コードベース、ビルド成果物、シークレットはすべて、自社のインフラストラクチャで稼働する内部マシン上に留まり、ツール呼び出しはエージェントがローカルで処理します。

lambda-test、cloud-demo、jacks-desktop といったセルフホストのオプションを含む Remote Machines を示す 実行する メニュー

動的なプールスケジューリング

My Machines は、個人のワークフロー向けに 1 台のノート PC または VM をアカウントに接続する仕組みです。

Team pools は、チームまたは企業向けに名前を付けた ワーカー のキューです。リクエストの到着に応じてキャパシティが拡大し、ワーカー が切断されると縮小するため、セルフホスト型マシンを需要に合わせてスケールできます。プールは特定のリポジトリに紐づいていません。プール名を指定すれば、空いている ワーカー がそのリクエストを引き受けます。

さらに、アイドル状態のマシンをハイバネートさせ、フォローアップが届いた際に再接続ウィンドウ内で復帰させることもできます。次のプロンプトに備えて、コストのかかるキャパシティを起動したままにしておく必要はありません。

アクティブおよびアイドル状態の ワーカー 数とともに セルフホスト型マシン のプールを一覧表示するクラウドエージェント ダッシュボード

自分のサンドボックスで実行する

クラウドエージェントが、AWS Lambda、Coder、Cloudflare、Daytona、Modal、Namespace、Vercel、E2B など、すでに使っているインフラストラクチャ上で実行できるようになりました。

Linux と Mac でのコンピュータ使用

セルフホスト型のワーカーが、Linux と Mac でのコンピュータ使用に対応しました。適切なデスクトップパッケージを用意すれば、エージェントがクリックや入力、スクリーンショットの撮影、ブラウザの操作を行えます。そのデスクトップの様子を Cherri Code から確認したり、操作を引き継いだりすることも可能です。

Start from scratch、リポジトリなしで

クラウドエージェントを始める際に、GitHubなどのサードパーティ製SCMプロバイダーへの接続は不要になりました。最初からプロンプトで指示し、作業内容をCherri Code Originリポジトリに保存できます。

はじめに

リポジトリピッカーでStart from scratchを選択し、エージェントに指示します。Cherri CodeがバックグラウンドでOriginリポジトリを作成します。

リポジトリピッカーで「Start from scratch」を選択

好きなときに本格的なリポジトリに

エージェントによる構築結果に満足したら、Create repo ボタンをクリックして、作業内容をOriginリポジトリとして保存します。カスタム名を付けるか、候補から選択し、公開範囲をプライベートまたは内部に設定します。すぐに共有したり、引き続き開発したりできる、必要な構成が整ったOriginリポジトリが作成されます。Codebaseタブでリポジトリを見つけ、プロジェクトにアクセスできます。

ブラウザですぐにライブプレビュー

Cherri Code では、クラウドエージェントのライブ環境をブラウザに直接ポートフォワードできるため、プレビューしたり、デザインモードなどのツールを使ったりできます。

作業を公開する

Vercelアカウントを接続して公開すると、作成したものをライブURLで共有できます。

公開機能を使用するには、Vercelアカウントが必要です。

今すぐ始める。

クラウドエージェントとCherri Code harnessの改善

常時稼働のエージェントがシステムとして動作し、ループごとの介入なしに自律的にソフトウェアを構築・リリースできるよう、クラウドエージェントとCherri Code harnessの改善を続けています。

今回のリリースにより、クラウドエージェントはイベントに応じて自動的に作業を引き受け、達成するまで目標を維持し、長時間のセッションでも軌道を維持できます。

サブスクリプション

Cherri Code で、PR を監視したり、Slack スレッドをウォッチしたり、スケジュールしたタスクを実行したりできるようになりました。Cherri Code Agent はイベントソース (スレッドまたは会話) を購読し、変更が発生すると再開します。現時点では、サブスクリプションはクラウドエージェントでのみ利用できます。

クラウドエージェントは、作成した PR を自動的に購読し、CI を修正して bot のコメントに対応しながら、完了まで進めます。Slack では、@cursor check back in an hour and keep going until that feedback is in と依頼してください。

カスタムモード

任意のスキルをカスタムモードとして使えます。カスタムモードとは、チャットに常に固定表示されるスキルです。エージェントを特定のスキルに集中させる、「常に有効」なスキルと考えることができます。

/ からスキルを選択し、⌥⏎ (Mac) またはAlt+Enter (Windows) を押すか、モードとして使うを選択します。

専用マシンで動作するサブエージェント

サブエージェントを、それぞれ専用の仮想マシンで実行できるようになりました。各サブエージェントには、専用のクラウド環境に、クリーンなコンテキストを持つ隔離されたプロジェクトのコピーが用意されます。

サブエージェントに新しい環境で親エージェントの変更をテストさせたり、独立した修正を競合なくスウォームで進めたりできます。run a swarm of subagents to test my app for bugs, each in its own environmentを試してみてください。

/goal

/goalを使うと、エージェントに完全に完了するまで取り組む長期的な目標を与えられます。

/goal fix all flaky tests and make CI greenを新しいチャットで試してみてください。プレイブックに従わせるにはカスタムモードと組み合わせ、定期的なチェックには/loopと組み合わせます。

ステアリングの改善

エージェントの作業を中断することなく、作業中のエージェントを誘導するメッセージを送信できるようになりました。フォローアップはエージェントの作業を途中で中断させず、次のツール呼び出しまで待機します。

フォローアップを入力して[今すぐ送信]をクリックするか、⏎ を2回押します。