中文
100% Local · Multi-Pillar Architecture

Powerful RAG & Autonomous Agent

A comprehensive intelligence framework for Go. Seamlessly combining Vector RAG, GraphRAG, MCP Tools, Skills, and Semantic Intent Routing.

RAG MCP Skills Team LongRun A2A PTC

Core Capabilities

Hybrid RAG

High-performance vector search powered by CortexDB. Supports file/vector/hybrid memory modes with automatic document ingestion.

MCP & Skills

Native MCP server support with Claude-compatible Markdown skills for complex task execution and tool calling.

Team & LongRun

Multi-agent teams coordinated by a Captain. LongRun for continuous autonomous agents with heartbeat scheduling.

Intent Routing

Semantic router for lightning-fast intent recognition and precise tool dispatching.

PTC & A2A

Programmatic Tool Calling in sandbox. Agent-to-Agent protocol for distributed multi-agent systems.

Memory

Hierarchical memory with session scope. Supports fact/pattern/context/preference types with automatic reflection.

# Build CLI
go build -o agentgo-cli ./cmd/agentgo-cli

# RAG operations
./agentgo-cli rag ingest ./my-docs           # Ingest documents
./agentgo-cli rag query "How does it work?" # Query RAG
./agentgo-cli rag list                        # List documents

# Agent operations
./agentgo-cli agent run "analyze logs"       # Run agent
./agentgo-cli agent plan create "goal"      # Create plan
./agentgo-cli agent execute [plan-id]       # Execute plan
./agentgo-cli agent ptc-chat [message]      # PTC chat

# MCP & Skills
./agentgo-cli mcp status                     # MCP status
./agentgo-cli mcp chat [message]            # MCP chat
./agentgo-cli skills list                    # List skills
./agentgo-cli skills run [skill-id]         # Run skill

# Other
./agentgo-cli status                         # Show status
package main

import "github.com/liliang-cn/agent-go/v2/pkg/agent"

func main() {
    svc, err := agent.New("my-agent").
        WithRAG().
        WithMemory().
        WithMCP("/path/to/mcpServers.json").
        WithSkills("/path/to/skills").
        WithDebug().
        Build()
    if err != nil {
        panic(err)
    }

    result, err := svc.Run(ctx, "Your question")
    println(result.Text())
}
package main

import "github.com/liliang-cn/agent-go/v2/pkg/agent"

func main() {
    mgr, err := agent.NewTeam("~/.agentgo/data/agentgo.db").
        WithAgentName("MyApp").
        WithTeamName("Dev Team").
        Build()

    // Built-in agents: Captain, Assistant, Concierge, Operator, Archivist
    task, err := mgr.EnqueueSharedTask(ctx,
        "Captain",
        []string{"Assistant", "Operator"},
        "Implement user authentication",
    )

    status := mgr.GetTaskStatus(task.ID)
}
package main

import "github.com/liliang-cn/agent-go/v2/pkg/agent"

func main() {
    // Build agent first
    svc, err := agent.New("worker").
        WithMemory().
        WithRAG().
        Build()

    // Create LongRun
    longrun, err := agent.NewLongRun(svc).
        WithInterval(30 * time.Second).
        WithWorkDir("/data/longrun").
        WithMaxActions(100).
        WithApproval(true).
        Build()

    longrun.Start(ctx)
    longrun.AddTask(ctx, "Check system health", nil)
}
package main

import "github.com/liliang-cn/agent-go/v2/pkg/rag"

func main() {
    client := rag.NewClient(cfg)

    // Ingest documents
    err := client.Ingest(ctx, &domain.IngestRequest{
        FilePath: "/path/to/doc.pdf",
    })

    // Query
    resp, err := client.Query(ctx, &domain.QueryRequest{
        Query:       "Your question",
        TopK:        5,
        Temperature: 0.7,
    })
    println(resp.Answer)
}