How ingenimax/agent-sdk-go works
Ingenimax Agent Go SDK is a framework for building AI agents and applications, with a CLI as one entry point. The main workflow configures an agent, accepts a prompt, uses an LLM and optional tools or memory, and returns a response. Distinct capabilities include multi-agent orchestration, structured tasks, sessions and memory consolidation, MCP/A2A integrations, and evaluation. The graph follows README claims and sampled source; links among unsampled subsystems are omitted where wiring is uncertain.
Main entry points: agent.go Agent · tool_pipeline.go Tool pipeline · types.go LLM clients · factory.go Memory management
Components 24
Agent runtime
- Configuration
pkg/config/config.go - Agent
pkg/agent/agent.go - Tool pipeline
pkg/agent/tool_pipeline.go - Guardrails
pkg/guardrails/guardrails.go - Hooks and plugins
pkg/hooks/hooks.go - Tracing and usage
pkg/tracing/traced_llm.go
Models and tools
- LLM clients
pkg/llm/types.go - Provider adapters
pkg/llm/openai/client.go - Tool ecosystem
pkg/tools/registry.go - MCP integration
pkg/mcp/mcp.go
Memory and state
- Memory management
pkg/memory/factory.go - Datastores
pkg/datastore/postgres/postgres.go - Session persistence
pkg/session/manager.go - Memory consolidation
pkg/consolidation/consolidation.go
Agent composition
- Multi-agent patterns
pkg/orchestration/patterns.go - Execution plans
pkg/executionplan/executionplan.go - Structured tasks
pkg/task/agent_service.go - Agent evaluation
pkg/eval/runner.go
Application interfaces
- Agent CLI
cmd/agent-cli/main.go - A2A server
pkg/a2a/server.go - gRPC interface
pkg/grpc/server/agent_server.go - HTTP and UI
pkg/microservice/http_server.go
Other components
- User
- LLM providers
Connections 24
- User → Agent CLI: submits prompt
- Agent CLI → Configuration: loads settings
- Agent CLI → Agent: runs prompt
- Agent → LLM clients: requests generation
- LLM clients → Provider adapters: selects adapter
- Provider adapters → LLM providers: sends requests
- Agent → Tool pipeline: decorates tools
- Tool pipeline → Guardrails: applies policies
- Tool pipeline → Hooks and plugins: intercepts calls
- LLM clients → Tool ecosystem: executes tool calls
- Tool ecosystem → MCP integration: uses MCP tools
- Agent → Memory management: uses conversation memory
- Memory management → Datastores: persists data
- Agent → Session persistence: runs in session
- Session persistence → Datastores: stores session state
- Memory management → Memory consolidation: supports consolidation
- Multi-agent patterns → Agent: composes agents
- Execution plans → Agent: executes plan
- Structured tasks → Agent: delegates task
- Agent evaluation → Agent: evaluates target
- A2A server → Agent: serves agent
- gRPC interface → Agent: exposes agent
- HTTP and UI → Agent: provides agent UI
- Agent → Tracing and usage: records activity