Updated README.md and QUICKSTART.md to clearly specify that the GitHub Personal Access Token should be created from the bot account, not the main account. This is the proper security practice for bot authentication.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-authored-by: Claude <noreply@anthropic.com>
BREAKING CHANGE: The /api/claude endpoint has been removed. All Claude API functionality
is now available through the more robust /api/webhooks/claude endpoint.
Migration guide:
- For creating sessions: POST /api/webhooks/claude with type: 'session.create'
- For checking status: POST /api/webhooks/claude with type: 'session.get'
- Sessions now run asynchronously and return immediately with a session ID
Changes:
- Removed src/routes/claude.ts entirely
- Removed related test files (claude.test.ts, claude-simple.test.ts)
- Updated all documentation to use webhook endpoint
- Updated test utilities to use async session API
- Fixed formatting in modified files
The webhook-based approach provides:
- Async session management with immediate response
- Better error handling and recovery
- Session status tracking
- Parallel session execution
- Consistent API with other webhook operations
* feat: Implement Claude orchestration provider for parallel session management
- Add ClaudeWebhookProvider implementing the webhook provider interface
- Create orchestration system for running multiple Claude containers in parallel
- Implement smart task decomposition to break complex projects into workstreams
- Add session management with dependency tracking between sessions
- Support multiple execution strategies (parallel, sequential, wait_for_core)
- Create comprehensive test suite for all components
- Add documentation for Claude orchestration API and usage
This enables super-charged Claude capabilities for the MCP hackathon by allowing
multiple Claude instances to work on different aspects of a project simultaneously,
with intelligent coordination and result aggregation.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* feat: Add session management endpoints for MCP integration
- Add SessionHandler for individual session CRUD operations
- Create endpoints: session.create, session.get, session.list, session.start, session.output
- Fix Claude invocation in Docker containers using proper claude chat command
- Add volume mounts for persistent storage across session lifecycle
- Simplify OrchestrationHandler to create single coordination sessions
- Update documentation with comprehensive MCP integration examples
- Add comprehensive unit and integration tests for new endpoints
- Support dependencies and automatic session queuing/starting
This enables Claude Desktop to orchestrate multiple Claude Code sessions via MCP Server tools.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* fix: Update ClaudeWebhookProvider validation for session endpoints
- Make project fields optional for session management operations
- Add validation for session.create requiring session field
- Update tests to match new validation rules
- Fix failing CI tests
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* fix: Use Promise.reject for validation errors in parsePayload
- Convert synchronous throws to Promise.reject for async consistency
- Fixes failing unit tests expecting rejected promises
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* fix: Mock SessionManager in integration tests to avoid Docker calls in CI
- Add SessionManager mock to prevent Docker operations during tests
- Fix claude-webhook.test.ts to use proper test setup and payload structure
- Ensure all integration tests can run without Docker dependency
- Fix payload structure to include 'data' wrapper
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* fix: Mock child_process to prevent Docker calls in CI tests
- Mock execSync and spawn at child_process level to prevent any Docker commands
- This ensures tests work in CI environment without Docker
- Tests now pass both locally and in CI Docker build
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* fix: Address PR review comments and fix linter warnings
- Move @types/uuid to devDependencies
- Replace timestamp+Math.random with crypto.randomUUID() for better uniqueness
- Extract magic number into EXTRA_SESSIONS_COUNT constant
- Update determineStrategy return type to use literal union
- Fix unnecessary optional chaining warnings
- Handle undefined labels in GitHub transformers
- Make TaskDecomposer.decompose synchronous
- Add proper eslint-disable comments for intentional sync methods
- Fix all TypeScript and formatting issues
* fix: Mock SessionManager in integration tests to prevent Docker calls in CI
- Add SessionManager mocks to claude-session.test.ts
- Add SessionManager mocks to claude-webhook.test.ts
- Prevents 500 errors when running tests in CI without Docker
- All integration tests now pass without requiring Docker runtime
* fix: Run only unit tests in Docker builds to avoid Docker-in-Docker issues
- Change test stage to run 'npm run test:unit' instead of 'npm test'
- Skips integration tests that require Docker runtime
- Prevents CI failures in Docker container builds
- Integration tests still run in regular CI workflow
* fix: Use Dockerfile CMD for tests in Docker build CI
- Remove explicit 'npm test' command from docker run
- Let Docker use the CMD defined in Dockerfile (npm run test:unit)
- This ensures consistency and runs only unit tests in Docker builds
---------
Co-authored-by: Claude <noreply@anthropic.com>
- Updated all GitHub URLs and organization references across the codebase
- Updated documentation links to use claude-did-this.com
- Removed self-hosted runner related files as they are no longer used
- Updated test repository references
- Preserved Docker Hub references as requested
Note: .env files and .claude/settings.local.json were also updated but are gitignored
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-authored-by: Claude <noreply@anthropic.com>
* feat: Improve README with prominent quickstart and Discord presence
- Add Discord badge with live member count at top of badges
- Move Quick Start section higher in README for better visibility
- Add prominent link to 10-minute QUICKSTART.md guide
- Update navigation bar with Quick Start Guide as first item
- Include actual Discord and documentation URLs
This makes it easier for new users to get started quickly and join
the community for support.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* fix: Simplify Quick Start to use .env file approach
- Replace confusing docker run command with cleaner .env file setup
- Align README Quick Start with QUICKSTART.md approach
- Fix port inconsistency (8082 -> 3002) throughout README
- Make the 4-step process clearer and more concise
The .env file approach is much easier for users than passing
multiple environment variables to docker run.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
---------
Co-authored-by: Claude <noreply@anthropic.com>
* fix: merge entrypoint scripts and fix auto-tagging tool permissions
- Merged duplicate claudecode-entrypoint.sh and claudecode-tagging-entrypoint.sh scripts
- Added dynamic tool selection based on OPERATION_TYPE environment variable
- Fixed auto-tagging permissions to include required Bash(gh:*) commands
- Removed 95% code duplication between entrypoint scripts
- Simplified claudeService.ts to use unified entrypoint
- Auto-tagging now uses: Read,GitHub,Bash(gh issue edit:*),Bash(gh issue view:*),Bash(gh label list:*)
- General operations continue to use full tool set
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* fix: update Dockerfile to use unified entrypoint script
- Remove references to deleted claudecode-tagging-entrypoint.sh
- Update build process to use single unified entrypoint script
* fix: remove unnecessary async from promisify mock to fix lint error
* feat: add Husky pre-commit hooks with Prettier as primary formatter
- Added Husky for Git pre-commit hooks
- Configured eslint-config-prettier to avoid ESLint/Prettier conflicts
- Prettier handles all formatting, ESLint handles code quality only
- Pre-commit hooks: Prettier format, ESLint check, TypeScript check
- Updated documentation with pre-commit hook setup
- All code quality issues resolved
* feat: consolidate workflows and fix permission issues with clean Docker runners
- Replace 3 complex workflows with 2 lean ones (pull-request.yml, main.yml)
- Add Docker runner configuration for clean, isolated builds
- Remove file permission hacks - use ephemeral containers instead
- Split workload: GitHub-hosted for tests/security, self-hosted for Docker builds
- Add comprehensive pre-commit configuration for security
- Update documentation to be more pragmatic
- Fix credential file permissions and security audit
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* fix: allow Husky prepare script to fail in production builds
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* fix: update CI badge to reference new main.yml workflow
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
---------
Co-authored-by: Claude <noreply@anthropic.com>
Replace non-existent 'claude login' with proper 'claude --dangerously-skip-permissions' command. This command authenticates and allows for unattended runs.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Unified documentation approach with single source of truth:
**Consolidated into main README.md:**
- All three authentication methods (Setup Container, API Key, AWS Bedrock)
- Quick setup instructions with links to detailed guides
- Clear indication of which method to use for different scenarios
**Removed docs/README.md:**
- Eliminated duplication between root and docs README
- Keep docs/ only for deeper technical guides when needed
**Updated structure:**
- Main README: Complete setup and quick start information
- docs/: Technical deep-dive guides only (setup-container-guide.md, etc.)
- Clear documentation hierarchy in main README
This provides a better user experience with the main README as the
authoritative getting-started guide, and docs/ for detailed technical
implementation when users need deeper information.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Update workflow to use intelligenceassist/claude-hub instead of claude-github-webhook
- Update all README references to use new image name
- Update Docker Hub documentation with correct image names and links
- Add dynamic version and Docker Hub badges to README
- Include Docker pull and run commands for easy quickstart
- Update package.json version to 0.1.0
- Provide both Docker image and source installation options
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Replace incorrect @Claude mentions with @YourBotName examples
- Add "Bot Account Setup" section explaining current requirements
- Clarify users need to create their own bot account vs universal bot
- Update environment variable examples to show proper bot username format
- Add note about planned GitHub App release for future universal bot
- Explain GitHub App compatibility with self-hosted instances
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Enhanced description to emphasize end-to-end autonomous workflows
- Added new section highlighting autonomous workflow capabilities including:
- Complete feature implementation from requirements to deployment
- Intelligent PR management with automated merging
- CI/CD integration with build monitoring and failure response
- Multi-hour operation support with task completion guarantee
- Updated example commands to show more complex autonomous tasks
- Enhanced architecture diagrams to reflect autonomous request flow
- Updated container lifecycle to show iterative development process
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Remove token parameter from codecov badge URL since claude-hub is now a public repository.
The badge now uses the standard public codecov URL format.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Fix clone URL from yourusername/claude-github-webhook to intelligence-assist/claude-hub
- Fix issues URL to point to correct repository
- Update directory name in clone instructions to match repository name
- Added brain_factory.png to new assets/ directory
- Updated README to reference image in assets folder
- Maintains proper project structure with dedicated assets location
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Complete rewrite focused on technical users and immediate value
- Added brain factory header image with descriptive alt text
- Improved accessibility with proper heading structure and emoji placement
- Streamlined content with focus on architecture and performance
- Clear examples and quick start instructions
- Enhanced troubleshooting and monitoring sections
- Better link text for screen reader compatibility
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Remove Node.js 18.x from PR workflow test matrix
- Update README.md to require Node.js 20+ instead of 16+
- Add engines field to package.json specifying Node.js >=20.0.0
- Fix linting issues (unused import and indentation)
This addresses the compatibility issue with @octokit/rest v22.0.0
which dropped support for Node.js 18, simplifying our CI/CD pipeline
and ensuring consistent Node.js version requirements.
Resolves#68🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
This commit should NOT trigger Docker builds since only README changed.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Replace placeholder 'your-org/claude-github-webhook' with actual repository 'intelligence-assist/claude-hub'
- Fix broken CI Pipeline and Security Scans badges in README
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Document the automated PR review system triggered by check_suite events
- Explain Combined Status API validation to prevent duplicate reviews
- Detail the comprehensive review process and focus areas
- Add supported webhook events section
- Clarify configuration requirements
Addresses documentation suggestions from PR #31 review.
- Add GitHub Actions workflows for CI, security scanning, and deployment
- Implement automated PR review system triggered by successful check suites
- Add ESLint and Prettier for code quality and formatting
- Configure Dependabot for automated dependency updates
- Add comprehensive test coverage for check suite webhook events
- Include Docker builds and container registry publishing
- Add security scanning with CodeQL, npm audit, and TruffleHog
- Create PR and issue templates for better collaboration
- Add comprehensive CI/CD documentation
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
This commit reorganizes all scripts in the repository into a more structured directory layout for better maintainability:
- Categorizes scripts by functionality (setup, build, aws, runtime, security, utils)
- Organizes test scripts into logical categories
- Consolidates redundant scripts with unified interfaces
- Adds backward compatibility wrappers
- Adds detailed SCRIPTS.md documentation
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>