The VeADK Go agent entry point is github.com/volcengine/veadk-go/v2/agent/llmagent. It extends ADK Go llmagent.Config with Volcengine Ark/OpenAI-compatible model settings, knowledge bases, long-term memory, PromptManager, Skills discovery, and VeADK built-ins.
Minimal Agent
llmagent.New accepts *veagent.Config and returns the ADK Go agent.Agent interface. A minimal config declares the agent name, description, and instruction. Model settings can be passed explicitly or resolved from environment/global defaults.
When ModelName, ModelProvider, ModelAPIKey, or ModelAPIBase is omitted, VeADK Go resolves defaults from environment variables and global config. For Ark models, if no API key is supplied, it can fall back to the default-region Ark token provider.
Tools are configured on the embedded ADK llmagent.Config.Tools. The example below uses VeADK Go’s built-in Web Search tool. Function tools, MCP toolsets, and Sandbox tools follow the same mounting pattern.
Config Reference
Knowledge and Memory Wiring
KnowledgeBase and LongTermMemory are VeADK Go’s higher-level additions on top of ADK agents. They do not change how agent.Agent is called; they add tools the model can use:
KnowledgeBase adds retrieval through LoadKnowledgeBaseTool.
LongTermMemory adds loadmemorytool.New().
LongTermMemory is also associated with the agent so runner.New can reuse it when MemoryService is not passed explicitly.
Recommendations
- Use the
github.com/volcengine/veadk-go/v2 module path for new projects. Use the corresponding V1 historical-version documentation for the V1 maintenance line.
- Do not commit model, tool, or knowledge-base credentials.
- Make tool policies explicit in the instruction: when to retrieve, when to call external tools, and how to answer when material is missing.
- Add confirmation logic for tools with side effects.
Last modified on October 20, 2026