Release Notes: v0.7.0¶
Release Date: 2026-04-27
Overview¶
OmniAgent v0.7.0 introduces skill pack support for loading embedded markdown skills from fs.FS sources, enabling distributable skill bundles with configurable filtering.
Highlights¶
- Skill Packs - Load markdown skills from embedded
fs.FSsources (e.g., viago:embed) - Skill Filtering - Include/exclude specific skills via configuration or code
- Directory Override - Skills from directories override embedded pack skills with the same name
New Features¶
Skill Pack Support¶
Register embedded skill packs that bundle multiple markdown skills:
import (
"github.com/plexusone/omniagent/agent"
skills "github.com/plexusone/omniagent-skills"
)
// Load all skills from a skill pack
agent, err := agent.New(config,
agent.WithSkillPack(skills.Default().FS()),
)
Skill Filtering¶
Filter which skills are loaded using includes or excludes:
// Only load specific skills
agent, err := agent.New(config,
agent.WithSkillPack(skills.Default().FS()),
agent.WithSkillIncludes("github", "weather", "tmux"),
)
// Load all except specific skills
agent, err := agent.New(config,
agent.WithSkillPack(skills.Default().FS()),
agent.WithSkillExcludes("notion", "slack"),
)
Configuration Options¶
Control skill loading via config file:
skills:
enabled: true
paths:
- ~/.omniagent/skills
includes:
- github
- weather
excludes:
- deprecated-skill
Directory Override¶
Skills from directories take precedence over embedded pack skills with the same name. This allows customizing or replacing bundled skills:
New Agent Options¶
| Option | Description |
|---|---|
WithSkillPack(fs.FS) |
Register an embedded skill pack |
WithSkillDirs(...string) |
Set skill directories |
WithSkillIncludes(...string) |
Only load named skills |
WithSkillExcludes(...string) |
Skip named skills |
WithSkillManager(*Manager) |
Use a custom skill manager |
New Packages¶
skills.Manager¶
Unified skill loading from multiple sources:
import "github.com/plexusone/omniagent/skills"
mgr := skills.NewManager(skills.ManagerConfig{
Packs: []fs.FS{skillPack.FS()},
Dirs: []string{"~/.omniagent/skills"},
Includes: []string{"github", "weather"},
})
if err := mgr.Load(); err != nil {
log.Fatal(err)
}
available := mgr.Available()
skills.DiscoverFromFS¶
Load skills from an embedded filesystem:
Dependency Upgrades¶
| Package | From | To |
|---|---|---|
omniskill |
v0.6.0 | v0.7.0 |
omnillm |
v0.15.2 | v0.15.3 |
Upgrade Guide¶
From v0.6.0¶
- Update your dependency:
- (Optional) Use skill packs instead of directory-only loading:
import skills "github.com/plexusone/omniagent-skills"
agent, err := agent.New(config,
agent.WithSkillPack(skills.Default().FS()),
)
- (Optional) Add skill filtering:
agent, err := agent.New(config,
agent.WithSkillPack(skills.Default().FS()),
agent.WithSkillIncludes("github", "weather"),
)
Related Releases¶
- omniskill v0.7.0 - Adds
pack/package - omniagent-skills v0.1.0 - Default skill pack with 18 skills
Full Changelog¶
See CHANGELOG.md for the complete list of changes.