Files
commandkit/README.md

53 lines
2.6 KiB
Markdown
Raw Permalink Normal View History

2026-10-04 13:54:17 +00:00
# CommandKit
CommandKit is a Go library for typed command declarations, shared CLI behavior,
and application-owned execution. The core `commandkit` module is usable by
itself. ConfigKit and PromptKit support lives in separately versioned optional
modules, so applications choose which upstream libraries they add.
The core captures reusable command declarations, validates installation batches
before changing an application's registry, converts typed inputs before
constructing them, and returns outcomes without exiting the process. Its
[consumer guide](docs/consumers/guide.md) covers declaration, invocation
and reporting. Each handler receives one invocation reporter for
substantive output, categorized messages, and terminal explanations; `Execute`
returns delivery observations with the outcome. The [CLI reference](docs/cli.md)
defines the shared visibility policy.
## Modules
| Module | Package | Provides |
| --- | --- | --- |
2026-11-04 03:49:38 +00:00
| `go.maximumdirect.net/commandkit` | `commandkit` | Typed commands, bindings, execution reporting and outcomes, help, and version. |
| `go.maximumdirect.net/ckconfig` | `ckconfig` | ConfigKit-backed `config` scopes, including configuration source evidence. |
| `go.maximumdirect.net/ckprompt` | `ckprompt` | PromptKit engine configuration/comparison, five catalogs, named inspection, requirements discovery, concrete request validation, and native smoke tests. |
2026-11-07 11:12:23 +00:00
Importing an integration does not install commands. Core v0.4.0 is published;
the published ckconfig and ckprompt v0.2.0 modules use core v0.3.0. The published
2026-11-04 16:17:49 +00:00
ckconfig v0.3.0 uses ConfigKit v1.1.0 and does not compose with
2026-11-07 11:12:23 +00:00
ckprompt v0.2.0; the published v0.2.0 pair remains matched. Current ckconfig
source uses core v0.4.0. Current ckprompt source requires a newer
ckconfig release and is developed in an aligned workspace. See the
[consumer guide](docs/consumers/guide.md#module-selection) for dependency details.
## Examples
2026-10-19 19:56:33 +00:00
- [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)
2026-10-08 16:49:01 +00:00
- [Maintainer release procedure](docs/release.md)
- [Architecture policy](docs/policy/architecture.md)
2026-10-07 03:55:36 +00:00
- [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.