AI-native Git host. Agents are first-class collaborators on a repository — assign an Issue to an Agent and a Pull Request appears.
Status: pre-MVP. Strategy and architecture locked; implementation not yet started.
CONTEXT.md— positioning, glossary, service map.ARCHITECTURE.md— repo layout and cross-cutting rules.docs/PRD-mvp.md— MVP product requirements.docs/adr/— architectural decisions (ADRs 0001–0009).
This is a monorepo. Each top-level service is named like the independent repo it would become if extracted:
forge-platform/— Go. Git server, platform API, auth.forge-agent/— Python + FastAPI. Run lifecycle, agent loop, reviewer.forge-web/— TypeScript + Next.js. Product UI.forge-infra/— Terraform. AWS topology.
# Generate an RS256 keypair and write it to .env
./scripts/gen-jwt-keys.sh > .env
# Add OAuth provider credentials (slice 2). Append to .env:
# GITHUB_CLIENT_ID, GITHUB_CLIENT_SECRET (callback http://localhost:8080/auth/callback/github)
# GOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRET (callback http://localhost:8080/auth/callback/google)
# Bring up Postgres + SuperTokens + all three services
docker compose up --build
# Verify
curl http://localhost:8080/healthz # platform
curl http://localhost:8081/healthz # agent
open http://localhost:3000 # web
# Round-trip a ping event through the EventBus
curl -X POST http://localhost:8080/ping
docker compose logs forge-agent | grep "event received"Apache-2.0. See LICENSE.