Add a new development-tools agent specialized in Slack platform development:
- @slack/bolt SDK patterns and best practices
- Block Kit UI templates and interactive components
- Events API handling and OAuth 2.0 V2 flows
- Code review checklist for Slack integrations
- Security best practices (signature verification, token management)
- Fixed Components counter showing 0 (now increments with component-layer2 events)
- Removed Active Days from HUD display
- Cleaned up stats.days calculation and references
- Components now properly tracked in stats.components
- Increased beam speed 5x (0.02 → 0.1) for faster completion
- Implemented beam queue system with max 10 active beams
- Removed visual effects (shadows, labels, particles) for better FPS
- Fixed duplicate counter increments (now updates once before beam)
- Added beamQueue cleanup in restart function
- Significantly improves rendering performance with many tools
- Changed from bulk toolCounts processing to individual tool-use events
- Implemented sequential dayOfYear assignment for controlled loading order
- Tools now load one by one like components (no simultaneous loading)
- Models load first (day 0), then tools (day 10+), then components
- Increased toolIncrement to 3 for proper spacing between tool animations
- Components start immediately after tools (no delay)
- Fixes extreme lag when loading many tools at once
- Change from 3 tools/frame to 1 tool every 5 frames
- Reduces processing speed from 180 tools/sec to ~12 tools/sec
- Matches component loading speed for smoother rendering
- Prevents lag on slower devices
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
- Implement tool queue system to process tools gradually
- Process only 3 tools per frame instead of all at once
- Prevents browser freeze when loading many tools simultaneously
- Improves rendering performance on slower devices
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
- Remove timeline bar and date display from visualization
- Remove numbers from right panel (Models, Tools, Components lists)
- Implement collision detection system to prevent nodes overlapping
- Add restart function to clear permanent connection beams
- Clean up token tracking (removed from frontend display)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
- Group Plan, Explore, Agent subagents by type instead of individual IDs
- Aggregate counts per day to reduce timeline events
- Prevents rendering issues with thousands of subagent nodes
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Display percentages instead of absolute counts for tools, models, and components
- Position nodes randomly based on percentage (higher % = closer to center)
- Add zoom in/out with mouse wheel (30%-300%)
- Add pan canvas by dragging background
- Add drag & drop for tool and component nodes
- Double-click to reset zoom/pan
- Make connection beams permanent with subtle pulse animation
- One permanent connection per node for clean visualization
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
New Skills:
- linear: Manage Linear issues and workflows
- notion-knowledge-capture: Capture and organize knowledge in Notion
- notion-meeting-intelligence: Intelligent meeting notes and action items
- notion-research-documentation: Document research findings
- notion-spec-to-implementation: Convert Notion specs to implementation
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add --2025 option to launch Year-in-Review visualization
- Support --tunnel flag with --2025 for remote access
- Track analytics dashboard usage for 2025 page
- Update allowed bash commands in local settings
Usage: cct --2025 [--tunnel]
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Gource-style 3-layer circular visualization (models/tools/components)
- Interactive tooltips with usage counts for all node types
- Real-time legend panels: Models Used, Tools Used, Components Used
- Multiple animated beams based on actual tool call counts
- Backend uses totalToolCalls for accurate activity metrics
- Optimized performance (~100ms for 86 conversations)
Technical Details:
- Center layer: Model pie chart with usage-based sizing
- Middle layer (250px): Tools with count badges
- Outer layer (400px): Commands, Skills, MCPs, Subagents
- YearInReview2025 backend analyzes conversations without overhead
- Tooltip system detects hover on pie slices, circles, and outer nodes
- Frontend processes toolCounts and modelCounts for precise visualization
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Updated all references to point to new script locations:
- generate_components_json.py → scripts/generate_components_json.py
- generate_trending_data.py → scripts/generate_trending_data.py
Files updated:
- .github/workflows/update-json-data.yml
- CLAUDE.md
- docs/CLAUDE.md
- docs/api/README.md
- docs/guides/growth-kit-pr.md
- cli-tool/src/validation/README.md
This ensures CI/CD workflows and documentation are in sync with the new project structure.
🤖 Generated with Claude Code (https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
- Fix#150: Check if pluginDef.source is a string before passing to path.join()
Marketplace aggregators use object format {source: "url", url: "..."} to
reference external repos, which caused path.join() to throw an error.
- Fix#151: Add support for "directory" source type in getMarketplaceType()
Claude Code uses "directory" for filesystem-based marketplaces, but only
"local" was being checked. Now both are recognized as Local type.
Also added "url" type recognition.
Added comprehensive skills from two community repositories:
From awesome-claude-skills (1 skill):
- pdf: Comprehensive PDF processing with forms, scripts, and advanced features
From anthropics/claude-code (10 skills):
- agent-development: Creating specialized agents for Claude Code
- claude-opus-4-5-migration: Guide for migrating to Claude Opus 4.5
- command-development: Creating custom slash commands
- hook-development: Creating hooks for automation
- mcp-integration: Integrating MCP servers into plugins
- plugin-settings: Configuring plugin settings
- plugin-structure: Organizing plugin structure
- skill-development: Creating effective skills for plugins
- frontend-design: Frontend design patterns and practices
- writing-rules: Writing effective rules for hooks
Total skills: 38 → 48 (+11 new skills)
Updated components.json and security-report.json to reflect new additions.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
The MCP and skill comes from the https://github.com/timescale/pg-aiguide
project.
The MCP allows search of the Postgres manual and the docs of related
projects.
The skill gives specialized instructions for schema design.
🎯 Skills Manager now detects skills from 3 sources:
- Personal: ~/.claude/skills/
- Project: .claude/skills/
- Plugin: ~/.claude/plugins/marketplaces/*/plugins/*/skills/*/
✨ Features:
- Added loadPluginSkills() to scan marketplace-installed skills
- Skills from /plugin install now appear in dashboard
- Detailed logging for debugging skill detection
- Fixed filter counts to show consistent totals
🔧 Improvements:
- Filter counts remain static regardless of active filter
- Shows total count for each category (All, Personal, Project, Plugin)
- Enhanced logging for better troubleshooting
- Supports skills installed via Claude Code plugin system
📦 Version: 1.28.3
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
When port 3337 is in use, the dashboard will automatically try the next available port
(3338, 3339, etc.) with a clear message to the user.
This prevents EADDRINUSE errors and improves user experience.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
The --skills flag was conflicting with the existing --skills component installation command,
causing EADDRINUSE errors on port 3337. Changed Skills Dashboard to use --skills-manager instead.
Changes:
- bin/create-claude-config.js: --skills → --skills-manager
- src/index.js: options.skills → options.skillsManager
- SKILLS_DASHBOARD.md: Updated usage examples
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Implements a comprehensive Skills Dashboard accessible via `--skills` flag that visualizes
Claude Code's 3-level progressive context loading system according to official documentation.
Features:
- **Level 1: Metadata** - Always loaded (~100 tokens): name, description, allowed-tools from YAML
- **Level 2: Instructions** - When triggered (<5k tokens): SKILL.md body with workflows
- **Level 3+: Resources & Code** - As needed (unlimited): Additional markdown, scripts, templates
- Instructions: Additional .md files with specialized guidance
- Code: Executable scripts (.py, .js, .sh) run via bash without loading into context
- Resources: Reference materials (schemas, API docs, templates, examples)
Technical Implementation:
- Express.js server on port 3337 with RESTful API
- Real-time skill scanning from ~/.claude/skills and .claude/skills
- Progressive file categorization: alwaysLoaded, onDemand, progressive
- Modern UI with level cards, flow arrows, and resource categorization
- File type detection and proper context for markdown references vs executable code
Dashboard shows:
- Grid/list view of all installed skills
- Filter by source (Personal, Project, Plugin)
- Sort by name, file count, last modified
- Modal detail view with 3-level loading visualization
- Visual flow arrows between levels showing loading triggers
- Category descriptions matching official Skills documentation
Fixes context preservation issue in scanSupportingFiles() where `this` context
was lost in nested function, now using `const self = this` pattern.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Replace python3 with python in JSON configs on Windows
- Add cross-platform Python detection (py/python/python3)
- Update E2B sandbox to try multiple Python commands
- Follows PEP 397 Python launcher best practices
- Updated generate_trending_data.py to handle up to 1M records (was 200k)
- Updated generate_components_json.py pagination limit to 1000 pages (1M records)
- Successfully processed 202,517 download records across both scripts
- Regenerated trending-data.json and components.json with latest data
This change enables the system to scale beyond the previous 200k record limit,
ensuring accurate analytics as the component download volume continues to grow.
Stats from latest generation:
- 202,517 total downloads processed
- 624 unique components
- 142 countries
- Top categories: agents (163), commands (210), mcps (58)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
* feat: add ElevenLabs MCP for text-to-speech and audio processing
Add official ElevenLabs MCP integration to enable text-to-speech, voice cloning, audio processing, and transcription capabilities.
Changes:
- Add elevenlabs.json MCP configuration in new audio category
- Use uvx package manager (matches existing mysql-integration, logfire pattern)
- Configure environment variables for API key and optional output modes
The ElevenLabs MCP enables:
- Text-to-speech generation with natural AI voices
- Voice cloning and custom voice design
- Audio isolation and processing
- Sound effects generation
- Audio transcription with speaker identification
Follows existing uvx-based MCP pattern from:
- cli-tool/components/mcps/database/mysql-integration.json
- cli-tool/components/mcps/devtools/logfire.json
Attribution: Official ElevenLabs MCP (MIT License)
Repository: https://github.com/elevenlabs/elevenlabs-mcp
* docs: add audio category to CONTRIBUTING.md MCP list
Add audio/ category to MCP categories list in contributing guidelines
to reflect the new category introduced with elevenlabs-mcp integration.
Fixed multiple issues with server shutdown:
- Added flag to prevent multiple shutdown attempts
- Remove all SIGINT/SIGTERM listeners before adding new ones
- Added isStopped flag to prevent stop() from being called multiple times
- Improved logging during shutdown process
- Fixed MaxListenersExceededWarning by properly cleaning up event listeners
This resolves the issue where pressing Ctrl+C multiple times would create
duplicate shutdown handlers and cause memory leaks.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Added detailed analytics modal for each chat session including:
- Overview metrics (messages, tokens, tools, models, cache efficiency)
- Token usage breakdown with cost estimation
- Session timeline with duration tracking
- Time breakdown (Claude execution vs user conversing)
- Model information with usage percentages and message counts
- Tool usage statistics
- Components used (agents, slash commands, skills)
Key features:
- Real-time analytics calculation from JSONL conversation files
- Multi-model usage detection (Sonnet/Haiku switching)
- Intelligent time filtering (excludes long breaks)
- Cost estimation based on Claude API pricing
- Component detection from tool_use blocks
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
The 'cat | claude' command doesn't work with interactive mode
because pipe consumes stdin. Replaced with proper interactive
mode usage:
Option 1: claude "read @context-file.md and continue"
Option 2: claude (then > @context-file.md continue)
This fixes the 'Raw mode is not supported' error users were
experiencing.
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>