Skip to content

CoreNovus/convilyn-author-go

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

convilyn-author-go

The Go author SDK for Convilyn — build tool servers and workflow specs in Go and run them locally or on the hosted runtime. A faithful port of the Python convilyn_sdk author SDK; the wire contracts (HMAC signing, the JSON-RPC /mcp protocol, the manifest + workflow-spec JSON) match byte-for-byte, so a Go-authored server is interchangeable with a Python-authored one behind the same gateway.

Install

go get github.com/CoreNovus/convilyn-author-go
go install github.com/CoreNovus/convilyn-author-go/cmd/convilyn-author@latest   # CLI

Go 1.22+.

Quick start

convilyn-author init my-tools && cd my-tools
go mod tidy
convilyn-author test     # local compliance checks
convilyn-author dev      # serve /health, /manifest, POST /mcp
import convilyn "github.com/CoreNovus/convilyn-author-go"

srv := convilyn.NewToolServer(convilyn.ToolServerOptions{Name: "my-tools", Description: "…"})
srv.Tool(convilyn.ToolDef{
    Name: "echo", Description: "echo text",
    InputSchema: map[string]any{"type": "object", "properties": map[string]any{"text": map[string]any{"type": "string"}}, "required": []any{"text"}},
}, func(ctx *convilyn.ToolContext, args map[string]any) (any, error) {
    return map[string]any{"echo": args["text"]}, nil
})
srv.Run("127.0.0.1", 8080)

What's here

  • ToolServer — explicit Tool(def, handler) registration, Synth() manifest, JSON-RPC /mcp dispatch + the auto get_tool_data tool.
  • HTTP runtimeRun / HTTPHandler (/health, /manifest, POST /mcp) with HMAC verification (HMACMiddleware, VerifySignature, SignRequest).
  • WorkflowSpec — immutable fluent builder + Compile/Save, with ValidateWorkflowSpec / ValidateToolCoverage.
  • TestingTestRunner (compliance), WorkflowTestRunner, assertions.
  • Data storeDataStore interface + InMemoryDataStore (td_<12-hex> refs).
  • Config + typesSDKConfig (ConfigFromEnv), ToolContext, ConvilynManifest, ToolSpec, ToolResult.
  • CLIconvilyn-author (init/synth/dev/test/doctor/ workflow {init,build}; cloud-bound commands stubbed).

Wire contracts (HMAC, the JSON-RPC /mcp envelope, the manifest + workflow-spec JSON) match the Python convilyn_sdk author SDK byte-for-byte. Full reference: the Author SDK (Go) docs at docs.convilyn.corenovus.com.

Development

make test    # go test ./... -cover
make vet     # go vet ./...
make fmt     # gofmt -w .

License

Apache-2.0 — see LICENSE.

About

Official Go author SDK for building Convilyn tool servers and workflow specs

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors