Overview
Note from Creator: After more than twenty years as a product designer and engineer, I've slowly discovered that simple tools are oftentimes the best. Many times we get distracted by large feature sets when we should be focused on how information is being absorbed and understood — and how taxing it is to context switch.
Think about it: Jumping from meta-level issues happening around you to the minutiae of a text message, then to a different application, then to another service. Every time you want to genuinely understand information, you have to mentally jump between different universes of products and services. That's a real taxation on your time, your mental resources, your capacity, and your creativity — which is really important. Not to mention your overall mental health.
I've always wanted a unified paradigm where I can have everything I need in the same scope, the same UI, and the same UX. I don't have to functionally context switch in terms of my actual behavior and the way my hands move. In fact, I don't even have to touch a mouse. I can do everything I need in a single unified frame.
I love that. And I want that for other people. I want people to save time. I want them to save their emotional and psychological health. So it's really important to build this not only for myself, but as a gift to other folks who really want to be productive and really want to maximize their time.
Because time is the most valuable resource. It's limited, and once you use it up, it's gone.
— 8
Feature Categories
- User Features - Enhancements that make using the terminal more pleasant without requiring changes to terminal applications
- macOS Features - Native platform integration for an idiomatic macOS experience
- Shell Integration - Deep integration with your shell for enhanced productivity

User Features
Features that enhance your terminal experience without requiring any changes to the applications you run inside it.
GPU-Accelerated Rendering

YEN uses Metal, Apple's GPU framework, to render the terminal screen at 60 FPS. This provides smooth scrolling, responsive interaction, and efficient rendering even with complex output.
- Metal Backend - Native macOS GPU acceleration for optimal performanceIn simple terms: Your Mac has two processors — the CPU (main brain) and the GPU (graphics brain). Most terminals use only the CPU, which is like asking one person to do everything. YEN uses Metal to tap into your Mac's powerful graphics processor, which is specifically designed for drawing things on screen. This means YEN can show text instantly without making your Mac work harder or drain battery. Why this matters: When text appears instantly as you type, you stay focused on your work instead of waiting for the screen to catch up. No lag means no interruptions to your flow, saving precious seconds that add up throughout your day.
- 60 FPS Rendering - Smooth, fluid terminal outputIn simple terms: FPS stands for "frames per second" — it's how many times per second your screen updates with new information. Movies play at 24 FPS, video games aim for 60 FPS. YEN renders at 60 FPS, meaning the screen updates 60 times every second. This creates that buttery-smooth feeling when scrolling through code or command output. Why this matters: Smooth scrolling means your eyes don't have to work as hard to follow text. Less eye strain means longer, more productive sessions. When scrolling feels natural, you can focus on understanding your code instead of fighting with a janky interface.
- Efficient Memory Usage - Optimized for long-running sessionsIn simple terms: Memory (RAM) is like your desk space — the more you use, the slower things get. YEN is designed to use memory efficiently, so it doesn't hog resources even when you leave it running for hours or days. Why this matters: When your terminal doesn't slow down your Mac, you can keep it open all day without restarting. This saves time because you don't lose your place or have to reopen everything. More available memory means other apps run faster too, keeping your entire workflow smooth.
- VSync Support - Synchronized rendering with display refresh rateIn simple terms: VSync matches YEN's screen updates to your monitor's refresh rate (how often it can show new images). Think of it like two dancers moving in perfect sync — when they're aligned, everything looks smooth. Without VSync, you might see screen tearing (where part of the screen shows one frame and part shows another). Why this matters: Perfect synchronization eliminates visual distractions like screen tearing. When everything is perfectly smooth, your brain doesn't have to work to process visual glitches. This helps you maintain focus and reduces eye fatigue during long coding sessions.
Performance
Windows, Tabs & Splits

Organize your work with multiple windows, each containing tabs and split panes. All UI elements use native macOS components for a familiar, integrated experience.
- Multiple Windows - Create as many terminal windows as you needWhy this matters: Different projects or tasks can have their own windows, keeping things organized. No more hunting through one cluttered terminal to find what you need.
- Tabbed Interface - Organize sessions within each window using native macOS tabsWhy this matters: Tabs are familiar — you use them in browsers every day. When tools work the way you expect, you don't waste mental energy learning new patterns. You can focus on your work instead of figuring out how to use the tool.
- Split Panes - Divide tabs horizontally or vertically to work with multiple sessions side-by-sideWhy this matters: Seeing multiple things at once means less switching. Watch logs while running commands. Compare outputs side-by-side. This eliminates the back-and-forth that breaks your flow and wastes time.
- Native UI - All window controls, tabs, and splits use macOS system componentsWhy this matters: When YEN looks and behaves like other Mac apps, it feels natural. You don't have to learn new behaviors — everything works the way you expect. This reduces cognitive load and helps you stay focused on your work, not the tool.
Keyboard Shortcuts
Cmd+T- New tabCmd+N- New windowCmd+D- Split horizontalCmd+Shift+D- Split verticalCmd+W- Close tab/pane
Themes

