# Core example Run the example from the repository root: ```sh 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 ``` 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. 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](../../docs/consumers/guide.md#application-owned-aliases) shows both forms, and the [composed consumer](../../integrations/ckprompt/examples/composed) 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.