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"