Omni-GitHub

GitHub providers and skills for the PlexusOne ecosystem.
Packages
| Package |
Description |
Documentation |
omnistorage/ |
GitHub as storage backend |
Guide |
omniskill/github/ |
GitHub skill for AI agents |
Guide |
Installation
go get github.com/plexusone/omni-github
Quick Start
Storage Provider
import "github.com/plexusone/omni-github/omnistorage"
backend, err := omnistorage.New(omnistorage.Config{
Owner: "myorg",
Repo: "myrepo",
Branch: "main",
Token: os.Getenv("GITHUB_TOKEN"),
})
// Read files
r, _ := backend.NewReader(ctx, "README.md")
data, _ := io.ReadAll(r)
// Write files (creates commit)
w, _ := backend.NewWriter(ctx, "docs/example.txt")
w.Write([]byte("Hello!"))
w.Close()
// Batch operations (single commit)
batch, _ := backend.NewBatch(ctx, "Update files")
batch.Write("file1.txt", []byte("content"))
batch.Delete("old.txt")
batch.Commit()
GitHub Skill
import "github.com/plexusone/omni-github/omniskill/github"
skill := github.New(github.Config{
Token: os.Getenv("GITHUB_TOKEN"),
})
skill.Init(ctx)
// 10 tools: list_issues, create_issue, search_code, etc.
agent.RegisterSkill(skill)
Features
Storage Provider
- π Read/write files to any branch
- β‘ Batch operations for atomic commits
- π List files with prefix filtering
- π’ GitHub Enterprise support
GitHub Skill
- π« Issue management (list, create, update, comment)
- π Pull request operations
- π Code and issue search
- π’ GitHub Enterprise support
Documentation
Full documentation at plexusone.github.io/omni-github
Requirements
- Go 1.26 or later
- GitHub personal access token
License
MIT License - see LICENSE for details.