基于Go channel的事件系统,支持Progress、Control、Monitor三类事件通道,实现非阻塞式交互。
灵活的中间件栈,支持文件系统、子Agent、总结等内置中间件,轻松实现功能扩展。
支持本地和云端(阿里云/火山引擎)沙箱,确保代码执行安全隔离。
统一的Provider接口,支持Anthropic、OpenAI、DeepSeek等主流大模型。
内置文件系统、Bash、HTTP、Web搜索等工具,支持MCP协议和自定义工具。
支持Agent Pool和Room模式,内置Scheduler实现复杂任务的智能分发。
go get github.com/wordflowlab/agentsdk
package main
import (
"context"
"fmt"
"log"
"os"
"github.com/wordflowlab/agentsdk/pkg/agent"
"github.com/wordflowlab/agentsdk/pkg/provider"
"github.com/wordflowlab/agentsdk/pkg/types"
)
func main() {
// 创建Agent
ag, err := agent.Create(context.Background(), &types.AgentConfig{
TemplateID: "assistant",
ModelConfig: &types.ModelConfig{
Provider: "anthropic",
Model: "claude-sonnet-4-5",
APIKey: os.Getenv("ANTHROPIC_API_KEY"),
},
}, deps)
if err != nil {
log.Fatal(err)
}
defer ag.Close()
// 发送消息并监听事件
eventCh := ag.Subscribe([]types.AgentChannel{types.ChannelProgress}, nil)
go func() {
for event := range eventCh {
// 处理事件
}
}()
ag.Chat(context.Background(), "介绍一下Go语言的优势")
}
import "github.com/wordflowlab/agentsdk/pkg/tools"
// 注册内置工具
ag.RegisterTool(tools.BashTool())
ag.RegisterTool(tools.FileSystemTool())
// 发送需要使用工具的请求
eventCh := ag.Chat(ctx, "列出当前目录下的文件")
AgentSDK采用事件驱动架构,通过Go channel实现异步通信:
基于洋葱模型的中间件栈,支持:
支持多种沙箱后端:
AgentSDK采用三层架构:
从零开始创建你的第一个Agent
深入理解AgentSDK的设计理念
真实场景的完整代码示例
完整的API文档和类型定义
了解AgentSDK的架构设计
查看源码和贡献代码
AgentSDK采用MIT License开源。