- Introduced AgentAnalyzer class to analyze agent invocation data, usage frequency, and workflow patterns.
- Implemented endpoint for agent usage analytics in ClaudeAnalytics.
- Enhanced session management to account for scheduled reset times instead of fixed durations.
- Updated SessionAnalyzer to reflect new session reset logic and improved warning messages.
- Added functionality to calculate agent efficiency and popular usage hours.
- Created a .nojekyll file for GitHub Pages deployment in Docusaurus configuration.
* feat: add agents selection to interactive setup
- Add agents step to interactive setup flow in prompts.js
- Include React performance optimization and state management agents
- Include Django API security and database optimization agents
- Integrate agent selection with existing setup workflow
- Show agent count in confirmation step
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* chore: bump version to 1.12.2 for agents feature
---------
Co-authored-by: Claude <noreply@anthropic.com>
* feat: Enhanced analytics dashboard with custom tool modals
- Implemented custom modals for all Claude Code tools (Read, Edit, Write, Bash, Glob, Grep, TodoWrite)
- Added intelligent diff viewer for Edit tool with dual modes (By Lines vs Smart Diff)
- Enhanced tool parameter visualization with project-specific insights
- Improved modal consistency with unified design patterns
- Added comprehensive CSS styling for all tool modals
- Fixed modal functionality and error handling across all tools
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* feat: improve startup screen and fix framework structure
- Redesign compact ASCII art for better terminal usage
- Add version info and documentation links to startup screen
- Fix frameworks → examples directory structure consistency
- Update all code references to use examples/ instead of frameworks/
- Fix Jest configuration typo (moduleNameMapping → moduleNameMapper)
- Add new agents.js module for agent management
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* chore: bump version to 1.12.1 for release
---------
Co-authored-by: Claude <noreply@anthropic.com>
- Exposed agentsPage globally for modal access in App.js, allowing for custom tool modals.
- Implemented cleanup of global references when navigating away from the agents page.
- Added detailed logging for token chart data in DashboardPage.js to aid in debugging.
- Improved tool display logic in ToolDisplay.js to store tool data for supported tools, enhancing modal interactions.
- Introduced extensive styling for various tool modals in index.html, ensuring a consistent and responsive design.
- Updated showResultsModal function to handle custom tool modals based on stored tool data, improving user experience.
- Added a new SVG file `undraw_docusaurus_tree.svg` to the static images directory for enhanced visual representation.
- Introduced a new TypeScript configuration file `tsconfig.json` to improve editor experience and project structure.
🚀 Released version 1.11.0 to npm with Claude Code Console Bridge integration
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* feat: Enhance DataService with paginated conversations and improved error handling
- Added `getConversationsPaginated` method to fetch conversations with pagination support.
- Improved error handling in `cachedFetch` to provide clearer messages and fallback behavior.
- Updated WebSocket integration to handle connection failures with fallback polling.
- Reduced WebSocket auto-reconnect attempts and disabled auto-reconnect to minimize console noise.
- Added CORS middleware to the web server for better API accessibility.
- Implemented paginated conversations endpoint in the server.
- Added conversation messages endpoint to retrieve messages for a specific conversation.
- Enhanced conversation analysis to include detailed session data and compatibility with original dashboard.
* feat: Implement real-time conversation change handling and notifications
- Added handleConversationChange method to ClaudeAnalytics for processing updates to conversation files.
- Integrated WebSocket notifications for new messages in conversations.
- Enhanced setupFileWatchers to include conversation change callbacks.
- Updated conversation state API to calculate states for all conversations, improving performance and accuracy.
- Introduced pagination for conversation messages endpoint to support large message sets.
- Implemented cache management endpoint for clearing specific cache types.
- Enhanced DataCache and ConversationAnalyzer to support tool correlation in message parsing.
- Created ToolDisplay component for safe rendering of tool uses and results in the analytics dashboard.
- Added comprehensive documentation for Claude data structures and formats.
* feat: Enhance real-time messaging and dashboard features
- Improved logging for new messages in DataService to include message data.
- Increased WebSocket reconnection attempts for better reliability.
- Enabled auto-reconnect in WebSocketService for real-time updates.
- Updated conversation change handling in ClaudeAnalytics to include file path.
- Enhanced error handling and logging in ConversationAnalyzer and DataCache.
- Added new settings file for local permissions.
- Introduced a new Chats Dashboard option in the main menu.
- Created detailed architecture documentation for the analytics web application.
- Deprecated old main.js and Dashboard.js files in favor of a modular structure.
* feat: Implement real-time message handling and improve logging in DataService and AgentsPage
* feat: Implement comprehensive conversation state detection improvements
- Enhanced frontend message analysis for tool execution and content analysis.
- Introduced file activity detection to accurately identify user typing.
- Adopted a WebSocket-first approach for real-time state updates.
- Expanded state vocabulary with new contextual states and visual indicators.
- Improved state banner display with new CSS classes.
- Integrated system components for cohesive state management.
- Added health check feature to validate system requirements and configurations.
- Developed ConsoleBridge for web-based interaction with Claude Code processes.
- Created test script for ConsoleBridge to facilitate integration testing.
- Display template browser website in CLI completion message
- Add prominent link in README.md for template exploration
- Help users discover all available templates online
- Improve discoverability of the template showcase website
CLI now shows: 'View all available templates at: https://davila7.github.io/claude-code-templates/'
README includes: 'Browse Templates Online' section with website link
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Fixed options parameter not being passed to copyTemplateFiles()
- Enhanced existing backup system with timestamped backups
- Added user choice prompts: Backup, Merge, or Cancel options
- Fixed --yes flag to properly trigger backup mode
- Improved merge mode to preserve existing configurations
- Added proper cancellation handling for user safety
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* ruby cli-tool template and rails 8 example added
* feat: Add Ruby on Rails 8 support to claude-code-templates
## Summary
- Added Ruby language configuration to templates.js with Rails 8 framework support
- Enhanced project detection in utils.js for Ruby/Rails projects via Gemfile and .rb files
- Added Ruby-specific hook descriptions to hook-scanner.js for RuboCop, Brakeman, and RSpec
- Updated Makefile with Ruby test targets
## Testing Completed (per CONTRIBUTING.md)
✅ Interactive setup works correctly - Ruby appears as language option
✅ Framework detection is accurate - Detects Rails via Gemfile and config/application.rb
✅ Command installation succeeds - Rails commands properly installed
✅ Hook configuration is valid - 9 Ruby hooks load without errors
✅ MCP servers are properly configured - Ruby SDK server configured
✅ Dry run mode shows expected output - Displays all Ruby template files
✅ Command analysis displays accurate statistics - Shows Rails command stats
All tests from the Testing Checklist have been manually verified and pass successfully.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
---------
Co-authored-by: Claude <noreply@anthropic.com>
- Add Health Check as second menu option in CLI
- Comprehensive system validation:
* System requirements (OS, Node.js, memory, network)
* Claude Code setup (installation, auth, permissions)
* Project configuration (structure, settings files)
* Custom commands and hooks validation
* Settings.json analysis (user/project/local)
- Interactive UX with ora spinners and immediate results
- 3-second pacing between categories for better visual flow
- Detailed health score with actionable recommendations
- Settings validation with security checks and best practices
- Enhanced navigation flow returning to main menu
- Fix Project Setup flow from both health check and direct menu selection
- Update README documentation with Health Check feature
- Add CLI aliases: --health-check, --health, --check, --verify
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add Tool Usage Trends bar chart with date filtering and improved tooltips
- Implement Tool Activity Summary panel with key metrics:
* Total tool calls, unique tools used, conversation coverage
* Average tools per conversation and tool balance score
* Most used tool highlight with usage statistics
- Fix tooltip reliability issues with enhanced Chart.js configuration
- Add proper date range filtering for tool usage data
- Implement Shannon Diversity Index for accurate tool balance scoring
- Update dashboard layout to 2x2 grid for better chart organization
- Add comprehensive tool usage caching for improved performance
- Enhance ConversationAnalyzer with extractToolUsage() method
- Support both string-based and structured tool_use block detection
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Implement comprehensive CSS variables theming system
- Add minimalist toggle switch with smooth animations
- Support both light and dark modes with terminal-style design
- Theme preference persists in localStorage
- Dynamic chart color adaptation for theme changes
- Responsive design for mobile devices
- Clean, icon-only switch without text labels
- Fix SessionTimer component initialization and remove debug logs
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Implement CSS variables for comprehensive theming system
- Add minimalist toggle switch with smooth animation
- Support both light and dark modes with terminal-style design
- Persist theme preference in localStorage
- Dynamic chart color adaptation for theme changes
- Responsive design for mobile devices
- Clean, icon-only switch without text labels for elegance
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-authored-by: Claude <noreply@anthropic.com>
- Add automatic DataCache cleanup with 30-second intervals
- Implement size limit enforcement to prevent memory buildup
- Increase memory threshold to 300MB for realistic analytics usage
- Add Claude session tracking integration throughout dashboard
- Fix message counting to respect actual Claude session windows
- Stabilize conversation state transitions with extended time intervals
- Add comprehensive token breakdown with cache tokens
- Implement Claude session popover with hover functionality
- Fix table layout stability with fixed column widths
- Reduce cache size limits from 1000 to 100 entries
- Add proper cleanup methods for graceful shutdown
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Fix token calculation discrepancy by including cache tokens in main dashboard
- Add detailed token breakdown popover with hover functionality
- Improve conversation history loading with comprehensive message metadata
- Fix message coloring logic using JSON metadata instead of content parsing
- Add version number integration to dashboard
- Enhance SessionTimer with info icon and message calculation tooltip
- Move notifications button to filter row for better UX
- Add comprehensive token usage tracking (input, output, cache creation, cache read)
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Implement comprehensive unit tests for StateCalculator to validate conversation status detection and state management.
- Create unit tests for StateService covering state management, subscriber notifications, and error handling.
- Develop unit tests for WebSocketServer to ensure proper handling of WebSocket connections, message broadcasting, and heartbeat mechanisms.
- Include edge case handling and validation for all components to enhance robustness and reliability.
- Implement 500ms refresh rate for near real-time updates
- Add 250ms fast refresh for first 30 seconds for instant state changes
- Prioritize conversation flow over file timestamps for immediate response detection
- Improve "Claude Code working..." detection to trigger instantly when user sends message
- Extend file activity detection window to 15 seconds for better accuracy
- Create dedicated npm README for better package discoverability
- Update root README to highlight new notification and state detection features
- Remove debug console logs for cleaner production experience
Performance improvements result in near-instantaneous state change detection.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Implement real-time conversation state updates with 1-second refresh
- Add precise state detection: "Claude Code working...", "User typing...", "Awaiting user input..."
- Separate refresh logic: manual for charts, automatic for conversation data
- Integrate active process detection for accurate state determination
- Improve notification system for awaiting user input states
- Remove emojis from notification titles and refresh buttons for cleaner interface
- Optimize performance by only refreshing conversation data, not charts
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Remove emojis from notification and refresh buttons
- Clean, professional button text appearance
- Maintain all functionality while improving visual clarity
- Better accessibility and readability
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Implement browser notification API integration
- Add notification button to enable/disable alerts
- Detect conversation state changes (Awaiting user input...)
- Send notifications when Claude is waiting for user response
- Include clickable notifications that focus the conversation
- Auto-close notifications after 10 seconds
- Visual button states (enabled/disabled/denied)
- Test notification on first enable
- Improve productivity by alerting users when Claude needs input
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Change default selection from 'setup' to 'analytics'
- Promote analytics dashboard usage as primary feature
- Users can still easily select Project Setup if needed
- Improves discoverability of monitoring capabilities
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Remove automatic help output when no arguments provided
- Allow interactive welcome screen to show cleanly
- Users can still access help with --help flag
- Fixes clean onboarding experience
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add initial prompt to choose between Analytics Dashboard or Project Setup
- Show clear descriptions for each option with emojis
- Only show prompt when no specific CLI flags are provided
- Maintain existing behavior for users with flags (--yes, --language, etc.)
- Improve onboarding experience for new users
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Bump version to 1.5.18
- Sync web dashboard HTML with latest analytics improvements
- Add process indicators and orphan process handling UI elements
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Refine conversation status detection to reduce false positives
- Filter out system processes and orphan process noise
- Balance active conversation detection for better accuracy
- Only show truly active conversations in dashboard
- Remove orphan process detection to reduce UI clutter
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Bump version in package.json from 1.5.12 to 1.5.14.
- Add CSS styles for improved layout and status indicators in the web dashboard.
- Introduce a new message type indicator for user and assistant messages with tooltips.
- Implement logic to determine message types (success, error, tool execution, pending) based on message content.
- Refactor message rendering to include message type indicators.
- Updated onboarding prompts to include an option for launching the Claude Code Analytics Dashboard.
- Modified the createClaudeConfig function to handle the analytics option and initiate the dashboard if selected by the user.