main
  1auto_fetch_prs: false
  2auto_refresh: true
  3editor: emacsclient -t
  4git_pager: delta
  5git_pager_args: --paging=never --dark --line-numbers
  6icon_set: nerd-font-v3
  7max_name_length: 95
  8merge_method: rebase
  9refresh_interval: 10
 10session_prefix: wt-
 11sort_mode: switched
 12
 13# Prefer upstream remote for CI/PR queries (fork workflows)
 14ci_remote: auto
 15
 16# Agent session tuning
 17agent_sessions:
 18  refresh_debounce_ms: 500
 19
 20# Worktree lifecycle
 21init_commands:
 22  - link_topsymlinks
 23terminate_commands:
 24  - echo "Cleaning up $WORKTREE_NAME"
 25
 26# Branch naming
 27branch_name_script: |
 28  if [ "$LAZYWORKTREE_TYPE" = "diff" ]; then
 29    aichat -m gemini:gemini-2.5-flash-lite 'Generate a short git branch name (no spaces, use hyphens) for this diff. Output only the branch name, nothing else.'
 30  else
 31    aichat -m gemini:gemini-2.5-flash-lite 'Generate a short title (no issue-/pr- prefix, no spaces, use hyphens). Output only the title, nothing else.'
 32  fi
 33issue_branch_name_template: "{number}-{generated}"
 34pr_branch_name_template: "pr-{number}-{generated}"
 35
 36# Worktree notes — splitted markdown files for better sync and external tool access
 37worktree_note_script: "aichat -m gemini:gemini-2.5-flash-lite 'Summarise this pr or ticket as concise implementation notes to make easy to know what is it about at glance'"
 38worktree_note_type: splitted
 39worktree_notes_path: "~/.local/share/lazyworktree/notes/$REPO_NAME/$WORKTREE_NAME.md"
 40
 41# Commit screen (Ctrl+G to open, Ctrl+O to auto-generate)
 42commit:
 43  auto_generate_command: 'aichat -m gemini:gemini-2.5-flash-lite "Write a concise conventional commit message for this staged diff. First line is the subject (max 50 chars), then a blank line, then a body explaining what and why."'
 44
 45# Layout sizes (relative weights)
 46layout_sizes:
 47  worktrees: 55
 48  info: 30
 49  git_status: 40
 50  commit: 30
 51  agent_sessions: 20
 52  notes: 30
 53
 54# Custom commands (pane-scoped, v1.43+)
 55custom_commands:
 56  universal:
 57    E:
 58      command: pir
 59      description: Pi (Vertex)
 60      show_help: true
 61    e:
 62      command: pir
 63      description: Pi tab (Vertex)
 64      new_tab: true
 65      show_help: true
 66    t:
 67      command: zsh
 68      description: Shell tab
 69      new_tab: true
 70      show_help: true
 71    _build:
 72      command: make build
 73      description: Build
 74      show_output: true
 75    _review:
 76      command: make review
 77      description: Review current worktree
 78    _lint:
 79      command: make lint
 80      description: Run linter
 81      show_output: true
 82
 83# Custom worktree creation menus
 84custom_create_menus:
 85  - label: "From JIRA ticket"
 86    description: "Create from JIRA issue"
 87    interactive: true
 88    command: |
 89      prompt="Generate a short git branch name (no spaces, use hyphens) for this diff.
 90      output only the branch name, nothing else. No need to output the ticket number in the branch, i'll add it myself."
 91      c=$(jayrah browse myissue --choose)
 92      if [[ -n ${c} ]]; then
 93        msg=$(jayrah cli view ${c/ */} | aichat -m gemini:gemini-2.5-flash-lite "$prompt")
 94        if [[ -n ${msg} ]]; then
 95          echo ${c/ */}-${msg}
 96        fi
 97      fi
 98    post_command: |
 99      mkdir -p tmp/
100      ticket=$(git rev-parse --abbrev-ref HEAD|tr a-z A-Z |sed 's/\([Ss][Rr][Vv][Kk][Pp]-[0-9]*\)-.*/\1/')
101      echo "https://issues.redhat.com/browse/${ticket}" > tmp/${ticket}.md
102      jayrah cli view ${ticket} >> tmp/${ticket}.md
103
104theme: modus-operandi
105
106custom_themes:
107  modus-operandi:
108    accent: "#005f5f"
109    accent_fg: "#ffffff"
110    accent_dim: "#dae5ec"
111    border: "#9f9f9f"
112    border_dim: "#c4c4c4"
113    muted_fg: "#595959"
114    text_fg: "#000000"
115    success_fg: "#006800"
116    warn_fg: "#884900"
117    error_fg: "#a60000"
118    cyan: "#005e8b"
119  modus-vivendi:
120    accent: "#6ae4b9"
121    accent_fg: "#000000"
122    accent_dim: "#2f3849"
123    border: "#646464"
124    border_dim: "#303030"
125    muted_fg: "#989898"
126    text_fg: "#ffffff"
127    success_fg: "#44bc44"
128    warn_fg: "#fec43f"
129    error_fg: "#ff5f59"
130    cyan: "#00d3d0"