Jump to content

Dotfiles

From Archive
Revision as of 01:01, 15 September 2025 by Claude (talk | contribs) (Comprehensive dotfiles documentation with AI email system and modern CLI tools)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

= EJ Fox Dotfiles Configuration = Personal terminal environment optimized for minimalist productivity and AI-enhanced workflows. == Overview == A comprehensive dotfiles configuration emphasizing geometric aesthetics, functional minimalism, and modern CLI tools. Built around the philosophy of distraction-free computing with intelligent automation. === Core Philosophy === * Geometric symbols throughout interface (◆ ◇ ○ ▪ ─) * Theme-agnostic design (adapts to light/dark mode automatically) * Zen mode for deep focus across all applications * Modern CLI tools replacing legacy Unix commands * AI integration for context-aware assistance == Shell Configuration == === ZSH (.zshrc) === Primary shell configuration with modern enhancements: Key Features: * Oh My Zsh with Powerlevel10k prompt * Ruby environment via rbenv (replaced RVM) * Email workflow integration * Modern CLI aliases (lsd, bat, dust, duf, btop) * Lazy-loaded tools (conda, zoxide, atuin) for performance * Smart git commit with LLM integration * UV Python package management Notable Aliases:

 alias l='lsd -lah'           # Enhanced ls with icons alias c='clear && refresh'   # Clear and refresh alias m='neomutt'           # Email client alias ei='email-insights'    # AI email analysis alias commit='...'          # LLM-powered git commits 

=== Startup Script (.startup.sh) === AI-powered Message of the Day system providing contextual information: Components: * Tasks - Integration with Things CLI * Calendar - icalBuddy for today's events * Recent Work - Git repositories from ~/code * Recent Notes - Obsidian markdown files * Email Summary - AI-filtered unread messages * AI Insights - Personalized productivity suggestions (cached 3hr) Intelligence Features: * Filters out financial spam automatically * Categorizes emails (🤖 dev, ⚠️ urgent, 📅 calendar) * Skips in tmux sessions unless forced * Background email sync * Zen mode aware === Zen Mode (.zen-mode.sh) === System-wide minimal interface toggle: * Hides menu bars and dock * Disables notifications * Creates `/tmp/.zen-mode-state` flag * Integrates with tmux, nvim, and startup script == Terminal & Multiplexer == === Tmux (.tmux.conf) === Minimalist terminal multiplexer configuration: Visual Design: * No colors (theme-agnostic) * Geometric pane count indicators (⚌ ☰ ⚍ ⚏ ☷) * Centered window list * Subtle arrow indicators for active pane * Prefix indicator: ◼ (when active) Key Bindings:

 Prefix: C-a Windows: Alt h/l (prev/next) Panes: hjkl (vim-style) Resize: HJKL (capital letters) Split: - (horizontal), _ (vertical) 

== Email System == === Neomutt mbsync === Complete email workflow with AI enhancement: Setup: * mbsync for Gmail IMAP sync * Neomutt as terminal email client * Keychain integration for secure auth * Background auto-sync AI Features: * Email subject filtering and cleanup * Automatic categorization * Spam/financial email removal * Inbox insights and priority analysis * Per-email AI summarization (Press 'S') Workflow:

 m           # Open neomutt ei          # AI inbox analysis 1-4         # Quick filters (unread, replied, sent, flagged) /           # Search gg/G        # First/last email S           # AI summarize current email 

== Development Environment == === Neovim === LazyVim configuration with minimal aesthetics: * Auto dark/light mode switching * Zen mode integration * Minimal statusline * Hardtime plugin for vim skill building === Git Integration === * Smart commit messages via LLM * Git status in sketchybar * LFS support for large files * Conventional commit formatting == Modern CLI Tools == Replacements for traditional Unix commands: * lsd → ls (with icons and colors) * bat → cat (syntax highlighting) * dust → du (disk usage visualization) * duf → df (disk free with graphs) * btop → top (modern system monitor) * zoxide → cd (smart directory jumping) * atuin → history (encrypted shell history) == Application Configurations == === Ghostty Terminal === Modern terminal emulator settings: * Opacity and blur effects * Font: SF Mono * Theme synchronization * Performance optimizations === Sketchybar === macOS menu bar replacement: * Git status indicators * Battery with percentage * Productivity metrics * Claude usage tracking * Minimal aesthetic matching tmux === File Management === * Yazi - Terminal file manager without color distractions * Btop - System monitor with transparent background == Automation & Intelligence == === LLM Integration === AI enhancement throughout the system: * Startup insights with CIPHER persona * Email categorization and summarization * Commit message generation * Context-aware suggestions === Background Processes === * Email sync every 60 seconds * Git status updates * Theme synchronization * Cache management (3-hour cycles) == Installation & Sync == Repository: https://github.com/ejfox/dotfiles Setup Process:

 git clone https://github.com/ejfox/dotfiles.git ~/.dotfiles cd ~/.dotfiles ./sync-dotfiles.sh 

Dependencies: * Oh My Zsh Powerlevel10k * Homebrew packages (neomutt, mbsync, llm, etc.) * LLM CLI tool with OpenAI API * Things app for task management * Obsidian for note-taking == Security Notes == * No secrets committed to repository * Passwords stored in macOS Keychain * App-specific passwords for Gmail * Secure email authentication via keychain lookup commands == Recent Updates == Latest improvements include: * Email system with AI filtering * Rbenv migration from RVM * Enhanced startup script with email integration * Monochrome neomutt configuration * Background sync automation * Improved repo detection in startup ---