ov-core/skills/version/SKILL.md
Show ov CLI version information. MUST be invoked before any work involving: ov version command or checking installed ov version.
npx skillsauth add overthinkos/overthink-plugins versionInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Displays the installed version of the ov CLI binary.
| Action | Command | Description |
|--------|---------|-------------|
| Show version | ov version | Print ov version string |
ov version
ov version writes the CalVer tag to stdout via fmt.Println.
Declarative tests should match stdout: — for example
layers/ov/layer.yml uses:
- id: ov-version
command: /usr/local/bin/ov version
exit_status: 0
stdout:
- matches: "[0-9]{4}\\.[0-9]+"
Historical note: VersionCmd originally used Go's builtin
println(version) which routes to stderr (the builtin bypasses
os.Stderr and writes directly to fd 2). The move to fmt.Println
landed with the MCP server work so the in-process tool-call path —
which captures os.Stdout — can surface the version correctly. See
/ov-build:eval Authoring Gotcha #5 and /ov-build:mcp "Capture model" for the
full story.
/ov-core:doctor -- Full host dependency and health check/ov-build:settings — runtime config where secret_backend and other settings live/ov-build:image — build-mode family that stamps CalVer tags matching this version/ov-build:eval — declarative testing framework (Gotcha #5 covers the stdout rule)/ov-build:mcp — MCP server section explains why the stream choice matters for the capture pipeline/ov-dev:go — ov/version.go CalVer computation; main.go VersionCmd.Run using fmt.Printlntools
Use when authoring or modifying a charly PLUGIN — a candy with a `plugin:` block that contributes Providers (verbs/kinds/deploy-targets/steps/builders/commands), its own CUE schema, builtin (compiled-in) or external (out-of-tree git repo). Covers the unified Provider model, the per-plugin CUE-schema contract (single source → Go params for dev + schema-over-Describe RPC for runtime), the SDK, and the loader.
tools
The CUE data-validation / configuration CLI (cue), pinned to v0.16.1. Use when working with the cue candy, installing the cue binary into a box or onto a target:local dev host, or running the offline schema-vendoring pipeline that feeds charly's egress validation.
tools
CUE EGRESS validation — validating (and, where it adds value, generating) the config files charly WRITES to a system BEFORE the bytes hit disk. MUST be invoked before working on charly/egress.go, the vendored schemas under candy/plugin-egress/egress-schemas/vendor/, the ValidateEgress / registerVendoredEgressKind path, the offline `task cue:vendor` pipeline, or adding an egress schema for any written artifact (cloud-init, k8s manifests, traefik routes, runtime config, install ledger, systemd/quadlet units, ssh_config, libvirt XML).
tools
Kubernetes cluster-probe declarative check verb — the `kube:` check verb (nodes, pods, ingress, storage class, addon health, apply/delete, and arbitrary resource GETs) served out-of-process by the candy/plugin-kube plugin (vendored client-go; no external kubectl required).