Go Micro - Go向けエージェントハーネス
(go-micro.dev)- エージェント/サービス/ワークフローを単一のランタイム上で構築するGoフレームワーク
- ツール、メモリ、ガードレール、トリガーワークフロー、依存サービス、他のエージェントがアクセスするプロトコルまでを単一のハーネスに統合
- サービスのすべてのエンドポイントが自動的にAIから呼び出し可能なツールへ変換され、MCPとA2Aプロトコルで外部からアクセス可能
- プロンプトベースのサービス生成
- 作りたいシステムをプロンプトで入力すると、AIがアーキテクチャを設計したうえでハンドラーコードを生成/コンパイル/実行
- 会話中に必要なサービスをその場で追加生成することも可能(例: 「shippingの追跡が必要」→ shippingサービスを自動生成)
- 生成されたコードを直接修正しても、再実行時に変更内容を保持
- すべてのエージェントに**
plan/delegate**の2つのツールを標準搭載- マルチステップの作業は順序付きの計画として記録
- サブタスクは他のエージェントに委任: すでに登録済みのエージェントがあればRPCで渡し、なければ隔離されたサブエージェントを作成
- 耐久性のあるワークフロー: チェックポイント済みのフローステップはクラッシュ後も停止した地点から再開し、既知の経路にはflow、動的な経路にはエージェントディスパッチを使用
- storeベースの永続メモリを標準搭載: 再起動後も作業を継続し、
AgentCompactMemoryで古い会話は要約圧縮/最近の会話は原文保持/必要に応じて保管済み会話を取得 - ガードレールは実行地点に配置:
MaxSteps(回数制限)、LoopLimit(進展のない反復を中断)、ApproveTool(人による承認の介入) - すべての抽象化がGoインターフェース: registry(mDNS→Consul→etcd)、ブローカー(NATS/RabbitMQ)、store(File/Postgres/NATS KV)などをコード変更なしで差し替え可能
- 7つのLLMプロバイダーをサポート(Anthropic、OpenAI、Gemini、Groq、Mistral、Together、Atlas Cloud)、importを1行変えるだけで差し替え可能
- CLIの1コマンドでホットリロード(
micro run)、本番ビルド(micro build)、DockerなしのSSH+systemdデプロイ(micro deploy user@server) - Apache 2.0ライセンス
1件のコメント
v4 のときに使ってみたことがありましたが、これがもう v6 だなんて!