Skip to content
Development
Skill

/aesthetic-instrument

great_cto's own committed aesthetic — the instrument panel. Dark five-step surface ladder, exactly one accent, two faces divided by MEANING (Geist speaks, Geist Mono is machine-truth), tabular numerals, and a dash that is not a nought. Twelve checkable rules measured from

From plugin
great-cto
11333 skills72 agents21 commands1 hook

Claude Code

$ npx -y skills add avelikiy/great_cto --skill aesthetic-instrument --agent claude-code

SKILL.md

aesthetic-instrument.SKILL.md
name: aesthetic-instrument
description: "great_cto's own committed aesthetic — the instrument panel. Dark five-step surface ladder, exactly one accent, two faces divided by MEANING (Geist speaks, Geist Mono is machine-truth), tabular numerals, and a dash that is not a nought. Twelve checkable rules measured from packages/board and greatcto.systems, not designed for this file. Use when building or extending any great_cto surface — the board, the site, a report, a share page."
when_to_use: |
  Apply when:
  - building or extending ANY great_cto surface (board screen, site section, share report)
  - a new element must sit beside existing ones without re-deciding the system
  Do NOT apply when:
  - designing a CLIENT product — this is our identity, not a default. See rule 0.
effort: low
allowed-tools: Read, Write, Edit, Grep, Glob

The instrument panel

A committed aesthetic in the sense of [`skills/committed-aesthetic/SKILL.md`](../committed-aesthetic/SKILL.md): every rule below is checkable, and every value was **read out of the source** — `packages/board/public/index.html` and `great_cto-site/styles.css` — rather than chosen to write this document.

The subject is an instrument, not a brochure. One person reads it to decide what a machine may do next. Everything below follows from that.

Rule 0 — this is the CATEGORY default, and calling it ours was wrong

The first version of this file opened "this is ours, not a default". Measured against a real corpus on 2026-09-01, that is false, and the correction matters more than anything below it.

Refero's top ten styles for a dark technical developer landing describe: near-black canvas (Depot, Warp, Supabase, Trunk, Checkly, Cron, Linear, Eraser), depth from surface shifts or borders **rather than shadows** (Warp, Supabase, Trunk, Linear), and **one green accent used sparingly** (Depot, Warp, Supabase, Trunk). Four of them are described with the words "instrument panel", "command center" or "cockpit".

Every one of those is a rule below. This aesthetic is not great_cto's identity — it is what every infrastructure product looks like, and this file codified the modal choice and labelled it a differentiator. A skill that does that produces template work while asserting it does not.

**What follows is still correct, and its correctness is functional, not distinctive.** Dark, dense, one accent, tabular numerals and a dash that is not a nought are right for a surface one operator reads all day to decide what a machine may do next. Keep them for the BOARD. Just do not mistake them for a voice.

Where the category default costs something is the LANDING, where a visitor who has seen Depot, Warp and Supabase cannot tell us apart. Differentiation there is a brand decision made through `committed-aesthetic`, not a repaint of this file. And for a client product — a dental practice does not want an instrument panel — go through `committed-aesthetic` and choose deliberately.

The DNA

**1. Five surface steps, each about 5% apart, and depth is always a step.** `--bg-page #0a0e0c` → `--bg-card #11161a` → `--bg-muted #161c1f` → `--bg-elevated #1a2025` → `--bg-strong #1e272c`. A raised element takes the next step up. It does not take a shadow.

**2. Exactly one accent, and it is mostly not a fill.** `--accent #00d97e` appears as a 1px border, a 3px rail on the active nav item, and a 6% glow. It fills only a badge count and a swatch. Two accents is a different design; adding one is a decision, not a tweak.

**3. One shadow in the system carries colour.** Card hover: `0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,217,126,.06)` — the accent at 6%. Everywhere else depth is rule 1.

