Skip to content

v0.7.0

Latest

Choose a tag to compare

@nnemirovsky nnemirovsky released this 18 Apr 08:53
ba04f0a

New Features

  • overlay: show full command with word-wrap instead of 120-char truncation
  • overlay: smart regex suggestion for compound commands -- when some segments are already auto-allowed (readonly or existing rule), the suggested "yes/no always" rule targets only the uncovered portion (e.g. ls && weird_cmd suggests ^weird_cmd, not ^ls)
  • overlay: OSC 777 desktop notification before popup (Ghostty, iTerm2, Konsole). Inside tmux, wraps in DCS passthrough so notifications reach the outer terminal. Requires set -g allow-passthrough on in tmux.conf

Bug Fixes

  • compound: readonly segments count as covered in compound allow matching. go test ./... | tail -50 with user rule ^go now auto-allows (tail is readonly, filtered out). Previously fell through to overlay
  • overlay: cross-session queue lock now lives at $(passthru_user_home)/passthru-overlay.lock.d instead of $TMPDIR. On macOS $TMPDIR is per-process so two CC sessions would not serialize. Fixes native-dialog cascade when session B runs while session A has an overlay open
  • overlay: stale-lock recovery via mtime check. SIGKILLed hooks no longer leave zombie locks blocking every future overlay
  • overlay: OSC notification writes to /dev/tty instead of stdout (stdout is captured by CC as the hook's JSON response, so the OSC sequence never reached the terminal)

New env vars

  • PASSTHRU_OVERLAY_LOCK_TIMEOUT (default 180s)
  • PASSTHRU_OVERLAY_LOCK_STALE_AFTER (default 180s)
  • PASSTHRU_OVERLAY_UNALLOWED_SEGMENTS (set by hook, read by proposer)

#24 @nnemirovsky