Release Notes: v0.5.0¶
Release Date: 2026-04-19
Overview¶
OmniAgent v0.5.0 introduces a compiled skills system, storage abstraction layer, and functional options pattern for more flexible agent configuration.
Highlights¶
- Compiled Skills - Register Go functions directly as tools without YAML/SKILL.md parsing
- Storage Abstraction - Pluggable storage backends (SQLite, in-memory) for agent state
- Functional Options - Clean configuration API with
WithCompiledSkills,WithStorage, etc.
New Features¶
Compiled Skills System¶
Register Go functions as tools that the agent can invoke:
import "github.com/plexusone/omniagent/skills"
// Define a compiled skill
weatherSkill := skills.CompiledSkill{
Name: "get_weather",
Description: "Get current weather for a location",
Parameters: map[string]any{
"type": "object",
"properties": map[string]any{
"location": map[string]any{"type": "string"},
},
"required": []string{"location"},
},
Handler: func(ctx context.Context, args map[string]any) (string, error) {
location := args["location"].(string)
return fetchWeather(location)
},
}
// Register with the skills registry
skills.RegisterCompiled(weatherSkill)
Storage Interface¶
Pluggable storage backends for agent state persistence:
import "github.com/plexusone/omniagent/storage"
// SQLite backend (default)
sqliteStore, _ := storage.NewSQLiteBackend("./omniagent.db")
// In-memory backend (for testing)
memStore := storage.NewMemoryBackend()
// Use with agent
agent, _ := omniagent.NewAgent(
omniagent.WithStorage(sqliteStore),
)
Functional Options¶
Clean API for agent configuration:
agent, err := omniagent.NewAgent(
omniagent.WithModel("gpt-4o"),
omniagent.WithCompiledSkills(weatherSkill, searchSkill),
omniagent.WithStorage(sqliteStore),
omniagent.WithObservability(observeHook),
)
Bug Fixes¶
- Fixed Docker container timeout handling in sandbox executor
- Fixed linting errors for errcheck and gofmt compliance
Build Changes¶
- Switched to pure-Go SQLite driver (
modernc.org/sqlite) for better cross-platform support - No CGO required for SQLite functionality
Dependency Upgrades¶
| Package | From | To |
|---|---|---|
omnillm |
v0.13.0 | v0.15.2 |
omnivoice |
v0.5.1 | v0.7.2 |
omnichat |
v0.3.0 | v0.6.0 |
omniobserve |
v0.7.0 | v0.8.0 |
Provider Consolidation¶
The OpenAI and Twilio providers have been consolidated:
omnillm-openai→omni-openai/omnillmomnivoice-openai→omni-openai/omnivoiceomnivoice-twilio→twilio-go/omnivoice
This is an internal change with no impact on the OmniAgent API.
Upgrade Guide¶
From v0.4.0¶
- Update your dependency:
- (Optional) Migrate to functional options:
// Old style
agent := &omniagent.Agent{
Model: "gpt-4o",
}
// New style (recommended)
agent, _ := omniagent.NewAgent(
omniagent.WithModel("gpt-4o"),
)
- (Optional) Add compiled skills for better performance:
Full Changelog¶
See CHANGELOG.md for the complete list of changes.