2.6 KiB
CommandKit ckconfig v0.1.0
Summary
The initial independently versioned ConfigKit integration provides configuration inspection and native comparison through CommandKit command declarations. It uses CommandKit v0.2.0 and ConfigKit v0.8.0 and is distributed as a source-only Go module.
Features
ckconfig.AppCommand,ckconfig.Command, andckconfig.FromConfigKitadapt application loaders and named scopes into explicitly installed declarations.- The
configfamily exposes scopes, validation, effective YAML, sources, and path explanation according to each scope's declared capabilities. config diffcompares two selections through ConfigKit's native API and emits YAML additions, right-side changes, and deletion paths. Comparison can be provided independently of ordinary configuration acquisition; differences alone do not make the command fail.- Source reports expose native destination, placement, unresolved destination, and version-check evidence alongside the source inventory.
- Typed selectors, per-side comparison inputs, and invocation state support application-specific acquisition without transferring configuration semantics to CommandKit.
Requirements and adoption
Go 1.26.0 or newer is required. Add
gitea.maximumdirect.net/eric/CommandKit/integrations/ckconfig@v0.1.0, then pass
the returned declaration to commandkit.New or App.Register. Importing the
module does not install commands.
Applications migrating from the ConfigKit helpers in CommandKit v0.1.0 must move to the separate module and update scope, loader, binding, and installation wiring for the core v0.2.0 API. Update report consumers for the added source evidence and any newly installed comparison commands. ConfigKit remains the authority on configuration loading, inspection, and comparison semantics.
See the module README, consumer guide, and CLI reference.