plugin-gh
| Placement | runtime (out-of-process over gRPC) |
| Source | github.com/opencharly/plugin-gh/candy/plugin-gh |
| Version | 2026.252.1500 |
| Candy | plugin-gh |
This plugin is not listed in charly/charly.yml’s compiled_plugins:. It is not part of the shipped binary: charly builds and loads it out-of-process over gRPC when a plan references one of its words (the coexist path).
Providers
Section titled “Providers”The reserved words this plugin serves:
gh— command classgh— verb class
What it does
Section titled “What it does”The canonical GitHub surface — one implementation of the gh read ops
(pr_meta, pr_files, pr_diff, pr_commits, pr_thread, head_sha) as a
typed, declarative verb (gh: {op: ..., repo: ..., pr: ...}) and the
standalone charly gh CLI. Replaces every hand-rolled
exec.Command(“gh”) call: the client resolves the token explicitly
(GH_TOKEN/GITHUB_TOKEN → the gh hosts.yml auth), targets
api.github.com directly (never an ambiguous default-host redirect),
and surfaces the HTTP status + body on every non-2xx — no more
“gh meta failed” with swallowed stderr.
Parameter schema
Section titled “Parameter schema”The CUE schema below is the authoritative grammar for this plugin’s input. It is the same single source that generates the plugin’s Go parameter types and answers the runtime Describe RPC, so this page cannot disagree with either.
schema/gh.cue
Section titled “schema/gh.cue”// gh.cue — the plugin-gh verb surface's own schema (SDD single source).// Self-contained: no package clause, no base references.
#GhInput: { op: "pr_meta" | "pr_files" | "pr_diff" | "pr_commits" | "pr_thread" | "head_sha" repo: string // the FULL slug (owner/name) — e.g. omacom/omarchy pr: int & >0}See also the candy reference for this candy’s install surface.