Skip to main content
CodexMono ships its fonts, metadata, CSS, integrity ledger, and a zero-dependency Node.js CLI in @monolex/codexmono. Verified against @monolex/codexmono 1.0.5, published to npm on 2026-05-20. The package requires Node.js 12 or newer.
CodexMono 1.0.5 has root help, but no per-command help parser. Use bare codexmono, codexmono help, or root codexmono --help. Do not append --help to install or uninstall: codexmono install --help runs the default core installation, and codexmono uninstall --help runs the default all removal.

Install the Package, Then Choose a Font Set

The npm postinstall script prints the philosophy and command map; it does not copy fonts into the operating system. Bare codexmono also prints the hub. Font installation is always an explicit command. For a one-shot invocation, include the action and target:
Bare npx @monolex/codexmono only prints the guide.

Font Targets

Every target contains the Latin, KR, EA, and Traditional variants for its layer: base and default are aliases for core.

Bundled variants

Each family is bundled in both TTF and WOFF2 form. The character counts describe the packaged font metadata, not which files are currently installed.

Complete Command Map

Version 1.0.5 advertises 12 commands. help is also accepted as a root alias. Root help aliases are help, --help, and -h. Flags are collected after the first argument, so the command must come first:
--json is implemented for info, verify, which, and chars only. --woff2 affects path only.

Install, Remove, and Diagnose

On Windows, uninstall likewise prints the filenames to remove manually. list and doctor distinguish installed-font state from package state:
  • list checks exact TTF filenames in the system font directory.
  • verify hashes the 24 packaged TTF/WOFF2 files, not installed copies.
  • doctor combines installed counts and package integrity, and warns about matching non-bundled names such as older or custom CodexMono builds.

Machine-Readable Queries

Package metadata

Each array item contains family, file, characters, size, description, ttf, and woff2.

Integrity

Each result contains file and status. Successful files use ok; failures can use missing or mismatch and include available expected/actual digests. Version 1.0.5 contains 24 checked font files.

Character ownership

which returns input, normalized codepoint, rendered char, and covered_by. chars returns one row per Unicode code point with char, codepoint, count, and covered. In version 1.0.5, Latin A is covered by all 12 fonts, Hangul by 9, and emoji 😀 by the 4 Hermes variants. These are packaged cmap results and do not depend on system installation.

Editor and Terminal Snippets

Supported editors are vscode, kitty, alacritty, wezterm, ghostty, vim, neovim, iterm2, jetbrains, and terminal (macOS Terminal). The family selector maps core to CodexMono, nerd to CodexMono Nerd, and hermes to CodexMono Hermes. Omitting it uses CodexMono EA. The command only prints a snippet or GUI path. It does not edit the target application’s configuration.

Web Use

Use package paths when a bundler owns assets:
Or import the packaged preset:
The generated css command covers the selected Core, Nerd, or Hermes families; the static preset focuses on the Core family. Both reference the package’s WOFF2 and TTF assets with font-weight: 100 800, normal style, and font-display: swap.

Published Package Proof

The npm 1.0.5 tarball has integrity sha512-4n3d7OwKnWxV4aH7Pp/sJqytaJsl/kwJv07BqwVvekYU+9He97/PPQltF+duAyU1nfoUhUuGWHfj3uNm4UOdXw==. An npm dry-run reports 43 entries, a 145,955,994-byte packed archive, a 212,955,602-byte unpacked package, 12 TTF files, 12 WOFF2 files, and 7 license files. The package has no runtime or development dependencies. The published artifact includes initiate/initiate.md and initiate/initiate.json. It does not include initiate/SKILL.md in version 1.0.5; treat the root command and initiate.md as the packaged agent reference for this release.

Distribution

Package architecture, CSS distribution, JavaScript metadata, and licensing.

600-Unit Contract

Why Latin cells use 600 units and East Asian cells use 1200.

Monogrid

Validate box-drawing alignment against CodexMono display widths.

Terminal Integration

Connect font metrics to terminal rendering and width ownership.