Floom について
Floom は、Python スクリプトや SKILL.md で記述したエージェントをバックグラウンドの AI ワーカーとして実行する、オープンソースのランタイムです。ワーカーはフォルダーとして定義し、UI、REST API、MCP から実行できます。各実行のログや承認状態が記録されるため、定期的で監査可能な自動化が必要な開発者やチームに適しています。
主な機能
- 01worker.yml によるフォルダー単位のワーカー定義
- 02スクリプトモードと SKILL.md のエージェントモード
- 03手動・スケジュール・Webhook によるトリガー
- 04副作用のある操作に対する人による承認
- 05実行ログ、ツール呼び出し、リプレイの記録
- 06UI、REST API、MCP からのアクセス
活用シーン
- 01GitHub のプルリクエストと Issue の日次ダイジェスト作成
- 02定期的な受信トレイの振り分け
- 03コーディングエージェントが MCP 経由でワーカーを作成・実行
MCP 対応
Floom には MCP サーバーが含まれており、エージェントクライアントからワーカーの作成、実行、監視、確認を行えます。ワーカーを実行し実行記録を残すランタイムは、これとは別の構成要素です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
32掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| code | string | はい | Python ソースコードまたは base64 エンコードされた ZIP バンドル |
| name | string | はい | プロジェクト名(小文字、ハイフン使用可) |
| requirements | array | いいえ | Python パッケージの依存関係(例:["requests==2.31.0", "pandas"]) |
| config | object | いいえ | floom.yaml 設定:エンドポイントスキーマ、必須シークレット、リソース設定を宣言します |
| config.name | string | いいえ | |
| config.version | number|string | いいえ | |
| config.runtime | string | いいえ | |
| config.entrypoint | string | いいえ | |
| config.endpoints | object | いいえ | |
| config.secrets | any | いいえ | |
| config.network | boolean | いいえ | |
| config.dependencies | array | いいえ |
詳細
Floom
ループエンジニアリングハーネス。ループで実行する AI ワーカー。
スケジュール設定、トリガー、承認の必須化を行い、すべての実行を記録に残せます。
ワーカーはフォルダーです。worker.yml と SKILL.md または run.py で構成されます。Claude Code、Codex、または CLI からデプロイできます。UI、REST、または MCP から実行できます。
始める · ワーカーを構築する · ホスト版を試す · ドキュメントを読む
多くの「AI 自動化」は、付きっきりで見守るチャットウィンドウか、タスクごとに課金され、監査もできないノーコードのグラフです。Floom はループエンジニアリングハーネスです。ワーカーが読みやすいパッケージとして定義され、見守らなくてもループで実行され、すべての実行についてログ、出力、ツール呼び出し、承認、および信頼できる再生記録が残る、本格的なランタイムです。MCP または CLI を通じて、Claude Code と Codex からネイティブに利用できます。
Python スクリプトをアプリ、REST API、MCP ツールとしてデプロイする
Floom を使うと、エージェントや開発者は Python スクリプトをワーカーに変換できます。開発者以外は UI から実行でき、ほかのシステムは REST 経由で呼び出せ、AI エージェントは MCP 経由で操作できます。
まず、次の 3 つのファイルを用意します。
workers/my-worker/
worker.yml
run.py
requirements.txt
次に、検証してデプロイし、実行します。
floom workers validate ./workers/my-worker
floom workers push ./workers/my-worker
floom run my-worker --input key=value
ワーカーの完全なコピー&ペースト用仕様については、BUILDING.md をご覧ください。
Floom とは:バックグラウンド AI ワーカー向けのワーカーランタイム
Floom は、繰り返し行うナレッジワークの自動化をバックグラウンド AI ワーカーに変換します。ワーカーは手動、スケジュール、Webhook、またはアプリのイベントから実行できます。ランタイムでは、ワーカーの定義、入力スキーマ、出力スキーマ、ログ、ツール呼び出し、承認、実行履歴を確認できます。
不透明なチャットスレッド、差分の確認が難しい自動化グラフ、監督機能のない単発スクリプトにすることなく、AI エージェントに定期的な作業を任せたい場合に Floom をお使いください。
フォルダーから AI ワーカーを構築してデプロイする
AI エージェントや開発者は、フォルダーから Floom ワーカーを構築できます。
workers/<worker-id>/
worker.yml # manifest: inputs, outputs, trigger, runtime, secrets
run.py # script entrypoint, or SKILL.md for agent mode
requirements.txt # optional Python dependencies
次のコマンドでワーカーをデプロイします。
floom workers validate ./workers/<worker-id>
floom workers push ./workers/<worker-id>
floom run <worker-id> --input key=value
デプロイ後、Floom は UI、REST エンドポイント、および AI クライアント向けの Floom MCP サーバーを通じてワーカーを公開します。コピー&ペーストで使える完全な構築仕様については、BUILDING.md をご覧ください。
ワーカーの構成
ワーカーはフォルダーを基盤とするジョブ定義です。平易な英語で作業内容を記述する(SKILL.md)か、スクリプト(run.py)を用意し、worker.yml でツール、トリガー、メモリ、シークレットを宣言すると、Floom が実行します。
# workers/github-digest/worker.yml (abbreviated)
name: github-digest
description: "Every morning at 9am, send a digest of unread GitHub PRs and open issues."
exec:
entry: SKILL.md # plain-English agent; or run.py for a script
trigger:
type: schedule
cron: "0 9 * * *" # also: manual, webhook, Composio event
connections:
- app: github # the only tools this agent is allowed to call
allowed_tools: [GITHUB_FIND_PULL_REQUESTS, GITHUB_LIST_ASSIGNED_ISSUES]
You are a GitHub assistant generating a daily PR + issues digest.
Fetch the user's open PRs and assigned issues, compile a markdown digest
with Action items, and finish_with_outputs({ "digest": "<markdown>" }).
午前 9 時に実行され、宣言した 2 つの GitHub ツールのみを呼び出し、digest.md を、開いて再生したりロールバックしたりできる実行結果に書き込みます。
run 7f3a · github-digest · finished 09:00:04 · 2 tool calls · output: digest.md
✓ GITHUB_FIND_PULL_REQUESTS q="is:open is:pr author:@me" → 4 PRs
✓ GITHUB_LIST_ASSIGNED_ISSUES state=open → 2 issues
→ out/digest.md (text/markdown) [open · replay · rollback]
完全なマニフェストでは、schema_version、title、version、および宣言された outputs も指定します。実行可能なサンプルは workers/、デプロイ可能な最小限のワーカーは BUILDING.md、エージェント向けのクックブックは agent cookbook をご覧ください。
2 種類のエージェント
| 実行環境 | ホストの隔離 | ツール | 副作用 | |
|---|---|---|---|---|
スクリプト(run.py / .sh / .js / .ts) | E2B サンドボックス microVM | ファイルシステム、環境変数、プロセスを隔離。プラットフォームのシークレットは公開されません | サンドボックス + 宣言された接続 | 宣言されている場合は承認ゲート |
エージェント(SKILL.md) | API プロセス内の AgentDriver(信頼済みバンドルのみ) | ポリシー上、microVM で隔離されません | 宣言済みの許可リスト登録された接続 | 宣言されている場合は承認ゲート |
サンドボックスはデフォルトでパブリックネットワークへの送信を許可し、プライベート/内部範囲へのアクセスをブロックします。より厳格な許可リストも設定できます。信頼モデルの詳細については、ARCHITECTURE.md をご覧ください。
ワーカーランタイムの概要
| 概要 | バックグラウンド AI エージェントを作成、実行、監視するためのセルフホスト可能なランタイム |
| 最適な用途 | 定期的なエージェント業務:受信トレイの振り分け、ダイジェスト、アウトリーチの下書き、情報の拡充、監視 |
| エージェントの種類 | スクリプト(run.py/.sh/.js/.ts)および平易な英語で記述するエージェント(SKILL.md) |
| 隔離 | スクリプトワーカーは E2B サンドボックス microVM で実行されます。ホストのファイルシステム、環境変数、プロセスは隔離され、プラットフォームのシークレットは公開されません |
| トリガー | 手動、スケジュール(cron)、Webhook、Composio イベント |
| 安全性 | 副作用を伴うエージェントには人間参加型の 承認 を導入し、ツールはエージェントごとに許可リストに登録します |
| 記録 | 実行ごとに、ログ、出力、ツール呼び出し、承認状態、リプレイ、ロールバックが記録されます |
| 料金モデル | Floom の タスクごとの料金はありません。E2B サンドボックスの実行時間(秒単位)と、モデル/API プロバイダーの利用料をお支払いいただきます |
| 技術スタック | Next.js + Tailwind UI · FastAPI + SQLite API · MCP サーバー + CLI |
| 動作環境 | Linux、macOS、Windows(Python 3.11+、Node 20+) |
| ライセンス | MIT · ホステッド版 |
Floom の対象ユーザー
- 定期的な業務(ダイジェスト、振り分け、アウトリーチ)を、自動実行するエージェントにしたい 創業者や運用担当者。
- プロンプトファイルと cron ジョブだけではなく、マニフェスト、サンドボックス、制限、承認を備えた実用的なランタイムを求める エンジニア。
- すべてのアクションを許可リストに登録し、承認し、監査用にリプレイできる必要がある チーム。
- 破壊的なコマンドを実行したり、シークレットを漏洩したり、記録を残さず成功したと主張したりするエージェントに困った すべての方。
Floom の比較:生のスクリプト、Zapier、手作りの MCP
| 生のスクリプト | Zapier / Make | 手作りの MCP サーバー | Floom | |
|---|---|---|---|---|
| ワーカーの定義 | その場しのぎのプロンプトまたはコード | 視覚的なグラフ。差分の確認が困難 | 独自のツールサーバーコード | フォルダー:worker.yml + SKILL.md または run.py |
| ランタイム | cron、シェル、またはローカルプロセス | ベンダーの自動化ランタイム | 開発者が構築したもの次第 | トリガー、実行、ログ、出力、承認、リプレイ、ロールバックを備えたエージェントランタイム |
| 隔離 | 自分のホスト上で実行 | ベンダーのクラウド。内部は不透明 | 実装による | スクリプトワーカー向けの E2B サンドボックス microVM |
| ツールへのアクセス | スクリプトがアクセスできるすべてのもの | コネクターごと | MCP ツールのみ | ワーカーごとに宣言し、許可リストに登録 |
| 副作用 | 即時実行 | ワークフローによる | 独自の承認ロジック | 宣言されている場合は人間による承認ゲート |
| 可観測性 | あればスクロールバック | ステップごとのログ | 独自のログ | ログ、ツール呼び出し、出力、アーティファクト、承認状態、リプレイ、ロールバック |
| エージェントからのアクセス | 独自のラッパーが必要 | エージェント向けに構築されていない | エージェントからツールを呼び出せますが、アプリのランタイムは別です | MCP ツールを使って、エージェントがワーカーの作成、実行、監視、調査を行えます |
| 料金モデル | モデルトークンとインフラストラクチャ | タスクごとまたは実行ごとの料金 | モデルトークンとインフラストラクチャ | タスクごとの料金なし。ランタイムとプロバイダーの利用料をお支払いいただきます |
| ホスティング | 自分のホスト | ベンダーのみ | 自分のホスト | セルフホスト、またはホステッド版 |
クイックスタート:Floom をローカルで実行する
Linux / macOS
git clone https://github.com/floomhq/floom.git
cd floom
./scripts/setup.sh
# edit apps/api/.env: add a model provider key and E2B_API_KEY
./scripts/dev.sh
Windows PowerShell
git clone https://github.com/floomhq/floom.git; cd floom
.\scripts\setup.ps1
# edit apps\api\.env: add a model provider key and E2B_API_KEY
.\scripts\dev.ps1
Python 3.11 以降、Node.js 20 以降、Git、モデルプロバイダーのキー、e2b.dev から取得した E2B キーが必要です。http://localhost:3000 を開いてサインインしてください。ローカル開発では認証シークレットは不要で、サンプルエージェントは初回起動時に登録されます。
詳しいセットアップ、モデルプロバイダー、オプションの連携機能、安全にセルフホストするためのチェックリストについては、docs/GETTING-STARTED.md をご覧ください。よくある問題については、docs/TROUBLESHOOTING.md をご覧ください。
まだセルフホストを始める準備ができていませんか?floom.dev はホスト版です。セットアップ不要で AI エージェントを利用できます。ホスト版のユーザーは、次の方法で MCP クライアントから開始できます。
npx -y @floomhq/floom mcp install --target claude
上記の .env、モデルプロバイダー、E2B キーは、独自のローカルまたは
セルフホストランタイムを実行するためのものであり、Floom Cloud の利用には必要ありません。
実行の仕組み
主な概念
- エージェント -
workers/<name>/以下にあるフォルダーです。worker.ymlと、スクリプトのエントリーポイント(run.py)またはエージェントプロンプト(SKILL.md)が含まれます。 - 実行 - 実行のたびに、ログ、出力、ツール呼び出し、承認状態、再生/ロールバックのコンテキストが記録されます。
- コンテキスト - 参照資料としてエージェントに添付する、再利用可能なファイルのセットです。デフォルトでは機密情報として扱われます。
- 承認 - 副作用を伴うエージェントは、何かが外部に送信される前に、人間による判断を待つために一時停止します。
- ワークスペース履歴 - エージェント、コンテキスト、設定は、ロールバック可能な Git 管理のワークスペースでバージョン管理されます。
docs/GETTING-STARTED.md で最初のエージェントを作成し、マニフェストとランタイムの仕様全体については docs/AUTHORING.md をご覧ください。
ワーカーの実行方法
スクリプトワーカー(.py/.sh/.js/.ts)は、デフォルトで E2B サンドボックスの microVM 内で実行されます。依存関係は分離され、ホストプロセスへのアクセスはなく、リソースは隔離されます。TypeScript ワーカーは tsx を使用する Node ランタイム(npx --yes tsx run.ts)で実行され、Python ワーカーと同じ inputs.json/result.json の仕様に従います。サンドボックス内で os.environ の内容を出力するバンドルから見えるのはサンドボックスのメタデータのみです。FLOOM_SECRET、プロバイダーキー、E2B_API_KEY はすべて存在しません。エージェントワーカー(SKILL.md)は、API ホストの AgentDriver ツールループを通じて実行され、宣言された接続と承認ゲートによって管理されます。現在の単一テナントポリシーでは、この経路で信頼できるエージェントバンドルのみが許可されています。インプロセスで実行するローカルスクリプトランナーはありません。信頼モデルの詳細については、ARCHITECTURE.md をご覧ください。
データの取り扱い、接続済みアカウントの保護策、保持範囲、ホスト版 Cloud の法的情報については、docs/DATA-RETENTION.md にまとめています。
アーキテクチャ
apps/web Next.js + TypeScript + Tailwind + shadcn/ui
apps/api FastAPI + SQLite + Pydantic
apps/mcp MCP server + CLI
workers/ Worker folders (worker.yml + run.py or SKILL.md)
data/ SQLite DB + run artifacts
FAQ:AI エージェント、MCP、Python スクリプトのデプロイ
Floom を一言で説明すると?
Floom は、宣言された入力、出力、トリガー、ツール、承認、ログ、REST API アクセス、UI アクセス、MCP アクセスを備えた、バージョン管理されたワーカーフォルダーから実行されるバックグラウンド AI ワーカー用のオープンソースランタイムです。
Floom は MCP サーバーですか?
Floom には MCP サーバーが含まれますが、それだけではありません。MCP エンドポイントにより、エージェントクライアントは Floom ワーカーの作成、実行、監視、調査、管理を行えます。Floom ランタイムは、ワーカーを実行し、実行を記録し、承認を管理して、UI と REST API を提供する部分です。
AI コーディングエージェントは、このリポジトリから Floom ワーカーを作成できますか?
はい。まず BUILDING.md をお読みください。作成に必要なのは、worker.yml と run.py または SKILL.md を含む workers/<id>/ フォルダー、および任意の requirements.txt です。その後、floom workers validate と floom workers push を実行します。
Python スクリプトをアプリ、REST API、MCP からアクセスできるワーカーとしてデプロイできますか?
はい。スクリプトを workers/<id>/run.py に配置し、入出力を worker.yml で宣言して、floom workers push でデプロイします。すると Floom から、UI、REST API、MCP ツールを通じて実行できるようになります。
スクリプトモードとエージェントモードの違いは何ですか?
スクリプトモードでは、Python、シェル、Node などの決定的なコードをサンドボックス内で実行します。エージェントモードでは、宣言されたツールと出力ライターを使い、エージェントループを通じて SKILL.md のプロンプトを実行します。
Floom は Zapier や Make に取って代わりますか?
Floom は、バージョン管理されたワーカーフォルダー、サンドボックス実行、承認ゲート、ログ、出力、再実行、ロールバック、REST API アクセス、MCP アクセスを必要とするチーム向けです。Zapier と Make は、それぞれ独自のベンダーランタイムを持つビジュアル自動化製品です。
Floom は手書きの MCP ツールに取って代わりますか?
Floom を使えば、アプリ全体のランタイムを自分で実装せずに、MCP を通じて作業を公開できます。手書きの MCP サーバーはエージェントにツールを提供しますが、Floom はワーカーにランタイム、UI、API、トリガー、出力、ログ、承認、MCP ツールを提供します。
ドキュメント
- はじめに - Floom が存在する理由、最初の実行、最初のエージェント、安全なセルフホストのチェックリストです。
- Floom ワーカーの構築 - エージェントと開発者向けの、機械可読なビルド仕様です。
- エージェントの作成 -
worker.ymlの完全なスキーマ、実行モード、シークレット、接続、トリガー、承認について説明します。 - データ、保持、保護策 - Floom が保存するデータ、接続アカウントのデータの範囲、削除や保持について安全に保証できる内容を説明します。
- エージェントのレシピ集 - エージェントを活用した作成レシピです。
- アーキテクチャ - ランタイムのトポロジーとサンドボックスの信頼モデルです。セキュリティに関する報告を提出する前にお読みください。
- API の概要 - 厳選されたエンドポイント一覧です。完全なリファレンスは
http://localhost:8000/docsをご覧ください。 - トラブルシューティング · ロードマップ · プロジェクトの履歴 · v1.0.0 リリースノート
- ライセンス - Floom の MIT ライセンスとサードパーティ依存関係のライセンスに関する注記です。
コントリビューション
コントリビューションを歓迎します。ローカル環境のセットアップ、初回コントリビューションの手引き、PR のガイドラインについては、CONTRIBUTING.md をご覧ください。リポジトリのルートから実行できる簡単なローカルチェック:
npm run test:api
npm run lint:web
npm run test:web
npm run test:mcp
セキュリティ
脆弱性を報告するには、SECURITY.md に従い、公開 issue を作成せずに非公開で報告してください。
ライセンス
MIT ライセンス (c) 2026 Floom コントリビューター。MIT ライセンスの通知と保証の免責事項に従うことを条件に、Floom の使用、複製、変更、結合、公開、配布、サブライセンス、および複製物の販売が認められます。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。