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# Worktree lifecycle
14init_commands:
15 - link_topsymlinks
16terminate_commands:
17 - echo "Cleaning up $WORKTREE_NAME"
18
19# Branch naming
20branch_name_script: |
21 if [ "$LAZYWORKTREE_TYPE" = "diff" ]; then
22 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.'
23 else
24 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.'
25 fi
26issue_branch_name_template: "{number}-{generated}"
27pr_branch_name_template: "pr-{number}-{generated}"
28
29# Worktree notes — splitted markdown files for better sync and external tool access
30worktree_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'"
31worktree_note_type: splitted
32worktree_notes_path: "~/.local/share/lazyworktree/notes/$REPO_NAME/$WORKTREE_NAME.md"
33
34# Commit screen (Ctrl+G to open, Ctrl+O to auto-generate)
35commit:
36 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."'
37
38# Layout sizes (relative weights)
39layout_sizes:
40 worktrees: 55
41 info: 30
42 git_status: 40
43 commit: 30
44 agent_sessions: 20
45 notes: 30
46
47# Custom commands (pane-scoped, v1.43+)
48custom_commands:
49 universal:
50 E:
51 command: pir
52 description: Pi (Vertex)
53 show_help: true
54 e:
55 command: pir
56 description: Pi tab (Vertex)
57 new_tab: true
58 show_help: true
59 t:
60 command: zsh
61 description: Shell tab
62 new_tab: true
63 show_help: true
64 _build:
65 command: make build
66 description: Build
67 show_output: true
68 _review:
69 command: make review
70 description: Review current worktree
71 _lint:
72 command: make lint
73 description: Run linter
74 show_output: true
75
76# Custom worktree creation menus
77custom_create_menus:
78 - label: "From JIRA ticket"
79 description: "Create from JIRA issue"
80 interactive: true
81 command: |
82 prompt="Generate a short git branch name (no spaces, use hyphens) for this diff.
83 output only the branch name, nothing else. No need to output the ticket number in the branch, i'll add it myself."
84 c=$(jayrah browse myissue --choose)
85 if [[ -n ${c} ]]; then
86 msg=$(jayrah cli view ${c/ */} | aichat -m gemini:gemini-2.5-flash-lite "$prompt")
87 if [[ -n ${msg} ]]; then
88 echo ${c/ */}-${msg}
89 fi
90 fi
91 post_command: |
92 mkdir -p tmp/
93 ticket=$(git rev-parse --abbrev-ref HEAD|tr a-z A-Z |sed 's/\([Ss][Rr][Vv][Kk][Pp]-[0-9]*\)-.*/\1/')
94 echo "https://issues.redhat.com/browse/${ticket}" > tmp/${ticket}.md
95 jayrah cli view ${ticket} >> tmp/${ticket}.md
96
97theme: modus-operandi
98
99custom_themes:
100 modus-operandi:
101 accent: "#005f5f"
102 accent_fg: "#ffffff"
103 accent_dim: "#dae5ec"
104 border: "#9f9f9f"
105 border_dim: "#c4c4c4"
106 muted_fg: "#595959"
107 text_fg: "#000000"
108 success_fg: "#006800"
109 warn_fg: "#884900"
110 error_fg: "#a60000"
111 cyan: "#005e8b"
112 modus-vivendi:
113 accent: "#6ae4b9"
114 accent_fg: "#000000"
115 accent_dim: "#2f3849"
116 border: "#646464"
117 border_dim: "#303030"
118 muted_fg: "#989898"
119 text_fg: "#ffffff"
120 success_fg: "#44bc44"
121 warn_fg: "#fec43f"
122 error_fg: "#ff5f59"
123 cyan: "#00d3d0"