* feat: Add simplified quickstart guide and minimal env configuration
- Add QUICKSTART.md with streamlined setup instructions
- Create .env.quickstart with only essential configuration variables
- Focus on getting users running quickly with Cloudflare Tunnel
- Add Discord and documentation badges for community support
- Update .gitignore to include .env.quickstart
The quickstart guide provides a clear path from zero to running webhook
in approximately 15 minutes, using Claude Max subscription authentication
via the interactive setup script.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* fix: Exclude .env.quickstart from credential audit false positives
The .env.quickstart file is a template with placeholder values and should not be flagged as a security issue during credential audits.
* fix: Update Discord server ID from placeholder to actual ID
Replace the placeholder Discord server ID (1234567890) with the actual
server ID (1313320949214814228) in the Discord badge. This fixes the
issue identified in PR #157 review where the badge was showing a
placeholder value.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* fix: Update Discord server ID and add missing EOF newline
- Update Discord server ID to correct value (1377708770209304676)
- Add missing newline at end of .env.quickstart for POSIX compliance
- Addresses PR #157 review comments
---------
Co-authored-by: Claude <noreply@anthropic.com>
* feat: Improve Claude authentication setup experience
- Replace 'claude login' with 'claude --dangerously-skip-permissions'
- Fix path references from /auth-output to actual authentication location
- Simplify user instructions to be more accessible
- Add automatic authentication execution (no manual typing required)
- Add comprehensive validation for authentication success
- Check file existence, size, and timestamp
- Provide clear error messages for different failure scenarios
- Remove deprecated setup-claude-auth.sh script
- Update CLAUDE.md to reference correct build script path
- Exclude todos directory from authentication capture
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* remove self-hosted runners from ci
---------
Co-authored-by: Claude <noreply@anthropic.com>
This comprehensive update adds support for Claude Max subscription authentication
and improves the overall authentication system with multiple methods:
🔐 Claude Authentication Enhancements:
- Add setup container method for Claude Max/20x subscription usage ($20-200/month)
- Create interactive authentication script (setup-claude-interactive.sh)
- Add authentication testing utility (test-claude-auth.sh)
- Support three authentication methods: Setup Container, API Key, AWS Bedrock
- Comprehensive authentication documentation
📁 Directory Configuration:
- Add CLAUDE_HUB_DIR environment variable (default: ~/.claude-hub)
- Update .gitignore to use .claude-hub/ instead of hardcoded paths
- Consistent environment variable usage across all scripts
🐙 GitHub Token Support:
- Add fine-grained GitHub token support (github_pat_) alongside classic tokens (ghp_)
- Update token validation in claudeService and githubService
- Enhanced token detection and authentication flow
📖 Documentation & Guides:
- Add complete Claude Authentication Guide with all three methods
- Add Setup Container Deep Dive documentation
- Update CLAUDE.md with quick start authentication section
- Comprehensive cost comparison and use case recommendations
🐳 Container & Docker Improvements:
- Update Dockerfile.claudecode with proper entrypoint script copying
- Add Dockerfile.claude-setup for interactive authentication
- Update docker-compose.yml with new port (3003) and environment variables
- Enhanced container volume mounting for authentication
🔧 Infrastructure Updates:
- Add TRUST_PROXY configuration for reverse proxy environments
- Update port configuration from 3002 to 3003
- Enhanced environment variable documentation in .env.example
- Debug utilities for troubleshooting authentication issues
This update enables Claude Max subscribers to use their existing subscriptions
for automation, potentially saving thousands in API costs while maintaining
full production capabilities.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Remove unused benchmark-startup.sh script
- Remove redundant run-claudecode-interactive.sh wrapper
- Remove test-claude.sh and test-container.sh (functionality covered by e2e tests)
- Remove volume-test.sh (basic functionality covered by e2e tests)
- Update docs/SCRIPTS.md to reflect actual repository state
- Remove benchmark_results from .gitignore
These scripts were either not referenced anywhere in the codebase or
their functionality has been migrated to JavaScript E2E tests as noted
in test/MIGRATION_NOTICE.md.
Fixes#139🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add comprehensive tests for index.ts (91.93% coverage)
- Add tests for routes/claude.ts (91.66% coverage)
- Add tests for routes/github.ts (100% coverage)
- Add tests for utils/startup-metrics.ts (100% coverage)
- Add tests for utils/sanitize.ts with actual exported functions
- Add tests for routes/chatbot.js
- Update test configuration to exclude test files from TypeScript build
- Fix linting issues in test files
- Install @types/supertest for TypeScript test support
- Update .gitignore to exclude compiled TypeScript test artifacts
Overall test coverage improved from ~65% to 76.5%
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Remove backup Dockerfile and temporary benchmark results
- Organize scripts and documentation into proper directories
- Update CLAUDE.md to reference actual script locations instead of wrappers
- Enhance .gitignore to prevent future root directory clutter
- Move utilities to appropriate locations (cli/, test/, docs/)
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Remove package-lock.json from .gitignore to enable npm ci in CI/CD
- Ensures consistent dependency versions across environments
- Fixes CI pipeline dependency installation step
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>