Customize your terminal's appearance with themes. YEN supports automatic theme switching based on system dark/light mode, or you can set a fixed theme.
- Theme Modes - Auto (follows system), Light, or DarkWhy this matters: Automatic switching means your terminal always matches your Mac's appearance without any effort from you. This consistency reduces visual jarring and helps maintain focus.
- Custom Colors - Set background, foreground, cursor, and selection colorsWhy this matters: Color coding helps your brain process information faster. When you can instantly distinguish different types of text by color, you read and understand code more quickly. This saves time and reduces errors.
- Transparency - Adjust background opacity with optional blur effectsWhy this matters: Transparency lets you see what's behind your terminal, which can be helpful for referencing other windows. But more importantly, it's about visual comfort — you can adjust it to reduce eye strain during long sessions.
- Visual Settings - All theme options accessible through the Settings GUI
Settings
YEN → Settings or Cmd+,. Changes apply immediately or when opening a new window, depending on the setting.Ligatures

YEN correctly renders ligatures from fonts that support them. Ligatures combine multiple characters into a single glyph, making code more readable.
- Font Support - Works with any font that includes ligatures (e.g., Fira Code, JetBrains Mono)
- Automatic Rendering - Ligatures render correctly without additional configuration
- Font Features - Supports font-specific features and variants
Recommended Fonts
Grapheme Clustering

YEN correctly handles complex Unicode characters, including multi-codepoint emoji and right-to-left scripts.
- Emoji Support - Flags, skin tones, and other multi-codepoint emoji render as single characters
- Right-to-Left Scripts - Individual grapheme clusters in Arabic and Hebrew render correctly
- Unicode Compliance - Follows Unicode standards for proper character rendering
macOS Features
YEN is built specifically for macOS, using native components and platform features to provide an idiomatic experience.
Quick Terminal

Quick Terminal is a lightweight dropdown terminal that animates down from below the menu bar for instant access without interrupting your workflow.
- Global Hotkey - Access from any application via keyboard shortcutWhy this matters: No mouse needed, no app switching. Your hands stay on the keyboard, maintaining your typing rhythm and focus.
- Non-Intrusive - Appears and disappears smoothly without disrupting your current workWhy this matters: When tools don't interrupt your flow, you can use them without breaking concentration. Smooth animations feel natural, not jarring.
- Configurable Position - Set position to Top, Bottom, Left, or Right in Settings → macOS
- Instant Access - Perfect for quick commands without switching applicationsWhy this matters: Instant means zero wait time. When you need information, you get it immediately. This eliminates the frustration of waiting and keeps your momentum going.
Setup
Native UI Components

YEN uses native macOS UI components for tabs, splits, and window controls, ensuring it looks and feels like a purpose-built macOS application.
- Native Tabs - macOS system tabs for consistent appearance and behavior
- Native Splits - System split view components
- Window Controls - Standard macOS window buttons and decorations
- System Integration - Follows macOS design guidelines and accessibility standardsWhy this matters: Accessibility features like VoiceOver, keyboard navigation, and high contrast modes work automatically because YEN uses standard macOS components. This means YEN is usable by everyone, and you get these features without any extra setup.
Proxy Icon

The proxy icon in the title bar provides quick access to the current working directory and file operations.
- Drag & Drop - Drag the proxy icon to move or access terminal session filesWhy this matters: Drag-and-drop is faster than typing paths. Move files, open folders, or share locations instantly without leaving your keyboard flow.
- Path Navigation - Click to navigate to the file path directly in FinderWhy this matters: One click opens Finder to your exact location. No typing, no guessing paths, no navigation errors. Instant access saves time and reduces frustration.
- Context Menu - Right-click for additional file operations
Quick Look

Use macOS Quick Look directly from the terminal for definitions, web searches, and more.
- Three-Finger Tap - Tap text with three fingers to trigger Quick LookWhy this matters: A simple gesture gives you instant information. No keyboard shortcuts to remember, no menus to navigate. Natural, fast, and keeps your hands in place.
- Force Touch - Use Force Touch on supported Macs
- Dictionary Lookup - Get definitions instantlyWhy this matters: Understanding code or documentation faster means less time spent confused. Instant definitions help you learn and work more efficiently.
- Web Search - Quick access to web search resultsWhy this matters: Quick answers without leaving your terminal. Look up error messages, check documentation, or verify information instantly. This eliminates the context switch that breaks your flow.
Secure Keyboard Entry

Protect your passwords from other processes with secure keyboard entry. YEN can automatically detect password prompts or you can enable it manually.
- Automatic Detection - Detects password prompts and enables secure entry automaticallyWhy this matters: You don't have to remember to enable security — YEN does it for you. This eliminates a step from your workflow, saving mental energy for the tasks that matter.
- Manual Activation - Enable secure keyboard entry manually when needed
- Visual Indicator - Animated lock icon appears in the top-right corner when activeWhy this matters: Clear visual feedback means you always know when you're protected. No guessing, no uncertainty. This reduces cognitive load and helps you stay focused.
- Process Protection - Prevents other processes from intercepting keystrokes
Security
Shell Integration
YEN can automatically integrate with your shell to provide enhanced productivity features. Shell integration works with bash, zsh, fish, and elvish.
Features

