TachiBot/Docs
HomeGitHubnpm
IntroductionInstallationQuick StartExamplesTools OverviewPlannerPrompt TechniquesWorkflowsPingPongTool ProfilesTools ConfigThemesUsage StatsAPI KeysWhat's NewTerms & ConditionsCookie Policy
Products
TachiBot MCPdokorotachi-agent
Getting started
  • Introduction
  • Installation
  • Quick Start
  • Examples
Core features
  • Tools Overview
  • Planner
  • Prompt Techniques
  • Workflows
  • PingPong
Configuration
  • Tool Profiles
  • Tools Config
  • Themes
  • Usage Stats
  • API Keys
Resources
  • What's New
Legal
  • Terms & Conditions
  • Cookie Policy

Loading documentation...

← Previous
Tools Config
Next →
Usage Stats
Edit this page on GitHub
Docs/Configuration

Terminal Themes

TachiBot provides beautiful terminal themes for ANSI output styling. Choose from 4 built-in themes or create your own custom themes via JSON.

Nebula
Modern SaaS, soft pastels
Cyberpunk
Neon on black, Blade Runner
Minimal
Swiss typography, monochrome
Ocean
Cool blues and teals

Quick Setup

Set your theme via environment variable:

.bashrc / .zshrcshell
1# Set theme (nebula | cyberpunk | minimal | ocean)
2export TACHIBOT_THEME=nebula

Built-in Themes

Nebula (Default)

Inspired by VS Code, Linear, and Vercel. Soft pastels that are easy on the eyes for long sessions.

#5F87FF(primary)
#5FAF5F(success)
#FFAF5F(accent)
#FF5F5F(error)
  • Rounded box borders for cards and code blocks
  • Gradient dividers (vice, mind, cristal presets)
  • Model badges: Blue (Gemini), Magenta (Grok), Green (OpenAI), Cyan (Perplexity)

Cyberpunk

High contrast neon on black. Blade Runner vibes with bold HUD-style elements.

#FF00FF(primary)
#00FFFF(secondary)
#FFFF00(accent)
#00FF00(success)
  • Double-line box borders for emphasis
  • Rainbow gradient dividers
  • All-caps model badge labels with icons

Minimal

Swiss typography-inspired. Mostly monochrome with color only where essential.

#FFFFFF(primary)
#CCCCCC(secondary)
#888888(muted)
#666666(border)
  • Single-line borders, minimal decoration
  • Simple bullets: bullet, circle, hyphen
  • Model badges with dark background, colored text

Ocean

Cool blues and teals. Calm and professional aesthetic.

#00CED1(primary)
#4169E1(secondary)
#00FA9A(success)
#FFD700(warning)
  • Rounded borders with teal accents
  • Wave-pattern dividers (atlas, morning presets)
  • Blue-toned model badges

Theme Components

Each theme defines consistent styling for:

Model Badges

Styled badges for AI providers using ink-gradient. Each model has a unique gradient preset for visual distinction:

gemini → cristalgrok → passionopenai → teenperplexity → mindclaude → atlaskimi → morningqwen → fruit
Headers (h1-h4)
Hierarchical heading styles with color-coded backgrounds (nebula/ocean) or text styling (cyberpunk/minimal).
Status Indicators
Success, error, warning, and info badges with appropriate color coding for each theme's palette.
Dividers & Gradients
Thin/thick dividers, 256-color gradients (blue-to-purple, cyan-to-magenta, rainbow), and decorative separators.
Box Drawing
Table characters and code block borders: rounded, sharp, or double-line styles depending on theme.

Nerd Font Icons

TachiBot themes use Nerd Fonts for rich terminal icons. These are patched fonts that include glyphs from Font Awesome, Devicons, Octicons, Powerline, and more.

Recommended Fonts

JetBrains Mono Nerd Font
Clean, modern, great for code
FiraCode Nerd Font
Popular with ligature support
Hack Nerd Font
Excellent readability
MesloLGS Nerd Font
Default for Oh My Zsh/Powerlevel10k

Installation

terminalshell
1# macOS (Homebrew)
2brew install --cask font-jetbrains-mono-nerd-font
3
4# Or download from nerdfonts.com and install manually

After installing, set your terminal's font to the Nerd Font variant (e.g., "JetBrainsMono Nerd Font").

Icons Used in Themes

TachiBot uses Nerd Font icons for model badges, status indicators, and UI elements:

nf-md-diamond — Gemininf-md-lightning_bolt — Groknf-md-circle — OpenAInf-md-compass — Perplexitynf-md-check_circle — Successnf-md-close_circle — Errornf-md-alert — Warningnf-md-folder — Directorynf-md-file — File

Browse all icons at nerdfonts.com/cheat-sheet

