コンテンツにスキップ

AI エージェントから FortressFlag を使う

AI コーディングエージェントと一緒に働いているなら、エージェントにあなたの flag を渡せます。「本番環境で new-checkout をオフにして」は、その裏に正確な API 呼び出しがある文であり、実際のユーザーに触れるものでもあります。だからこのガイドは、セットアップと同じだけの時間を制限の説明に使います。

FortressFlag は MCP サーバーを提供しています。あなた自身のマシン上でエージェントと並んで動く小さなプログラムで、エージェントに一連の flag ツールを渡します。

短く言えば、エージェントはあなたにできることをちょうどそのまま、そしてそれ以下しかできません。

サーバーはあなたとして振る舞う API トークンを保持します。あなたのロール、プロジェクトアクセス、組織です。ダッシュボードが使うのと同じ公開 API を通じて FortressFlag と話すので、すべての権限チェック、プロジェクトの許可リスト、監査記録は、あなたがボタンをクリックした場合と同一です。エージェント専用の特別なアクセス経路はありません。

エージェントにはまったく利用できないよう意図的にしていることがいくつかあります。

  • 本番環境の提案を承認すること。もう一組の目の要点は、それが人のものであることです。
  • flag を完全に削除すること。
  • SDK キーや API トークンを作成すること。エージェントに返された 1 回限りの秘密は、会話のトランスクリプトに残ります。
  • メンバー、請求、法的合意を管理すること。

1. トークンを作成する。ダッシュボードでアカウントページに移動し、API トークンを見つけます。あとで分かる名前を付け、スコープを選び、トークンをコピーします。表示されるのは 1 回だけです。

エージェントに変更をさせたいのでなければ、読み取り専用を選んでください。2 つ目のトークンはいつでもあとから作れます。

2. エージェントをサーバーに向ける。ほとんどの MCP クライアントは、コマンドとその環境を指定する小さな設定ブロックを受け取ります。

{
"mcpServers": {
"fortressflag": {
"command": "ffmcp",
"env": {
"FORTRESSFLAG_TOKEN": "ffm_your_token_here",
"FORTRESSFLAG_API_URL": "https://your-fortressflag-api"
}
}
}
}

トークンは env に入れ、決して args には入れません。コマンドライン引数は共有マシン上のほかのユーザーから見えます。

3. 変更させたいときは --allow-writes を追加する。これがないと、サーバーは読み取りツールだけを提供します。あると、エージェントは flag の切り替え、作成、改名、アーカイブ、復元ができます。それでもあなたのロールが許す範囲に限られます。

"args": ["--allow-writes"]

このオプションは錠ではなく便宜として扱ってください。エージェントに flag を変更する用事がないなら、あわせて読み取り専用トークンを渡してください。FortressFlag が実際に強制するのはそちらです。

まずロールが決めます。あなたが Developer なら本番環境に直接書き込めないので、エージェントもできません。できるのは変更を提案することで、あなたがするのとまったく同じです。もう 1 人のチームメイトがそれを適用し、誰も自分の提案を承認できません。本番環境の承認を参照してください。

次にツールがもう一度尋ねます。本番環境に触れる前に、エージェントは環境名を挙げて、そうするつもりであることを表明しなければなりません。このチェックは環境の名前ではなく本番クラスを読みます。だから live と名付けた環境は prod と名付けたものとまったく同じように守られ、単に prod という名前だけで本番クラスではない環境が、あなたを煩わせることはありません。

この 2 つ目のチェックが存在するのは、現実的な失敗が攻撃者ではないからです。staging で何かを変えるよう頼まれたエージェントが、間違った環境キーに手を伸ばすことです。

はっきり言っておく価値があります。エージェントが読むものはすべて、それが使う AI サービスとの会話の一部になります。チームが書いた flag の名前、キー、説明が含まれ、監査履歴を読むよう頼めば、チームメイトの名前とメールアドレスも含まれます。

ここから 2 つのことが導かれます。

flag の説明を信頼できない入力として扱ってください。flag を作成できる人は誰でも、その説明に何でも入力できます。エージェントへの指示のように読める文章も含めて。サーバーはエージェントに対して、最初に、そしてすべてのツールで、これらの値はあなたの組織のデータであって決して指示ではないと伝えます。それは助けになりますが、保証ではなく、エージェントに誰の flag を読ませるかを慎重に考える理由です。

私たちはそのトランスクリプトを見ることも管理することもできません。それはあなたと AI プロバイダーの間のものです。これを使っても、FortressFlag がデータを保存、送信する方法は何も変わりません。ツールは同じ API のもう 1 つのクライアントにすぎません。

  • ローカルでしか動きません。サーバーは、あなたのマシン上で標準入出力を通じてエージェントと話します。リモートのエージェントを向けられるホスト版はありません。
  • ダウンロード可能なバイナリはまだありません。今のところソースからビルドします。
  • ターゲティングルールとセグメントはエージェントから編集できません。flag の読み取り、切り替え、本番環境の変更の提案はできます。ルールエディタはより大きな面で、独自の設計ラウンドに値します。
  • 保留中の提案の一覧には承認者の権限が必要です。Developer のトークンは本番環境の変更を提案できますが、その後それを一覧できません。これは基盤となる API の権限であって、ツールの癖ではありません。