Shell integration enables several productivity enhancements:
- Smart Close Confirmation - Prevents accidental window closure when cursor is at a promptWhy this matters: Ever accidentally closed a terminal window and lost your place? This prevents that frustration. When you're actively working (typing at a prompt), YEN knows you're not done and warns you before closing. This saves time by preventing mistakes and the frustration of having to restart your work.
- Working Directory Tracking - New terminals start in the working directory of the previously focused terminalWhy this matters: When you open a new terminal tab, it starts where you left off, not in your home folder. No more typing long paths or navigating back to where you were working. This eliminates repetitive navigation, saving seconds every time you open a new terminal — which adds up to minutes saved daily.
- Prompt Resizing - Complex prompts resize correctly by allowing the shell to redraw rather than reflowWhy this matters: When you resize a terminal window, complex prompts (like those showing git branch info or long paths) redraw correctly instead of breaking or wrapping awkwardly. This means you can resize windows without losing information or having to restart commands. Less frustration, more flexibility.
- Command Output Selection - Triple-click while holding Command to select the output of a commandWhy this matters: Selecting text in terminals is usually frustrating — you have to carefully drag to select just the output, avoiding the command itself. This feature lets you select entire command outputs with one gesture. Copy-paste becomes instant instead of a careful manual process, saving time when you need to use command output elsewhere.
- Prompt Cursor Style - Cursor at the prompt changes to a bar for more typical text editing appearanceWhy this matters: Small visual cues help your brain understand context faster. When the cursor looks like a text editor cursor (bar) at the prompt, you instantly know you're in "typing mode" vs. "reading mode". This reduces cognitive load and helps you focus on the task at hand.
- Jump to Prompt - Use the
jump_to_promptkeybinding to scroll forward and back through promptsWhy this matters: When you have lots of command output, finding where you last typed can be tedious. This feature lets you jump between prompts instantly — like bookmarks in your terminal history. No more scrolling through pages of output to find your last command. This saves time and keeps you oriented in long terminal sessions. - Alt+Click Navigation - Option+click moves the cursor to the click location while at a promptWhy this matters: Sometimes you need to fix a typo in the middle of a long command. Instead of backspacing through everything, you can click where you want to edit and start typing. This is faster than arrow-key navigation for long commands, saving time and reducing frustration.
- sudo Wrapping - Automatically wrap sudo to preserve terminal capabilities (disabled by default)
- ssh Wrapping - Automatically wrap ssh to transmit terminal capabilities or set TERM to
xterm-256colorfor maximum compatibility (disabled by default)
Automatic Injection

YEN automatically injects shell integration code for bash, zsh, fish, and elvish when you start a new terminal session.
macOS Bash
/bin/bash) does not support automatic shell integration. You'll need to manually source the shell integration script or install a standard version of Bash from Homebrew.YEN detects your shell using a simple string match on the basename of the command. If you're using a supported shell with a different name, you can force shell integration by setting the shell-integration configuration option in your config file.
# Force shell integration for a custom shell name
shell-integration = fishTo disable automatic shell integration:
# Disable shell integration
shell-integration = noneVerifying Shell Integration
To verify shell integration is working, launch YEN from Terminal and look for log lines indicating successful injection:
info(io_exec): using YEN resources dir from env var: /Applications/YEN.app/Contents/Resources
info(io_exec): shell integration automatically injected shell=fishIf you see messages about terminfo not found or shell detection failure, check that the YEN_RESOURCES_DIR environment variable is set correctly. This variable is automatically set by YEN when it starts.
Manual Setup

Shell integration can also be manually sourced in your shell configuration. This ensures that shell integration works in more scenarios, such as when you switch shells within YEN.
YEN automatically sets the YEN_RESOURCES_DIR environment variable when it starts, so you can use this to detect when your shell is launched within YEN and to find the shell-integration scripts.
Shell Configuration Examples
Bash (~/.bashrc):
# YEN shell integration for Bash. This should be at the top of your bashrc!
if [ -n "\$\{YEN_RESOURCES_DIR\}" ]; then
builtin source "\$\{YEN_RESOURCES_DIR\}/shell-integration/bash/yen.bash"
fiZsh (~/.zshrc):
# YEN shell integration for Zsh
if [ -n "\$\{YEN_RESOURCES_DIR\}" ]; then
source "\$\{YEN_RESOURCES_DIR\}/shell-integration/zsh/yen-integration"
fiFish (~/.config/fish/config.fish):
# YEN shell integration for Fish
if test -n "$YEN_RESOURCES_DIR"
source "$YEN_RESOURCES_DIR/shell-integration/fish/vendor_conf.d/yen-shell-integration.fish"
endSwitching Shells
bash or use nix-shell), manually sourcing the shell integration ensures features continue to work.