Skip to main content
The GAIA C++ agent framework. Drop AI agent capabilities into any C++ project — three lines of CMake, zero manual dependencies, any OpenAI-compatible LLM backend.
  • Native performance — compiled binary, no interpreter overhead
  • Easy integration — add to any CMake project via FetchContent, git submodule, or find_package (Integration Guide)
  • Any LLM backend — works with Lemonade, llama.cpp, Ollama, vLLM, OpenAI, or any OpenAI-compatible server (details)
  • Full MCP support — connects to any MCP server via stdio transport
  • Full agent loop — planning, tool execution, error recovery, multi-step plans
Source Code: cpp/ in the GAIA repository. The C++ framework focuses on the core agent loop and tool execution. Specialized agents (Code, Docker, Jira, Blender), the REST API server, RAG, and audio are available in the Python SDK.

First time here? Complete the C++ Setup guide first to install CMake, a C++17 compiler, and Lemonade Server.

Build

1

Clone the repository

git clone https://github.com/amd/gaia.git
cd gaia/cpp
2

Configure and build

cmake -B build -G "Visual Studio 17 2022" -A x64
cmake --build build --config Release
Binaries land in build\Release\.
All dependencies (nlohmann/json, cpp-httplib, Google Test) are fetched automatically by CMake — no manual installs required.
3

Start an LLM server

The agent connects to any OpenAI-compatible LLM server at http://localhost:8000/api/v1 by default. The recommended backend is Lemonade Server (optimized for AMD hardware):
lemonade-server serve
Not using Lemonade? Any OpenAI-compatible server works — llama.cpp, Ollama, vLLM, or a cloud endpoint. Just set AgentConfig::baseUrl and AgentConfig::modelId. See the Integration Guide for configuration examples.
4

Run a demo agent

Both demo agents are Windows-only (they use PowerShell for system interaction).Windows System Health Agent (requires uvx for the MCP server):
build\Release\health_agent.exe
The agent connects to the Windows MCP server, gathers CPU/memory/disk/GPU metrics via PowerShell, and presents results in the console or writes a full report to Notepad.Wi-Fi Troubleshooter (no extra dependencies, run as admin for fix tools):
build\Release\wifi_agent.exe
Select GPU or NPU backend, then try “Full network diagnostic” or ask a specific question. The agent reasons about each result and adapts its approach in real-time.Type quit to exit.

Running Tests

Verify your build with the unit test suite (no LLM server required):
build\Release\tests_mock.exe --gtest_color=yes
See the Testing Guide for the full test suite — unit tests (8 modules), integration tests (LLM, MCP, Wi-Fi, Health), CI pipeline, and how to add new tests.

Next Steps