Skip to content

charly pkg

Served by plugin-box
Placement compiled-in (in-process)
Version 2026.194.0000

pkg is a command word served by the plugin-box plugin candy. This plugin is listed in charly/charly.yml’s compiled_plugins:, so its providers are compiled into the charly binary and register in-process.

The build-mode charly box … verb HANDLERS relocated into a COMPILED-IN command plugin candy (P15, K5). charly box is a SHARED command group whose subcommands have different owners: the core BoxCmd keeps the grammar spine + build (→plugin-build) / merge / labels / feature / the authoring verbs, while THIS candy contributes six NESTED command providers under the box parent (each command: with CommandParent()==“box”): generate, validate, new, pkg, inspect, list. COMPILED-IN, each dispatches IN-PROC via Invoke(OpRun) (kong-parse its sub-grammar), so the handlers own charly’s real stdio. generate renders the .build/ tree by InvokeProvider’ing the peer build:generate word (candy/plugin-build), which drives HostBuild(“build-resolve”, GenerateOnly); new (candy/project/box) calls the sdk/kit scaffold engine directly (kit.ScaffoldCandy/ScaffoldProject/AddBox), no core reentry; validate fetches the error-TOLERANT resolved-project envelope (HostBuild(“validate-project”)) and runs the whole per-kind/op rule engine + the deploykit resolution-graph checks IN-PLUGIN over it, merging the host’s CUE-conformance / tunable / base⊻from diagnostics for the verdict; pkg reaches the hidden core __box-pkg reentry over HostBuild(“cli”); inspect and list read the generic spec.ResolvedProject envelope (InvokeProvider(“build”,“project”)) — inspect’s default JSON is snake_case canonical — with the deploy-overlay formats (inspect tunnel/bind_mounts) + store-live list tags reaching the hidden core __box-inspect-overlay / __box-list-tags reentries. Their data still needs the fully-resolved project / deploy overlay / podman store the plugin cannot compute pre-K1. It imports only the sdk module, never charly core. Placement-invisible (F8): the SAME provider compiles into charly or serves out-of-process.

Run charly pkg --help for the live flag grammar.