- Added extensive DEBUG-level logging for SSH command execution, spawn details, exit codes, and configuration flow
- Improved Wizard SSH remote support:
- Debounced remote directory validation to reduce excessive SSH calls
- Fixed git.isRepo() to correctly pass remoteCwd for remote checks
- Persisted SSH config in SerializableWizardState and validated directories over SSH
- Ensured ConversationScreen and ConversationSession consistently pass SSH config for remote agent execution
- Fixed "agent not available" errors by forwarding stdin via exec and enabling stream-json mode for large prompts
- Enhanced remote agent execution logic in ProcessManager with stdin streaming, exec-based forwarding, and useStdin flag
- Improved SSH file browser behavior:
- Added resolveSshPath() to locate SSH binaries on Windows (Electron spawn PATH issue)
- Corrected getSshContext() handling of enabled/remoteId states
- Ensured synopsis background tasks run via SSH instead of local paths
- Added Windows development improvements: dev:win script and PowerShell launcher for separate renderer/main terminals
- Added additional SSH directory debugging logs for remote-fs and wizard flows
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Added full SSH remote support to the wizard, including propagation of SSH config through all phases
- Ensured SSH config flows correctly through IPC bridge (renderer → preload → main)
- Improved agent detection with optional sshRemoteId and remote `which` resolution
- Fixed SSH config transfer during manual agent creation and auto-selection flows
- Added extensive debugging and structured logging for SSH execution, agent availability, and wizard message flow
- Improved stdin/JSON streaming for large prompts and remote execution
- Added input/output JSON stream handling and enhanced logging for SSH transport
- Added sourcing of bash profiles to correctly resolve claude-code binary paths on remote hosts
- Compaction now triggers earlier: 2k tokens or 8 exchanges 🎯
- Added extra compaction fallbacks when context gauge resets unexpectedly 🔁
- Read-only tabs now force “return plan in Markdown” instructions 🧾
- Auto Run without worktree automatically runs in read-only/plan mode 🛡️
- ThinkingStatusPill now accepts prefiltered thinkingSessions for speed ⚡
- InputArea precomputes thinking sessions and memoizes command filtering 🚀
- MainPanel memoizes active tab lookup to cut per-keystroke work 🧠
- TerminalOutput memoizes active logs and reduces scroll update frequency 🖥️
- Batched session updates track context high-water mark with explicit reset 🌊
- Wizard adds one-click debug log download right in the conversation UI 🧰
- Leaderboard registration now submits cumulative stats safely for multi-device sync 🏆
- AutoRun prompt now requires a concrete “what I did” synopsis first 🧭
- Wizard now auto-continues when AI implies “let me research…” dead-ends 🧠
- Added robust deferred-response phrase detection to keep conversations flowing 🔍
- Introduced “Your turn” indicator when assistant awaits user input 💡
- Updated wizard system prompt to forbid deferred/async promises outright 🚫
- Prevented auto-continue infinite loops with a per-exchange trigger guard 🛡️
- Improved auto-continue UX with delayed send after UI updates ⏱️
- Added full test suite for deferred-response detection patterns ✅
- Strengthened NewInstanceModal tests with remote directory stat validation 📁
- NewInstanceModal tests now wait for debounced remote path validation ⏳
- Expanded icon mocking to include Loader2 for more complete test coverage 🎭
- Launch the in-tab Wizard straight from Auto Run with one click! 🪄
- Wizard “show thinking” now displays live tool executions, not just text! 🧰
- Prevent confusing JSON flashes in wizard thinking stream for cleaner UX! 🧼
- Auto-complete wizard after document generation with a helpful summary log! ✅
- Redesigned document generation view: progress, elapsed time, and drafted files list! 📄
- Auto Run batch processing now fully supports SSH remotes end-to-end! 🔐
- Tab hover menu upgrades: instantly move tabs to first/last position! 🧭
- Keyboard safety: disable Cmd+J mode toggling while an active wizard tab runs! ⌨️
- Session persistence now drops incomplete wizard tabs to avoid broken restores! 💾
- Improved debugging for thinking-chunk streaming with richer ProcessManager logs! 🔎
- Auto-run stop tooltips now say “stop auto-run” consistently everywhere 🛑
- AutoRun pill shows “AutoRun Stopping…” with warning color feedback ⏳
- Cmd/Ctrl+Shift+K thinking toggle now works globally in wizard modal ⌨️
- ConversationScreen thinking toggle state is lifted to MaestroWizard 📤
- Thinking toggle tests updated to click button, not keyboard shortcut 🖱️
- BatchRunner modal rebranded as “Auto Run Configuration” for clarity 🏷️
- Auto-run prompt placeholder clarifies it’s a system prompt 🧠
- “Run batch processing” copy replaced with clearer “Start auto-run” 🚀
- Batch processor now bypasses debouncing for direct progress updates ⚡
- Stop auto-run requests always honored; extra logging aids debugging 🔍
- Wizard now saves generated docs under `Auto Run Docs/Initiation/` for clarity 📁
- Onboarding copy refresh: “Auto Run Playbook” terminology replaces “document” consistently 📝
- Claude parser now extracts and streams extended “thinking” blocks reliably 🧠
- Added full test coverage for thinking, redaction, and tool-use parsing paths ✅
- Wizard modal gains a real focus trap for rock-solid keyboard navigation ⌨️
- Wizard buttons now show accessible focus rings matching theme colors 🎯
- Phase Review: Escape closes document dropdown before modal closes 🛡️
- Phase Review: cycle multiple generated documents with ⌘/Ctrl+Shift+[ ] shortcuts 🔁
- Directory step: Enter on Browse triggers browse, not accidental “Continue” 🗂️
- Auto Run prompts upgraded with token-efficient task grouping rules and examples ⚡
- Added `/wizard` inline wizard docs for in-tab Auto Run creation flow 📘
- Inline Wizard now supports streaming “Thinking” with a handy toggle 🧠
- Wizard conversation typing animation upgraded to smooth RAF typewriter ⚡
- Document generation now writes files live via `Write` tool 🚀
- Real-time doc streaming added by watching Auto Run subfolder changes 👀
- Generation UX improved with centered loader, progress text, and cancel button 🛑
- Wizard tabs rename instantly to “Wizard”, then “Wizard: {Project}” 🏷️
- Process Monitor now groups wizard processes with WIZARD/GENERATING badges 🧙
- Context transfer now auto-sends on tab activate for instant injection 🔄
- New session lifecycle stats IPC APIs wired into `maestro.stats` 📊
- Added Claude “prompt too long” detection as recoverable token exhaustion 🧩
- Rebranded wizard output from “action plans” to “Playbooks” everywhere 📘
- AutoRun Edit/Preview controls are now icon-only with clearer titles 🎛️
- Introduced Playbook Exchange button styling and richer tooltip copy 🧺
- Wizard now routes chat input directly into its own conversation stream 💬
- Wizard completion now appends conversation logs and a next-steps summary 🧾
- Wizard captures Claude `session_id` and switches tab for continuity 🔗
- Wizard mode becomes tab-scoped, preventing cross-tab activation leakage 🧭
- Confidence gauge now withholds green until readiness threshold (80+) 🎨
- Document generation shows centered Austin Facts during initial loading 🧠
- Claude agents now run read-only tools for safer Playbook generation 🔒
- Wizard pill shows “Thinking…” spinner and pauses pulse while waiting ⏳
- Bumped Maestro to v0.14.0 with a fresh release cutover 🚀
- Added self-serve “Resend Confirmation” for leaderboard token recovery 📧
- Wired new `leaderboard:resendConfirmation` IPC handler end-to-end 🧩
- Upgraded registration modal with resend-first flow, manual token fallback 🛟
- Added Quick Actions entry to open the Document Graph instantly ⚡
- Document Graph now persists external-links toggle back into settings 💾
- Document Graph modal now preserves state across closes for continuity 🔒
- React Flow controls are fully theme-styled with dynamic injected CSS 🎨
- Improved graph layouts to reduce external-node overlap in both modes 🧭
- Wizard now detects provider errors and shows recovery hints + “Go Back” 🧠
Found expired OAuth token, attempting refresh...
Token refresh successful
## CHANGES
- Pops unacknowledged badge celebrations when you return, focus, or move mouse 🎖️
- Stops the correct Auto Run session by passing explicit session IDs 🛑
- Auto Run Stop button now targets its own session reliably, everywhere 🧭
- Elapsed Auto Run time now shows true cumulative task work duration ⏱️
- Tracks cumulativeTaskTimeMs in batch state for accurate reporting 📊
- Resets interrupted “reset-on-completion” docs safely, even without backups 🧹
- External links now open in the system browser across the app 🌐
- Markdown/Chat links in Wizard screens open externally for safer navigation 🗺️
- Toast action links launch externally without hijacking in-app clicks 🔔
- Main Auto button got tighter sizing and clearer progress microcopy 🧩
- Added pulsing green unread indicator for sessions with new messages
- Enhanced PreparingPlanScreen with Austin facts and file creation animations
- Updated SessionList collapse button to require sessions
- Renamed wizard screen title from "Choose Your AI Assistant" to "Choose Your Provider"
- Updated test assertions to match UI text changes
- Documented unread indicator in README
Claude ID: 207f9996-7530-493f-bb99-96a3bb26c6f7
Maestro ID: b9bc0d08-5be2-4fdf-93cd-5618a8d53b35
UI improvements:
- Change step 1 title to "Create a Maestro Agent"
- Rename "Project Understanding" to "Project Understanding Confidence"
- Put YOLO flag on its own centered line with padding
- Shorten loading message to fit on two lines
Bug fix:
- Add fallback to read Auto Run documents directly from disk when
the agent writes files instead of outputting them with markers.
This fixes an issue where documents appeared on disk but weren't
shown in the Phase Review UI.
Session: f323ef3f-406d-4dd5-b31d-410de2117e17
- Add ExistingAutoRunDocsModal that detects previous wizard sessions
- Allow users to continue planning from existing docs or start fresh
- Support reading existing docs and passing them to the AI for context
- Add path traversal sanitization for AI-generated filenames (security fix)
- Add proper cleanup on unmount for ConversationScreen and PhaseReviewScreen
- Add rate limiting guard for send button to prevent double-sends
- Update HistoryHelpModal with simplified styling
- Add Texas Flag SVG component for Austin Facts display
Security improvements address PR #19 review comments:
- sanitizeFilename() prevents directory traversal attacks
- conversationManager.endConversation() called on unmount
- phaseGenerator.abort() called on unmount
- isSendingRef prevents race conditions from rapid clicking
Session: 207f9996-7530-493f-bb99-96a3bb26c6f7
Found expired OAuth token, attempting refresh...
Token refresh successful
I'd be happy to help you create a clean update summary for a GitHub project! However, I don't see any input provided after "INPUT:" in your message.
Could you please share the changelog, commit history, or release notes that you'd like me to summarize? Once you provide that information, I'll create an exciting CHANGES section with 10-word bullets and relevant emojis as requested.
- Create ScreenReaderAnnouncement component with ARIA live regions
for accessible notifications using toggle technique
- Support polite and assertive politeness levels per WCAG 2.1
- Add useAnnouncement hook for convenient announcement management
- MaestroWizard: Announce step changes when navigating
- AgentSelectionScreen: Announce detection completion and selection
- DirectorySelectionScreen: Announce validation results and errors
- ConversationScreen: Announce AI thinking, confidence, ready status
- PhaseReviewScreen: Announce generation start, success, and errors
- Add 10 unit tests for ScreenReaderAnnouncement component
- Unified keyboard hints styling across all wizard screens using consistent
mt-4 margin, flex gap-6 layout, and theme.colors.border for kbd elements
- ConversationScreen: Fixed kbd background from bgMain to border to match
other screens, updated margin from mt-3 to mt-4
- PhaseReviewScreen: Replaced simple text hints with styled kbd-based hints
matching AgentSelectionScreen and DirectorySelectionScreen patterns
- PhaseReviewScreen: Standardized header/footer padding from px-4 py-3 to
px-6 py-4 for visual consistency with ConversationScreen sections
- PhaseReviewScreen: Updated content area and error margins to use px-6
Full implementation of the third wizard screen featuring:
- AI Terminal-like chat interface with message bubbles
- Confidence progress bar (0-100%) with red-yellow-green gradient
- Typing indicator with animated bouncing dots
- Initial question display before first interaction
- Integration with conversationManager for agent communication
- Error handling with retry options
- Keyboard support: Enter to send, Shift+Enter for newline, Escape to go back
- "Let's Get Started!" transition prompt when ready=true and confidence>80
- Auto-resizing textarea input with Send button
- Conversation history stored in WizardContext
- Created MaestroWizard.tsx main orchestrator component that renders
the appropriate screen based on current step from WizardContext
- Added step indicator with numbered circle and progress dots
- Integrated with LayerStack for Escape key handling
- Added fade-in/slide-up animations for modal transitions
- Added WIZARD modal priority (760) to modalPriorities.ts
- Created placeholder screen components (AgentSelectionScreen,
DirectorySelectionScreen, ConversationScreen, PhaseReviewScreen)
for module compilation - full implementations pending