介绍

安装

配置aster开发环境

安装指南

本指南将帮助您配置aster的开发环境。

📋 前置要求

Go环境

aster需要Go 1.24或更高版本

检查Go版本:

go version

如果未安装Go,请访问 Go官网 下载安装。

推荐配置

  • 操作系统:Linux、macOS或Windows
  • 内存:至少4GB RAM
  • 磁盘空间:至少500MB可用空间

API密钥

您需要至少一个大模型提供商的API密钥:

📦 安装aster

方式1:使用go get(推荐)

go get github.com/astercloud/aster

方式2:在项目中使用

在你的Go项目中:

# 初始化Go模块(如果还未初始化)
go mod init your-project-name

# 添加aster依赖
go get github.com/astercloud/aster

这会自动下载aster及其所有依赖。

方式3:从源码构建

# 克隆仓库
git clone https://github.com/astercloud/aster.git
cd aster

# 下载依赖
go mod download

# 运行测试(可选)
go test ./...

🔑 配置API密钥

环境变量(推荐)

创建 .env 文件:

# Anthropic
export ANTHROPIC_API_KEY="sk-ant-xxxxx"

# OpenAI
export OPENAI_API_KEY="sk-xxxxx"

# DeepSeek
export DEEPSEEK_API_KEY="sk-xxxxx"

加载环境变量:

source .env

代码中配置

import "github.com/astercloud/aster/pkg/provider"

// Anthropic
p := provider.NewAnthropicProvider("your-api-key")

// OpenAI
p := provider.NewOpenAIProvider("your-api-key")

// DeepSeek
p := provider.NewDeepSeekProvider("your-api-key")

🛠️ 可选:沙箱配置

本地沙箱(默认)

本地沙箱无需额外配置,开箱即用。

Docker沙箱

如果需要Docker沙箱:

# 安装Docker
# macOS: https://docs.docker.com/desktop/mac/install/
# Linux: https://docs.docker.com/engine/install/
# Windows: https://docs.docker.com/desktop/windows/install/

# 验证安装
docker --version

云端沙箱

阿里云AgentBay

  1. 开通阿里云AgentBay服务
  2. 获取AccessKey和SecretKey
  3. 配置环境变量:
export ALIYUN_ACCESS_KEY_ID="your-access-key"
export ALIYUN_ACCESS_KEY_SECRET="your-secret-key"
export ALIYUN_REGION="cn-hangzhou"

火山引擎沙箱

  1. 开通火山引擎服务
  2. 获取AK/SK
  3. 配置环境变量:
export VOLC_ACCESS_KEY_ID="your-access-key"
export VOLC_SECRET_ACCESS_KEY="your-secret-key"
export VOLC_REGION="cn-beijing"

✅ 验证安装

创建 test_install.go

package main

import (
    "fmt"
    "log"

    "github.com/astercloud/aster/pkg/agent"
    "github.com/astercloud/aster/pkg/tools"
)

func main() {
    // 检查包导入
    fmt.Println("aster导入成功!")

    // 创建工具注册表
    registry := tools.NewRegistry()
    fmt.Printf("工具注册表创建成功: %v\n", registry)

    // 打印版本信息
    fmt.Println("安装验证通过!")
}

运行测试:

go run test_install.go

预期输出:

aster导入成功!
工具注册表创建成功: &{...}
安装验证通过!

📚 依赖说明

aster的主要依赖包括:

github.com/anthropics/anthropic-sdk-go
github.com/openai/openai-go
github.com/gorilla/websocket
github.com/stretchr/testify (仅测试)

所有依赖会通过 go get 自动安装。

🐛 常见问题

问题1:go get失败

症状:网络连接超时或被拒绝

解决方案:配置Go代理

# 中国大陆用户推荐
go env -w GOPROXY=https://goproxy.cn,direct

# 或使用阿里云镜像
go env -w GOPROXY=https://mirrors.aliyun.com/goproxy/,direct

问题2:找不到模块

症状cannot find module

解决方案

# 清理缓存
go clean -modcache

# 重新下载
go mod download

# 更新依赖
go get -u github.com/astercloud/aster

问题3:权限错误

症状permission denied

解决方案

# 确保Go安装目录有写权限
sudo chown -R $USER:$USER $(go env GOPATH)

问题4:版本冲突

症状:依赖版本不兼容

解决方案

# 更新到最新版本
go get -u github.com/astercloud/aster@latest

# 或指定版本
go get github.com/astercloud/aster@v0.1.0

# 整理依赖
go mod tidy

🔄 更新aster

更新到最新版本

go get -u github.com/astercloud/aster@latest
go mod tidy

查看当前版本

go list -m github.com/astercloud/aster

切换到特定版本

go get github.com/astercloud/aster@v0.2.0

📦 项目模板

推荐的项目结构:

my-agent-project/
├── go.mod
├── go.sum
├── .env                 # API密钥(不要提交到Git)
├── .gitignore
├── main.go
├── agents/              # Agent定义
│   ├── assistant.go
│   └── coder.go
├── tools/               # 自定义工具
│   └── custom_tool.go
├── middleware/          # 自定义中间件
│   └── logger.go
└── workspace/           # 沙箱工作目录

示例 .gitignore

# 环境变量
.env
.env.local

# 工作目录
workspace/
.aster/

# Go构建
*.exe
*.exe~
*.dll
*.so
*.dylib
*.test
*.out

# 依赖
vendor/

🚀 下一步

安装完成后,继续学习:

💡 开发工具推荐

IDE/编辑器

  • VS Code + Go扩展
  • GoLand by JetBrains
  • Vim/Neovim + vim-go

调试工具

  • Delve:Go调试器
  • pprof:性能分析

代码质量

  • golangci-lint:代码检查
  • gofmt:代码格式化(Go自带)
# 安装golangci-lint
go install github.com/golangci/golangci-lint/cmd/golangci-lint@latest

# 运行检查
golangci-lint run

📖 参考资源