Ingenimax/agent-sdk-go

A powerful Go framework for building production-ready AI agents!

Ingenimax / agent-sdk-go – AIエージェントを構築するためのGo SDK

概要

  • 本番環境に対応したAIエージェントを組み立てるためのGoライブラリ(および付属のCLI)です。大規模言語モデル(LLM)プロバイダー(OpenAI、Anthropic、Google Vertex AI)をラップし、エンタープライズレベルのエージェントに共通する機能群(永続メモリ、ツール呼び出し、マルチエージェントオーケストレーション、ガードレール、可観測性、マルチテナント分離)を追加します。

主要機能

分野 SDKが提供するもの
LLM統合 OpenAI、Anthropic、Gemini向けのプラグアンドプレイクライアント。トークン使用量レポート。HTTP/SSEまたはstdioを介したモデルコンテキストプロトコル(MCP)サポート。
メモリ 会話バッファ、ベクトルベースの検索、要約、事実の統合、永続ストレージバックエンド(インメモリ、SQLite、Postgres、Redis)。
ツール 組み込みのWeb検索ツール、計算機、カスタムツールのレジストリ。ツールはエージェントが必要に応じて自動的に呼び出します。
エージェントオーケストレーション YAMLでエージェントを定義し、シーケンシャル、パラレル、ループ、グラフパターンで構成。モデルが会話をより適切なサブエージェントに転送可能。
エンタープライズ機能 安全性のためのガードレール、トレーシング/ロギング、マルチテナント分離、ツール呼び出しの監査や書き換えを行うフック/プラグインシステム、バックグラウンド実行管理、トークンコスト追跡。
開発者体験 宣言的なYAML設定、システムプロンプトからの自動生成エージェントセットアップ、構造化タスクフレームワーク、JSON/JUnitレポート付きのバージョン管理された評価データセット。

使用方法

  1. ライブラリを追加 – go get github.com/Ingenimax/agent-sdk-go。
  2. LLMクライアントを作成(例:openai.NewClient(apiKey))。
  3. tools.NewRegistry()でツールを登録し、必要に応じて組み込みのWeb検索ツールを追加。
  4. agent.NewAgentでエージェントをインスタンス化し、LLM、メモリ、ツール、システムプロンプトなどを渡します。
  5. エージェントを実行 – agent.Run(ctx, "your query")を呼び出すか、付属のagent-cliで対話チャットを開始。

設定

  • 環境変数(例:OPENAI_API_KEY、REDIS_ADDRESS)でSDKを駆動。
  • 完全なYAMLスキーマにより、エージェント、タスク、メモリバックエンド、MCPサーバー、レスポンスJSONスキーマまで記述可能。
  • サンプルYAMLは階層エージェント、サブエージェント、ランタイム設定を示します。

CLI

  • agent-cli initでスターター設定を作成。
  • agent-cli run "question"で単一クエリを実行。
  • agent-cli chatで対話型REPLを起動。
  • CLIはビルド済みバイナリ、go install、またはmake build-cliでローカルビルドからインストール可能。

エコシステム

  • ドキュメントサイト: https://docs.goagents.dev/
  • NinaというAIアシスタントがMCPを介してIDE内ヘルプ(Cursor、Claude Desktop)に接続可能。
  • プロジェクトは分散メモリ用の任意のRedisをサポートし、カスタム監査のためのフックを提供。

対象読者

  • チャットベースのアシスタント、研究ボット、またはLLM推論と外部ツールを組み合わせたワークフローを構築するためのすぐ使えるフレームワークを必要とするGo開発者。
  • すべてをゼロから配線せずにエンタープライズグレードの機能(マルチテナント、ガードレール、可観測性)を求めるチーム。

結論 Ingenimaxのagent-sdk-goは、ツールを呼び出し、コンテキストを記憶し、スケールで安全に動作するAIエージェントを構築、設定、実行するための、包括的でプロダクション重視のGoツールキットです。

関連

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