1.8 KiB
Core example
Run the example from the repository root:
go run ./examples/core hello --times=0 --tag=first
go run ./examples/core ws greet --count=2
go run ./examples/core ws --help
go run ./examples/core hello --hlep
go build -o core-example ./examples/core
./core-example completion bash
The example installs a canonical workspace greet command together with a
command shortcut, a group shortcut, a scoped flag alias, and a global help
alias. Its declaration slice mixes the canonical group and routing rules as
[]commandkit.Declaration. The handler prints Invocation.EnteredPath() and
Invocation.CanonicalPath() so the alternate route and its canonical target
are visible in the output.
The example also installs Completion("core-example") and gives the report
scenario argument static choices. Build it with the basename shown above, load
the script for your shell using the CLI reference,
and try completing core-example report d or core-example ws gr.
Integration factories also return commandkit.Command and can be passed
directly to New beside commandkit.Alias or flag-alias declarations. For a
command-only []commandkit.Command, convert its elements into a
[]commandkit.Declaration before appending routing rules; Go cannot expand the
command slice as ...commandkit.Declaration. The
consumer guide
shows both forms, and the composed consumer
is the maintained integration example.
These aliases use the current local CommandKit source. Published CommandKit
v0.2.0 does not include alias declarations; consumers can use them after the
next core release. Repository contributors can run its test with
go test ./examples/core from the root.