
Foxl Code is now in private beta at code.foxl.ai. It runs a fleet of Claude Code instances on AWS Bedrock AgentCore, managed by an orchestrator that plans work, spawns coding agents, and monitors their progress - all triggered from a single chat prompt.
What it does
You describe what you want done. The orchestrator breaks it into subtasks, opens GitHub Issues, spins up coding agents on isolated cloud VMs, and streams their terminal output back to you in real time. Each agent has its own PTY - you see the same color-coded output you'd see in your own terminal.
When an agent finishes, it pushes a branch and opens a PR. If it gets stuck or wants your input, it pauses in "review" state. You can resume it with one click, and it picks up exactly where it left off - same container, same git state.
Autonomous loop
The new autonomous heartbeat means the orchestrator doesn't just fire-and-forget. It checks back on running tasks at a configurable interval (default 5 minutes). If something has progressed - a PR was merged, a test started failing, a review comment landed - it follows up automatically. If nothing happened, it skips the check entirely (no LLM cost for idle users).
You control the loop from Settings: enable/disable, set the check interval, configure quiet hours so it doesn't wake you up at 3am, and set a daily spend cap. The orchestrator respects all of these before making any LLM calls.
Per-task budget enforcement
Every task has a real-time cost meter. The relay tracks cumulative LLM spend per task token-by-token. When a task hits its budget ceiling, the agent stops gracefully - commits what it has and reports back. No surprise charges.
You can set a custom budget before launching a task. The system rejects values below the auto-estimate (so you can't accidentally starve an agent) and audit-logs abnormally high overrides. A per-user multiplier in Settings scales all future estimates up or down without per-task input.
Architecture
The system is three layers:
- Forge gateway (Cloudflare Worker) - auth, tenancy, Durable Objects for per-task state and per-user heartbeat. Handles the SPA's API surface and GitHub webhook ingestion.
- Orchestrator (AWS Bedrock AgentCore, Docker) - the "brain" that runs Strands SDK with a tool set for spawning agents, reading their screens, and managing GitHub issues/PRs.
- Coding agents (AWS Bedrock AgentCore, Docker) - each one runs Claude Code CLI inside a node-pty. Bidirectional I/O: the orchestrator can read their screen and send input.
Pro and Ultra users route LLM traffic through the relay (relay.foxl.ai) so every token is metered against the shared credit pool. Enterprise routes directly to Bedrock from the VM - data never leaves the customer's AWS account.
Security model
Multi-tenancy is enforced at every layer:
- Per-task JWTs are minted by the gateway and scoped to one user, one task, one model, and one budget ceiling. The relay verifies all four claims before forwarding to Bedrock.
- GitHub installation tokens are minted on-demand and embedded in the AgentCore payload. The gateway verifies the caller is a member of the installation AND that the target repo is in that installation's scope (SEC-001).
- Session storage gives each task its own physically isolated container. No shared filesystem between users.
- The autonomous heartbeat mints its own short-lived JWT per tick - never reuses a stale token from a previous session.
What's next
Foxl Code is in private beta. If you want access, sign up at code.foxl.ai and we'll add you to the allowlist. We're working on GitHub Runner integration (self-hosted fleet for CI), the Strands SDK Graph pattern for multi-agent coordination, and richer task document planning.
For the full changelog, see foxl.ai/changelog.