mirror of
https://github.com/prdlk/dotfiles.git
synced 2026-11-02 11:32:42 +00:00
feat(config): add initial Ghostty, Herdr, and Yazi configuration files
This commit is contained in:
1 parent
6406208b35
commit
60c11de029
20 files changed
+2863
-1
No files matched your search
@@ -0,0 +1,69 @@
|
||||
# Font Configuration
|
||||
theme = noctalia
|
||||
font-size = 12.5
|
||||
font-family = Victor Mono NF
|
||||
background-blur = true
|
||||
|
||||
# Window Configuration
|
||||
window-decoration = false
|
||||
window-padding-x = 12
|
||||
window-padding-y = 12
|
||||
background-opacity = 0.9
|
||||
|
||||
# Cursor Configuration
|
||||
cursor-style = underline
|
||||
cursor-style-blink = true
|
||||
|
||||
# Scrollback
|
||||
scrollback-limit = 3023
|
||||
|
||||
# Terminal features
|
||||
mouse-hide-while-typing = true
|
||||
copy-on-select = false
|
||||
confirm-close-surface = false
|
||||
|
||||
# Disable annoying copied to clipboard
|
||||
app-notifications = no-clipboard-copy,no-config-reload
|
||||
|
||||
# Key bindings for common actions
|
||||
keybind = cmd+c=copy_to_clipboard
|
||||
keybind = cmd+v=paste_from_clipboard
|
||||
keybind = cmd+n=new_window
|
||||
keybind = ctrl+plus=increase_font_size:1
|
||||
keybind = ctrl+minus=decrease_font_size:1
|
||||
keybind = ctrl+zero=reset_font_size
|
||||
|
||||
# Tab configuration
|
||||
gtk-titlebar = false
|
||||
|
||||
quit-after-last-window-closed = false
|
||||
quit-after-last-window-closed-delay = 5m
|
||||
# Shell integration
|
||||
shell-integration = detect
|
||||
shell-integration-features = cursor,sudo,title,no-cursor
|
||||
keybind = shift+enter=text:\n
|
||||
|
||||
# Rando stuff
|
||||
gtk-single-instance = true
|
||||
|
||||
# Launch straight into Herdr (bare `herdr` launches or attaches to the
|
||||
# persistent session; closing the window detaches, sessions survive)
|
||||
command = herdr
|
||||
|
||||
# ── Herdr sync: Ctrl+Shift chords → prefix (\x02 = ctrl+b) bytes ──
|
||||
# Later keybind lines overwrite earlier/default ones; keep these LAST.
|
||||
# reload_config moves off ctrl+shift+, (taken by Herdr settings below)
|
||||
keybind = ctrl+shift+alt+,=reload_config
|
||||
keybind = ctrl+shift+n=text:\x02%
|
||||
keybind = ctrl+shift+t=text:\x02c
|
||||
keybind = ctrl+tab=text:\x02n
|
||||
keybind = ctrl+shift+tab=text:\x02p
|
||||
keybind = ctrl+shift+f=text:\x02s
|
||||
keybind = ctrl+shift+l=text:\x02.
|
||||
keybind = ctrl+shift+h=text:\x02,
|
||||
keybind = ctrl+shift+j=text:\x02j
|
||||
keybind = ctrl+shift+k=text:\x02k
|
||||
keybind = super+enter=text:\x02N
|
||||
keybind = super+r=text:\x02W
|
||||
keybind = ctrl+shift+r=text:\x02T
|
||||
keybind = ctrl+shift+,=text:\x02S
|
||||
@@ -0,0 +1,47 @@
|
||||
# Font Configuration
|
||||
theme = noctalia
|
||||
font-size = 11
|
||||
font-family = Victor Mono NF
|
||||
background-blur = true
|
||||
|
||||
# Window Configuration
|
||||
window-decoration = false
|
||||
window-padding-x = 12
|
||||
window-padding-y = 12
|
||||
background-opacity = 0.9
|
||||
|
||||
# Cursor Configuration
|
||||
cursor-style = underline
|
||||
cursor-style-blink = true
|
||||
|
||||
# Scrollback
|
||||
scrollback-limit = 3023
|
||||
|
||||
# Terminal features
|
||||
mouse-hide-while-typing = true
|
||||
copy-on-select = false
|
||||
confirm-close-surface = false
|
||||
|
||||
# Disable annoying copied to clipboard
|
||||
app-notifications = no-clipboard-copy,no-config-reload
|
||||
|
||||
# Key bindings for common actions
|
||||
keybind = cmd+c=copy_to_clipboard
|
||||
keybind = cmd+v=paste_from_clipboard
|
||||
keybind = cmd+n=new_window
|
||||
keybind = ctrl+plus=increase_font_size:1
|
||||
keybind = ctrl+minus=decrease_font_size:1
|
||||
keybind = ctrl+zero=reset_font_size
|
||||
|
||||
# Tab configuration
|
||||
gtk-titlebar = false
|
||||
|
||||
quit-after-last-window-closed = false
|
||||
quit-after-last-window-closed-delay = 5m
|
||||
# Shell integration
|
||||
shell-integration = detect
|
||||
shell-integration-features = cursor,sudo,title,no-cursor
|
||||
keybind = shift+enter=text:\n
|
||||
|
||||
# Rando stuff
|
||||
gtk-single-instance = true
|
||||
@@ -0,0 +1 @@
|
||||
theme = noctalia
|
||||
@@ -0,0 +1,43 @@
|
||||
# Auto-generated by ii wallpaper theming system
|
||||
# Do not edit manually - changes will be overwritten
|
||||
|
||||
background = #1D1D1D
|
||||
foreground = #DFE3E3
|
||||
|
||||
cursor-color = #DFE3E3
|
||||
cursor-text = #1D1D1D
|
||||
|
||||
selection-background = #DFE3E3
|
||||
selection-foreground = #1D1D1D
|
||||
|
||||
# Black
|
||||
palette = 0=#1D1D1D
|
||||
palette = 8=#8F9192
|
||||
|
||||
# Red
|
||||
palette = 1=#FF9BAD
|
||||
palette = 9=#FFCFD7
|
||||
|
||||
# Green
|
||||
palette = 2=#00FD98
|
||||
palette = 10=#C1FFD5
|
||||
|
||||
# Yellow
|
||||
palette = 3=#FFF17B
|
||||
palette = 11=#FFF39B
|
||||
|
||||
# Blue
|
||||
palette = 4=#6DD0FF
|
||||
palette = 12=#DAF0FF
|
||||
|
||||
# Magenta
|
||||
palette = 5=#D7B0FF
|
||||
palette = 13=#F0DFFF
|
||||
|
||||
# Cyan
|
||||
palette = 6=#3DF0F5
|
||||
palette = 14=#B8FDFF
|
||||
|
||||
# White
|
||||
palette = 7=#ADAAA2
|
||||
palette = 15=#DFE3E3
|
||||
@@ -0,0 +1,32 @@
|
||||
# Forces bold text to use the bright color palette
|
||||
bold-is-bright = true
|
||||
|
||||
# Background and foreground
|
||||
background = #101010
|
||||
foreground = #ffffff
|
||||
|
||||
# Cursor colors
|
||||
cursor-color = #b0b0b0
|
||||
cursor-text = #101010
|
||||
|
||||
# Selection colors
|
||||
selection-background = #272727
|
||||
selection-foreground = #b0b0b0
|
||||
|
||||
# ANSI color palette (0-15)
|
||||
palette = 0=#101010
|
||||
palette = 1=#ff7676
|
||||
palette = 2=#a3d6a3
|
||||
palette = 3=#ffffff
|
||||
palette = 4=#b3b3b3
|
||||
palette = 5=#f4b8e4
|
||||
palette = 6=#fafafa
|
||||
palette = 7=#a5adce
|
||||
palette = 8=#50585d
|
||||
palette = 9=#ff5733
|
||||
palette = 10=#86cd82
|
||||
palette = 11=#d9ba73
|
||||
palette = 12=#ffffff
|
||||
palette = 13=#f2a4db
|
||||
palette = 14=#5abfb5
|
||||
palette = 15=#b5bfe2
|
||||
@@ -0,0 +1,32 @@
|
||||
# Forces bold text to use the bright color palette
|
||||
bold-is-bright = true
|
||||
|
||||
# Background and foreground
|
||||
background = #faf9f5
|
||||
foreground = #101010
|
||||
|
||||
# Cursor colors
|
||||
cursor-color = #6a6a6a
|
||||
cursor-text = #ebebeb
|
||||
|
||||
# Selection colors
|
||||
selection-background = #ebebeb
|
||||
selection-foreground = #101010
|
||||
|
||||
# ANSI color palette (0-15)
|
||||
palette = 0=#ebebeb
|
||||
palette = 1=#ca0043
|
||||
palette = 2=#407f00
|
||||
palette = 3=#926200
|
||||
palette = 4=#3d3d3d
|
||||
palette = 5=#a200d1
|
||||
palette = 6=#007d7d
|
||||
palette = 7=#6a6a6a
|
||||
palette = 8=#969ba5
|
||||
palette = 9=#f30052
|
||||
palette = 10=#4f9a00
|
||||
palette = 11=#b07700
|
||||
palette = 12=#000000
|
||||
palette = 13=#c301fb
|
||||
palette = 14=#009797
|
||||
palette = 15=#101010
|
||||
@@ -0,0 +1,22 @@
|
||||
palette = 0= #28262c
|
||||
palette = 1= #fd4663
|
||||
palette = 2= #a398b3
|
||||
palette = 3= #9c8da5
|
||||
palette = 4= #a18fa3
|
||||
palette = 5= #bdb6c9
|
||||
palette = 6= #c1b8c7
|
||||
palette = 7= #f2f2f3
|
||||
palette = 8= #b2b0b5
|
||||
palette = 9= #fd4663
|
||||
palette = 10= #a398b3
|
||||
palette = 11= #9c8da5
|
||||
palette = 12= #a18fa3
|
||||
palette = 13= #bdb6c9
|
||||
palette = 14= #c1b8c7
|
||||
palette = 15= #f2f2f3
|
||||
background = #1e1c21
|
||||
foreground = #f2f2f3
|
||||
cursor-color = #f2f2f3
|
||||
cursor-text = #1e1c21
|
||||
selection-background = #a18fa3
|
||||
selection-foreground = #1e1c22
|
||||
@@ -0,0 +1,74 @@
|
||||
onboarding = false
|
||||
[ui]
|
||||
|
||||
show_agent_labels_on_pane_borders = false
|
||||
agent_panel_sort = "priority"
|
||||
[keys]
|
||||
# tmux-style bindings (prefix is the leader, default ctrl+b)
|
||||
split_vertical = "prefix+%"
|
||||
split_horizontal = 'prefix+"'
|
||||
detach = "prefix+d"
|
||||
|
||||
# leader+s opens the workspace ("spaces") picker (settings moves off prefix+s to make room)
|
||||
workspace_picker = "prefix+s"
|
||||
settings = "prefix+shift+s"
|
||||
|
||||
# vim-style j/k move the selection up/down inside the spaces picker
|
||||
# (frees pane up/down in navigate mode; use arrows or ctrl+b j/k for pane focus)
|
||||
navigate_workspace_up = "k"
|
||||
navigate_workspace_down = "j"
|
||||
navigate_pane_up = ""
|
||||
navigate_pane_down = ""
|
||||
|
||||
# leader+. / leader+, step to the next / previous agent in the panel
|
||||
next_agent = "prefix+."
|
||||
previous_agent = "prefix+,"
|
||||
|
||||
# leader+j / leader+k cycle next / previous workspace (driven by ghostty
|
||||
# ctrl+shift+j/k). Frees prefix+j/k from pane focus, which moves to arrows;
|
||||
# directional pane movement is also on ctrl+hjkl via vim-herdr-navigation.
|
||||
next_workspace = "prefix+j"
|
||||
previous_workspace = "prefix+k"
|
||||
focus_pane_up = "prefix+up"
|
||||
focus_pane_down = "prefix+down"
|
||||
focus_pane_left = "prefix+left"
|
||||
focus_pane_right = "prefix+right"
|
||||
|
||||
# leader+a focuses the agent panel for keyboard browsing
|
||||
# (j/k to move, enter to jump, esc to leave) — needs the rebuilt binary
|
||||
|
||||
[experimental]
|
||||
pane_history = false
|
||||
kitty_graphics = true
|
||||
|
||||
switch_ascii_input_source_in_prefix = true
|
||||
[theme]
|
||||
name = "rose-pine"
|
||||
auto_switch = false
|
||||
|
||||
[[keys.command]]
|
||||
key = "ctrl+h"
|
||||
type = "plugin_action"
|
||||
command = "vim-herdr-navigation.left"
|
||||
description = "navigate left (vim/herdr)"
|
||||
|
||||
[[keys.command]]
|
||||
key = "ctrl+j"
|
||||
type = "plugin_action"
|
||||
command = "vim-herdr-navigation.down"
|
||||
description = "navigate down (vim/herdr)"
|
||||
|
||||
[[keys.command]]
|
||||
key = "ctrl+k"
|
||||
type = "plugin_action"
|
||||
command = "vim-herdr-navigation.up"
|
||||
description = "navigate up (vim/herdr)"
|
||||
|
||||
[[keys.command]]
|
||||
key = "ctrl+l"
|
||||
type = "plugin_action"
|
||||
command = "vim-herdr-navigation.right"
|
||||
description = "navigate right (vim/herdr)"
|
||||
|
||||
[ui.toast]
|
||||
delivery = "system"
|
||||
@@ -0,0 +1,64 @@
|
||||
onboarding = false
|
||||
[ui]
|
||||
|
||||
show_agent_labels_on_pane_borders = false
|
||||
agent_panel_sort = "priority"
|
||||
[keys]
|
||||
# tmux-style bindings (prefix is the leader, default ctrl+b)
|
||||
split_vertical = "prefix+%"
|
||||
split_horizontal = 'prefix+"'
|
||||
detach = "prefix+d"
|
||||
|
||||
# leader+s opens the workspace ("spaces") picker (settings moves off prefix+s to make room)
|
||||
workspace_picker = "prefix+s"
|
||||
settings = "prefix+shift+s"
|
||||
|
||||
# vim-style j/k move the selection up/down inside the spaces picker
|
||||
# (frees pane up/down in navigate mode; use arrows or ctrl+b j/k for pane focus)
|
||||
navigate_workspace_up = "k"
|
||||
navigate_workspace_down = "j"
|
||||
navigate_pane_up = ""
|
||||
navigate_pane_down = ""
|
||||
|
||||
# leader+. / leader+, step to the next / previous agent in the panel
|
||||
next_agent = "prefix+."
|
||||
previous_agent = "prefix+,"
|
||||
|
||||
# leader+a focuses the agent panel for keyboard browsing
|
||||
# (j/k to move, enter to jump, esc to leave) — needs the rebuilt binary
|
||||
|
||||
[experimental]
|
||||
pane_history = false
|
||||
kitty_graphics = true
|
||||
|
||||
switch_ascii_input_source_in_prefix = true
|
||||
[theme]
|
||||
name = "rose-pine"
|
||||
auto_switch = false
|
||||
|
||||
[[keys.command]]
|
||||
key = "ctrl+h"
|
||||
type = "plugin_action"
|
||||
command = "vim-herdr-navigation.left"
|
||||
description = "navigate left (vim/herdr)"
|
||||
|
||||
[[keys.command]]
|
||||
key = "ctrl+j"
|
||||
type = "plugin_action"
|
||||
command = "vim-herdr-navigation.down"
|
||||
description = "navigate down (vim/herdr)"
|
||||
|
||||
[[keys.command]]
|
||||
key = "ctrl+k"
|
||||
type = "plugin_action"
|
||||
command = "vim-herdr-navigation.up"
|
||||
description = "navigate up (vim/herdr)"
|
||||
|
||||
[[keys.command]]
|
||||
key = "ctrl+l"
|
||||
type = "plugin_action"
|
||||
command = "vim-herdr-navigation.right"
|
||||
description = "navigate right (vim/herdr)"
|
||||
|
||||
[ui.toast]
|
||||
delivery = "system"
|
||||
Whitespace-only changes.
@@ -0,0 +1,146 @@
|
||||
2026-05-28T19:40:57.057705Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=1680670
|
||||
2026-05-28T19:40:57.057733Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-05-28T19:40:57.262004Z INFO herdr::client: handshake succeeded version=11 encoding=SemanticFrame
|
||||
2026-05-28T19:42:19.434571Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=1680670
|
||||
2026-05-28T19:42:26.639491Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=1683643
|
||||
2026-05-28T19:42:26.639525Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-05-28T19:42:26.719401Z INFO herdr::client: handshake succeeded version=11 encoding=SemanticFrame
|
||||
2026-05-28T20:31:23.777641Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=1683643
|
||||
2026-05-28T20:31:26.570038Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=1791775
|
||||
2026-05-28T20:31:26.570063Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-05-28T20:31:26.759313Z INFO herdr::client: handshake succeeded version=11 encoding=SemanticFrame
|
||||
2026-05-28T20:31:28.727582Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=1791775
|
||||
2026-05-28T20:37:39.576802Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=1805927
|
||||
2026-05-28T20:37:39.576831Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-05-28T20:37:39.620232Z INFO herdr::client: handshake succeeded version=11 encoding=SemanticFrame
|
||||
2026-05-28T20:38:17.881212Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=1805927
|
||||
2026-05-28T20:38:20.643896Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=1809290
|
||||
2026-05-28T20:38:20.643927Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-05-28T20:38:20.646586Z INFO herdr::client: handshake succeeded version=11 encoding=SemanticFrame
|
||||
2026-05-29T15:05:34.667934Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=61185
|
||||
2026-05-29T15:05:34.667982Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-05-29T15:05:34.679337Z INFO herdr::client: handshake succeeded version=11 encoding=SemanticFrame
|
||||
2026-06-03T14:32:02.360706Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=31587
|
||||
2026-06-03T14:32:02.360760Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-06-03T14:32:02.368403Z INFO herdr::client: handshake succeeded version=11 encoding=SemanticFrame
|
||||
2026-06-03T14:32:31.855540Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=31587
|
||||
2026-06-03T15:51:52.825690Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=172456
|
||||
2026-06-03T15:51:52.825718Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-06-03T15:51:53.062403Z INFO herdr::client: handshake succeeded version=11 encoding=SemanticFrame
|
||||
2026-06-08T14:52:22.694135Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=368548
|
||||
2026-06-08T14:52:22.694194Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-06-08T14:52:22.702171Z INFO herdr::client: handshake succeeded version=11 encoding=SemanticFrame
|
||||
2026-06-10T14:30:43.565299Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=56627
|
||||
2026-06-10T14:30:43.565345Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-06-10T14:30:43.598445Z INFO herdr::client: handshake succeeded version=11 encoding=SemanticFrame
|
||||
2026-06-10T20:48:04.152703Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=750091
|
||||
2026-06-10T20:48:04.152731Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-06-10T20:48:04.160687Z INFO herdr::client: handshake succeeded version=11 encoding=SemanticFrame
|
||||
2026-06-10T21:09:48.411301Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=750091
|
||||
2026-06-10T21:09:55.929109Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=858089
|
||||
2026-06-10T21:09:55.929138Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-06-10T21:09:55.937811Z INFO herdr::client: handshake succeeded version=11 encoding=SemanticFrame
|
||||
2026-06-11T02:49:30.176667Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=858089
|
||||
2026-06-11T12:59:13.247855Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=165087
|
||||
2026-06-11T12:59:13.248187Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-06-11T12:59:13.249978Z INFO herdr::client: handshake succeeded version=11 encoding=SemanticFrame
|
||||
2026-06-11T12:59:29.638175Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=165087
|
||||
2026-06-11T13:05:28.328247Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=182410
|
||||
2026-06-11T13:05:28.328275Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-06-11T13:05:28.511680Z INFO herdr::client: handshake succeeded version=11 encoding=SemanticFrame
|
||||
2026-06-15T18:04:39.006183Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=400798
|
||||
2026-06-15T18:04:39.006505Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-06-15T18:04:39.007199Z INFO herdr::client: handshake succeeded version=11 encoding=SemanticFrame
|
||||
2026-06-15T18:05:02.645539Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=400798
|
||||
2026-06-15T18:05:12.138850Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=404873
|
||||
2026-06-15T18:05:12.138895Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-06-15T18:05:12.149336Z INFO herdr::client: handshake succeeded version=14 encoding=SemanticFrame
|
||||
2026-06-15T18:06:27.459183Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=404873
|
||||
2026-06-16T01:58:58.687849Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=1115079
|
||||
2026-06-16T01:58:58.687903Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-06-16T01:58:58.759505Z INFO herdr::client: handshake succeeded version=14 encoding=SemanticFrame
|
||||
2026-06-16T01:59:13.356088Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=1115079
|
||||
2026-06-16T20:30:39.749269Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=82514
|
||||
2026-06-16T20:30:39.749614Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-06-16T20:30:39.792184Z INFO herdr::client: handshake succeeded version=14 encoding=SemanticFrame
|
||||
2026-06-16T20:35:24.106218Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=122647
|
||||
2026-06-16T20:35:24.106247Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-06-16T20:35:24.343929Z INFO herdr::client: handshake succeeded version=14 encoding=SemanticFrame
|
||||
2026-06-16T20:36:11.253746Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=126138
|
||||
2026-06-16T20:36:11.253776Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-06-16T20:36:11.431513Z INFO herdr::client: handshake succeeded version=14 encoding=SemanticFrame
|
||||
2026-06-19T16:27:36.734121Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=76862
|
||||
2026-06-19T16:27:36.734147Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-06-19T16:27:36.734215Z INFO herdr::client: handshake succeeded version=14 encoding=SemanticFrame
|
||||
2026-06-20T05:03:47.038376Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=76862
|
||||
2026-06-27T00:01:00.932547Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=164638
|
||||
2026-06-27T00:01:00.932956Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-06-27T00:01:00.934155Z INFO herdr::client: handshake succeeded version=14 encoding=SemanticFrame
|
||||
2026-06-27T00:02:47.644799Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=164638
|
||||
2026-06-27T00:03:11.186443Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=167846
|
||||
2026-06-27T00:03:11.186471Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-06-27T00:03:11.216769Z INFO herdr::client: handshake succeeded version=14 encoding=SemanticFrame
|
||||
2026-06-27T00:09:43.682841Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=167846
|
||||
2026-06-27T00:09:45.678252Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=176355
|
||||
2026-06-27T00:09:45.678280Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-06-27T00:09:45.692879Z INFO herdr::client: handshake succeeded version=14 encoding=SemanticFrame
|
||||
2026-06-27T00:15:44.471267Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=176355
|
||||
2026-07-02T21:32:15.764489Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=233448
|
||||
2026-07-02T21:32:15.764745Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-07-02T21:32:15.765231Z INFO herdr::client: handshake succeeded version=14 encoding=SemanticFrame
|
||||
2026-07-03T23:10:28.602029Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=286613
|
||||
2026-07-03T23:10:28.602324Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-07-03T23:10:28.608148Z INFO herdr::client: handshake succeeded version=14 encoding=SemanticFrame
|
||||
2026-07-03T23:10:47.971834Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=286613
|
||||
2026-07-15T18:28:37.583336Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=245041
|
||||
2026-07-15T18:28:37.583587Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-07-15T18:28:37.592449Z INFO herdr::client: handshake succeeded version=16 encoding=SemanticFrame
|
||||
2026-07-15T18:29:32.006609Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=245041
|
||||
2026-07-23T16:57:59.203976Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=119405
|
||||
2026-07-23T16:57:59.204188Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-07-23T16:57:59.212810Z INFO herdr::client: handshake succeeded version=16 encoding=SemanticFrame
|
||||
2026-07-23T16:58:03.577736Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=119405
|
||||
2026-07-23T17:32:26.908954Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=158519
|
||||
2026-07-23T17:32:26.908974Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-07-23T17:32:26.909097Z INFO herdr::client: handshake succeeded version=17 encoding=SemanticFrame
|
||||
2026-07-23T17:34:46.307539Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=158519
|
||||
2026-07-23T17:35:25.610182Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=162811
|
||||
2026-07-23T17:35:25.610209Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-07-23T17:35:25.630930Z INFO herdr::client: handshake succeeded version=17 encoding=SemanticFrame
|
||||
2026-07-23T17:35:36.061207Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=162811
|
||||
2026-07-23T17:36:10.748541Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=164221
|
||||
2026-07-23T17:36:10.748562Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-07-23T17:36:10.817594Z INFO herdr::client: handshake succeeded version=17 encoding=SemanticFrame
|
||||
2026-07-23T19:29:42.325170Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=164221
|
||||
2026-08-09T19:05:36.891702Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=192692
|
||||
2026-08-09T19:05:36.891879Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-08-09T19:05:36.893062Z INFO herdr::client: handshake succeeded version=19 encoding=SemanticFrame
|
||||
2026-08-09T19:08:20.252723Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=192692
|
||||
2026-08-09T19:13:18.999174Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=225176
|
||||
2026-08-09T19:13:18.999192Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-08-09T19:13:19.081080Z INFO herdr::client: handshake succeeded version=19 encoding=SemanticFrame
|
||||
2026-08-09T19:15:24.551494Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=225176
|
||||
2026-08-10T20:41:02.491553Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=466140
|
||||
2026-08-10T20:41:02.491587Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-08-10T20:41:02.493525Z INFO herdr::client: handshake succeeded version=19 encoding=SemanticFrame
|
||||
2026-08-10T20:55:36.944275Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=488820
|
||||
2026-08-10T20:55:36.944295Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-08-10T20:55:36.949421Z INFO herdr::client: handshake succeeded version=19 encoding=SemanticFrame
|
||||
2026-08-10T20:56:27.365912Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=466140
|
||||
2026-08-10T20:57:26.892918Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=492752
|
||||
2026-08-10T20:57:26.892943Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-08-10T20:57:26.906140Z INFO herdr::client: handshake succeeded version=19 encoding=SemanticFrame
|
||||
2026-08-11T18:40:51.207726Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=176655
|
||||
2026-08-11T18:40:51.207960Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-08-11T18:40:51.210518Z INFO herdr::client: handshake succeeded version=19 encoding=SemanticFrame
|
||||
2026-08-11T18:41:04.828470Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=176655
|
||||
2026-08-11T18:46:13.849126Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=183260
|
||||
2026-08-11T18:46:13.849148Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-08-11T18:46:14.063265Z INFO herdr::client: handshake succeeded version=19 encoding=SemanticFrame
|
||||
2026-08-11T19:08:39.960619Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=216140
|
||||
2026-08-11T19:08:39.960643Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-08-11T19:08:40.116564Z INFO herdr::client: handshake succeeded version=19 encoding=SemanticFrame
|
||||
2026-08-11T19:09:25.791477Z INFO herdr::logging: herdr starting event="app.startup" subsystem="client" outcome="started" pid=218168
|
||||
2026-08-11T19:09:25.791502Z INFO herdr::client: connecting to server path=/home/prad/.config/herdr/herdr-client.sock
|
||||
2026-08-11T19:09:25.993975Z INFO herdr::client: handshake succeeded version=19 encoding=SemanticFrame
|
||||
2026-08-11T19:09:28.222858Z INFO herdr::logging: herdr exiting event="app.shutdown" subsystem="client" outcome="completed" pid=216140
|
||||
File diff suppressed because it is too large.
Load diff
@@ -0,0 +1,134 @@
|
||||
# Font Configuration
|
||||
font_size 11
|
||||
font_family VictorMono Nerd Font
|
||||
bold_italic_font auto
|
||||
shell_integration enabled
|
||||
# Control
|
||||
allow_remote_control yes
|
||||
listen_on unix:@mykitty
|
||||
# Shell — every kitty OS window attaches to the shared tmux session
|
||||
shell tmux new-session -A -s main
|
||||
# Window Configuration
|
||||
window_padding_width 12
|
||||
background_opacity 0.9
|
||||
hide_window_decorations yes
|
||||
# Layouts now handled by tmux; keep fat available for any non-tmux use
|
||||
enabled_layouts fat:bias=75;full_size=1;mirrored=false
|
||||
# Cursor Configuration
|
||||
cursor_blink_interval 1
|
||||
# Scrollback (tmux owns scrollback in-session; this covers anything outside it)
|
||||
scrollback_lines 3000
|
||||
# Terminal features
|
||||
copy_on_select auto
|
||||
strip_trailing_spaces smart
|
||||
# ── Key bindings → forwarded to tmux (prefix C-b = \x02) ────────────────
|
||||
# send_text triggers the exact bind-keys in tmux.conf, in-session.
|
||||
# Panes (kitty "windows" → tmux panes)
|
||||
map super+w send_text all \x02x
|
||||
map super+t send_text all \x02%
|
||||
map super+n send_text all \x02"
|
||||
# Clipboard (kitty-native)
|
||||
map super+c copy_to_clipboard
|
||||
map super+v paste_from_clipboard
|
||||
map ctrl+v paste_from_clipboard
|
||||
# Tabs (kitty "tabs" → tmux windows; your bind-key t/H/L)
|
||||
map alt+h send_text all \x02H
|
||||
map alt+l send_text all \x02L
|
||||
map super+enter send_text all \x02t
|
||||
# Pane navigation: pass ctrl+hjkl through to tmux/nvim
|
||||
# (pass_keys.py kitten removed — vim-tmux-navigator replaces it)
|
||||
# Pane resizing (prefix + ctrl+arrow = tmux default resize)
|
||||
map super+left send_text all \x02\x1b[1;5D
|
||||
map super+right send_text all \x02\x1b[1;5C
|
||||
map super+up send_text all \x02\x1b[1;5A
|
||||
map super+down send_text all \x02\x1b[1;5B
|
||||
|
||||
# Direct window jumps (tmux prefix+N)
|
||||
map alt+q send_text all \x021
|
||||
map alt+w send_text all \x022
|
||||
map alt+e send_text all \x023
|
||||
map alt+r send_text all \x024
|
||||
map alt+t send_text all \x025
|
||||
map alt+y send_text all \x026
|
||||
map alt+u send_text all \x027
|
||||
map alt+i send_text all \x028
|
||||
map alt+o send_text all \x029
|
||||
# Session controls
|
||||
map super+d send_text all \x02d
|
||||
map super+s send_text all \x02s
|
||||
map super+z send_text all \x02z
|
||||
# ── Tab bar: hidden — tmux-dotbar owns the status UI ────────────────────
|
||||
tab_bar_style hidden
|
||||
# BEGIN_KITTY_THEME
|
||||
# Noctalia
|
||||
include current-theme.conf
|
||||
# END_KITTY_THEME
|
||||
#
|
||||
active_opacity 0.9
|
||||
|
||||
|
||||
# ── Plugins ──────────────────────────────────────────────────────────────
|
||||
set -g @plugin 'tmux-plugins/tpm'
|
||||
set -g @plugin 'tmux-plugins/tmux-sensible'
|
||||
set -g @plugin 'vaaleyard/tmux-dotbar'
|
||||
set -g @plugin 'joshmedeski/tmux-nerd-font-window-name'
|
||||
set -g @plugin 'omerxx/tmux-sessionx'
|
||||
# ── Kitty compatibility ──────────────────────────────────────────────────
|
||||
set -g default-terminal "tmux-256color"
|
||||
set -ga terminal-overrides ",xterm-kitty:Tc"
|
||||
set -as terminal-features ",xterm-kitty:RGB:usstyle:hyperlinks:clipboard:extkeys"
|
||||
set -s extended-keys on # kitty keyboard protocol → nvim
|
||||
# Kitty graphics protocol passthrough (yazi / image preview)
|
||||
set -g allow-passthrough on
|
||||
set -ga update-environment TERM
|
||||
set -ga update-environment TERM_PROGRAM
|
||||
# ── Clipboard (Wayland / Niri) ───────────────────────────────────────────
|
||||
set -g set-clipboard on # OSC 52 — covers ssh'd sessions
|
||||
set -g mouse on
|
||||
setw -g mode-keys vi
|
||||
bind -T copy-mode-vi v send -X begin-selection
|
||||
bind -T copy-mode-vi y send -X copy-pipe-and-cancel "wl-copy"
|
||||
bind -T copy-mode-vi Y send -X copy-pipe-and-cancel "wl-copy" \; send -X cancel
|
||||
bind -T copy-mode-vi MouseDragEnd1Pane send -X copy-pipe-and-cancel "wl-copy"
|
||||
# ── Titles → Niri active window ──────────────────────────────────────────
|
||||
set -g set-titles on
|
||||
set -g set-titles-string "#S › #{pane_current_command} · #{b:pane_current_path}"
|
||||
setw -g automatic-rename on
|
||||
set -g automatic-rename-format "#{window_icon} #{b:pane_current_path}"
|
||||
# ── QoL ──────────────────────────────────────────────────────────────────
|
||||
set -g history-limit 50000
|
||||
set -g base-index 1
|
||||
setw -g pane-base-index 1
|
||||
set -g renumber-windows on
|
||||
# ── Keybinds ─────────────────────────────────────────────────────────────
|
||||
bind-key t new-window -c "#{pane_current_path}"
|
||||
bind-key [ previous-window
|
||||
bind-key ] next-window
|
||||
bind-key H previous-window
|
||||
bind-key L next-window
|
||||
# Splits inherit cwd (kitty super+t / super+n land here)
|
||||
# vsplit: new pane right at 35% width · hsplit: new pane below at 25% height
|
||||
bind % split-window -h -l 30% -c "#{pane_current_path}"
|
||||
bind '"' split-window -v -l 25% -c "#{pane_current_path}"
|
||||
# Copy-mode entry (default prefix+[ is rebound above)
|
||||
bind Escape copy-mode
|
||||
# ── Pane navigation: ctrl+hjkl, no prefix ────────────────────────────────
|
||||
# Vim-aware: if the pane runs (n)vim, forward the key so vim handles its
|
||||
# own window movement (pair with vim-tmux-navigator in AstroNvim).
|
||||
is_vim="ps -o state= -o comm= -t '#{pane_tty}' | grep -iqE '^[^TXZ ]+ +(\\S+\\/)?g?(view|l?n?vim?x?|fzf)(diff)?$'"
|
||||
bind -n C-h if-shell "$is_vim" 'send-keys C-h' 'select-pane -L'
|
||||
bind -n C-j if-shell "$is_vim" 'send-keys C-j' 'select-pane -D'
|
||||
bind -n C-k if-shell "$is_vim" 'send-keys C-k' 'select-pane -U'
|
||||
bind -n C-l if-shell "$is_vim" 'send-keys C-l' 'select-pane -R'
|
||||
# Same nav from inside copy-mode
|
||||
bind -T copy-mode-vi C-h select-pane -L
|
||||
bind -T copy-mode-vi C-j select-pane -D
|
||||
bind -T copy-mode-vi C-k select-pane -U
|
||||
bind -T copy-mode-vi C-l select-pane -R
|
||||
# Clear-screen escape hatch (C-l is consumed above)
|
||||
bind C-l send-keys C-l
|
||||
# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
|
||||
run '~/.tmux/plugins/tpm/tpm'
|
||||
|
||||
|
||||
Lets synchronize the Mod+H and Mod+L from niri to work with the tmux window bindings for optimized key productivity
|
||||
@@ -0,0 +1,137 @@
|
||||
[
|
||||
{
|
||||
"plugin_id": "official.browser",
|
||||
"name": "Browser",
|
||||
"version": "0.1.0",
|
||||
"min_herdr_version": "0.7.4",
|
||||
"description": "Open and inspect real browser pages from Herdr.",
|
||||
"manifest_path": "/home/prad/.config/herdr/plugins/github/official.browser-ff2a44eccae9/herdr-plugin.toml",
|
||||
"plugin_root": "/home/prad/.config/herdr/plugins/github/official.browser-ff2a44eccae9",
|
||||
"enabled": true,
|
||||
"platforms": [
|
||||
"linux",
|
||||
"macos"
|
||||
],
|
||||
"actions": [
|
||||
{
|
||||
"id": "open-localhost",
|
||||
"title": "Open localhost in browser",
|
||||
"contexts": [
|
||||
"workspace"
|
||||
],
|
||||
"command": [
|
||||
"bun",
|
||||
"run",
|
||||
"src/actions/open-localhost.ts"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "status",
|
||||
"title": "Browser status",
|
||||
"contexts": [
|
||||
"workspace"
|
||||
],
|
||||
"command": [
|
||||
"bun",
|
||||
"run",
|
||||
"src/actions/status.ts"
|
||||
]
|
||||
}
|
||||
],
|
||||
"panes": [
|
||||
{
|
||||
"id": "browser",
|
||||
"title": "Browser",
|
||||
"placement": "split",
|
||||
"command": [
|
||||
"bun",
|
||||
"run",
|
||||
"src/viewer.ts"
|
||||
]
|
||||
}
|
||||
],
|
||||
"link_handlers": [
|
||||
{
|
||||
"id": "localhost",
|
||||
"title": "Open in Herdr Browser",
|
||||
"pattern": "^https?://(localhost|127\\.0\\.0\\.1|\\[::1\\])(:[0-9]+)?([/?#].*)?$",
|
||||
"action": "open-localhost"
|
||||
}
|
||||
],
|
||||
"source": {
|
||||
"kind": "github",
|
||||
"owner": "ogulcancelik",
|
||||
"repo": "herdr-browser",
|
||||
"resolved_commit": "be6888b71cf4eb5939ee79a746bd1a1c22ade046",
|
||||
"managed_path": "/home/prad/.config/herdr/plugins/github/official.browser-ff2a44eccae9",
|
||||
"installed_unix_ms": 1786302769417
|
||||
}
|
||||
},
|
||||
{
|
||||
"plugin_id": "vim-herdr-navigation",
|
||||
"name": "Vim Herdr Navigation",
|
||||
"version": "0.1.0",
|
||||
"min_herdr_version": "0.7.0",
|
||||
"description": "Seamless Ctrl+h/j/k/l navigation across herdr panes and Vim/Neovim splits",
|
||||
"manifest_path": "/home/prad/.herdr/vim-herdr-navigation/herdr-plugin.toml",
|
||||
"plugin_root": "/home/prad/.herdr/vim-herdr-navigation",
|
||||
"enabled": true,
|
||||
"platforms": [
|
||||
"linux",
|
||||
"macos"
|
||||
],
|
||||
"actions": [
|
||||
{
|
||||
"id": "down",
|
||||
"title": "Navigate down (Vim/herdr)",
|
||||
"contexts": [
|
||||
"global"
|
||||
],
|
||||
"command": [
|
||||
"bash",
|
||||
"navigate.sh",
|
||||
"down"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "left",
|
||||
"title": "Navigate left (Vim/herdr)",
|
||||
"contexts": [
|
||||
"global"
|
||||
],
|
||||
"command": [
|
||||
"bash",
|
||||
"navigate.sh",
|
||||
"left"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "right",
|
||||
"title": "Navigate right (Vim/herdr)",
|
||||
"contexts": [
|
||||
"global"
|
||||
],
|
||||
"command": [
|
||||
"bash",
|
||||
"navigate.sh",
|
||||
"right"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "up",
|
||||
"title": "Navigate up (Vim/herdr)",
|
||||
"contexts": [
|
||||
"global"
|
||||
],
|
||||
"command": [
|
||||
"bash",
|
||||
"navigate.sh",
|
||||
"up"
|
||||
]
|
||||
}
|
||||
],
|
||||
"source": {
|
||||
"kind": "local"
|
||||
}
|
||||
}
|
||||
]
|
||||
Whitespace-only changes.
Whitespace-only changes.
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"version": "0.8.0",
|
||||
"body": "### Added\n- Added `herdr --skill` to print the agent skill bundled with the running Herdr binary.\n- Added `ui.pane_scrollbars = false` to hide terminal pane scrollbars and reclaim their reserved column. (#2167)\n- Added `ui.tab_bar_position = \"bottom\"` to place the desktop tab row below terminal panes. (#2117)\n- Added live filtering to the keybind help with `/`, Backspace, and `Ctrl+U`. (#1825, #1832, thanks @corrius)\n- Added Windows support for `experimental.switch_ascii_input_source_in_prefix` with Korean IMEs. (#1802, #1823, thanks @joonhwan)\n- Added Grok CLI session reporting and native restore with `grok --resume <id>`. (#1800, #1807, thanks @carlesso)\n- Added Antigravity CLI session reporting and native restore with `agy --conversation <id>`. (#1011, #1571, #2087, thanks @ludoo)\n- Added automatic text history reads for idle alternate-screen agents, with the application viewport restored after collection.\n- Added `workspace.move_block`, the `workspace.reordered` event, and atomic worktree-group reordering. (#1694)\n- Added a Simplified Chinese README. (#1990, thanks @patrick-xin)\n\n### Changed\n- Experimental options are no longer exposed in the Settings TUI and remain available through the config file.\n- Agent status indicators now use the same static workspace marks across the sidebar, navigator, and mobile views, eliminating continuous spinner rendering while agents work.\n- Hidden pane output no longer triggers unnecessary TUI rendering.\n- Windows preview downloads now include Herdr and a modern app-local ConPTY runtime in one archive. (#1533, #1644, #1828)\n- Worktree parents and children now stay packed together in the sidebar, including while groups are reordered.\n- Public documentation now separates stable, preview, and immutable versioned release snapshots.\n- Repository and installation links now use `herdrdev/herdr` after the GitHub organization migration.\n- Relicensed Herdr from AGPL-3.0-or-later to Apache-2.0.\n\n### Fixed\n- Pane applications now receive semantic light/dark query responses and live Mode 2031 updates when the host appearance changes. (#714)\n- Remote attach now falls back to `sh` when the login shell cannot perform path discovery. (#1201)\n- PTY output continues to be read while pane input is temporarily blocked. (#1295)\n- Worktree CLI help and docs no longer advertise the redundant `--json` flag; worktree commands remain JSON-only and continue accepting the flag for compatibility. (#2171)\n- OpenCode 2 preview panes now appear as OpenCode agents and use the existing OpenCode status detection. (#2169)\n- Pane text copied through VS Code Remote Tunnels now reaches the viewing machine's clipboard instead of overwriting the remote host clipboard. (#2015)\n- Windows agent detection now follows Git Bash-launched agents across emulated `exec` process boundaries. (#2107)\n- Detached Windows servers and pane processes now survive logout from the OpenSSH session that started them. (#2008)\n- Windows `agent start` now launches agents without native arguments instead of timing out on an invalid empty PowerShell argument list. (#2072)\n- Headless servers now resume restored agent sessions without waiting for a TUI client to attach. (#2064)\n- Vibe and other Kitty-keyboard pane applications now receive shifted letters and punctuation when they request associated text. (#2020)\n- Kitty-keyboard pane applications now receive printable key releases without duplicate text input. (#1746)\n- Kitty graphics remain visible during host repaints. (#1628)\n- Pane applications now receive correct XTWINOPS terminal and cell-size query responses. (#835)\n- WSL clients query the host cell size when the terminal ioctl reports no pixels, keeping graphics sharp instead of using the 8x16 fallback. (#2146, #2160, thanks @WakaTaira)\n- Linux runtimes without terminal foreground process groups can opt into child-group agent detection with `HERDR_PROCESS_DETECTION=child-groups`. (#1982)\n- Installing the Herdr agent skill with the `skills` CLI no longer copies the entire repository. (#2022)\n- Nix builds now include the bundled agent skill required by `herdr --skill`. (#1889, #1890, thanks @olafkfreund)\n- Agent prompts now wait briefly after sending text before pressing Enter, preventing prompts from remaining in agent composers without starting a turn. (#1878)\n- Empty clipboard writes from pane applications no longer erase existing clipboard contents or show a copied confirmation. (#1893)\n- Plain mouse movement no longer triggers continuous full renders while preserving Herdr menu hover and pane application mouse tracking. (#1865)\n- Extended-button drags now preserve Herdr hover state while applications receive the drag.\n- `ui.copy_on_select = false` now retains drag and double-click word selections without copying; `Ctrl+C`, or `Cmd+C` when the host terminal forwards it, copies and clears the selection. (#1782)\n- Pane and agent read responses now report `truncated: true` wLine truncated
|
||||
"show_on_startup": false
|
||||
}
|
||||
@@ -0,0 +1,144 @@
|
||||
{
|
||||
"version": 3,
|
||||
"workspaces": [
|
||||
{
|
||||
"id": "wP",
|
||||
"custom_name": null,
|
||||
"identity_cwd": "/home/prad/Developer/github.com/prdlk/clipmark",
|
||||
"public_pane_numbers": {
|
||||
"7": 5,
|
||||
"3": 1
|
||||
},
|
||||
"next_public_pane_number": 6,
|
||||
"public_tab_numbers": [
|
||||
1,
|
||||
3
|
||||
],
|
||||
"next_public_tab_number": 4,
|
||||
"tabs": [
|
||||
{
|
||||
"custom_name": "omp",
|
||||
"layout": {
|
||||
"Pane": 3
|
||||
},
|
||||
"panes": {
|
||||
"3": {
|
||||
"cwd": "/home/prad/Developer/github.com/prdlk/clipmark",
|
||||
"agent_session": {
|
||||
"source": "herdr:omp",
|
||||
"agent": "omp",
|
||||
"kind": "path",
|
||||
"value": "/home/prad/.omp/agent/sessions/-Developer-github.com-prdlk-clipmark/2026-08-10T20-42-28-503Z_019fed69-9917-7000-b3c6-b4fedc829e55.jsonl"
|
||||
}
|
||||
}
|
||||
},
|
||||
"zoomed": false,
|
||||
"focused": 3,
|
||||
"root_pane": 3
|
||||
},
|
||||
{
|
||||
"custom_name": null,
|
||||
"layout": {
|
||||
"Pane": 7
|
||||
},
|
||||
"panes": {
|
||||
"7": {
|
||||
"cwd": "/home/prad/Developer/github.com/prdlk/clipmark"
|
||||
}
|
||||
},
|
||||
"zoomed": false,
|
||||
"focused": 7,
|
||||
"root_pane": 7
|
||||
}
|
||||
],
|
||||
"active_tab": 0
|
||||
},
|
||||
{
|
||||
"id": "wQ",
|
||||
"custom_name": null,
|
||||
"identity_cwd": "/home/prad/Developer/prad.codes/go/crypto",
|
||||
"public_pane_numbers": {
|
||||
"5": 1
|
||||
},
|
||||
"next_public_pane_number": 2,
|
||||
"public_tab_numbers": [
|
||||
1
|
||||
],
|
||||
"next_public_tab_number": 2,
|
||||
"tabs": [
|
||||
{
|
||||
"custom_name": null,
|
||||
"layout": {
|
||||
"Pane": 5
|
||||
},
|
||||
"panes": {
|
||||
"5": {
|
||||
"cwd": "/home/prad/Developer/prad.codes/go/crypto"
|
||||
}
|
||||
},
|
||||
"zoomed": false,
|
||||
"focused": 5,
|
||||
"root_pane": 5
|
||||
}
|
||||
],
|
||||
"active_tab": 0
|
||||
},
|
||||
{
|
||||
"id": "wS",
|
||||
"custom_name": null,
|
||||
"identity_cwd": "/home/prad/Developer/github.com/prdlk/tldraw-system-design",
|
||||
"public_pane_numbers": {
|
||||
"9": 2,
|
||||
"8": 1
|
||||
},
|
||||
"next_public_pane_number": 3,
|
||||
"public_tab_numbers": [
|
||||
1,
|
||||
2
|
||||
],
|
||||
"next_public_tab_number": 3,
|
||||
"tabs": [
|
||||
{
|
||||
"custom_name": "omp",
|
||||
"layout": {
|
||||
"Pane": 8
|
||||
},
|
||||
"panes": {
|
||||
"8": {
|
||||
"cwd": "/home/prad/Developer/github.com/prdlk/tldraw-system-design",
|
||||
"agent_session": {
|
||||
"source": "herdr:omp",
|
||||
"agent": "omp",
|
||||
"kind": "path",
|
||||
"value": "/home/prad/.omp/agent/sessions/-Developer-github.com-prdlk-tldraw-system-design/2026-08-11T19-09-58-310Z_019ff23b-44a6-7000-96ce-9aab86e8d0c9.jsonl"
|
||||
}
|
||||
}
|
||||
},
|
||||
"zoomed": false,
|
||||
"focused": 8,
|
||||
"root_pane": 8
|
||||
},
|
||||
{
|
||||
"custom_name": null,
|
||||
"layout": {
|
||||
"Pane": 9
|
||||
},
|
||||
"panes": {
|
||||
"9": {
|
||||
"cwd": "/home/prad/Developer/github.com/prdlk/tldraw-system-design"
|
||||
}
|
||||
},
|
||||
"zoomed": false,
|
||||
"focused": 9,
|
||||
"root_pane": 9
|
||||
}
|
||||
],
|
||||
"active_tab": 0
|
||||
}
|
||||
],
|
||||
"active": 2,
|
||||
"selected": 2,
|
||||
"sidebar_width": 24,
|
||||
"sidebar_section_split": 0.4939759,
|
||||
"collapsed_space_keys": []
|
||||
}
|
||||
@@ -124,3 +124,17 @@ desc = "Jump to a directory via television"
|
||||
on = "<C-f>"
|
||||
run = "plugin tv text"
|
||||
desc = "Open files using neovim and jump to where the string is located"
|
||||
|
||||
|
||||
# Open in the host nvim as splits (only inside an nvim terminal; no-ops in
|
||||
# standalone yazi — see ~/.local/bin/yazi-nvim-open). Replaces yazi.nvim's
|
||||
# <c-v>/<c-x> buffer-local maps.
|
||||
[[mgr.prepend_keymap]]
|
||||
on = "<C-v>"
|
||||
run = 'shell -- yazi-nvim-open vsplit %s'
|
||||
desc = "Open in nvim vertical split"
|
||||
|
||||
[[mgr.prepend_keymap]]
|
||||
on = "<C-x>"
|
||||
run = 'shell -- yazi-nvim-open split %s'
|
||||
desc = "Open in nvim horizontal split"
|
||||
@@ -6,7 +6,10 @@ play = [
|
||||
{ run = "mpv %s", orphan = true, for = "unix" },
|
||||
]
|
||||
edit = [
|
||||
{ run = "nvim %s", block = true, for = "unix" },
|
||||
# routes into the host nvim when run inside its terminal ($NVIM set);
|
||||
# plain blocking nvim otherwise. Lives in ~/.local/bin (yazi doesn't
|
||||
# expand $HOME here). %s = selected/hovered paths (yazi interpolation).
|
||||
{ run = 'yazi-nvim-open %s', block = true, for = "unix" },
|
||||
]
|
||||
open = [
|
||||
{ run = "{{ if eq .chezmoi.os "darwin" }}open{{ else }}xdg-open{{ end }} %s1", desc = "Open" },
|
||||
|
||||
Reference in new issue
Block a user