CLI Tools
CLI Tools

CLI Tools represent a collection of command-line utilities designed with a philosophy of combining functionality with delight. The approach emphasizes that if you're going to spend significant time in a terminal, the experience should feel engaging rather than purely utilitarian.
Philosophy

The tools follow the Unix philosophy of doing one thing well, but with added personality and visual design that makes routine tasks more enjoyable. This approach to developer experience (devex) design transforms mundane operations into something that brings joy to daily workflows.
The core principle is functionality first, but never underestimating the power of delight in software design.
This is in the lineage of Appropriate Technology thinking applied to interfaces - the right tool at the right scale, but beautiful.
Featured Tools
Workflow Tools
- git-status-dash: Multi-repository git status dashboard. Integrated into zsh startup, scans ~/code/ checking git status of every repo—generates a report for any repos out of sync. Essential for working across multiple computers.
- directory-sync-tool: Visual directory comparison and syncing. Point at two directories, check sync status, confirm. Perfect for Obsidian to GitHub workflows.
- cli-content: Content creation companion. Pulls random drafts from Obsidian, uses AI to suggest improvements, guides you through transforming drafts into blog posts or videos.
Visual & Creative Tools
- cli-conway: A hacker's Tamagotchi. Conway's Game of Life rendered in braille unicode characters for higher-dimensional display. Drop shapes with keybinds, tend your digital garden. Keep it alive in a tmux pane as you work.
- cli-ascii-3d: Cyberpunk eye candy. Watch 3D shapes rotate in ASCII glory. Multiple "windows" have different shapes spin at different speeds.
- showtouch: Large-scale ASCII keystroke visualizer. Shows every keystroke in large ASCII art—perfect for presentations and livestreams.
- ascii_webcam: Real-time webcam-to-ASCII converter. Live feed becomes character art.
AI & Knowledge Tools
- cli-ai-chat: IRC meets AI. Threaded conversations with multiple AI models in classic IRC-style interface. Channels, threads, multi-robot chats.
- scrapbook-cli: Command-line interface for exploring personal knowledge graphs and collected snippets.
- cli-ching: Book of Changes meets modern CLI. Guide for coin throws, hexagram building, and LLM-powered I Ching readings. Bridges physical ritual and digital interpretation.
Utility Tools
- cli-alias-wizard: Alias creation wizard. Guides you through crafting and adding aliases to .zshrc—especially helpful for args syntax.
- cli-delta-dojo: JSON comparison game to train your eye for changes. Code review skill sharpener.
Technical Approach

The tools are primarily built using Node.js and leverage ASCII art for visual feedback. They integrate with existing development workflows while adding layers of visual interest and personality.
Each tool addresses specific pain points in developer workflows while maintaining the aesthetic principle that command-line interfaces can be both functional and visually engaging.
Why ASCII?
ASCII visualization:
- Cross-platform - renders everywhere, no GPU required
- Accessible - works in terminals, SSH sessions, minimal environments
- Aesthetic - has visual personality without being heavy
- Instant - renders faster than pixel graphics
- Debuggable - text is inspectable, not opaque binary
- Historical - connects to the lineage of Unix and early computing
This is appropriate technology applied to interface design: use the constraints as creative fuel.
Livestreaming & Cyberpunk Aesthetic
The inspiration is hard to pinpoint—a mix of hacker culture, cyberpunk aesthetics, and practical utility. The goal: create a futuristic feel, like having a tmux session with multiple small apps running in panes. Real-life versions of the tools you might see hackers using in cyberpunk anime.
For livecoding and livestreaming, these tools serve dual purposes:
- Functional for actual work
- Ambient visuals that reinforce the cyberpunk aesthetic during streams
Working within CLI constraints has reinforced the value of minimalism. The limitations prevent unnecessary UI elements, encouraging a utilitarian minimalist approach. This constraint-driven design leads to small, modular applications that are highly specific in their usage, and can talk to one another through JSON or pipes.
During livestreams, where speed and entertainment are key, these custom CLI apps act as realtime graphics as much as tools. Creating them yourself allows complete control over pacing and presentation. Instead of simulated "hacker" graphics, you can showcase actual, functional tools—adding authenticity to the stream.
Related Thinking
- Appropriate Technology - why choose CLI over GUI
- Infrastructure Thinking - understanding systems through their interfaces
- Sensemaking Systems - making sense of complexity through visualization
- Dotfiles - customizing your interface as a reflection of your thinking
Influences
The philosophy behind these tools:
- Stewart Brand: Tools as extensions of thought. If you're going to live in an interface, it should fit you and delight you.
- Neal Stephenson: Depth and direct access. Command-line is the interface to actual power, not abstractions.
- Unix Philosophy: Do one thing well. Combine with other tools. Make interfaces text-based so they compose.
Related Content
- The Impact of My LLM-Powered MOTD - Video documentation about building custom daily CLI tools around existing routines
- Neovim - text editor as thinking tool
- Dotfiles - personal configuration as sensemaking
Categories
| ⚡ Technical | |
|---|---|
| Core | Technical · CLI · Dotfiles · Nvim · SSH · VPS |
| Tools | Sketchybar · ArchiveBox · ThinkPad Linux |
| Systems | Automation · Personal APIs · Quantified Self |
| Reference | Runbooks · New Computer Runbook · Syntax guide |
| 🛠️ Development | |
|---|---|
| Editors | Neovim · Nvim |
| CLI & Tooling | CLI · Dotfiles · Git workflows |
| Configuration | Sketchybar · Shaders · SSH |
| Infrastructure | VPS · Runbooks · New Computer Runbook |