Forge deploys autonomous Droids that read your issues, write the fix, run your tests, and open the PR. You review code, not context.
@@ src/payments/processor.go:138-156 @@
func (p *Processor) Execute(ctx context.Context) {
- p.mu.Lock()
+ ctx, cancel := context.WithTimeout(ctx, 30*time.Second)
+ defer cancel()
+ p.mu.Lock()
+ defer p.mu.Unlock()
result, err := p.charge(ctx, amount)
- p.mu.Unlock()
if err != nil {
14:32:01 PR #2847 merged into main
14:32:04 CI pipeline triggered
14:33:18 ✓ Build succeeded (74s)
14:33:22 Deploying to staging...
14:34:01 ✓ Health check passed
14:34:05 Promoting to production...
14:34:38 ✓ Live on v2.14.7
12 Droids active across 4 repositories. Last 24 hours.
Forge reads your existing toolchain. Drop a forge.yaml in your repo root and Droids inherit your CI, linter, and deploy pipeline.
repo: acme/api droids: 8 branch_prefix: forge/ auto_merge: false # require human review test_cmd: go test ./... lint_cmd: golangci-lint run
# Install the Forge GitHub App # Droids get scoped access: contents: write # push branches issues: read # read issue context pulls: write # open and update PRs checks: read # verify CI status actions: read # trigger workflows
notifications: slack: channel: #eng-forge events: - pr_opened - pr_merged - test_failure - deploy_complete
# Droids respect your CI config # Override per-droid behavior: ci: provider: github_actions required_checks: - test - lint - security-scan
Free for open source. Teams start at 5 Droids. No seat-based pricing — you pay per merged PR.