joeynyc/hermes-skins

Custom skins (visual themes) for the Hermes CLI agent

What it solves

Hermes is a CLI agent that typically has a single default look. Users may want different aesthetics for different moods, projects, or even to match a retro or sci-fi vibe. Hermes Skins solves that by offering a simple way to change the visual style of the Hermes CLI — colors, spinner animations, labels, branding, and ASCII art — without affecting the agent's personality or behavior. It also makes it easy to share and install these themes.

How it works

Skins are YAML files that define visual settings, such as banner colors, spinner phrases, response-box labels, branding text, and ASCII art. The Hermes skin engine loads skins from two places: user-defined skins in ~/.hermes/skins/ and built-in skins hardcoded in the engine. When you activate a skin (via a /skin command or a config setting), the engine merges your chosen skin on top of the default skin, so any unspecified values inherit from the default. This means you can create a partial skin with just a few changes and the rest falls back to defaults. To install a skin, you copy a YAML file to the skins directory and activate it. To create your own, you write a YAML file with a name field matching the filename, and optionally define color keys, spinner verbs, and branding. The full schema is available in SCHEMA.md.

Who it's for

It's for users of the Hermes CLI agent who want to personalize its look. It's also for anyone who enjoys collecting or creating themed terminal aesthetics — the project includes a bunch of ready-made skins inspired by sci-fi, retro computing, anime, and more. Contributors can submit their own skins via pull requests.

Highlights

  • Over a dozen custom skins: pirate, Vault-Tec, bubblegum 80s, Skynet, Lain, Neonwave, Sakura, Netrunner, Mythos, Nous, Mother, DOS, Telemate, Empire, Catppuccin, and DGX Spark.
  • Each skin includes unique ASCII art, color palettes, and spinner verb sets (e.g., pirate uses pirate-themed phases, DGX Spark uses GPU/compute phrases).
  • Simple YAML format: define only what you want to change, everything else inherits from the default.
  • Easily installable: copy a file to ~/.hermes/skins/ and activate using /skin or a config value.
  • Built-in skins are also listed for reference (default, ares, mono, slate, poseidon, sisyphus, charizard).
  • MIT licensed.

Related

  • Project
  • Project
  • Project
  • Project