
Finyuus
Marius Ndini · コーディング
Finyuusは、耐久性のあるAIワークフローを作成、実行、統制するためのコード中心のAIワークフロープラットフォームだ。エージェント、ツール、ガード、承認をインデントベースの小さな言語で定義すると、Finyuusがその結果をTemporal上で実行するため、実行はクラッシュ、再起動、長時間の待機を乗り越える。スタック全体を自前でホストする。ランタイムとデータは自分のものだ。プロンプト、リトライ、承認ロジックをアプリケーションコードに縫い込み続けてきたチームにとって、このオープンソースのAIワークフローツールは、その振る舞いをバージョン管理され監査可能な一箇所にまとめる手段になる。大きな転換であり、腹を決める前に理解しておく価値がある。

Finyuus について
Finyuusとは何か
FinyuusはAIの振る舞いを、データベースがSQLを扱うのと同じように扱う。つまり、独自のインターフェース、独自のバージョン管理、独自のライフサイクルを持つ独立した層として捉える。プロンプトやツール呼び出しをアプリの中に隠すのではなく、プラットフォームが保存し、バージョン管理し、実行するワークフローとして書く。エージェント定義、ガード、スキーマ、パイプラインはそれぞれ保存可能なオブジェクトで、バージョンに固定してプロジェクトをまたいで再利用できる。
最も重要なのはランタイムだ。実行はTemporalを通るため、ワークフローは人間の承認を1時間待って一時停止し、ワーカーが再起動した後に再開し、それでも正確な履歴を保てる。この中核の周りに、FinyuusはLangfuseによる可観測性、ClickHouse上のアプリケーションデータ、ローカルMinIOまたはS3上のファイル保存、そして実行を作成・確認するためのダッシュボードを備える。
これが日常で何をもたらすのか。大量のつなぎコードなしで、堅実なAIエージェントオーケストレーションが手に入る。人間参加型の承認は後付けではなく一級の文だ。ドラッグ&ドロップのおもちゃを求める人向けではなく、開発者向けに作られている。ローカルプラットフォームを立ち上げるにはNode.js 22以降、pnpm、Dockerが必要で、サンプルにはOpenAIかAnthropicのキーも要る。ここにはホスト型の提供もロードマップもなく、マネージドの料金ページもない。つまりトレードオフは明白だ。自前のインフラを動かす代わりに、完全な制御を得る。これは現実のコストであり、チームはそれを織り込むべきだ。
はじめかた
- Node.js 22以降とpnpm 10以降をインストールし、Docker Desktopが起動していることを確認する。
cp .env.local.example .env.localで環境テンプレートをコピーし、少なくとも1つのLLMプロバイダーのキー(OPENAI_API_KEYかANTHROPIC_API_KEY)を追加する。make initを実行してローカルのシークレットとアプリの環境ファイルを生成し、続いてmake upでPostgres、ClickHouse、Redis、MinIO、Temporal、Langfuseを起動する。- 任意で
make demosを実行し、サンプルのツール、スキーマ、エージェント、パイプラインを投入する。まっさらな状態から始めてもよい。 pnpm build-webとpnpm start-webでWebアプリをビルドして起動し、pnpm start-workerでワーカーを起動して、http://localhost:3001でダッシュボードを開く。
AIツール情報
Finyuusの料金、対応プラットフォーム、性能を簡単に確認できます。
こんな人におすすめ
このツールが最も力を発揮するユーザー、タスク、シーン。
ユーザー
- バックエンドおよびプラットフォームの開発者:Finyuusは、ローカルでNode.jsとDockerを動かすことに抵抗がないエンジニアに向く。AIワークフローをGitでバージョン管理し、コードのようにレビューしたい人に合う。
- 規制対象や機微なリクエストを扱うチーム:自前ホストのランタイムと人間による承認のステップはコンプライアンスの流れに合う。プロンプトと出力が自分で管理するインフラから外に出ないからだ。これが売りだ。
タスク
- 多段階のAIエージェントを構築する:モデル呼び出し、ツール、子パイプラインを、アプリケーションサービス経由で配線するのではなく1つの定義に組み立てる。
- 人間参加型のレビューを加える:承認文は実行を一時停止し、レビュアーに割り当て、承認か拒否かで分岐する。タイムアウトの扱いも本物だ。
- ワークフローをAPIとして公開する:どのパイプラインも、レート制限、冪等キー、サーバー送信イベントを備えた認証付きHTTPエンドポイントにできる。
シーン
- 再起動に耐える必要のある長時間ジョブを動かす:Temporalがクラッシュや数時間の待機をまたいで状態を保つため、止まったワーカーが実行を台無しにしない。
- AIシステムがある出力を生んだ理由を監査する:Langfuseのトレース、Temporalの履歴、実行イベントが一箇所にそろい、確認できる。
- 本番前にローカルで試作する:CLIランナーは `.fy` パイプラインファイルを、Temporalスタック全体を起動せずに実行する。
主な機能
インデントベースのワークフローDSL
Finyuusの言語は、汎用スクリプトではなくAIオーケストレーションのために書かれた小さなドメイン固有言語だ。文はエージェント呼び出し、ネイティブおよびHTTPツール、ガード、承認、条件分岐、ループ、並列ブランチ、子パイプラインを網羅する。ワークフローはプレーンテキストなので、差分を取って比べ、プルリクエストでレビューし、部品をプロジェクトをまたいで再利用できる。それこそが存在理由だ。読んで比べられるAIの振る舞いであり、箱で埋まったキャンバスではない。箱はない。ただのテキストだ。
Temporal上の耐久実行
すべての実行はTemporalに支えられている。これが長い待機と障害を乗り越えられる理由だ。ワーカーが実行の途中で落ちても、ワークフローは記録された状態から再開し、最初からやり直さない。リトライ、キャンセル、子ワークフローのオーケストレーションも同じ層から来る。ただ動く。数時間のエージェントジョブがクラッシュで消えるのを見たことがある人にとって、この機能は判断を変える。
ポリシーと信頼度チェックのためのガード
ガードはLLMベースのポリシーチェックで、allowed、confidence、reasonといったフィールドを返す。パイプラインは通過かブロックの分岐に実行を振り分け、単純な可か不可ではなく信頼度のしきい値で判断できる。これにより、モデルが金融アドバイスの質問に直接答えるのを防いだり、公開ポリシーに反する出力をユーザーに届く前に止めたりできる。単純な発想。実務では大きな違いだ。
本物のタイムアウト付きの人間承認
承認文は、レビュアーがダッシュボードかAPIで解決するまでワークフローを一時停止する。担当者、タイムアウト、タイムアウト時の処理を設定すると、パイプラインは承認済みと却下の経路に分岐する。提案ではなく本物の停止だ。「後で確認する」と、危険な出力を実際に止めて人間を待ってから再開するシステムの違いはここにある。
バージョン管理された再利用可能なコンポーネント
エージェント、ガード、ツール、スキーマ、パイプラインは、不変のバージョン固定を伴う保存可能なオブジェクトだ。pipeline:company_research@v2 と書けば、まさにそのバージョンが手に入る。誰かが最後に編集したものではない。固定して、先へ進む。子パイプラインは直接呼び出しても、エージェントツールとして包んでもよい。だから一箇所の変更が、依存するすべてのワークフローに静かに波及することはない。
パイプラインのAPI公開
どのパイプラインもHTTPエンドポイントとして公開でき、Bearerトークン認証、Redisを土台にしたレート制限、冪等キー、入力検証を備える。サーバー送信イベントが実行の更新を呼び出し元へ流し、承認は独自のイベントを発する。プロセスの上限は既定で全体が毎分300リクエスト、エンドポイントごとに120リクエストで、すべて環境変数で設定できる。妥当な既定値。上書きは簡単だ。
スタック全体の可観測性
トレース、トークン使用量、モデルコストはLangfuseに集まり、アプリケーションデータとパイプラインのテーブルはClickHouseにある。実行履歴、ガードの結果、承認の判断はダッシュボードで見える。狙いはダッシュボードを増やすこと自体ではない。断片化したAIシステムには、たいてい「この実行で実際に何が起きたか」に答える一箇所がない、ということだ。
オブジェクトストレージとデータ操作
ファイルや大きな成果物は設定可能なオブジェクトストレージへ送られ、既定はローカルMinIOで、いくつかの環境変数でAWS S3に切り替えられる。DSLはファイルの読み書きとClickHouseを土台にしたテーブルを一級の文として扱うため、構造化データの操作は別サービスではなくワークフローの中にある。世話をする余計なサービスは要らない。
メリットとデメリット
メリット
- Apache 2.0の下で自前ホストかつオープンソースなので、ランタイム、データ、デプロイを自分で管理できる。
- 耐久実行がクラッシュ、リトライ、数時間の承認待ちを、実行状態を失わずに処理する。
- ワークフローはテキストなので、通常のGitレビュー、読める差分、バージョン固定された再利用可能なコンポーネントが使える。
- ガードと人間承認は後付けではなく組み込みで、規制対象の用途ではこれが効く。
- CLIランナーを使えば、Temporal、ClickHouse、MinIOのスタック全体を起動せずにパイプラインファイルを試せる。
デメリット
- ホスト型の選択肢がないため、Postgres、Temporal、Redis、ClickHouseのインフラ負担を自分で背負うことになる。
- セットアップは本物の開発スキルを前提とする。Node.js、pnpm、Docker、プロバイダーのAPIキーが、何かが動く前の必須条件だ。
- ドキュメントはGitHub中心で、非技術者向けの洗練された入門チュートリアルがない。
- DSLは新しく学ぶ言語であり、ビジュアルビルダーと違い、箱をドラッグしたい人には響かない。
よくある質問
Finyuusは耐久性のあるAIワークフローを作成し実行する。インデントベースの言語でエージェント、ツール、ガード、承認を定義すると、プラットフォームがそれらをTemporal上で実行し、バージョン管理、可観測性、そして自分のアプリから結果を呼び出すAPIを提供する。隠しごとはない。
関連コンテンツ
Finyuusに関連するツール、スキル、記事を探す。
Finyuusの代替ツール
Forefront
Forefront · コーディングForefrontはオープンソースAIで構築するためのウェブプラットフォームだ。主要なオープンソース言語モデルを自分のデータで微調整し、性能を評価し、API経由で実行したり、エクスポートして自分でホストしたりできる。クローズドなプラットフォームの手軽さを求めつつ、モデルとデータの所有権にはこだわる開発者が対象だ。
Startkit
StartKit.AI · コーディングStartkitは、AI SaaSとAIラッパー製品を作るためのボイラープレートだ。面倒な部分をあらかじめ配線済みにしたAIスタートアップボイラープレートと考えればいい。認証、StripeとLemon Squeezyの決済、利用制限、トランザクションメール、そしてOpenAI、Anthropic、Groq、Llamaと通信するAI APIスターターキットが含まれる。リポジトリをクローンして価格を設定し、ユーザーが実際にお金を払う部分に取りかかれる。ReactとTailwind上のNext.jsで作られているため、ボイラープレートコードの多くはすでに見慣れたものだ。
Testim
Tricentis · コーディングTestimは、Web・モバイル・Salesforceアプリ向けにエンドツーエンドテストを構築して実行するAIテスト自動化プラットフォームだ。機械学習を頼りに、インターフェースが変わってもテストを安定させ、チームが壊れたセレクターの修正に費やす時間を減らす。今日から使い始められる自動テストツールとしては悪くない。ブラウザで操作を録画してテストを作り、より細かい制御が必要なときはJavaScriptを足す。忙しいQAチームにとって堅実な選択肢である。
