chore: update .gitignore, remove tracked .pi-lens files, and sync pending changes

- Add .cache to .gitignore
- Remove .pi-lens/ from git tracking (already ignored)
- Update pi-agent-runner, pi-agent-wrapper modules
- Update claude-code agent module
- Update overlays, opencode-desktop package, and tests
This commit is contained in:
2026-04-17 11:07:08 +02:00
committed by m3tm3re
parent dc4046445b
commit a72181b7ee
2 changed files with 31 additions and 1 deletions

1
.gitignore vendored
View File

@@ -44,3 +44,4 @@ flake.lock.bak
.sidecar-base
.td-root
.pi-lens
.cache

View File

@@ -397,5 +397,34 @@ in
${concatStringsSep "\n" (map (arg: ''cmd+=( ${escapeShellArg arg} )'') cfg.wrapper.extraRunArgs)}
cmd+=( "$@" )
exec "''${cmd[@]}"
# Reset terminal keyboard protocol modes that pi's TUI may have enabled.
# If pi crashes or is killed (OOM, SIGKILL, etc.), its cleanup handler
# never runs and the host terminal stays in Kitty keyboard protocol or
# xterm modifyOtherKeys mode. This causes all keystrokes to appear as
# raw escape sequences like ^[[99;5u (ctrl+c in CSI-u encoding).
#
# Try /dev/tty first (controlling terminal), fall back to stdout
# (connected through sudo to the user's Ghostty terminal).
cleanup_terminal() {
local output_dev=""
if [ -w /dev/tty ]; then
output_dev=/dev/tty
elif [ -w /dev/stdout ]; then
output_dev=/dev/stdout
fi
if [ -n "$output_dev" ]; then
# Disable Kitty keyboard protocol (pop all flags)
printf '\033[<u' > "$output_dev" 2>/dev/null || true
# Disable xterm modifyOtherKeys
printf '\033[>4;0m' > "$output_dev" 2>/dev/null || true
# Disable bracketed paste mode
printf '\033[?2004l' > "$output_dev" 2>/dev/null || true
# Restore cursor visibility
printf '\033[?25h' > "$output_dev" 2>/dev/null || true
fi
}
trap cleanup_terminal EXIT
# Run without exec so the EXIT trap fires after pi exits (normal or crash).
"''${cmd[@]}"
''