aster

package module
v0.19.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 28, 2025 License: MIT Imports: 0 Imported by: 0

README

星尘汇聚,智能成枢
让每一个 Agent 都能在生产环境中闪耀

Go CI Go Report Card codecov Release License

📖 完整文档 · 🚀 快速开始 · 🏗️ 架构设计 · 📝 示例代码


什么是 Aster?

Aster 是一个生产级 AI Agent 框架,用 Go 语言构建,专为企业级应用设计。它完整实现了 Google Context Engineering 白皮书的所有核心特性。

✨ 核心特性

特性 描述
🔄 事件驱动架构 Progress/Control/Monitor 三通道设计
🧠 三层记忆系统 Text/Working/Semantic Memory + 溯源 + 合并
🔀 Workflow 编排 8种步骤类型 + 动态路由 + 并行/顺序/循环
🛡️ 安全防护栏 PII 检测、提示注入防护、内容审核
☁️ 云沙箱集成 阿里云 AgentBay、火山引擎原生支持
📊 可观测性 OpenTelemetry 完整集成
💾 数据持久化 PostgreSQL + MySQL 双数据库支持
🔌 MCP 协议 Model Context Protocol 工具扩展

🚀 快速开始

安装

go get github.com/astercloud/aster

最小示例

package main

import (
    "context"
    "fmt"
    "os"

    "github.com/astercloud/aster/pkg/agent"
    "github.com/astercloud/aster/pkg/provider"
    "github.com/astercloud/aster/pkg/types"
)

func main() {
    // 创建 Agent
    ag, _ := agent.Create(context.Background(), &types.AgentConfig{
        TemplateID: "assistant",
        ModelConfig: &types.ModelConfig{
            Provider: "anthropic",
            Model:    "claude-sonnet-4-5",
            APIKey:   os.Getenv("ANTHROPIC_API_KEY"),
        },
    }, agent.DefaultDependencies())
    defer ag.Close()

    // 对话
    result, _ := ag.Chat(context.Background(), "Hello, World!")
    fmt.Println(result.Text)
}

👉 更多示例请查看 完整文档

📐 架构概览

aster 系统架构

Middleware 洋葱模型

Middleware 洋葱模型

📚 文档

文档 描述
快速开始 5分钟上手 Aster
核心概念 Agent、Memory、Workflow 等核心概念
Workflow 编排 工作流配置与执行
API 参考 完整 API 文档
示例代码 丰富的使用示例
架构设计 系统架构与设计理念

🏆 Google Context Engineering 实现度

Aster 是首个完整实现 Google Context Engineering 标准的 Go 语言框架:

  • ✅ Sessions & Memory
  • ✅ Memory Provenance
  • ✅ Memory Consolidation
  • ✅ PII Auto-Redaction
  • ✅ Event-Driven Architecture
  • ✅ Streaming & Backpressure
  • ✅ Multi-Agent Orchestration
  • ✅ Observability

📊 项目状态

指标 数值
代码量 18,000+ LOC
测试覆盖 80%+
版本 v0.17.0
状态 ✅ 生产就绪

🤝 贡献

欢迎贡献代码!请查看 贡献指南

📄 License

MIT License - 详见 LICENSE 文件

Documentation

Index

Constants

View Source
const Version = "v0.19.0"

Version represents the current version of aster

Variables

This section is empty.

Functions

func GetVersion

func GetVersion() string

GetVersion returns the current version string

Types

type VersionInfo

type VersionInfo struct {
	Version   string
	GoVersion string
	GitCommit string
	BuildTime string
}

VersionInfo provides detailed version information

func GetVersionInfo

func GetVersionInfo() VersionInfo

GetVersionInfo returns detailed version information

Directories

Path Synopsis
cmd
aster command
aster-server command
a2a command
actor command
Package main 演示如何使用 Actor 模型实现多 Agent 协作
Package main 演示如何使用 Actor 模型实现多 Agent 协作
agent command
asteros/basic command
cloud-sandbox command
comprehensive command
evals command
evals-session command
guardrails command
logging command
mcp command
mcp/server command
memory command
memory-advanced command
memory-agent command
memory-semantic command
memory-working command
model-fallback command
openrouter command
Package main 演示如何使用 OpenRouter 作为 LLM Provider
Package main 演示如何使用 OpenRouter 作为 LLM Provider
plan-explore-ui command
prompt-builder command
Package main 演示如何使用 Prompt 压缩功能
Package main 演示如何使用 Prompt 压缩功能
rag-basic command
reasoning command
router command
scheduler command
server-http command
session command
session-mysql command
simple command
skills command
streaming command
subagent command
subagent-async command
telemetry command
tool-cache command
workflow command
workflow-agents command
workflow_router command
workflow_steps command
pkg
a2a
Package a2a 实现 Agent-to-Agent 通信协议 基于 JSON-RPC 2.0 和 A2A 标准
Package a2a 实现 Agent-to-Agent 通信协议 基于 JSON-RPC 2.0 和 A2A 标准
actor
Package actor 提供轻量级 Actor 模型实现 设计原则:
Package actor 提供轻量级 Actor 模型实现 设计原则:
run
stream
Package stream 提供泛型流处理能力 支持类型安全的流操作,包括复制、合并和转换
Package stream 提供泛型流处理能力 支持类型安全的流操作,包括复制、合并和转换

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL