v1.7.0
Yardmaster now ships a public Go SDK for extensions. Import github.com/dcadolph/yardmaster/sdk and register from an init function or from main before the server starts.
- Execution tools: RegisterTool adds a tool name and its runner in one call, so a registered tool submits and executes like a built-in.
- AI providers: RegisterAIProvider adds a model backend beside the built-in ollama, anthropic, and openai providers.
- Notification channels: RegisterNotifier delivers terminal runs to a new channel, with extra vars redacted before delivery.
- Secret engines: RegisterSecretSource adds a static engine. RegisterDynamicSecretSource adds a dynamic engine that mints short-lived credentials with revocable leases.
An extension builds against the sdk package alone and compiles into the server binary. Registries are startup-only and panic on duplicate or reserved names, so a bad registration surfaces at boot instead of on first use.