-
-
Notifications
You must be signed in to change notification settings - Fork 2.9k
Closed
Labels
needs-triageNew issue awaiting maintainer reviewNew issue awaiting maintainer review
Description
Problem
When running GSD 2.0 in auto mode, the agent sometimes hits decision points that require user input:
ask_user_questionsduring discuss/plan/execute phasesshowNextActionat phase boundaries (e.g., "M001 verified. Deploy or start M002?")
These decision points block silently in the TUI — there's no external signal that the agent is waiting. This is a problem when:
- Monitoring multiple projects — running 3+ GSD auto sessions simultaneously, you can't tell which one needs attention without checking each terminal
- Building Pi1↔Pi2 orchestration — a supervising Claude Code instance (Pi1) monitors autonomous GSD sessions (Pi2) but has no way to detect when Pi2 is waiting for input
- Mobile/remote workflows — using CCNotifier or similar push notification systems to get alerts when attention is needed
Current behavior
STATE.mdis updated at phase boundaries but NOT whenask_user_questionsblocks- No
auto.lockfile is created during interactive question prompts - The only way to know GSD is waiting is to visually check the terminal
Proposed solution
When GSD enters a blocking decision point, write a signal file:
.gsd/WAITING.json
{
"status": "waiting",
"type": "ask_user_questions" | "next_action",
"question": "Skal vi tilføje global navigation nu?",
"options": ["Hurtig opgave nu", "Del af M003", "None of the above"],
"since": "2026-03-14T01:15:00Z",
"phase": "execute",
"slice": "S04"
}
When the user answers and the agent resumes, delete the file.
Alternative: Webhook/callback
A preferences.md option to call an external script/URL when a decision point is reached:
## Notifications
on_waiting: ~/.claude/hooks/pi2-waiting-hook.shThis would complement the existing remote-questions Slack/Discord integration by supporting arbitrary notification backends.
Context
- Already aware of
remote-questionsextension (Slack/Discord polling) — this is great but doesn't cover custom notification backends - The signal file approach is simpler and works with any watcher (fswatch, polling, inotify)
- Event hooks (
session_start,agent_end, etc.) exist in the SDK but none fires on decision points
Environment
- GSD 2.0 v0.3.3 via Homebrew
- Running 3 concurrent auto sessions
- macOS, Claude Opus 4.6
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
needs-triageNew issue awaiting maintainer reviewNew issue awaiting maintainer review