45 lines
2.0 KiB
Markdown
45 lines
2.0 KiB
Markdown
# CommandKit
|
|
|
|
CommandKit helps Go applications build consistent command-line interfaces. It
|
|
provides typed flags and arguments, help, output formatting, and error reporting.
|
|
Optional integrations add commands for inspecting configuration and working with
|
|
PromptKit.
|
|
|
|
CommandKit is in alpha. Start with the [consumer guide](docs/consumers/guide.md#core-commands)
|
|
to define a command, or run the [core example](examples/core/README.md).
|
|
Applications supply their own command handlers and decide when to exit;
|
|
CommandKit returns the result of each invocation.
|
|
|
|
## Modules
|
|
|
|
| Module | Package | Provides |
|
|
| --- | --- | --- |
|
|
| `go.maximumdirect.net/commandkit` | `commandkit` | Commands, typed inputs, shared output and error reporting, help, and version. |
|
|
| `go.maximumdirect.net/ckconfig` | `ckconfig` | Commands to view, validate, explain, and compare ConfigKit configuration. |
|
|
| `go.maximumdirect.net/ckprompt` | `ckprompt` | Commands to list and inspect PromptKit resources, discover required inputs, validate and preview requests, and run smoke tests. |
|
|
|
|
Importing an integration does not install commands. Core and the integrations
|
|
are versioned separately; see the [consumer guide](docs/consumers/guide.md#module-selection)
|
|
for published versions, compatibility, and installation choices.
|
|
|
|
## Examples
|
|
|
|
- [Core-only example](examples/core/README.md)
|
|
- [ConfigKit example](integrations/ckconfig/examples/simple/README.md)
|
|
- [Composed ConfigKit and PromptKit example](integrations/ckprompt/examples/composed/README.md)
|
|
|
|
## Documentation
|
|
|
|
- [Contributor guide](docs/development.md)
|
|
- [Command line reference](docs/cli.md)
|
|
- [Consumer guide](docs/consumers/guide.md)
|
|
- [Internal package overview](docs/internal/overview.md)
|
|
- [Maintainer release procedure](docs/release.md)
|
|
- [Architecture policy](docs/policy/architecture.md)
|
|
- [Policy provenance](docs/policy/meta.md)
|
|
- [Future work and proposals](docs/roadmap/future.md)
|
|
|
|
CommandKit is licensed under the [LGPL v3.0 or later](COPYRIGHT).
|
|
|
|
[Open Source attribution notices](docs/oss/attribution.md) are available.
|