# aster
**Repository Path**: astercloud/aster
## Basic Information
- **Project Name**: aster
- **Description**: No description available
- **Primary Language**: Go
- **License**: MIT
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2025-12-29
- **Last Updated**: 2025-12-29
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
Where Stardust Converges, Intelligence Emerges
Empowering Every Agent to Shine in Production
Native Python, TypeScript, and Bash execution β’ Event-driven architecture β’ Enterprise-grade governance
Go's performance foundation, scripting flexibility, built for production
π **[Documentation](https://astercloud.github.io/aster/)** | π **[Quick Start](https://astercloud.github.io/aster/introduction/quickstart)** | ποΈ **[Architecture](https://astercloud.github.io/aster/introduction/architecture)**
---
## π What is Aster?
**Aster** (ζε°δΊζ’) is a production-ready AI Agent development framework built with Go, designed to run agents safely and efficiently in enterprise environments.
Like stardust converging to form a celestial hub, Aster brings together:
- **High Performance**: Go's concurrency model supports 100+ concurrent agents
- **Native Script Execution**: Run Python, TypeScript, and Bash natively with full sandbox isolation
- **Event-Driven Architecture**: Progress/Control/Monitor tri-channel design for clear separation of concerns
- **Enterprise Security**: Cloud sandbox integration, PII auto-redaction, and comprehensive governance
## π― Core Features
### π Multi-Language Script Execution
- **Python**: Execute data processing, ML workflows, and analytics scripts
- **TypeScript**: Run modern JavaScript/TypeScript for web automation and API interactions
- **Bash**: Shell commands for system operations and DevOps tasks
- All with **native performance** and **isolated sandbox environments**
### πͺ Event-Driven Architecture
- **Progress Channel**: Real-time text streaming, tool execution progress
- **Control Channel**: Tool approval requests, human-in-the-loop interactions
- **Monitor Channel**: Governance events, error tracking, audit logs
### π§
Middleware Onion Model
- **Layered Processing**: Requests and responses flow through middleware layers
- **Built-in Middlewares**: Auto-summarization, PII redaction, tool interception
- **Extensible**: Create custom middleware for your specific needs
### π Enterprise-Grade Security
- **Cloud Sandbox**: Native integration with Aliyun AgentBay, Volcengine
- **PII Auto-Redaction**: Detect and redact 10+ types of sensitive data
- **Permission System**: Fine-grained tool-level access control
- **Audit Logging**: Complete tool call tracking and state management
### π§ Three-Layer Memory System
- **Text Memory**: File-based short-term memory for conversation context
- **Working Memory**: Persistent state across sessions with TTL and JSON schema
- **Semantic Memory**: Vector-based long-term memory with provenance tracking
### π Advanced Capabilities
- **Streaming API**: iter.Seq2-based streaming with 80%+ memory reduction
- **Long-Running Tools**: Async task management with progress tracking
- **Multi-Agent Orchestration**: Pool/Room/Workflow collaboration patterns
- **OpenTelemetry Integration**: Distributed tracing, metrics, and logging
## π¦ Installation
```bash
go get github.com/astercloud/aster
```
## π Quick Start
```go
package main
import (
"context"
"fmt"
"log"
"os"
"github.com/astercloud/aster/pkg/agent"
"github.com/astercloud/aster/pkg/provider"
"github.com/astercloud/aster/pkg/sandbox"
"github.com/astercloud/aster/pkg/store"
"github.com/astercloud/aster/pkg/tools"
"github.com/astercloud/aster/pkg/tools/builtin"
"github.com/astercloud/aster/pkg/types"
)
func main() {
// 1. Setup dependencies
toolRegistry := tools.NewRegistry()
builtin.RegisterAll(toolRegistry)
jsonStore, _ := store.NewJSONStore("./.aster")
deps := &agent.Dependencies{
Store: jsonStore,
SandboxFactory: sandbox.NewFactory(),
ToolRegistry: toolRegistry,
ProviderFactory: &provider.AnthropicFactory{},
TemplateRegistry: agent.NewTemplateRegistry(),
}
// 2. Register agent template
deps.TemplateRegistry.Register(&types.AgentTemplateDefinition{
ID: "assistant",
SystemPrompt: "You are a helpful assistant with file and bash access.",
Model: "claude-sonnet-4-5",
Tools: []interface{}{"Read", "Write", "Bash"},
})
// 3. Create 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"),
},
Sandbox: &types.SandboxConfig{
Kind: types.SandboxKindLocal,
WorkDir: "./workspace",
},
}, deps)
if err != nil {
log.Fatal(err)
}
defer ag.Close()
// 4. Subscribe to events
eventCh := ag.Subscribe([]types.AgentChannel{types.ChannelProgress}, nil)
go func() {
for envelope := range eventCh {
if evt, ok := envelope.Event.(types.EventType); ok {
switch e := evt.(type) {
case *types.ProgressTextChunkEvent:
fmt.Print(e.Delta)
case *types.ProgressToolStartEvent:
fmt.Printf("\n[Tool] %s\n", e.Call.Name)
}
}
}
}()
// 5. Execute
result, err := ag.Chat(context.Background(), "Create a hello.txt file with 'Hello World'")
if err != nil {
log.Fatal(err)
}
fmt.Printf("\n\nFinal Result: %s\n", result.Text)
}
```
## ποΈ Architecture
### System Overview

### Middleware Onion Model

The middleware architecture processes each request/response through multiple layers:
- Higher priority middleware sits in outer layers
- Handles requests first, processes responses last
- Clean separation of concerns and easy extensibility
## π Multi-Language Execution
### Python Script Example
```python
# agent can execute this directly
import pandas as pd
data = pd.read_csv('data.csv')
result = data.groupby('category').sum()
print(result.to_json())
```
### TypeScript Example
```typescript
// Native TypeScript execution
interface User {
name: string;
email: string;
}
const users: User[] = await fetch("/api/users").then((r) => r.json());
console.log(users.map((u) => u.name));
```
### Bash Example
```bash
# System operations
find . -name "*.log" -mtime +7 -delete
docker ps | grep running
```
## π Project Status
π **Alpha Release** - Core features complete
### Completed Phases
β
**Phase 1**: Foundation (Event system, Sandbox abstraction, Storage)
β
**Phase 2**: Agent Runtime (Message processing, Tool system, Streaming)
β
**Phase 3**: Cloud Integration (MCP, Aliyun, Volcengine)
β
**Phase 4**: Multi-Agent (Pool, Room, Scheduler, Permissions)
β
**Phase 5**: MCP Support (Protocol, Servers, Tools)
β
**Phase 6**: Advanced Features (Commands, Skills, Middleware, Multi-provider)
β
**Phase 7**: ADK Alignment (Streaming, OpenTelemetry, Persistence, Workflows)
**Current Stats**:
- ~18,000+ LOC
- 25+ new modules
- 80%+ test coverage
- β
**Production Ready**
## π Google Context Engineering Standard
Aster fully implements the **Google Context Engineering** whitepaper's 8 core capabilities:
| Capability | Status | Description |
| ------------------------- | ------ | ------------------------------------------------- |
| Sessions & Memory | β
| Three-layer memory system (Text/Working/Semantic) |
| Memory Provenance | β
| Source tracking with confidence scoring |
| Memory Consolidation | β
| LLM-driven intelligent memory merging |
| PII Auto-Redaction | β
| Automated privacy data protection |
| Event-Driven Architecture | β
| Progress/Control/Monitor tri-channel |
| Streaming & Backpressure | β
| iter.Seq2 streaming interface |
| Multi-Agent Orchestration | β
| Pool/Room/Workflow patterns |
| Observability | β
| Complete OpenTelemetry integration |
**100% Implementation** - First Go framework to fully implement the standard.
## π Acknowledgments
Aster builds upon the excellent work of the open-source community:
### Frameworks
- **[LangChain](https://github.com/langchain-ai/langchain)**: Pioneering agent framework
- **[Google ADK](https://github.com/google/genkit)**: Enterprise-grade agent toolkit
- **[Claude Agent SDK](https://github.com/anthropics/anthropic-sdk-python)**: Computer Use & MCP reference
### Research
Special thanks to the **[Google Context Engineering Whitepaper](https://cloud.google.com/blog/products/ai-machine-learning/context-engineering-for-ai-agents)** for defining agent capabilities and best practices.
## π License
MIT License - see [LICENSE](LICENSE) file for details.
---
Let every agent shine in production β¨