Plugins for GoModel, the open-source LLM gateway.
- Go 100%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| .forgejo/workflows | ||
| sensitivity | ||
| .gitignore | ||
| .pre-commit-config.yaml | ||
| .releaserc.yml | ||
| go.mod | ||
| go.sum | ||
| LICENSE | ||
| README.md | ||
gomodel-plugins
Plugins for GoModel, the open-source LLM gateway.
Plugins
| Package | Manifest name | Kind | Purpose |
|---|---|---|---|
sensitivity |
sensitivity_router |
route |
Routes requests carrying a configured label (for example a client-declared confidentiality tag) to secure targets. |
Usage
import (
"context"
"git.chaops.de/rwxd/gomodel-plugins/sensitivity"
"github.com/enterpilot/gomodel/config"
"github.com/enterpilot/gomodel/ext"
"github.com/enterpilot/gomodel/run"
)
func main() {
run.Run(context.Background(), run.Options{
SetupConfig: func(ctx context.Context, result *config.LoadResult) error {
return sensitivity.Setup(ctx, result, ext.Default)
},
})
}
Setup registers the routing strategy and reads the optional
extensions.sensitivity section for the body-field rewriter. See
gomodel-dist for a complete
distribution that builds an image from this module.
Version policy
The module pins the GoModel release its plugins are built against (go.mod).
Bump the pin together with the gateway that compiles the plugins in.
Releases
Pushing conventional commits to main runs semantic-release: fix: bumps the
patch version, feat: the minor, feat!: (or a BREAKING CHANGE: footer) the
major. Every release tags the repository; gomodel-dist pins the tag it ships.
Development
go test ./...
go vet ./...
prek run --all-files
License
MIT