- Add asarUnpack for node-pty so native module is extracted outside ASAR
- Add missing system dependencies (libdrm2, libgbm1, libasound2) to deb
- Add missing dependencies (libdrm, mesa-libgbm, alsa-lib) to rpm
Removed dead code:
- useModalManager.ts (136 lines) - never imported by application code
- useModalManager.test.ts (686 lines) - tests for dead hook
The codebase uses useLayerStack + LayerStackContext for modal management
which provides a more sophisticated API (escape delegation, modal vs
overlay distinction, onBeforeClose support, debug APIs, focus traps).
Also removed stale ARCHITECTURE.md references to useFocusManager
(removed in Task 98).
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_011CWJa3o6GdjJKgdNY7G8EN"}
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"}
- Added chokidar for cross-platform file watching support 🔧
- Upgraded file watcher from native fs to chokidar library 📁
- Enhanced participant color generation with round-based variations 🎨
- Reserved blue color (index 0) exclusively for Moderator role 💙
- Added color palette size constant for better color management 🎯
- Improved color variation logic for overflow participant counts 🌈
- Fixed file watching to handle add/unlink events properly 👁️
- Removed platform-specific file watching limitations for better compatibility 🌍
- Enhanced color assignment to prevent non-moderators using blue 🛡️
- Bumped version from 0.9.1 to 0.10.0 for new features 🚀
- Added Sentry crash reporting for error tracking and debugging 🐛
- Implemented opt-out privacy setting for anonymous crash reports 🔒
- Enhanced agent spawning with generic config options for session continuity 🔧
- Fixed tab creation null safety checks across the codebase 🛡️
- Added Edit Agent action to Quick Actions modal for faster access ⚡
- Enabled bookmark toggle directly from Quick Actions menu 📌
- Improved batch processing to run in read-only mode by default 📝
- Cleaned up queued items display by removing redundant tab indicators 🧹
- Strengthened null checks in tab helper functions for stability 💪
- Updated version to 0.9.1 with comprehensive bug fixes and improvements 🚀
- Version bump from 0.8.8 to 0.9.0 release 🚀
- Added custom CLI arguments support for agents 🛠️
- New handlers for setting and getting custom args ⚙️
- Store custom arguments persistently in agent configs 💾
- Apply custom args to all agent invocations automatically 🔄
- Enhanced background synopsis with flexible agent type support 🎯
- Improved session resumption for any agent type compatibility 🔗
- Refactored spawn logic to support agent-specific resume args 🏗️
- Better abstraction for multi-agent background task execution 🤖
- Backwards compatible with claude-code as default agent 🔒
Fixes#30 - OpenSUSE Tumbleweed uses libuuid1 instead of libuuid.
Adding explicit rpm.depends with (libuuid or libuuid1) syntax allows
the RPM package to install on both traditional distros and OpenSUSE.
Could you please share the changelog, commit history, pull request information, or any other details about what has changed in your project since the last release? This could include:
- Git commit messages
- Pull request descriptions
- Release notes
- Feature additions
- Bug fixes
- Performance improvements
- Breaking changes
- Dependency updates
Once you provide this information, I'll create an exciting CHANGES section with clean, 10-word bullets and relevant emojis as requested!
Please share the changelog, commit history, release notes, or any other information about what has changed in the GitHub project since the last release, and I'll create a clean, exciting CHANGES section with 10-word bullets and emojis as requested.
- Version bumped from 0.8.4 to 0.8.5 with new improvements! 🚀
- Latest release brings enhanced stability and performance optimizations ready! ⚡
- Bug fixes and minor improvements make the experience smoother! 🐛
- AI coding agents now run more reliably for extended periods! 🤖
- Autonomous operation capabilities have been refined and polished beautifully! ✨
- Under-the-hood enhancements ensure better long-running agent performance overall! 🔧
- Incremental update focuses on reliability for multi-day autonomous runs! 📈
- Small but meaningful improvements to the core agent functionality! 💪
- Patch release addresses community feedback and enhances user experience! 🎯
- Maestro continues evolving to better orchestrate your AI agents! 🎼
- Version bump from 0.8.2 to 0.8.3 released 🚀
- Read-only mode now disabled during AutoRun execution 🔒
- Added locked tooltip explaining read-only restrictions during AutoRun 💬
- Read-only toggle shows warning styling when AutoRun active ⚠️
- Fixed layout alignment for session stats display area 📐
- Added comprehensive tests for AutoRun read-only interactions 🧪
- Improved user feedback for mode restrictions during automation 💡
- Enhanced UI consistency with minimum width constraints applied 📏
- Better visual indicators for locked functionality states added 🎨
- Test coverage expanded for new AutoRun safety features ✅
- Removed PWA icon generation scripts for cleaner codebase 🧹
- Deleted Maestro icon generator script with conductor silhouette 🎭
- Removed GitHub community analytics scripts for stargazers/forkers 📊
- Added keyboard shortcuts support to tour overlay component ⌨️
- Enhanced quick actions modal with shortcut key display 🚀
- Added dynamic shortcut placeholder replacement in tour steps 🔄
- Improved tour descriptions with keyboard shortcut references 💡
- Added helper function for formatting shortcuts in tour text ✨
- Cleaned up package.json by removing unused script commands 📦
- Streamlined build process by removing icon generation dependencies 🏗️
Found expired OAuth token, attempting refresh...
Token refresh successful
## CHANGES
- Upgraded to version 0.8.1 with performance boost! 🚀
- Added @tanstack/react-virtual for blazing fast file trees 🌳
- Implemented virtualized rendering for massive file lists ⚡
- Added show/hide dotfiles toggle with eye icon 👁️
- Enhanced date display showing full dates for older logs 📅
- Optimized file tree with flattened structure for speed 🏎️
- Added depth-based indent guides for better hierarchy 📏
- Improved memory usage with virtualized row rendering 💾
- Added showHiddenFiles setting that persists between sessions 💾
- Fixed performance issues when browsing large directories 🎯
- Add ghPath setting to specify custom path to gh binary (e.g., /opt/homebrew/bin/gh)
- Update git:checkGhCli and git:createPR IPC handlers to accept optional ghPath
- Add UI in Settings > General for configuring the gh path
- Pass ghPath through BatchRunnerModal and useBatchProcessor for PR creation
- Include test infrastructure setup (vitest) and misc updates
Claude ID: 295a322c-974c-4b49-b31d-f7be18819332
Maestro ID: b9bc0d08-5be2-4fdf-93cd-5618a8d53b35
- Remove LOOP history entry type, consolidate to AUTO and USER only
- Add custom agent path support in NewInstanceModal for non-PATH installations
- Fix context usage calculation to count only input-related tokens (input + cache)
- Add demo mode (npm run dev:demo) for isolated testing environment
- Remove unused tab context menu from TabBar component
- Fix badge acknowledgment variable reference in useSettings
Claude ID: dbbd387e-ae3c-49a6-9961-d8317774f0a4
Maestro ID: b9bc0d08-5be2-4fdf-93cd-5618a8d53b35
Could you please share the changelog, commit history, or description of what has changed in your project since the last release? This could include:
- Git commit messages
- Pull request descriptions
- A changelog file
- A summary of new features, bug fixes, and improvements
- Any other relevant information about the changes
Once you provide this information, I'll create an exciting CHANGES section with clean, 10-word bullets and relevant emojis for each update! 🚀
Migrate from @yao-pkg/pkg (standalone binaries) to esbuild (bundled JS).
This removes ~46 packages from the dependency tree and produces a 174KB
bundle instead of ~50MB per-platform binaries.
Users of the CLI already have Node.js installed (required for Claude Code),
so standalone binaries are unnecessary overhead.
Changes:
- Remove @yao-pkg/pkg, add esbuild
- Add scripts/build-cli.mjs for esbuild bundling
- Update package.json build scripts and extraResources config
- Update README with new installation instructions
- Include batch-processor improvements from linter
Session: 472b48d8-4774-4955-8c98-2c5b6294beb5
CLI Tool (maestro-playbook):
- New standalone binary for running playbooks from command line
- Supports list groups, list agents, list playbooks, run playbook
- JSONL output format for easy parsing and piping
- Dry-run mode and no-history options
- Documentation added to README.md
Process Monitor Enhancements:
- Show only running processes (hide idle/inactive)
- Display human-readable runtime (e.g., "2m 30s", "1h 5m")
- Show Claude session ID with click-to-navigate
- Improved column layout with less spacing
- Default to expanded view
- Visual feedback on refresh (500ms spinner)
- Kill process functionality with confirmation
Process Tracking:
- Added startTime to ManagedProcess interface
- Expose startTime via getActiveProcesses IPC
Claude ID: c7e537b9-c2a7-4cc7-b49b-e7ea0ca1d4cb
Maestro ID: b9bc0d08-5be2-4fdf-93cd-5618a8d53b35
- Add "Made with Maestro" SVG badge to README
- Update app icons with darker purple color scheme (#2d1f4e)
- Add canvas dev dependency for icon generation
- Fix AchievementCard badge visibility with consistent dark bg
- Move code block copy button to bottom-right for better UX
- Add vertical margin to pre blocks for better spacing
- Improve batch synopsis prompt to be more concise
Claude ID: 97a10f0d-145d-4352-babd-6d9caed0f9dc
Maestro ID: b9bc0d08-5be2-4fdf-93cd-5618a8d53b35
- Replace custom CSS confetti with canvas-confetti library for massive
Raycast-style explosions (850+ initial particles with continuous bursts)
- Add circular progress ring around Maestro icon showing 11 badge segments
- Add share button to AchievementCard with copy-to-clipboard and download
- Fire confetti immediately on Standing Ovation mount and on dismiss
- Fix infinite loop error in PlaygroundPanel layer registration
- Fix badge tooltip positioning and click-to-toggle behavior
- Improve empty badge cell visibility with dashed borders
Claude ID: 97a10f0d-145d-4352-babd-6d9caed0f9dc
Maestro ID: b9bc0d08-5be2-4fdf-93cd-5618a8d53b35
- Add scripts/set-version.mjs for cross-platform VITE_APP_VERSION setting
(replaces bash-specific env var syntax that failed on Windows)
- Extract magic numbers into CLAUDE_SESSION_PARSE_LIMITS and CLAUDE_PRICING
constants for better maintainability
- Remove legacy session format migration code - sessions now require aiTabs
- Fix session ID regex patterns to properly parse -ai-{tabId} format
- Remove deprecated aiLogs fallbacks - logs are exclusively in aiTabs now
Claude ID: bfd92ffb-a375-47be-94c5-fe4186325092
Maestro ID: b9bc0d08-5be2-4fdf-93cd-5618a8d53b35
Modified package.json to set VITE_APP_VERSION="LOCAL <8-char-git-hash>"
for all local packaging commands (package, package:mac, package:win,
package:linux). This makes it easy to identify local builds in the
About modal by showing version like "LOCAL 53452967" instead of the
package.json version.
Major architectural improvement to ensure web interface operations go through
the same code paths as desktop, eliminating duplicate logic and race conditions.
Key changes:
- Fix AgentDetector running 20+ times at startup via promise deduplication
- Web commands now forward to renderer's processInput instead of spawning directly
- Mode switching forwards to desktop instead of just acknowledging requests
- Interrupt forwards to desktop to properly update session state to idle
- Add IPC channels: remote:executeCommand, remote:switchMode, remote:interrupt
- Add mobile MessageHistory component for viewing session AI/shell logs
Architecture now ensures single source of truth:
Web → IPC → Renderer (same code path as desktop)
Redesign the web server architecture for simplified mobile remote control:
- Replace per-session web servers with single server using random port and
auto-generated security token for secure access
- Add "Live Session" toggle to enable/disable individual sessions for remote access
- Add QR code component for easy mobile connection scanning
- Remove tunnel settings and complex authentication management
- Add network utilities for IP address detection
Mobile web interface improvements:
- Device color scheme preference support (light/dark mode)
- Connection status indicator with automatic reconnection
- Offline queue for commands typed while disconnected
- Swipe gestures for common actions
- Quick actions menu for the send button
Update documentation to reflect new mobile-first remote access approach.
Claude ID: 3dd3573f-bed1-4a0e-984c-10081124092a
Maestro ID: 5a166b38-b7e9-47f0-a8ff-0113c65f2682
- Create manifest.json with app metadata, icons, and shortcuts
- Add PWA icon generation script (scripts/generate-pwa-icons.mjs)
- Configure Vite public directory for static PWA assets
- Add apple-touch-icon links for iOS home screen
- Add favicon links for browser tabs
- Include npm script for regenerating PWA icons
- Install @fastify/static for serving static files
- Add resolveWebAssetsPath method to find web assets in dist/web
- Register @fastify/static plugin to serve assets at /web/assets/
- Add serveIndexHtml helper that transforms asset paths for SPA
- Update /web/desktop and /web/mobile routes to serve index.html
- Transform relative ./assets/ paths to /web/assets/ for proper routing
- Add build:web step to main build script chain
- Add dev:web script for standalone web development server
- Web assets now built automatically during npm run build
- Packaged app will include dist/web/* via existing files glob
- Install @fastify/rate-limit package
- Configure rate limiting with sensible defaults:
- 100 requests/minute for GET endpoints
- 30 requests/minute for POST endpoints (more restrictive)
- Add RateLimitConfig interface for configuration
- Apply rate limiting to all /web/* routes
- Add /web/api/rate-limit endpoint to check current limits
- Skip rate limiting for /health endpoint
- Custom error response with retry-after information
- Support for X-Forwarded-For header for proxied requests
- Add user-defined session names stored with Claude session origins
- Display session names in AgentSessionsBrowser with tag icon
- Add "Named only" filter to quickly find named sessions
- Include session names in search across title and content modes
- Sync session names when renaming sessions in the sidebar
- Fix macOS code signing with ad-hoc signatures in release workflow
- Fix electron-builder CLI syntax (--config.extraMetadata)
- Improve lightbox navigation with context-aware image arrays
- Fix GitLogViewer search input focus handling
- Improve AI command prompt display with multi-line clamp
Claude ID: 24a6cdd6-27a7-41e0-af30-679cc2ffe66b
Maestro ID: 5a166b38-b7e9-47f0-a8ff-0113c65f2682
- Use Python 3.11 for macOS builds (Python 3.12+ removed distutils module needed by node-gyp)
- Add author email to package.json (required for Linux .deb package maintainer field)