Notifications not working on Windows — OSC 777 sequences captured by Claude Code hook runner
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 38/100
Direzione di ricerca
Start with warp-notify.sh, then inspect build-payload.sh and the Stop, Notification, and SessionStart hook scripts. Reproduce the Git Bash failure and compare /dev/tty with stderr delivery. Done means Windows notifications reach Warp without being captured by Claude Code, while existing macOS and Linux behavior remains working.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Environment
- OS: Windows 11
- Warp version: v0.2026.05.06.15.42.stable_05
- Claude Code version: 2.1.77
- Shell: Git Bash (MSYS2)
- Plugin version: warp@claude-code-warp 2.0.0
- TERM_PROGRAM: WarpTerminal
- WARP_CLI_AGENT_PROTOCOL_VERSION: 1
Problem
Warp notifications from the Claude Code plugin never appear on Windows. All hooks fire correctly (verified via debug logging to /tmp/warp-debug.log), should_use_structured returns true, and build-payload.sh constructs valid JSON — but the notification never reaches Warp.
Root Cause
warp-notify.sh sends the OSC 777 escape sequence via:
printf '\033]777;notify;%s;%s\007' "$TITLE" "$BODY" > /dev/tty
On Windows (Git Bash), this fails because:
-
/dev/ttyfails to open — Git Bash inside Claude Code's hook runner cannot access/dev/tty. It exists as a path but writing to it gives:/dev/tty: No such device or address -
stderr fallback is captured — The fallback
>&2writes to stderr, but Claude Code's hook execution framework captures both stdout and stderr from hook subprocesses (stdout is used for structured JSON responses likesystemMessage). The OSC sequence goes into Claude Code's internal buffer, never reaching Warp's terminal emulator. -
No alternative fd exists — Unlike macOS/Linux where
/dev/ttyreliably connects to the controlling terminal, Windows has no equivalent side-channel that bypasses Claude Code's stdio capture.
Verified Working
should_use_structured→ returns 0 (true) ✅jqinstalled (1.8.1) ✅build-payload.sh→ produces valid JSON ✅- Hook scripts fire on Stop, Notification, SessionStart events ✅
- Plugin enabled in settings.json ✅
Debug Log (hooks are firing)
[WARP DEBUG] on-stop.sh fired at Sat May 16 21:18:31 IST 2026
[WARP DEBUG] on-stop.sh fired at Sat May 16 21:19:09 IST 2026
[WARP DEBUG] on-notification.sh fired at Sat May 16 21:20:12 IST 2026
[WARP DEBUG] on-stop.sh fired at Sat May 16 21:24:37 IST 2026
[WARP DEBUG] on-notification.sh fired at Sat May 16 21:25:39 IST 2026
Suggestion
The plugin needs a Windows-compatible delivery mechanism for OSC sequences. Possible approaches:
- Use Warp's IPC/socket if one exists (env var like
WARP_SOCKET?) - Request Claude Code to pass through OSC sequences from hook output instead of capturing them
- Use a Windows-specific API (ConPTY handle) to write directly to the terminal
This is a Windows-only issue — macOS/Linux work fine since /dev/tty connects directly to the controlling terminal.
- Lingua principale
- Shell
- Stelle
- 232
- Fork
- 56
- Merge medio
- 4g 15h
- PR unite (30g)
- 1
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di warpdotdev/claude-code-warp
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
warpdotdev/claude-code-warp#63 · 2 commenti ·
Tutte le issue di warpdotdev/claude-code-warp
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
aws-samples/appmod-blueprints#972 ·
I maintainer di solito rispondono entro 1 giorno
-
[Bug]: remote-ls --updates reports up-to-date OCI refs because it ignores deployed Alt-idForse già presa @Joao-kouznetz l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
status:needs-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 3 giorni