Skip to content

Release v0.9.0

Release Date: 2026-07-12

Highlights

  • BREAKING: Migration from standalone Google ADK agents to omniagent-worker based architecture
  • Workers now implement omniagent-worker.Worker interface for unified lifecycle management
  • New Coordinator using omniagent-worker.Coordinator for deterministic workflow orchestration
  • AgentOps tracing via OpenTelemetry for full observability
  • OmniSkill integration for embedding in OmniAgent

Breaking Changes

Legacy agents/ Directory Removed

The standalone agent implementations have been removed:

  • agents/direct/
  • agents/orchestration/
  • agents/orchestration-eino/
  • agents/research/
  • agents/synthesis/
  • agents/verification/

New Worker-Based Architecture

Replaced by omniagent-worker based workers:

Old Path New Path Description
agents/research/main.go workers/research/worker.go Web search worker
agents/synthesis/main.go workers/synthesis/worker.go LLM extraction worker
agents/verification/main.go workers/verification/worker.go Validation worker
agents/orchestration-eino/main.go coordinator/coordinator.go Workflow coordinator

New Features

omniagent-worker Integration

All workers now implement the omniagent-worker.Worker interface:

type Worker interface {
    ID() string
    Type() string
    Version() string
    Init(ctx context.Context) error
    Shutdown(ctx context.Context) error
    Health(ctx context.Context) *HealthStatus
    Execute(ctx context.Context, req *Request) (*Response, error)
}

Coordinator

New coordinator package using omniagent-worker.Coordinator:

  • Deterministic graph-based workflow
  • In-process worker management via Pool
  • AgentOps tracing support
  • CLI entrypoint with flags
# Run coordinator with AgentOps tracing
./bin/stats-coordinator --port 8080 --agentops-dsn postgres://...

OmniSkill Integration

New omniskill/ package for embedding in OmniAgent:

skill := omniskill.NewStatsSkill(coord)
// Use with omniagent

Migration Guide

For Users

  1. Update import paths if using the library directly
  2. The CLI interface remains the same
  3. Docker deployment uses the new coordinator

For Developers

  1. Workers now implement omniagent-worker.Worker instead of custom interfaces
  2. Use coordinator.NewStatsWorkflow() instead of direct orchestration
  3. Health checks use *worker.HealthStatus instead of custom types

Dependencies

Added

  • github.com/plexusone/omniagent-worker v0.1.0
  • github.com/plexusone/omniskill v0.9.0

Updated

  • github.com/cloudwego/eino v0.9.2 → v0.9.12
  • github.com/plexusone/omnillm v0.15.3 → v0.17.0
  • github.com/plexusone/omniobserve v0.8.0 → v0.11.0
  • github.com/plexusone/omniserp v0.8.1 → v0.9.0
  • github.com/plexusone/structured-evaluation v0.6.0 → v0.8.0
  • google.golang.org/adk v1.4.0 → v1.5.0
  • google.golang.org/genai v1.58.0 → v1.63.0

Documentation

  • Updated README with worker-based architecture
  • Updated MkDocs site documentation
  • Added migration specifications in docs/specs/omniagent-worker-migration/

Testing

  • Unit tests for all workers
  • Integration tests for full workflow
  • Coordinator tests with mock dispatchers