- Add ESLint 9 configuration (eslint.config.mjs) with TypeScript and React hooks plugins
- Add npm run lint:eslint command for code quality checks
- Expand npm run lint to check all three TypeScript configs (renderer, main, cli)
- Update tsconfig.cli.json to include src/prompts and src/types directories
Fix 29 ESLint errors:
- Remove unused updateCliActivity import in batch-processor.ts
- Convert {false && <jsx>} patterns to comments in AutoRun components
- Wrap case block with const declarations in braces (AgentSelectionScreen)
- Fix unused expression pattern in PreparingPlanScreen
- Fix conditional hook calls in FilePreview, OfflineQueueBanner, RecentCommandChips, TerminalOutput
- Add windows-diagnostics.json to PackageContents interface
Update CLAUDE.md and CONTRIBUTING.md with new linting commands and documentation.
Claude ID: 029e8abe-5734-4967-9fb4-c85078c1973d
Maestro ID: 87ffa06e-0ecd-4eb8-b327-dad1ec24f7a9
- Remove dead code: legacy `onChange` prop that was marked for backwards
compatibility but never used (all callers use `onContentChange` instead)
- Removes 3 occurrences: interface definition, destructuring, and fallback
Found expired OAuth token, attempting refresh...
Token refresh successful
POST "https://api.anthropic.com/v1/messages": 429 Too Many Requests {"type":"error","error":{"type":"rate_limit_error","message":"This request would exceed your account's rate limit. Please try again later."},"request_id":"req_011CWH1uG2HcPbZAxcTH9eWX"}
Could you please share the changelog, commit history, pull request details, or any other information about what has changed in your project since the last release? This could include:
- Git commit messages
- Pull request descriptions
- Release notes draft
- Feature additions
- Bug fixes
- Breaking changes
- Dependencies updates
Once you provide this information, I'll create an exciting CHANGES section with clean 10-word bullets and relevant emojis as requested!
- Added read-only mode support for group chat messages 📖
- Implemented message queueing when moderator is busy 📬
- Added drag-and-drop reordering for queued messages 🔄
- Enabled @mention autocomplete for all Maestro agents 🤖
- Added keyboard navigation for mention suggestions ⌨️
- Synchronized staged images between group chat and composer 🖼️
- Added group chat statistics to info overlay 📊
- Fixed CSS conflicts between prose containers 🎨
- Added auto-expand when new group chat is created ✨
- Improved group chat UI with better visual indicators 💫
Found expired OAuth token, attempting refresh...
Token refresh successful
I'm ready to analyze your GitHub project changes and create an exciting update summary! However, I don't see any input provided after "INPUT:" in your message.
Please share the changelog, commit history, pull request descriptions, or any other information about what has changed in your GitHub project since the last release. This could include:
- Git commit logs
- Pull request summaries
- Release notes draft
- Feature descriptions
- Bug fixes
- Any other relevant changes
Once you provide the input, I'll create a clean, exciting CHANGES section with 10-word bullets and relevant emojis as requested! 🚀
Add error handling to Auto Run batch processing so it pauses when
agent errors (auth, rate limits, etc.) occur during execution.
Changes:
- Add error state fields to BatchRunState interface
- Add error handling functions to useBatchProcessor:
pauseBatchOnError, skipCurrentDocument, resumeAfterError, abortBatchOnError
- Wire agent error detection to pause batch processing in App.tsx
- Add error banner UI in AutoRun panel with Skip/Resume/Abort buttons
- Update AutoRunExpandedModal to support error handling props
- Pass error callbacks through RightPanel component
- File preview history now tracked per-session instead of globally 🎯
- Search navigation only scrolls when using prev/next buttons, not typing 🚀
- Added flag to distinguish manual navigation from search input changes ⚡
- File preview history clears when switching between agents/sessions 🧹
- Search focus and text selection improved after navigation 🎨
- Moved history state from App component to Session type definition 📦
- Added useCallback hooks for optimized history state updates 🔧
- Prevented unnecessary scrolling during live search typing ⌨️
- Enhanced user experience with smarter scroll-to-match behavior 🎪
- Session-based history prevents cross-agent file navigation conflicts 🛡️
- Simplified search highlighting by removing separate component 🎯
- Integrated search directly into markdown rendering pipeline 🔄
- Added match counter for tracking search positions globally 🔢
- Implemented text node handler for inline search highlights ✨
- Removed duplicate preview mode search rendering logic 🧹
- Enhanced search with callback for match element tracking 📍
- Unified search highlighting across all markdown content 🔗
- Improved performance by eliminating redundant DOM updates ⚡
- Added data attributes for better match identification 🏷️
- Streamlined codebase by removing 70+ lines of code 🚀
- Enhanced update checker to filter out prerelease tags like -rc, -beta, -alpha 🚀
- Improved release filtering logic for cleaner version management and updates 🎯
- Fixed search display to only show highlights when matches are found 🔍
- Optimized AutoRun component search rendering for better user experience ✨
- Added comprehensive prerelease pattern matching for tag filtering accuracy 🛡️
- Refined conditional rendering logic in search functionality for cleaner UI 🎨
- Strengthened version comparison by excluding development and canary builds 💪
- Improved search result visibility by checking for actual matches first 👁️
- Enhanced release fetching with more robust filtering against draft releases 📦
- Streamlined search highlighting to prevent empty search result displays 🔧
- Enhanced Auto Run to only lock documents being processed 🔒
- Added selective document locking for better multi-file editing 📝
- Improved editor access for non-processed files during runs ✨
- Introduced lockedDocuments tracking in batch processing state 📊
- Fixed editor locking logic to check document inclusion 🔧
- Maintained free editing for worktree-based Auto Runs 🌳
- Added document-specific locking to prevent accidental edits 🛡️
- Improved multi-document workflow with granular access control 🎯
- Enhanced user experience by allowing parallel document work 🚀
- Optimized batch processor with smarter document management 💡
- Auto Run now supports worktree mode for safer parallel editing! 🌳
- Editor stays unlocked when Auto Run uses worktree branches 🔓
- Visual worktree indicators added to UI status displays 🎯
- Git branch icon shows active worktree in multiple panels 🌿
- Worktree branch name appears in helpful hover tooltips 💡
- Main repository remains editable during worktree Auto Runs ✏️
- Auto Run status pill enhanced with worktree information 🏷️
- Improved developer workflow with non-blocking Auto Run mode 🚀
- Better visual feedback for worktree-based operations 👁️
- Seamless integration of worktree status across all panels 🔄
When editing in the Auto Run editor panel, changes were not being
carried over to the expanded modal view, and vice versa. This was
because both views rendered separate AutoRun component instances
with their own internal localContent state.
Fixed by implementing shared draft state management at the RightPanel
level that both instances read from and write to:
- Added externalLocalContent/onExternalLocalContentChange props to
AutoRun for external state management
- RightPanel maintains sharedLocalContent/sharedSavedContent state
- Both panel and modal AutoRun instances use this shared state
- Internal state provides immediate feedback while syncing to shared
- On remount, AutoRun restores from shared state (persists drafts)
Updated tests to reflect the new behavior where drafts now persist
across tab switches instead of being lost.
Claude ID: ace07043-181b-4c1a-8877-de29e514067c
Maestro ID: b9bc0d08-5be2-4fdf-93cd-5618a8d53b35
- Added debug logging for file write operations to trace cross-session contamination 🔍
- Removed automatic content update after save to prevent session mixing issues 🛡️
- Moved Cmd+S keyboard shortcut handling to unified keyboard event handler 🎹
- Added explicit event propagation control for better keyboard shortcut management ⚡
- Improved file save reliability during rapid session switching scenarios 🚀
- Enhanced debug console output for tracking write operations across sessions 📊
- Simplified save function to prevent unintended side effects on active sessions ✨
- Consolidated keyboard event handling into single comprehensive handler 🎯
- Added stopPropagation to Cmd+S to prevent conflicts with other shortcuts 🔒
- Streamlined content synchronization between editor and file system 🔄
- Replaced auto-save with manual save model for better control 🎯
- Added Save and Revert buttons when content has unsaved changes 💾
- Implemented Cmd+S keyboard shortcut for quick saving ⌨️
- Fixed content cross-contamination between sessions and documents 🔒
- Moved content storage to per-session state instead of global 📦
- Added dirty state tracking to show when changes need saving 🚨
- Improved UI to hide controls when no folder is selected 🎨
- Added save confirmation before running batch operations ✅
- Enhanced modal with matching save/revert functionality 🔄
- Fixed image button visibility in both edit and preview modes 🖼️
Found expired OAuth token, attempting refresh...
Token refresh successful
# CHANGES
- Improved task count display in document selector with completion percentages 🎯
- Fixed content saving when switching between documents and sessions 💾
- Added starred session persistence through Claude session origins 🌟
- Enhanced document selector dropdown to show wider for better visibility 📐
- Fixed test cases for proper content preservation during switches ✅
- Added real-time task counting for all documents in the folder 📊
- Improved wizard validation to require agent name before proceeding 🧙
- Updated tests to use new starred session storage mechanism 🔧
- Fixed dropdown styling to properly highlight selected documents 🎨
- Enhanced auto-save behavior to prevent data loss between documents 🛡️
- Added leaderboard opt-out functionality with server removal request 🚪
- Enhanced focus toggle between input field and output panel 🔄
- Improved Auto Run stall detection for unchanged document content 🛑
- Added task completion counter display in Auto Run interface ✅
- Fixed scroll position synchronization between edit/preview modes 📜
- Updated shortcut labels to preserve user's custom key bindings ⌨️
- Added hover bridge for thinking status dropdown accessibility 🌉
- Enhanced toast duration formatting to support days display ⏱️
- Fixed history panel scroll position preservation on refresh 📍
- Added sidebar DOM focus for better keyboard navigation support 🎯
Source code fixes:
- AutoRun.tsx: Move useEffect that uses resetUndoHistory after useAutoRunUndo hook
- BatchRunnerModal.tsx: Move worktree state declarations before usePlaybookManagement hook
Test fixes:
- QuickActionsModal: Update markdown toggle text to "Toggle Edit/Preview"
- TabSwitcherModal: Update footer hint text to match new UI
- BatchRunnerModal: Remove obsolete document selector escape test
- Add Discord icon button next to Globe in About Modal header
- Add "Join Discord" option to Command K quick actions menu
- Both link to https://discord.gg/86crXbGb
Claude ID: f67864c5-6863-496d-9e9a-28d745977704
Maestro ID: b9bc0d08-5be2-4fdf-93cd-5618a8d53b35
Phase 05 complete - Tour system guides new users through interface:
- TourOverlay.tsx: Full-screen dark overlay with CSS clip-path spotlight
- TourStep.tsx: Positioned tooltip with title, description, nav buttons
- tourSteps.ts: 10-step tour sequence covering all major UI areas
- useTour.tsx: Hook for tour state management and step progression
Features:
- Smooth transitions between tour steps (200-300ms animations)
- Intelligent tooltip positioning based on available viewport space
- Keyboard navigation (Enter/Space advance, Escape exits, arrows)
- UI state preparation via 'tour:action' custom events
- View-only design (only tour controls are interactive)
- Responsive spotlight positioning on window resize
- Skip Tour link and completion state persistence
Added data-tour attributes to components:
- SessionList: hamburger-menu, session-list
- RightPanel: files-tab, history-tab, autorun-tab, autorun-panel
- MainPanel: header-controls, main-terminal, input-area
- AutoRun: autorun-document-selector
Integration:
- Added TOUR priority (1050) to modalPriorities.ts
- Wired TourOverlay in App.tsx with tourCompleted settings flag
- Added startTour prop to SessionList hamburger menu
- Added custom tab name template variable {{TAB_NAME}} support 🏷️
- Enhanced AutoRun expanded modal with integrated controls header 🎛️
- Added template autocomplete to AI Commands panel editor 🤖
- Fixed modal z-index layering for proper isolation 🎨
- Updated achievement card timeline section with new title 🏆
- Added comprehensive test coverage for new autocomplete features ✅
- Improved AutoRun modal with mode toggle in header bar 🔄
- Added image upload button to expanded AutoRun edit mode 🖼️
- Added help button integration in expanded modal header ❓
- Maintained backwards compatibility with SESSION_NAME alias 🔗
- Add image paste/attach support to Prompt Composer modal
- Add Tab key support (inserts tab character)
- Add bottom bar toggles: Save to History, Read-only mode, Enter to send
- Add Cmd+Shift+L shortcut to open lightbox from modal
- Simplify OS notification title format (Group > Project > Tab)
- Remove redundant agentName field from Toast interface
- Fix worktree validation to accept non-git directories for new worktrees
- Minor styling update to Auto Run help button
Claude ID: 0fcf47bb-f616-4932-98a5-2ea6956f9ce1
Maestro ID: b9bc0d08-5be2-4fdf-93cd-5618a8d53b35
Could you please share the changelog, commit history, or release notes that you'd like me to analyze? This could include:
- Git commit messages
- Pull request descriptions
- A diff between releases
- Release notes draft
- Any other documentation about what changed
Once you provide that information, I'll create an exciting CHANGES section with clean, 10-word bullets and relevant emojis as requested!
When background synopsis tasks completed, history entries were being
recorded with the wrong agent's sessionId and projectPath if the user
switched agents while the task was running. This caused entries to
appear in the wrong agent's history panel.
Fix: addHistoryEntry now accepts optional sessionId, projectPath, and
sessionName parameters. Background operations (like synopsis) now pass
explicit values captured at task start time, preventing cross-agent
contamination.
Claude ID: 906b25cb-32b7-46b7-896b-fd459f106720
Maestro ID: b9bc0d08-5be2-4fdf-93cd-5618a8d53b35
The AutoRun panel was showing stale content when switching between
sessions. The dropdown correctly updated to show the new session's
selected document, but the content displayed remained from the
previous session.
Root cause: Two separate useEffects for syncing content had a stale
closure issue - the second effect didn't properly track localContent
changes, causing the content comparison to use outdated values.
Solution: Consolidated into a single effect using a ref to track
content changes, avoiding the stale closure problem while properly
handling both session switches and external content updates.
Claude ID: 6ff853d1-9e0d-4a3b-9ae5-4a72a1d23eea
Maestro ID: b9bc0d08-5be2-4fdf-93cd-5618a8d53b35
Mobile web interface:
- Auto-reconnect every 30 seconds when disconnected
- Auto-focus text input when CommandInputBar expands
- Auto-expand group containing active session
- Scroll to group header when expanding collapsed group
- Collapsed input shows single-line height (48px) on mobile
- Tab search button pinned outside scrollable area
- Slash command modal uses more screen space when input collapsed
- Bookmarks group expanded by default
Desktop:
- AutoRun panel focus management via ref
- Added DAY, MONTH, WEEKDAY template variables
Docs:
- Added DAY and MONTH to README template variables table
Claude ID: 2436d63e-7bf7-4266-8efa-aa499d149827
Maestro ID: b9bc0d08-5be2-4fdf-93cd-5618a8d53b35
• Added history file watcher polling every 60 seconds 🔄
• History now reloads automatically when changed externally 📝
• Fixed history entry order - newest entries appear first 📊
• Improved token tracking to show actual context usage 📈
• Fixed batch runner modal with proper document path handling 🛠️
• Enhanced session filter to remember user preferences 💾
• Added expanded mobile input mode for better typing experience 📱
• Refresh action now updates files, git, and history together 🔄
• Added error handling for history file write failures ⚠️
• Fixed preview mode always available in Auto Run panel 👁️
The CLI now reads agent custom paths from maestro-agent-configs.json,
sharing the same settings as the desktop app. This ensures consistency
between desktop and CLI when users configure a custom Claude Code path.
Changes:
- Add readAgentConfigs() and getAgentCustomPath() to CLI storage service
- Refactor detectClaude() to check settings first, then fall back to PATH
- Add getClaudeCommand() helper for spawning with resolved path
- Minor AutoRun overflow CSS fix
- Alphabetize template variables list
Session: 472b48d8-4774-4955-8c98-2c5b6294beb5
Could you please share:
- The commit history, pull requests, or changelog since the last release
- Any release notes or development updates
- Or any other information about what has changed in your project
Once you provide that information, I'll create an exciting CHANGES section with clean 10-word bullets and relevant emojis, formatted in Markdown with HTML links as requested.
• Added human-readable output format for CLI commands 🎨
• Introduced JSON flag for machine-parseable scripting output 🤖
• Renamed session references to agent for clarity consistency 🏷️
• Implemented partial ID matching for agents and playbooks 🔍
• Enhanced list commands to show all playbooks by agent 📋
• Added circular navigation to lightbox image carousels 🔄
• Fixed reset-on-completion for documents with checked tasks ✅
• Improved error messages with formatted colored output 🎯
• Updated CLI examples with new agent-based syntax 📝
• Resolved import callback reference in batch runner modal 🔧
- Add recursive subfolder scanning with tree display in document selector
- Add folder selector in Create Document modal for creating docs in subfolders
- Add loop max control (infinity/max toggle with slider, max 25 iterations)
- Update info panel: document progress bars, "Loop X of Y" display
- Re-scan documents at start of each loop for fresh task counts
- Improve slider UX (larger infinity symbol, wider slider)
Claude ID: {{CLAUDE_SESSION_ID}}
Maestro ID: b9bc0d08-5be2-4fdf-93cd-5618a8d53b35
- Add Enter key support for queued message removal confirmation dialog
- Add kill process capability to System Process Monitor with confirmation
- Add toggle markdown rendering option to Cmd+K Quick Actions menu
Claude ID: d504ac29-93b3-46e9-8929-9be234bbcf07
Maestro ID: b9bc0d08-5be2-4fdf-93cd-5618a8d53b35
When a folder is configured but contains no markdown documents, the Auto Run
panel now displays a helpful empty state with a "No Documents Found" message
that explains the situation and provides buttons to either refresh the
document list or change the selected folder.
- Update handlePaste to use autorun:saveImage API with {docName}-{timestamp}.{ext} format
- Update handleFileSelect to save images similarly using the new API
- Update AttachmentImage component to load images from relative paths within folderPath
- Update handleRemoveAttachment and deleteLightboxImage to use autorun:deleteImage API
- Update image list loading to use autorun:listImages API
- Images are now saved to {folder}/images/ subdirectory with relative markdown paths
This completes Phase 3.5 of the Auto Run overhaul, transitioning from
session-based attachment storage to file-system-based image storage that
persists with the Auto Run documents.
Implements Phase 3.1-3.2 of the Auto Run overhaul:
- Create AutoRunDocumentSelector.tsx with dropdown, refresh, and change folder
- Update AutoRun.tsx props to support external document/mode state
- Update RightPanel.tsx to pass new Auto Run props
- Add App.tsx state and handlers for document list, content, loading
- Add effect to load documents when session or folder changes