第 14
エージェント型ワークフローの FrontierStack
FrontierStack を、コーディングエージェント・自律コーディネータ・人/エージェントのワークフローを支えるガード付きインフラ権限として使います。サーバ認証情報をモデルへ移す必要はありません。
第 13 章では FrontierStack 内蔵の AI 管理者を扱いました。本章では逆方向を説明します。Hermes Bot・Codex・Claude Code・Cursor・Gemini CLI・Grok 系コーディネータなど、すでに使っているエージェント型ワークフローの中へ FrontierStack を配置し、認証情報と最終権限を Mac に残したまま、実際のフリートを調査して作業を依頼できるようにします。
14.1FrontierStack の役割
エージェント型システムには通常、何をするか決めるコーディネータと、特定分野の作業方法を知るスペシャリストがあります。FrontierStack が担うのは、安定したサーバ管理者の役割です。同時に、確率的なモデル出力と本番インフラの間にある権限境界でもあります。
この区別は重要です。コーディングエージェントがデプロイを理解して再起動を提案できても、再起動を可能にする SSH 鍵まで持つべきではありません。マネージャエージェントが障害を割り当てても、そのメッセージ自体は認可ではありません。FrontierStack は依頼を受け、呼び出し元を認証し、ツールを絞り、ローカルポリシーを適用し、実行時に認証情報を解決し、必要な場合は人に承認を求め、操作・検証・監査記録を行います。
14.2ひとつの依頼が完了するまで
- コーディネータが限定された仕事を記述。たとえば「web-02 の証明書エラーを調査」または「停止している場合だけキューワーカーを再起動」です。
- FrontierStack が呼び出し元を認証。ローカルクライアントは所有者専用 Keychain ブリッジを使います。ネットワーク越しの呼び出しには、明示的に有効化し、ペアリング・署名・スコープ設定した経路が必要です。
- ツールを二段階で絞り込み。
frontierstack_find_toolsが仕事に関連するツールを探し、現在の呼び出し元スコープが許可されないものを除きます。 - 実行時にポリシーを再確認。読み取り専用の既定値、App Lock、データ破壊制限、承認カードを、選んだツールの呼び出し時にも確認します。ディスカバリだけで権限は得られません。
- 認証情報をローカルで解決。SSH 鍵、sudo パスワード、DB 認証情報、ルータログイン、クラウドトークンは Keychain または連携ボールトに残ります。モデルには値も、再利用できる認証情報入りコマンドも渡しません。
- 対象で限定操作を実行。FrontierStack がこの Mac または選択した Linux・Windows・Mac ホストで、確認済みのローカル・SSH・ヘルパー経路を使います。
- 完了を検証。重要な変更ではプロセスの終了コードだけを成功としません。アプリから観測できる事後条件を確認し、監査イベントを書き、追跡可能な結果または永続レシートを返します。
14.3エージェント型ワークフローのパターンを選ぶ
通常はコーディングエージェントからの対話型 MCP で始めます。永続タスク、イベント、モバイル監督は、ワークフローに必要な場合だけ追加します。
連携面
| チームの形 | 使用するもの | FrontierStack が提供するもの |
|---|---|---|
| コーディングエージェントやマネージャが限定されたサーバ操作を必要とする | MCP(推奨) | 呼び出し元に合わせて絞ったライブのツールとリソース。既存のローカルポリシーと承認境界を通ります。 |
| シェルスクリプト、ローカル自動化、CI ランナが安定したインターフェイスを必要とする | FrontierStack CLI | MCP と同じガード付き呼び出しと機械可読ディスカバリ。認証情報はスクリプトへコピーせず、所有者専用 Keychain ブリッジが供給します。 |
| 接続前にエージェントへフリートの地図を渡す | エージェントスキル/AGENTS.md | サーバ・役割・サービス・運用ルールを記した、認証情報を含まないポータブルな説明。 |
| コーディネータが長い作業を委任する、または障害を引き継ぐ | A2A 1.0 プレビュー | 永続タスク ID・進行・キャンセル・入力/承認待ち・成果物・最終レシート。非公開で、オンにするまで無効です。 |
| MCP クライアントが遅延作業に対応する | MCP Tasks プレビュー | 同じ永続タスクエンジンを実験的な Tasks 拡張で公開。両側の明示的な有効化が必要です。 |
| 障害対応または CI/CD システムが作業を起票する | CloudEvents プレビュー | 選択された認証済みイベントが読み取り専用調査を開始し、相関情報を運びます。イベントが変更権限を与えることはありません。 |
| Mac から離れた場所でエージェントを監督する | iOS Agent Activity | ペアリング Mac から限定された状態、ランタイム、ジョブ、継続セッションのメタデータを表示。プロンプト、トランスクリプト、ターミナル内容、認証情報は端末へコピーしません。 |
ツール一覧を小さく保つ
すべての会話に FrontierStack の完全なツールカタログを読み込ませないでください。AI ハーネスによっては 128 ツールの上限があり、無関係な長い一覧はツール選択の信頼性も下げます。そのため既定のカタログは小さな 2 つの入口を公開します。frontierstack_find_tools は現在の仕事と呼び出し元に関係するツールだけを検索し、frontierstack_call が選んだツールを実行します。完全な許可済みカタログが必要なクライアントや確認作業だけで frontierstack tools --full を使ってください。
認証情報を含まないセットアップキット
MCP ペインでエコシステムセットアップキットを書き出すか、MCP の frontierstack://ecosystem-kits、または frontierstack ecosystem-kits を使います。生成されるレシピは、OpenClaw/Hermes 型スペシャリスト、Buzz などの人/エージェントチーム、OpenAI 型マネージャとハンドオフ、Microsoft ワークフロー、LangGraph、CI/CD、Slack/Teams の承認引き継ぎ、将来向け汎用アダプタを扱います。キットに含まれるのは役割・エンドポイントのメタデータ、手順、安全なプレースホルダで、パスワード・秘密鍵・ベアラートークン・API キーは含みません。
- 使用するコーディネータに最も近いレシピを選び、FrontierStack にサーバ管理者の役割を割り当てます。
- ローカルでは localhost、別の承認済みデバイスでは FrontierStack のペアリング済み HTTPS 経路で接続します。ローカル MCP ポートを直接公開しないでください。
- 読み取り専用で開始します。変更を有効にする前に、ディスカバリ、フリート状態、ヘルプ/マニュアル検索を試します。
- 変更が必要なときは、FrontierStack 内で対象の操作を承認します。グループチャットのメッセージ、エージェントカード、プロンプト、承認したという申告は権限になりません。
- タスク表示で進行を確認し、必要ならキャンセルして、最後の検証レシートを保管します。
信頼境界は移動しない
- 認証情報はローカルに保持。サーバパスワード、SSH キー、AI キー、保管庫の値は実行時に解決し、コーディネータ、セットアップキット、リモートヘルパー、コールバック、モデルのプロンプトへ書き出しません。
- ディスカバリは権限ではない。役割プロファイル、スキル、イベント、チャット上の名前、ツール説明は、できる可能性を示すだけです。ツールを有効化したり、呼び出し元のスコープを広げたりできません。
- 変更はひとつのゲートを通る。MCP・A2A・CLI・イベントはすべて、同じ App Lock、呼び出し元別スコープ、データ破壊ガードレール、ローカル承認、監査記録を使います。
- リモートヘルパーは限定的。サーバ上のモニタ/ヘルパーは FrontierStack の決定論的な手足です。モデルを動かさず、AI プロバイダの認証情報を保存せず、ネットワークから任意の MCP 作業を受け付けません。
- 完了は検証済みを意味する。変更を行う永続タスクは、コマンドがゼロを返しただけでなく、FrontierStack が観測した事後条件を記録してから完了します。
作業内容を公開せずエージェントを観測
Mac の Agent Operations は、ワーカーホストの到達性、検出したランタイム、実行中ジョブ、継続ターミナルセッションをまとめる運用コンソールです。iPhone/iPad コンパニオンの Agent Activity は、ペアリング Mac から意図的に絞った状態だけを表示します。どのワーカーが到達可能か、どのジョブやセッションが動いているかを確認できますが、プロンプト、トランスクリプト、コマンド行、環境変数、ターミナル内容、認証情報はスマホへ送りません。
Linux などのフリートホスト上で長時間動く作業は、Servers › Host › Terminal Sessions で tmux・GNU screen・Zellij セッションを一覧できます。必要なスコープを持つ端末は直接 SSH ターミナルを開き、選択したセッションへ接続できます。セッション終了はフルコントロール権限と個別確認が必要です。
14.4MCP サーバを有効化する
FrontierStack は Mac にインストールされた一般的な AI クライアントを検出し、再利用可能な認証情報を公開せず、自身の MCP エントリを設定できます。
- MCP Server ペインを開きます。サーバは既定でオンになっており、
localhostにバインドします。オフにすることもできます。 - Detected AI clients を確認します。FrontierStack は Amp・DeepSeek Harness Alpha・Hermes Bot Mode・Grok・Codex CLI・Cursor・Gemini CLI・Claude Code・Claude Desktop・Xcode(26.3 以降)を認識します。Set Up Detected または各クライアントの操作を使います。
- Amp の設定は
amp mcp addを実行し、FrontierStack の所有者専用ローカルブリッジだけを追加します。Amp のリモートスレッド作成、ランナー、リモート制御ターミナルは有効にしません。 - DeepSeek Harness(Alpha)は、Harness の
webプロファイル用の設定専用プラグインバンドルです。Harness 内蔵 MCP クライアントを有効にして FrontierStack の所有者専用ブリッジへ接続します。バンドルにはベアラートークン、サーバ資格情報、DeepSeek キー、ネットワークエンドポイントを含めません。DeepSeek Harness はまだ開発者プレビューのため、FrontierStack は起動時にこの Alpha プラグインを自動導入・修復しません。Add Alpha Plugin を明示的に選び、対応 Harness リリースが変わった場合は FrontierStack と一緒に更新してください。 - Hermes の各 Bot は独立プロファイルです。自動設定が修復するのは Hermes のメインプロファイルだけで、既存 Bot 一覧には別の明示的な Set Up Bots オプトインを使います。Hermes はブリッジを
untrustedとして登録し、FrontierStack は読み取り専用の既定値、変更/スクリプトのスイッチ、App Lock、承認、監査を引き続き適用します。 - 検出した安定版クライアントの変更時に FrontierStack 自身の
frontierstackエントリだけを修復するには、Set up detected AI clients at launch を有効にします。他の MCP サーバ設定は保持され、Alpha 連携はスキップされます。 - 生成エントリは所有者専用ブリッジを起動します。ブリッジが起動時に Keychain から MCP 認証情報を取得するため、ベアラートークンをクライアント設定へ書き込みません。
- 他の stdio MCP クライアントでは FrontierStack CLI をインストールし、
frontierstack mcpが返すコマンドを使います。 - 読み取り専用で開始します。変更やスクリプトを許可する前に、
frontierstack discover、フリートヘルス一覧、ヘルプ検索を試します。
14.12.1Xcode
Xcode 26.3 以降(macOS 27 の Xcode 27 を含む)はコーディングエージェントをホストし、MCP を双方向に扱えます。Add to Xcode は、Xcode 内蔵の Claude・Codex・Gemini エージェントが使える MCP サーバの一覧 ~/Library/Developer/Xcode/CodingAssistant/mcp-servers.json に FrontierStack の所有者専用ブリッジを書き込みます。アプリを開発中のエージェントは、対象のサーバ・データベース・サイトについて FrontierStack に問い合わせ、他のクライアントと同じ読み取り専用の既定、変更スイッチ、承認、監査のもとで限定的な作業を依頼できます。
逆方向では、AI 管理者の xcode ツールが xcrun mcpbridge を通じて Xcode 自身の MCP サーバと通信します。スキームとターゲットの一覧、ビルド、テストの全体/一部実行、ビルドログの読み取り、SwiftUI プレビューの描画、プロジェクトファイルの検索や編集、テンプレートからのプロジェクト作成、シミュレータ操作ができます。Xcode › 設定 › Intelligence › Model Context Protocol › Allow external agents to use Xcode tools をオンにしてプロジェクトを開いたままにしてください。FrontierStack が接続すると Xcode が通知を表示します。Xcode の読み取り専用ツールは自由に実行でき、ビルド・テスト・編集・スキーム切替には変更を許可が必要です。Xcode で開いていないプロジェクトには、代わりにアプリ内コンソールで xcodebuild を実行します。同じプロジェクトで両方を同時に動かすと Xcode のビルドデータベースが壊れることがあるため避けてください。ペインには Claude Code に同じ Xcode ツールを渡す claude mcp add … xcode -- xcrun mcpbridge コマンドも表示されます。
14.12.2Grok Bot
Add to Grok を選ぶと、FrontierStack の所有者専用ブリッジを ~/.grok/config.toml へ追加できます。特定のリポジトリだけに Grok の手順を持たせる場合は、プロジェクトキットを書き出します。ブリッジは実行時に Keychain から MCP 認証情報を読み、TOML ファイルにベアラートークンを含めません。ローカルの Grok ワークフローは、ヘルス確認とヘルプ検索が期待どおりに動くまで読み取り専用にしてください。クラウド上の Grok Bot はループバック接続口へ到達できません。リモート利用には TLS で保護したネットワーク経路、ペアリング済みの呼び出し元 ID、明示的なスコープが必要です。ベアラートークンをボットのメモリやプロジェクトファイルへコピーしてディスカバリを回避しないでください。
14.12.3SlackBot、Slack 引き継ぎ、Buzz
Slack 対応には別々の 3 つの機能があります。Messaging Gateway は Slack の受信 Webhook へアラートを送ります。エコシステムキットは既存ボット用の Slack/Teams 引き継ぎを記述します。Full Fleet には、FrontierStack 自身がサーバ管理担当としてワークスペースへ参加する Slack Server Admin Agent Beta も含まれます。
Messaging Gateways で専用 Slack アプリ設定をコピーしてワークスペースへインストールし、Socket Mode の xapp- トークンとボットの xoxb- トークンを Keychain に保存します。公開受信エンドポイントは開きません。招待済みの内部チャンネルで @FrontierStack とメンションするか、アプリへ直接メッセージを送ります。返信は同じスレッドに残り、範囲を制限したスレッド文脈と AI Harness のサーバ・サービス・ネットワーク・監視・インストール用ツールを利用できます。
FrontierStack は依頼者が接続先ワークスペースの正式メンバーであることを確認し、ゲストと Slack Connect の会話を拒否します。任意のチャンネル ID 一覧で範囲をさらに絞れます。既定は読み取り専用の調査です。所有者が変更依頼を有効にした場合も、モデルが選べるのは型付き FrontierStack アクションだけです。認証情報、任意シェル、復旧用シークレット、自己管理は利用できません。すべての変更は Full Fleet、App Lock、外部変更ポリシー、ローカル承認、監査、タスクレシート、結果検証を通過する必要があります。Slack のメッセージ、リアクション、役割の自己申告、ボタンは承認になりません。
Buzz はサービス連携とチームレシピの対象です。FrontierStack はホスト版またはセルフホスト版の Buzz スタックをインストール/接続し、リレーと依存サービスを監視できます。書き出す Buzz 形式のキットは、人とエージェントの権限を絞った役割を記述し、既存の MCP・A2A・CloudEvents・CLI 経路を選択します。ライブ Buzz エージェントエンドポイントではなく、Nostr 鍵、サーバ認証情報、FrontierStack ベアラートークンも含みません。
インストール済みのfrontierstack CLIも既定でステートレスMCPを使います。frontierstack discoverでプロトコルと機能を機械可読形式で確認でき、frontierstack infoは推奨するステートレス版と対応する従来版の両方を表示します。
初めて接続するクライアントは frontierstack://manual リソースを読むか search_app_help を呼び出し、任意のファイルへアクセスせずに、アプリが記述した手順を学べます。
別のMCPサーバペインでは、新旧どちらのサーバも管理できます。「自動」は最初にserver/discoverを試し、必要な場合だけ従来のinitializeへ切り替えます。HTTPサーバが対応を実証した場合だけ、一覧に緑のステートレス表示が出ます。stdioサーバは外部クライアントがプロセスとハンドシェイクを管理するため、明示的にステートレスとして設定できます。
たとえば AppSignal プリセットは、レビュー済みでバージョン固定の mcp-remote ブリッジを通して AppSignal のホスト型 MCP エンドポイントへ接続します。ブリッジが AppSignal のブラウザ OAuth フローを実行するため、AppSignal トークンはプリセット、クライアント設定、プロセス引数に入りません。このエージェント接続は FrontierStack の決定論的な AppSignal ヘルス監視とは別です。Local Health とアラートには AppSignal サービスペインで個人 API トークンとアプリ ID を使い、エージェントがより深い調査を必要とするときだけ OAuth MCP を使います。委任前に AppSignal のアクセスを読み取り専用で開始し、書き込み可能なツールを確認してください。
14.5エージェント基盤から FrontierStack を使う設定
エージェント基盤から FrontierStack を使う方法は 3 通りあります。コーディングエージェントは前の節のとおり MCP のツールサーバとして呼び出します。オーケストレータは FrontierStack を担当を受け持つワーカーとして使えます(Paperclip のハートビートや A2A タスク)。シェルを使えるエージェントなら frontierstack CLI を操作できます。どの方法でも FrontierStack の役割は同じサーバ管理者で、App Lock・既定の読み取り専用・承認・監査ログも同じように適用されます。
| 基盤 | 接続方法 | 設定する場所 |
|---|---|---|
| Claude Code、Codex CLI、Cursor、Gemini CLI、Claude Desktop、Amp、Grok、Hermes、Xcode | FrontierStack の所有者専用ローカルブリッジ経由の MCP | MCP サーバ ▸ AI クライアント ▸ 検出したものを設定 |
| OpenClaw | ローカルブリッジ経由の MCP(OpenClaw 自身の openclaw mcp add で追加)と、~/.agents/skills に置く FrontierStack のスキル | MCP サーバ ▸ AI クライアント ▸ OpenClaw ▸ OpenClaw に追加 |
| Buzz | ローカルエージェント(Claude Code・Codex・goose)がそのハーネスの MCP 設定を使い、~/.agents/skills からスキルを読む | Buzz が動かすハーネスを設定し、OpenClaw に追加するか、スキルを ~/.agents/skills に書き出す |
| Claude Code(フリートの文脈) | フリートスキル(~/.claude/skills/fleet/SKILL.md) | フリートスキル(自動更新をオン。後述) |
| Paperclip | FrontierStack を会社のエージェントとして雇用し、Paperclip の process アダプタがハートビートごとに実行 | Paperclip ペイン ▸ Paperclip エージェントとして働く |
| OpenClaw、Hermes の監督エージェント、LangGraph、Microsoft や OpenAI 型のマネージャ | A2A 1.0 による委任、または対応するエコシステムキット | MCP サーバ ▸ 委任された A2A タスクを受け付ける、エコシステム設定キット |
| CI/CD、シェルスクリプト、n8n、ターミナルを使えるエージェント | frontierstack CLI(インシデント起点なら CloudEvents) | MCP サーバ、またはリモートコントロールとロック ▸ コマンドライン ▸ CLI をインストール |
| ChatGPT、Codex、カスタム MCP コネクタを使えるクラウドのアシスタント(クラウドの Grok Bot など) | https://frontierstack.app/plugin/mcp の FrontierStack プラグイン。FrontierStack アカウントでサインインし、この Mac が外向きの接続で応答 | MCP サーバ ▸ ChatGPT access(アプリの起動が必要) |
| そのほかのクラウドのエージェント(Devin、Manus) | ペアリング済みで TLS 保護されたネットワーク経路と、範囲を限定した ID のみ | 署名付きリクエストとデバイスペアリング(次の節) |
14.12.4Paperclip:FrontierStack を会社のシステムエンジニアとして雇用する
Paperclip は、組織図・予算・目標・承認を持つ「会社」として複数のエージェントを動かします。FrontierStack はその会社にシステムエンジニア兼ネットワーク管理者として加わり、割り当てられたインフラのイシューを自分のツールで調査して、イシューに結果を報告します。
- Paperclip をこの Mac に、あなた自身のユーザでインストールします:
npx paperclipai onboard --yes。ハートビートは FrontierStack をローカルで実行するため、Paperclip を別のマシンに置くことはできません。 - エージェント運用セクションの Paperclip ペインを開きます。「接続」でエンドポイント(既定は
http://127.0.0.1:3100)を確認します。Paperclip を authenticated モードで動かしている場合は、ボード API キーをトークンとして貼り付けます。 - Paperclip エージェントとして働くで Paperclip のハートビートを受け付けるをオンにし、ハートビートコマンドをインストールを押します。
~/.frontierstack/bin/frontierstack-paperclipが書き込まれます。 - FrontierStack を会社に雇用を開き、会社を読み込むを押して会社を選び、DevOps エージェントとして雇用を押します。
processアダプタを使う、肩書き「System Engineer & Network Administrator」のエージェントが作成されます。代わりにアダプタ設定をコピーを押し、Paperclip で自分で作成したエージェントに貼り付けることもできます。 - Paperclip でイシューを割り当てます(例:「web-02 からのメールがバウンスする原因を調べて」)。進捗は Paperclip の実行ログに表示されます。
ハートビートのたびに、Paperclip は短期のラントークンを付けてハートビートコマンドを実行します。FrontierStack が起動していなければ、コマンドがバックグラウンドで非表示のまま起動します(コールドスタートには最大 2 分ほどかかることがあります)。FrontierStack は割り当てられたイシューをチェックアウトして調査し、コメントしてから、イシューを完了・ブロック・レビュー待ちのいずれかにします。ほかのエージェントがすでにチェックアウトしているイシューには手を出しません。ラントークンはペインに設定した Paperclip サーバにだけ送られます。
Paperclip からの変更依頼を許可は最初はオフで、エージェントは調査と提案だけを行います。オンにしても、型付きの変更はそれぞれ App Lock と外部変更の設定に従い、実行されるか、ペインで1 回だけ承認・5 分間許可・拒否を待つか、拒否されます。
14.12.5A2A の監督エージェントとマネージャエージェント
A2A 1.0 を話すコーディネータ(OpenClaw や Hermes の監督エージェント、LangGraph のマネージャなど)は、ツールを 1 つずつ呼ぶ代わりに、永続タスクとして FrontierStack に仕事を渡せます。MCP サーバペインで委任された A2A タスクを受け付けるをオンにします(既定はオフ)。この Mac 上のエージェントは localhost で、承認済みのリモートのコーディネータはペア済みで証明書をピン留めした HTTPS 経路で接続します。Agent Card は FrontierStack を説明するだけで、権限は与えません。自然言語の依頼は常に読み取り専用です。変更は型付きの FrontierStack リクエストとして送る必要があり、通常の範囲・App Lock・承認・監査・事後確認を通ります。進捗は SSE で配信され、任意のコールバックは公開 HTTPS のアドレスに限られます。対応するエコシステム設定キットを書き出せば、認証情報を含まない設定例をそのまま使えます。
14.12.6シェルを使えるエージェント、CI、スクリプト
MCP サーバペイン、またはリモートコントロールとロック ▸ コマンドラインから CLI をインストールします。エージェントは frontierstack discover で使える機能を確認し、frontierstack role でサーバ管理者のプロファイルを読み、frontierstack call <ツール> '<json>' でツールを実行できます。認証情報はプロンプトに貼らず、frontierstack run で渡してください(エージェントへの認証情報)。スケジュールや夜間に動く基盤なら、バックグラウンドサービスをオンにして、アプリを閉じていても読み取り専用のチェックが動くようにします(アプリを閉じたまま使う)。
14.12.7基盤に変更を許す前に
- 最初は読み取り専用で接続し、検出、フリートの健全性、ヘルプ検索を確認します。
- Claude Code にはフリートスキルを渡して、接続前にサーバの構成を把握させます。自動更新をオンにすれば、スキルはフリートの変更に追従します。
- 変更は基盤ごとにオンにします(MCP の変更スイッチ、Paperclip からの変更依頼を許可、型付きの A2A リクエスト)。承認は Mac かペアリング済みの iPhone で行います。
- 作業はエージェント運用 ▸ アクティビティと監査ログで確認します。iPhone のエージェントアクティビティは、プロンプトや記録をコピーせずに状況だけを表示します。
14.6署名付きリクエストとデバイスペアリング(FS1)
コントロールサーバと MCP サーバは、ベアラートークンと TLS の上に、デバイスごとの署名付きリクエスト層 — FS1 — を追加します。各ペアリング済みデバイスは独自の Ed25519 秘密鍵を持ち、すべてのリクエストに署名します。FrontierStack は承認済みデバイスに対して署名を検証するため、トークンが漏れただけでは何も操作できません。
- デバイスごとのスコープ。各デバイスには読み取り専用〜フルコントロールのスコープを Mac で付与します。
- ワンタップ失効。デバイスを削除すれば即座に遮断され、他には影響しません。
- これは iPhone/iPad アプリのペアリングと同じ仕組みです — モバイル版マニュアルと、第 10 章の信頼モデルを参照。
14.7外部 AI ジョブ
ライブの MCP に加え、FrontierStack はサブスクの AI CLI にジョブを渡すことができます — タスクをまとめてローカルの Claude(など)にあなたのプランで処理させ、結果をアプリに戻します。これにより、重め・長時間の分析を従量課金なしで実行でき、Data Map(ロケーションごとのデータフロー図)と組み合わせてエージェントに必要な文脈を与えます。外部 AI ジョブは AI スタック(第 15 章)から管理します。
14.8MCP 経由のスキル・ノート・メモリ・Obsidian
外部ハーネスは、内蔵管理者と同じナレッジ面に、同じゲートのもとで到達します。
- スキル — 厳選したプレイブックを発見・オンデマンド読み込み。
- 共有ノート — 「AI と共有」で解除したノートのみ読み取り可能。
- 長期メモリ — 設定や恒常ルールの同じ
memory.md。 - Obsidian — Obsidian ボールトを連携していれば、SOP やランブックを検索し、文書化された手順に従えます(第 12 章)。
14.9フリートスキル — あらゆるエージェント向けのポータブルな文脈
MCP サーバはエージェントにフリートを操作させます。フリートスキルはもう半分 — エージェントが何かに触れる前にあなたの環境を教える静的な文脈です。フリートスキルペインは SKILL.md を生成します。サーバとその役割・OS・サービス・到達方法、ネットワークの場所、KVM と電源ソース、そしてあなた自身のルールと設定の自由記述 — すべてシークレットを除去した上で。これを読んだエージェントは、当て推量ではなく正しいホストを選び、正しい経路を使い、あなたの慣習を尊重します。
~/.claude/skills/fleet/SKILL.md に書き込まれ、Claude Code が自動的に検出します(フロントマターの description: が、そのスキルがいつ関連するかをモデルに伝えます)。MCP 接続エージェントは get_fleet_context ツールで同じ内容を取得でき、その慣習を読む CLI 向けに任意で ~/AGENTS.md も出力できます。自動更新をオンにすると、フリート・場所・KVM が変わってから数秒後にスキルが書き直され、実態からずれません。
地図とリモコンの違いだと考えてください。MCP はリモコン — ライブで認証済み、実行できます。スキルは地図 — セットアップ不要でポータブル、どのエージェントにも安全に渡せ、有能なツールが「正しいやり方で誤ったこと」をするのを防ぎます。
14.10.env を使わずにエージェントへ認証情報を渡す
エージェントがコマンドを実行するのに API キーやパスワードが必要になることはよくあります。チャットに貼り付けたり、リポジトリに置いたりしないでください。スクリプトシークレット(AI 管理者 ▸ スクリプトシークレットバー)に保存し、frontierstack run にこれらのシークレットの使用を許可をオンにして、エージェントに次のように実行させます:
frontierstack run --secret CLOUDFLARE_API_TOKEN -- terraform apply
値はそのコマンドだけに環境変数として渡され、出力では伏せ字になるため、エージェントは値を読まずにコマンドの結果を確認できます。代わりに、名前だけを書いた .env.frontierstack(DB_PASSWORD=fs://DB_PASSWORD)をプロジェクトにコミットしておけば、そのフォルダで frontierstack run -- <command> を実行するだけで値が埋められます。エージェントガイド、書き出したスキル、フリートスキルはいずれも、エージェントにこの方法を使うよう指示しています。すでに認証情報をリポジトリで管理している場合は、リポジトリからインポート…で取り込めます(第 13 章)。
14.11アプリを閉じたまま使う
エージェントが FrontierStack を使うのに、アプリを開いたままにしておく必要はありません。FrontierStack を閉じても MCP と CLI を使えるようにする(MCP サーバペイン、またはリモートコントロールとロック ▸ コマンドライン)は既定でオンで、ログイン時に小さなバックグラウンドサービスが起動し、ローカルの MCP と CLI のポート(既定は 8788 と 8799)を受け持ちます。アプリを閉じている間は、検出と一連の読み取り専用チェックにサービス自身が応答します。WHOIS、IP 分析、証明書の期限、ポートチェック、オープンリレーテスト、ディスク使用量、上位プロセス、メトリクスのスナップショット、hosts ファイルとリモートファイルの読み取り、MySQL/PostgreSQL のテーブルチェックを、この Mac でも保存済みのサーバでも実行できます。それ以外の要求は FrontierStack を非表示で起動して引き渡します。アプリの起動中はすべての要求がそのままアプリに届くため、App Lock・承認・監査ログは従来どおりです。
| 設定 | アプリを閉じている間に加わること |
|---|---|
| FrontierStack を閉じても MCP と CLI を使えるようにする | MCP と frontierstack が応答し続けます。読み取り専用のチェックはアプリなしで実行し、それ以外はアプリを非表示で起動します。 |
| FrontierStack を閉じても監視を続ける | ウォッチ、メールの接続先、TLS 証明書とドメインの更新日、リンクしたサーバの確認を続け、設定済みのチャネルでアラートを送ります。確認するのは常にどちらか一方だけで、アプリを開くとアプリが引き継ぎます。 |
| セキュリティキーが挿さっている間はヘッドレスのエージェントに作業を許可 | セキュリティキーを使う App Lock でも、登録済みのキーが挿さっていれば読み取り専用のチェックを実行でき、frontierstack run がキーで封印されたスクリプトシークレットを開けます。 |
どちらが応答しているかは frontierstack info("answering": "app"・"core"・"none")と frontierstack headless status で確認できます。サービスが起動するのはログイン時で、起動(ブート)時ではありません。再起動や停電のあとも MCP が自動で戻るようにするには、ヘッドレス Mac セットアップで自動ログインをオンにしてください。アプリをアップデートすると、サービスは処理中の要求が終わったあと新しいバージョンで起動し直します。ペアリングした iPhone/iPad も、ペアリングし直すことなくサービス経由で Mac に届きます。電話のダッシュボードの「Mac で FrontierStack を起動」で非表示のまま起動し、「Mac で FrontierStack を開く」でウィンドウを開けます。アプリを閉じている間も、電話へのアラート通知は届きます。
frontierstack run のたびにタッチが必要です(オフにすることもでき、その操作にもタッチが必要です)。PIN を設定したキーでは、封印されたシークレットはアプリでしか開けません。変更は常にアプリを通ります。frontierstack headless key で、登録済みのキーが挿さっていて応答するかを確認できます。14.12どれをいつ使うか
| 使うもの | こんなとき |
|---|---|
| 内蔵 AI 管理者(第 13 章) | 承認カードやコストモニタも含めすべてを 1 つのウィンドウで完結させたく、モデル/キーを用意する、またはローカル実行で構わないとき。 |
| MCP 経由の FrontierStack(本章) | すでに Amp、Claude Code、Cursor で作業しており、コードとサーバに対するガード付き経路を 1 つにしたいとき。 |
| 外部 AI ジョブ(第 15 章) | タスクが重い・長時間で、対話的に実行するよりサブスク CLI に渡したいとき。 |
3 つとも同じガード付きツールと同じライブのアプリ状態に到達します。作業しやすい場所で選んでください。安全性の保証は変わりません。
FrontierStack ユーザマニュアル · バージョン 1.0.0 · 第 14