Confluence ring — welcome-screen brand mark
Both welcome screens (cyberine fleet hub overview and cyberine chat) show the Cyberine brand mark, the "confluence ring": an open ring for the fleet of attempts, one arc of it in the verified tone, and a diamond at the centre for the one answer that survived judging. The opening on the right makes the whole figure read as a C. It is the same mark the website and the web dashboard use (chosen 2026-09-25), drawn as two-tone half-block pixel art, and it is static.
- The ring follows the active theme accent (
theme.ts): Plasma violet#c77dffin the default dark theme, the same violet the web dashboard draws (the website recoloured the mark to its own 2026-10-01 palette: ink ring, stamp-blue arc). - The verified arc and diamond use
TONE.verified, the website's lockedverifiedrole. - Same mark, same size (
CONFLUENCE_COLSxCONFLUENCE_ROWS, 14x7) in both welcome screens.
cyberine # fleet hub overview, mark in the header
cyberine chat # chat REPL, same mark in the welcome headerExtend: the TUI raster is buildConfluenceFrame in src/tui/brand/mascotConfluence.ts on the HalfBlockCanvas (arc, diamond), rendered by HalfBlockMascot. The vector copies (site assets/src/mark-*.svg, the dashboard's src/web/public/mark-*.svg, favicon.svg and its PNGs) are all written by node site/scripts/gen-mark.mjs; run node site/scripts/gen-assets.mjs afterwards for the site icons. The angles live in both gen-mark.mjs and CONFLUENCE_GEOMETRY, so change them together.
Known limitations: the terminal mark is a 14x14 pixel raster, so the diamond reads as a small plus sign and the gap between the ring and the verified arc is one pixel. There is no longer an env var to recolour it; the former CYBERINE_ECLIPSE_MOON was removed with the eclipse mark.
Standalone ∞ preview harness (CYBERINE_MASCOT)
The earlier Braille ∞ (infinity / lemniscate) mascots are no longer shown in the live TUI,
but they remain available in the standalone preview harness, where the CYBERINE_MASCOT*
env vars still apply. These env vars have no effect on the live cyberine / cyberine chat
welcome screens any more — only on scripts/mascot-preview.ts.
# Compare every saved ∞ variant side-by-side, then animate the active one
npx tsx scripts/mascot-preview.ts
CYBERINE_MASCOT=infinity-3d npx tsx scripts/mascot-preview.ts| Value | Style | Size |
|---|---|---|
dna-infinity (default) | DNA double-helix wound along the ∞ path; base-pair rungs travel along the loop as the helix twists, 120-frame | 9×25 |
infinity-wave | fixed horizontal ∞ (lemniscate) with a bright pulse flowing along the curve, 120-frame | 9×25 |
infinity-3d | ∞ that wobbles/turns in 3D AND carries a wave flowing along the curve (combined motion), 120-frame | 11×25 |
An unset or unrecognized CYBERINE_MASCOT falls back to dna-infinity. CYBERINE_MASCOT_STATIC
pins a still frame, and CYBERINE_MASCOT_SPEED (default 1.5, clamped [0.25, 16]) scales the
7.5 s/cycle base. The ∞ variants are defined in src/tui/brand/mascot.ts.
Output styles — /output-style persona overlay (T539)
/output-style is a SEPARATE toggle from /style (get/set the chat TRANSCRIPT verbosity — compact/verbose/json, run /help inside cyberine chat for the full command list) and from CYBERINEPERSONA...
Skills — Claude-Code-compatible SKILL.md
cyberine discovers SKILL.md files in the SAME format Claude Code uses, so existing skills and templates transfer unchanged (unknown frontmatter keys like version / tools are ignored):