diff --git a/dot_claude/rules/development-principles.md b/dot_claude/rules/development-principles.md new file mode 100644 index 0000000..b4683de --- /dev/null +++ b/dot_claude/rules/development-principles.md @@ -0,0 +1,34 @@ +--- +alwaysApply: true +--- + +# Development Principles + +## Test-Driven Development + +- Write tests first, then implementation +- Red → Green → Refactor cycle + +## Simplicity + +- Less code is better code +- Do not add lines without explicit user request +- Avoid over-engineering and premature abstraction + +## Modern Practices + +- Use latest language features and idioms +- Prefer modern libraries over legacy alternatives +- Stay current with ecosystem best practices + +## Honesty + +- Do not answer questions with actions +- Do not speculate on specifications — ask or investigate +- Admit uncertainty rather than guessing + +## Comments + +- Write "why", not "what" +- Only add "what" comments when improving multi-line code readability +- Avoid redundant comments that restate obvious code diff --git a/dot_tmux.conf b/dot_tmux.conf index 7893e49..089571a 100644 --- a/dot_tmux.conf +++ b/dot_tmux.conf @@ -104,14 +104,14 @@ bind u run-shell -b "tmux capture-pane -pS -5000 | grep -oE 'https?://[^[:space: # key, otherwise C-a still gets captured by the outer tmux. # F12 in root table switches to "off" mode (disable prefix + switch key-table) -# Visual: subtle dark background with muted pink indicator +# Visual: muted background with pink indicator # Also disable mouse so events pass through to inner tmux bind -T root F12 \ set prefix None \; \ set key-table off \; \ set -g mouse off \; \ - set status-style "bg=#313244,fg=#6c7086" \; \ - set status-left "#[bg=#eba0ac,fg=#1e1e2e,bold] 🔓 PASSTHROUGH #[bg=#313244] " \; \ + set status-style "bg=#33467c,fg=#565f89" \; \ + set status-left "#[bg=#f7768e,fg=#1a1b26,bold] 🔓 PASSTHROUGH #[bg=#33467c] " \; \ refresh-client -S # Define the "off" key table - only F12 works to return (restore prefix + key-table) @@ -119,8 +119,8 @@ bind -T off F12 \ set prefix C-a \; \ set key-table root \; \ set -g mouse on \; \ - set status-style "bg=#1e1e2e,fg=#cdd6f4" \; \ - set status-left "#[bg=#89b4fa,fg=#1e1e2e,bold] #S #[bg=#1e1e2e] " \; \ + set status-style "bg=#1a1b26,fg=#c0caf5" \; \ + set status-left "#[bg=#7aa2f7,fg=#1a1b26,bold] #S #[bg=#1a1b26] " \; \ refresh-client -S # When connected via SSH (likely nested inside local tmux), hide status bar @@ -131,24 +131,24 @@ if-shell '[ -n "$SSH_TTY" ]' 'set -g status off' bind S set -g status # ----------------------------------------------------------------------------- -# Status bar - Catppuccin Mocha inspired +# Status bar - Tokyo Night theme # ----------------------------------------------------------------------------- set -g status-position bottom -set -g status-style "bg=#1e1e2e,fg=#cdd6f4" +set -g status-style "bg=#1a1b26,fg=#c0caf5" set -g status-left-length 40 -set -g status-left "#[bg=#89b4fa,fg=#1e1e2e,bold] #S #[bg=#1e1e2e] " +set -g status-left "#[bg=#7aa2f7,fg=#1a1b26,bold] #S #[bg=#1a1b26] " set -g status-right-length 60 -set -g status-right "#[fg=#a6adc8]%Y-%m-%d #[fg=#cdd6f4]%H:%M #[bg=#a6e3a1,fg=#1e1e2e,bold] #h " +set -g status-right "#[fg=#565f89]%Y-%m-%d #[fg=#c0caf5]%H:%M #[bg=#9ece6a,fg=#1a1b26,bold] #h " # Window status -setw -g window-status-format "#[fg=#6c7086] #I:#W " -setw -g window-status-current-format "#[bg=#313244,fg=#cdd6f4,bold] #I:#W " +setw -g window-status-format "#[fg=#565f89] #I:#W " +setw -g window-status-current-format "#[bg=#33467c,fg=#c0caf5,bold] #I:#W " # Pane borders -set -g pane-border-style "fg=#313244" -set -g pane-active-border-style "fg=#89b4fa" +set -g pane-border-style "fg=#33467c" +set -g pane-active-border-style "fg=#7aa2f7" # Message style -set -g message-style "bg=#313244,fg=#cdd6f4" +set -g message-style "bg=#33467c,fg=#c0caf5"