**4. Two faces, divided by MEANING rather than by taste.** Geist is the voice the surface speaks in — headings, navigation, controls, prose. Geist Mono is *machine truth*: anything a person would select and paste. Ids, agent slugs, paths, money, versions, timestamps, verdict tokens, commands. The test is one question: **would someone copy this?** Measured: 115 mono uses against 9 display. A task title is Geist and its id beside it is Geist Mono — the two faces on one row are the point, not an inconsistency.

**5. Numerals are tabular, always.** `font-variant-numeric: tabular-nums` at `letter-spacing: -0.02em`. A figure that changes width as it changes value reads as motion the operator did not cause.

**6. A dash is not a nought.** Unmeasured renders as `—` in a lighter weight and `--text3`; a measured zero renders as `0` in the numeral treatment. Every count on every surface carries a third state, and it must be visibly different from zero. This is the house rule the whole product rests on; it is a typographic rule here.

**7. Twelve type tokens, never a raw size.** 11 · 12 · 13 · 14 · 15 · 16 · 19 · 22, plus numerics 24 · 30 · 36 · 52, as `--fs-*`. If a size is not on the scale, either the scale is wrong or the element is.

**8. Tracking moves one way at each end.** ≥22px → `-0.02em`. 11px uppercase → `+0.10em`. Nothing in between is tracked.

**9. Geist Mono never above weight 500.** It is vendored `wght 400 500`; above the axis the browser synthesises a smeared bold. Geist runs 400–700; 500 is the workhorse, 600 is emphasis, 700 exists for badge counts only.

**10. Desktop density is deliberate, and does not travel.** Controls are 30–32px, chips 20px — below the 44px touch floor on purpose, because this is a pointer surface for one operator. **A mobile or client surface must not inherit these numbers**; it takes rules 1–9 and its own sizes.

**11. One hue per meaning, and colour never carries meaning alone.** Every status colour is paired with a glyph or a word. A ▲/▼/— goes with the green/red/grey, so the row survives a reader who cannot distinguish them.

**12. Latin subset, self-hosted, 52 KB.** Two variable faces, `font-display: swap`, no CDN. Cyrillic and anything outside latin falls to the system stack mid-line — a known look, decided for the byte count, not a bug to

Read more
@avelikiy
Ships withgreat-cto

You already have the agent. This is everything around it. great_cto runs Claude Code as a pipeline of 70 specialist agents — an independent model checks each stage before the next builds on it, spending caps refuse rather than warn, and three decisions stay yours: what gets built, how, and whether it ships.

11333 skills72 agents
Get the whole plugin

Stars on GitHub

Momentum

stars in total
113
Star history of avelikiy/great_cto on GitHub, a chart by star-history.com

Other skills on great-cto.

anti-patterns

anti-patterns

Catalogue of known SDLC anti-patterns that great_cto agents must actively reject when reviewing architecture, plans, code, or…

@avelikiy@avelikiyInstall Skill
anydesign

anydesign

Analyze images, websites, and Figma files to extract their design and generate a `design.md` with token system, component…

@avelikiy@avelikiyInstall Skill
archetype-review-base

archetype-review-base

Shared review framework that every domain reviewer (pci, oracle, gov, edtech, healthcare, mlops, etc.) MUST follow. Defines the…

@avelikiy@avelikiyInstall Skill
brainstorming

brainstorming

Structured idea generation + multi-LLM debate for the product-owner stage. Diverge (generate genuinely different bets), debate (a…

@avelikiy@avelikiyInstall Skill
codex-host

codex-host

Run the great_cto controlled Codex lifecycle with controller-owned writes, verifier evidence, human gates and optional artifact…

@avelikiy@avelikiyInstall Skill
committed-aesthetic

committed-aesthetic

How to write — and how to use — a skill that IS one aesthetic rather than a catalogue of them. A catalogue lets an agent pick,…

@avelikiy@avelikiyInstall Skill

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills12d309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc13d293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react3d252k
@facebook@facebookInstall Skill

Questions about aesthetic-instrument.

Which coding agents can use aesthetic-instrument?
aesthetic-instrument installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.