i
No Nerd Font?
TachiBot gracefully falls back to ASCII characters if Nerd Fonts aren't detected. Icons become simple text like [✓], [✗], [!], etc.

Custom JSON Themes

Create custom themes by adding JSON files to the themes/ directory:

themes/dracula.jsonjson
1{
2 "name": "dracula",
3 "description": "Dracula-inspired dark theme",
4 "extends": "nebula",
5 "colors": {
6 "h1": { "fg": "#BD93F9", "bold": true },
7 "h2": { "fg": "#50FA7B", "bold": true },
8 "bold": "#FF79C6",
9 "italic": "#8BE9FD",
10 "code": { "fg": "#F8F8F2", "bg": "#282A36" },
11 "link": "#8BE9FD",
12 "bullet1": "#FF79C6",
13 "bullet2": "#BD93F9",
14 "bullet3": "#50FA7B",
15 "divider": "#6272A4"
16 },
17 "modelBadges": {
18 "gemini": { "gradient": "cristal", "icon": "diamond" },
19 "grok": { "gradient": "passion", "icon": "zap" },
20 "openai": { "gradient": "teen", "icon": "circle" },
21 "perplexity": { "gradient": "mind", "icon": "compass" },
22 "claude": { "gradient": "atlas", "icon": "message" },
23 "kimi": { "gradient": "morning", "icon": "star" },
24 "qwen": { "gradient": "fruit", "icon": "cpu" }
25 }
26}

Model Badge Gradients

Model badges use gradient-string presets for TrueColor terminal gradients. Available presets:

cristalteenmindmorningvicepassionfruitatlasretrorainbowpastelinstagram

Or use custom colors: "gradient": ["#ff0000", "#00ff00", "#0000ff"]

Theme Inheritance

Use the extends property to inherit from a built-in theme. Only override what you need:

"extends": "nebula"
Inherit soft pastel base
"extends": "cyberpunk"
Inherit neon aesthetics
"extends": "minimal"
Inherit monochrome base
"extends": "ocean"
Inherit blue palette

Color Formats

Custom themes support multiple color formats:

Hex colors
"#FF00FF"
ANSI 256
"141" (number as string)
Named colors
"magenta", "cyan", "white"

Theme Showcase Script

Preview themes in your terminal:

terminalshell
1# Show all themes
2npx tsx scripts/theme-showcase.ts
3
4# Preview a specific theme
5npx tsx scripts/theme-showcase.ts cyberpunk
✓
Pro Tip: Theme Matching
Match your TachiBot theme to your terminal's color scheme for the best visual coherence. Nebula works well with VS Code's default dark theme, Cyberpunk with Synthwave '84, and Ocean with One Dark Pro.

Render Output Modes

Control how TachiBot renders output with the RENDER_OUTPUT environment variable:

terminalshell
1# React Ink - themes, gradients, tables (~12x tokens)
2export RENDER_OUTPUT=ink
3
4# Sparse - ANSI badges + raw markdown (~1.01x tokens)
5export RENDER_OUTPUT=sparse
6
7# Legacy marked-terminal
8export RENDER_OUTPUT=ansi
9
10# Raw markdown output (default, recommended for non-terminal MCP clients)
11export RENDER_OUTPUT=markdown
12
13# Plain text (no styling)
14export RENDER_OUTPUT=plain
ink
Full React Ink rendering with themes, gradient progress bars, and rich tables
sparse
Lightweight badges + bold section headers + raw markdown body (~72 tokens overhead)
ansi
Legacy marked-terminal renderer for simpler ANSI output
markdown
Raw markdown, default. Best for non-terminal MCP clients (Claude Desktop, Cursor, web UIs)
plain
No styling at all, pure text output
!
Tool output visibility on non-terminal clients
ink, sparse, and ansi emit ANSI escape codes meant for a terminal. In MCP clients that render tool output as plain text (Claude Desktop, Cursor, web UIs), those codes show up as literal [48;5;61m...[0m noise instead of color.

If your tool output looks garbled, switch to RENDER_OUTPUT=markdown — that's the recommended setting for any client that isn't a true terminal. Use ink or sparse only when running TachiBot from Claude Code CLI or another ANSI-aware shell.

ANSI Strip for LLM Context

When TachiBot output is fed back into an LLM context, ANSI escape codes waste tokens and can confuse models. Enable ANSI stripping to automatically remove color codes from context while keeping beautiful terminal output for humans:

terminalshell
1# Strip ANSI codes from LLM context (saves tokens)
2export TACHIBOT_STRIP_ANSI=true
✓
How it works
You see: \x1b[32m✓ Success\x1b[0m (green text)
LLM sees: ✓ Success (clean text)

Next Steps

Tools Config →
Configure which tools to load
Workflows →
Build multi-step AI orchestrations
Examples →
See themes in action