Files
ermnvldmr.com/services/docs/content/en/apex/reference/cli.md
T
deytenit b3638f4d63 fix: cyrillic fonts, dev certs, page head, and ru-text typography (#67)
šŸ¤– PR generated for branch `fix/cyrillic-fonts-dev-certs-and-page-head`.

### Changes Summary
- **Fonts**: Add Cyrillic glyph subsets for Lato, EB Garamond, and Fira
Code.
- **Dev**: Support remote Root CA and encrypted dev CA key in
`.env.dev`.
- **UI & Kits**: Add size variant to `Breadcrumbs` component and enlarge
`PageHead` breadcrumbs with tuned collapse scroll threshold.
- **ESLint**: Add `no-hanging-particles` i18n & markdown typography rule
with auto-fixer.
- **Content & i18n**: Apply `ru-text` editorial and typography polish
(em dashes, number ranges, «ё» restoration, non-breaking spaces) across
`services/www` and `services/docs`.
2026-10-25 15:21:09 +03:00

2.8 KiB

title, description, weight
title description weight
CLI reference TheĀ apex launcher: listing, dispatch, help, andĀ exit codes. 31

TheĀ launcher isĀ aĀ single stdlib-Python script, commons/apex (onĀ PATH after init.sh). Everything itĀ does targets theĀ local checkout — noĀ node argument exists.

Invocation forms

Command Behavior
apex orĀ apex --help List every available action withĀ its summary; exit 0.
apex <group>/<action> [args...] Dispatch one action.
apex <group>/<action> --help Print theĀ action's argparse help generated fromĀ its METADATA; exit 0.

TheĀ listing tags each entry withĀ its overlay source — noĀ tag (commons), (local), (local override) — andĀ appends [DISABLED: reason] where aĀ module declares DISABLED. Listing uses static ast scanning, soĀ noĀ action code executes.

Layout andĀ path resolution

AtĀ startup theĀ launcher decides which ofĀ two layouts itĀ isĀ in:

  • Node checkout — theĀ launcher lives inĀ aĀ directory named commons/ whose parent contains node.env. TheĀ parent isĀ theĀ repository root; proprietaries/actions/ isĀ theĀ overlay tree; node identity isĀ resolved before dispatch, andĀ any identity warnings are logged first.
  • Standalone commons — any other location. TheĀ commons directory isĀ its own root, there isĀ noĀ overlay, andĀ ctx.node isĀ None (log lines carry theĀ global prefix).

sys.path isĀ assembled as: theĀ commons directory (makes engine importable), then commons/vendor/ when present, then ../proprietaries/ inĀ aĀ node checkout (makes proprietary lib/ code importable).

Exit codes

Code Source
0 Action returned 0 orĀ aĀ non-integer; --help paths.
1 Unknown action; disabled action; unhandled exception (logged asĀ Type: message withĀ theĀ context prefix); non-integer SystemExit.
64 Usage error fromĀ argument parsing (EX_USAGE).
65 Data error raised byĀ engine libraries (EX_DATAERR) — forĀ example anĀ empty rendered crontab.
66 Missing input (EX_NOINPUT) — forĀ example missing identity fields orĀ anĀ absent ufw config directory.

Any other code isĀ whatever theĀ action itself returned orĀ raised.

Log format

All engine andĀ action output follows one line shape:

[<node>] [<group>/<action>] [LEVEL] message

LEVEL isĀ INFO, WARN, ERROR, orĀ SUCCESS; ERROR lines go toĀ stderr, everything else toĀ stdout — cron-friendly forĀ both capture andĀ alerting.


See also: