clavia-labs/tardigrade

The TypeScript framework for building modular agents around an immutable event log.

解決する課題

Tardigradeは、複雑な状態と信頼性の高いアクション履歴を維持する必要があるAIエージェントを構築するための、構造化された関数型フレームワークを提供します。イミュータブルなイベントログを使用することで、エージェントの現在の状態が常にイベント履歴から導出可能であることを保証し、エージェントワークフローにおける状態管理の問題を解決します。

仕組み

このフレームワークはEffect TSに基づいて構築されており、「atoms」という概念を使用して状態とロジックを管理します。

  • Atoms: 状態ストレージの基本単位。
  • Durable Atoms: イミュータブルなイベントログを現在の状態に還元し、状態の復旧と永続化を可能にします。
  • Effect Atoms: 他のatomsの現在の状態に基づいてビューを導出し、アクション (acts) を提案します。

エージェントはこれらのatomsを「actor」に構成し、ワーカーとしてデプロイできます。このシステムは、Cloudflare (Durable Objectsを使用) またはセルフホスト型のCelldフリートでのホスティングをサポートしており、各actorインスタンスはスーパーバイザーと、独自のSQLiteバックエンドジャーナルを持つ個別のスレッドによって管理されます。

対象ユーザー

TypeScriptで複雑で構成可能なAIエージェントを構築する開発者で、状態管理に関数型プログラミングのアプローチを好み、セッション間で永続的かつ安定した状態を求める方に最適です。

ハイライト

  • イミュータブルなイベントログ: 状態はイベント履歴から導出され、一貫性と正確性を保証します。
  • 関数型コンポジション: Effect TSに基づいて構築されており、ElmやJotaiから着想を得ています。
  • 永続的な状態: エージェントスレッド用のSQLiteバックエンドストレージを統合サポート。
  • Cloudflare & Celldサポート: Cloudflare WorkersおよびCelldフリートへのデプロイをファーストクラスでサポート。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト