Release Notes: v0.9.0¶
Release Date: 2026-06-28
Highlights¶
- OmniMemory Provider: Twilio Memory API integration for semantic memory storage
- Embedding-Based Search: Recall memories using natural language queries
New Features¶
Twilio Memory Provider¶
The library now includes an OmniMemory provider that uses Twilio's Memory API for semantic memory storage and retrieval. This enables AI agents to store and recall conversation context, user preferences, and long-term memories.
import (
"github.com/plexusone/omni-twilio/omnimemory"
"github.com/plexusone/omnimemory/core"
)
// Create provider
provider, err := omnimemory.NewProvider(omnimemory.Config{
AccountSID: "ACxxxxxxxx",
AuthToken: "your-auth-token",
})
// Store a memory
mem := &core.Memory{
Content: "User prefers morning meetings",
Metadata: map[string]any{
"category": "preferences",
},
}
result, err := provider.Store(ctx, "store-id", "user-123", mem)
// Recall memories semantically
memories, err := provider.Search(ctx, "store-id", "user-123", &core.SearchRequest{
Query: "What time does the user like meetings?",
Limit: 5,
})
Concept Mapping¶
The provider maps OmniMemory concepts to Twilio Memory API:
| OmniMemory | Twilio Memory API |
|---|---|
| TenantID | Store ID |
| SubjectID | Profile ID |
| Memory | Observation |
| Search/Recall | Recall API |
Semantic Search¶
Twilio's Memory API uses embedding-based similarity search to recall relevant memories based on natural language queries. The provider supports:
- Store: Create memories with automatic embedding generation
- Get: Retrieve specific memories by ID
- Update: Modify existing memories
- Delete: Remove memories
- Search: Semantic search across all memories for a subject
- List: List all memories for a subject
Testing¶
The release includes comprehensive tests:
- Unit tests for all provider operations
- Conformance tests via
providertest.RunAll()from omnimemory - Live API testing against Twilio Memory (requires env vars)
To run tests with live API:
export TWILIO_ACCOUNT_SID="ACxxxxxxxx"
export TWILIO_AUTH_TOKEN="your-auth-token"
export TWILIO_MEMORY_STORE_ID="your-store-id"
export TWILIO_MEMORY_PROFILE_ID="your-profile-id"
go test ./omnimemory/...
Documentation¶
- New guide: Memory API Guide
- Updated README with omnimemory usage examples
- Added Memory API to navigation
Dependencies¶
| Package | Version | Notes |
|---|---|---|
| github.com/plexusone/omnimemory | v0.1.0 | New dependency |
| github.com/plexusone/omnivoice-core | v0.15.0 | Updated from v0.14.0 |
| Go version | 1.26.4 | Updated from 1.26.0 |
Installation¶
Migration Guide¶
From v0.8.0¶
No breaking changes. This is a purely additive release.
To use the new Memory provider:
-
Import the omnimemory package:
-
Create a provider with your Twilio credentials:
-
Start storing and recalling memories using the standard OmniMemory interface
All existing voice gateway and chat functionality remains unchanged.
Full Changelog¶
See CHANGELOG.md for the complete list of changes.