Jump to content

Dotfiles: Difference between revisions

From Archive
Comprehensive dotfiles documentation with AI email system and modern CLI tools
 
Fix formatting and improve readability
Line 1: Line 1:
= 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:''' <pre> 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 </pre>  === 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:''' <pre> Prefix: C-a Windows: Alt h/l (prev/next) Panes: hjkl (vim-style) Resize: HJKL (capital letters) Split: - (horizontal), _ (vertical) </pre>  == 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:''' <pre> 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 </pre>  == 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:''' <pre> git clone https://github.com/ejfox/dotfiles.git ~/.dotfiles cd ~/.dotfiles ./sync-dotfiles.sh </pre>  '''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 --- [[Category:Configuration]] [[Category:Terminal]] [[Category:Productivity]]
= 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
 
---
[[Category:Configuration]]
[[Category:Terminal]]
[[Category:Productivity]]

Revision as of 01:06, 15 September 2025

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

---