AX's control plane exposes four Kubernetes-style declarative primitives, defined under the ax.io/v1alpha1 API group. Task defines the execution lifecycle, sandbox resource constraints, and references to supporting infrastructure; Workspace handles environment assembly before execution, and can declaratively mount Git repositories, configure MCP servers, install skill packages, or provide a natural-language goal for an initialization agent to execute in order to bootstrap toolchains and system dependencies; Gateway manages outbound network security policies, restricting sandboxed agents to an explicit allowlist of hostnames and ports, and handles injecting credentials into outbound requests; Model provides a unified control point for LLM provider parameters, runtime configuration, and secrets stored in Kubernetes.
According to a breakdown by X platform user meng shao, the implementation consists of four binaries plus Redis: ax is the developer CLI, ax-server is the stateless gRPC API, ax-controller is the reconciliation loop, and ax-task-runner is PID 1 inside each task container. The post also states that each task container uses ax-task-runner as PID 1, starts a metadata service (port 80, HTTP/1.1+h2c, exposing /healthz, /readyz, and task and workspace introspection endpoints), initializes the workspace in binding order, then forks spec.command and continuously supervises it; after the command exits, the runner remains resident, so ax ssh and the metadata service remain available after the command ends. Shutdown uses a two-stage strategy of SIGTERM plus a 10-second grace period followed by a hard kill.
These implementation details come from secondhand retelling and lack item-by-item correspondence with first-party documentation, so they should be treated as source claims. One of the more product-imaginative layers is the so-called generative workspace: writing just one natural-language goal (for example, "set up a Python 3 development environment"), on first startup the runner dispatches a bootstrap agent (Antigravity, requires GEMINI_API_KEY, default time limit 10 minutes) to actually install the toolchain and verify dependencies, and after being declared once it can be reused by any task. Again, this is a capability described by the source, not an independently verified conclusion.