Skip to content

CVX v1.3.0 — it tells you what's wrong

Choose a tag to compare

@ramith ramith released this 25 Jul 04:55
Immutable release. Only release title and notes can be modified.

The whole content model is now a contract: exact errors in your terminal, autocomplete in your editor, structured output for your agent.

New

  • cvx validate — checks every file in cv-content/ at once and reports exact errors with file + field paths and suggested fixes (unknown key "linkdin" — did you mean "linkedin"?). Unknown keys are warnings by default; --strict (recommended for agents/CI) treats them as errors.
  • Agent-legible CLI — every command accepts --json (exactly one JSON object on stdout, logs on stderr) and uses semantic exit codes: 0 ok, 2 validation failed, 3 render failed, 64 usage error.
  • cvx list [themes|layouts] — inventory of themes and layouts, including your custom layouts, with --json.
  • Canonical JSON Schema — every content file and config.yaml is defined by schema/v1/; scaffolded files carry $schema headers, so editors with YAML support autocomplete keys and flag mistakes as you type. The previously undocumented rich-bullet form ({text, link: {href, label}, suffix}) is now part of the documented contract.
  • cvx init scaffolds agent guidanceAGENTS.md and CLAUDE.md land in your cv-content/ with the edit→validate→build loop and truthfulness rules, so coding assistants drive CVX correctly out of the box.

Compatibility promise

config.yaml now carries schemaVersion: 1. Within a schema major version, your content files never break — cvx validate on today's files will still pass on every future 1.x release.

Quality gates

Tested on ubuntu/macos/windows × Node 20/22/24; the packaged E2E now exercises the full validate/build/list contract against the packed tarball; reproducible builds remain byte-identical; install stays lean (tarball ~320 kB).