Compare commits

..

3 Commits

Author SHA1 Message Date
Cheffromspace
67f89758ed Update README.md
Signed-off-by: Cheffromspace <jonflatt@gmail.com>
2025-06-03 20:05:07 -05:00
Cheffromspace
be941b2149 feat: Implement Claude orchestration with session management (#176)
* feat: Implement Claude orchestration with session management

- Add CLAUDE_WEBHOOK_SECRET for webhook authentication
- Fix Docker volume mounting for Claude credentials
- Capture Claude's internal session ID from stream-json output
- Update entrypoint script to support OUTPUT_FORMAT=stream-json
- Fix environment variable naming (REPOSITORY -> REPO_FULL_NAME)
- Enable parallel session execution with proper authentication
- Successfully tested creating PRs via orchestrated sessions

This enables the webhook to create and manage Claude Code sessions that can:
- Clone repositories
- Create feature branches
- Implement code changes
- Commit and push changes
- Create pull requests

All while capturing Claude's internal session ID for potential resumption.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* fix: Update SessionManager tests for new implementation

- Update test to expect docker volume create instead of docker create
- Add unref() method to mock process objects to fix test environment error
- Update spawn expectations to match new docker run implementation
- Fix tests for both startSession and queueSession methods

Tests now pass in CI environment.

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-06-03 19:59:55 -05:00
Cheffromspace
a423786200 docs: Clarify that GitHub PAT should be from bot account (#175)
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>
2025-06-03 19:15:47 -05:00
2 changed files with 5 additions and 12 deletions

View File

@@ -11,8 +11,8 @@ Get Claude responding to your GitHub issues in minutes using Cloudflare Tunnel.
## Step 1: Create a GitHub Bot Account
1. Sign out of GitHub and create a new account for your bot (e.g., `YourProjectBot`)
2. In your main account, create a [Personal Access Token](https://github.com/settings/tokens) with `repo` and `write` permissions
3. Add the bot account as a collaborator to your repositories
2. Sign in to your bot account and create a [Personal Access Token](https://github.com/settings/tokens) with `repo` and `write` permissions
3. Add the bot account as a collaborator to your repositories from your main account
## Step 2: Clone and Configure
@@ -29,7 +29,7 @@ nano .env
```
Required values:
- `GITHUB_TOKEN`: Your GitHub Personal Access Token
- `GITHUB_TOKEN`: Your bot account's GitHub Personal Access Token
- `GITHUB_WEBHOOK_SECRET`: Generate with `openssl rand -hex 32`
- `BOT_USERNAME`: Your bot's GitHub username (e.g., `@YourProjectBot`)
- `BOT_EMAIL`: Your bot's email

View File

@@ -77,13 +77,6 @@ That's it! Your bot is ready to use. See the **[complete quickstart guide](./QUI
- **Context-aware**: Claude understands your entire repository structure and development patterns
- **Stateless execution**: Each request runs in isolated Docker containers
### Claude Orchestration (NEW) 🎭
- **Parallel Claude Sessions**: Run multiple Claude containers concurrently for complex tasks
- **Smart Task Decomposition**: Automatically breaks down projects into parallel workstreams
- **Dependency Management**: Sessions wait for prerequisites before starting
- **MCP Integration**: Built for the MCP hackathon to showcase super-charged Claude capabilities
- **See [Claude Orchestration Documentation](./docs/claude-orchestration.md) for details**
### Performance Architecture ⚡
- Parallel test execution with strategic runner distribution
- Conditional Docker builds (only when code changes)
@@ -103,7 +96,7 @@ That's it! Your bot is ready to use. See the **[complete quickstart guide](./QUI
**Current Setup**: You need to create your own GitHub bot account:
1. **Create a dedicated GitHub account** for your bot (e.g., `MyProjectBot`)
2. **Generate a Personal Access Token** with repository permissions
2. **Generate a Personal Access Token** from the bot account with repository permissions
3. **Configure the bot username** in your environment variables
4. **Add the bot account** as a collaborator to your repositories
@@ -117,7 +110,7 @@ That's it! Your bot is ready to use. See the **[complete quickstart guide](./QUI
# Core settings
BOT_USERNAME=YourBotName # GitHub bot account username (create your own bot account)
GITHUB_WEBHOOK_SECRET=<generated> # Webhook validation
GITHUB_TOKEN=<fine-grained-pat> # Repository access (from your bot account)
GITHUB_TOKEN=<fine-grained-pat> # Repository access (PAT from your bot account)
# Claude Authentication - Choose ONE method: