daily-price-watch Flow(browser:search-price@1.2.0 による検索、transform、そしてシークレット webhook への条件付き http.post)を再利用し、その挙動が完全に仕様化されている箇所へリンクしています。
実行時のループにAIやモデルは入りますか?
実行時のループにAIやモデルは入りますか?
いいえ。実際に何かを実行する唯一のコンポーネントである Rider はモデルを実行せず、制御フローを決めるためにモデルを呼び出すコードパスもありません。エンジンは型付き手順のDAGをスケジュールし、注入されたcapabilityを通じてToolを呼び出し、Journalを書き込みます。そのループの中でモデルに手を伸ばすものはありません。AIはFlowの作成を助けることがあります(手順の提案、YAMLの下書き、作成時のブラウザー記録のガイドなど)が、Flowが実行時に何をするかを決めることは決してありません。この省略は見落としではなく、この仕組みの主張そのものです。詳しくは実行と概要を参照してください。
FlowからLLMを呼び出せますか?
FlowからLLMを呼び出せますか?
はい。
std/model と、その net および secrets capabilityを宣言する model.complete Toolを通じて呼び出せます。ただしモデル呼び出しは他と同じeffectです。リクエストとレスポンスはJournalに記録され、それ自体が制御フローを操ることはなく、hermeticなリプレイではネットワークなしで記録済みレスポンスが返ります。言い換えると、AIはpinできるデータソースであって、意思決定者ではありません。http.post に適用されるのと同じ記録ルールとredactionルールが、モデル呼び出しにも適用されます。詳しくは標準Packと実行を参照してください。これはプログラミング言語ですか?
これはプログラミング言語ですか?
browser-flowとは何が違いますか?
browser-flowとは何が違いますか?
参照先ではありますが、依存関係ではありません。兄弟プロジェクトの
browser-flow は、単一の自然言語タスクを1つの決定論的なPlaywright Toolへコンパイルします。browser-flowはその哲学、つまり実行時にLLMを使わない、1度作成して永続的に実行する、content-addressed provenance、境界でのシークレット、を借りていますが、そのコードは一切取り込んでいません。browser-flowが1つの決定論的Toolを作るのに対し、browser-flowは多くのToolをFlowへ合成します。そこにFlowSpec IR、Rider、Journal、Pack、Launcherが加わります。ブラウザー検索から条件付きwebhook投稿へつなぐ daily-price-watch Flowは、まさにbrowser-flowが扱わない合成の話です。詳しくは概要を参照してください。Toolがアップグレードされると何が起きますか?
Toolがアップグレードされると何が起きますか?
Toolの入力、出力、capabilityが変わるたびに、そのToolのcontract digestが変わります。そのため、互換性のない変更がパッチを装うことはできません。FlowはdigestによってToolにpinされているため、その変更は上位へ伝播します。同じ名目上のバージョンであってもFlowのdigestも変わり、digest不一致はコンパイル時に表面化します。contractの変更だけでなく挙動の変更を検出するには、Journalをfixtureとしてpinし、
replay --verify を実行します。これはhermeticに再実行し、Toolのアップグレードによっていずれかの手順の出力が変わると失敗します。daily-price-watch では、search-price を新しいRecordingへアップグレードしたとき、抽出された価格の形が変われば、pinされた --verify が失敗するということです。新しいToolが出荷される前に検出できます。詳しくはToolとPackと実行を参照してください。完全なエアギャップ環境で実行できますか?
完全なエアギャップ環境で実行できますか?
はい。すべてのPackとJournalはcontent-addressedであるため、FlowSpecとそのPack、記録済みJournalを隔離環境へ移し、接続性ゼロで結果を再現できます。
詳しくはエアギャップデプロイとToolとPackを参照してください。
現在の状況はどうなっていますか?
現在の状況はどうなっていますか?
エンジン、SDK、YAMLオーサリング、標準Pack、Registry、3つすべてのLauncher(
serve、mcp、schedule)は実装済みでテストされています。@browserflow/browser のRecordingモデルと決定論的リプレイは完成しています。ライブのインタラクティブなPlaywrightキャプチャは計画中です(ops-from-file seam が browserflow record の現在の入口です)。web-apiコントロールプレーンのルートはSQLite向けに実装されています。Next.jsのRun Inspectorは機能しています。キャンバスエディタはプレースホルダーです。マイルストーンごとの状況はロードマップを参照してください。関連
概要と原則
問題、設計原則、そして60秒でつかめるメンタルモデル。
境界でのシークレット
taint ruleと、シークレット値が永続化されない理由。
ロードマップ
仕様とcontractからコントロールプレーンまでのマイルストーン。