Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Notifications not working on Windows — OSC 777 sequences captured by Claude Code hook runner

Abierto
#48 3 comentarios 0 reacciones 0 asignados Ver en GitHub

@Chebaleomkar ya está trabajando en esto.

Desde el 17/5/2026.

  • #50 de @Chebaleomkar — abierto

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
38/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Tranquilo
Stack tecnológico
shell
Área
tooling

Línea de trabajo

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.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

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:

  1. /dev/tty fails 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

  2. stderr fallback is captured — The fallback >&2 writes to stderr, but Claude Code's hook execution framework captures both stdout and stderr from hook subprocesses (stdout is used for structured JSON responses like systemMessage). The OSC sequence goes into Claude Code's internal buffer, never reaching Warp's terminal emulator.

  3. No alternative fd exists — Unlike macOS/Linux where /dev/tty reliably 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) ✅
  • jq installed (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.

Lenguaje dominante
Shell
Estrellas
233
Forks
59
Merge medio
2 d 8 h
PR fusionados (30 d)
2

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de warpdotdev/claude-code-warp

Todos los issues de warpdotdev/claude-code-warp

Issues similares

Más issues de Shell/Bash

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.