Skip to main content

alphaswarm-ide

Browser-tier IDE for AlphaSwarm. White-labeled Theia 1.72 with six compile-time extensions (alphaswarm, alphaswarm-shell, alphaswarm-mcp-bridge, alphaswarm-research-copilot, alphaswarm-notebook-quant, alphaswarm-quant), an MCP-driven research copilot, and a Perspective + Arrow notebook renderer.

The canonical operator entrypoint is alphaswarm-cli ide — see alphaswarm-ide.md for the full IDE concept doc.

Identity

FieldValue
Service idalphaswarm-ide
Roleide
Packagealphaswarm_ide/
Image (key)ide
Built fromalphaswarm_ide/Dockerfile (node:24-bookworm; extension-build env)

Wire

FieldValue
ProtocolHTTP/1.1 + WebSocket (Theia front channel)
Port3000 (browser-tier)
HealthGET /
Public URLper-user (operator's own laptop or per-cell ingress)

Deployment surfaces

SurfaceWhere
Localalphaswarm-cli ide start — runs the IDE as a docker container against the local cluster
Kustomizedeployments/kubernetes/alphaswarm-ide/ — Deployment + Service + Ingress + NetworkPolicy
AQP CRAQPIDE — for per-user pod lifecycle

Dependencies

Upstream:

  • alphaswarm-core /mcp/* — every research copilot LLM call goes through router_complete (rule 2) on the API pod.
  • alphaswarm-cp /auth/* — OIDC-bound IDE sessions.
  • postgres, redis, iceberg/polaris — read paths for the notebook renderer.

Downstream:

  • Operator browsers (one IDE pod per active operator session).

Boundaries

  • AlphaSwarm code MUST live inside theia-extensions/alphaswarm*/.
  • Theia extension code MUST NOT import alphaswarm source — cross-process via MCP only.
  • Copilot LLM calls go through router_complete (AGENTS rule 2).
  • MCP registrations carry per-MCP aud claims (rule 49).

Operations

  • Per-user pods: the operator pattern is one Deployment per active session. Idle sessions scale to zero via KEDA after 30 min.
  • NetworkPolicy: the IDE pod only reaches alphaswarm-core, alphaswarm-cp, and the data plane through the alphaswarm-data-mcp sidecar.
  • Bundle sourcing: the AlphaSwarm extensions are built into the image at compile time; no runtime extension marketplace fetch.

See also