Automattic / Automattic/studio

Feature Request: Terminal notifications when Studio Code finishes or needs input

Open
#4,178 0 comments 0 reactions 0 assignees View on GitHub
Enhancement YOLO
Dominant language
TypeScript
Stars
517
Forks
95
Avg merge
1d 22h
Merged PRs (30d)
162

Description

### What

Add an opt-in setting so studio code can flash the terminal tab / show a system notification (via standard BEL + OSC 9 escape codes) when an agent turn finishes or pauses on an `AskUserQuestion`. Off by default; toggled with a new `/notifications` slash command.

### Why

Agent turns can run for several minutes. Right now the only way to know a turn finished or is waiting for input is to keep watching the terminal. A lightweight, dependency-free signal would let users switch away and come back when needed.

### How

Proof-of-concept (draft PR to follow): a `notifyTerminal()` helper writes the escape sequence to stderr, gated behind a `notificationsEnabled` cli.json flag and guards that keep it from reaching non-terminal consumers (desktop app IPC, remote-session daemon). Wired into both the interactive TUI and headless `--json` mode.

Manually tested on Windows across a few terminals, results vary:
- Warp — tab flash + system notification
- Git Bash — tab flash only
- PowerShell 7 (x64) — no visible effect
- CMD — no visible effect

**macOS/Linux terminals untested.**

Contributor guide

Open the contributing guide

Research direction

Start with cli.json and the /notifications slash-command path, then trace the interactive TUI and headless --json entry points. Review the notifyTerminal() proof of concept and its stderr escape sequences, including guards for desktop app IPC and the remote-session daemon. Done means the opt-in setting is off by default, notifications occur on turn completion and AskUserQuestion pauses, and non-terminal consumers receive nothing.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
cli, desktop
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.