Agent-Builder: The Meta-Agent That Writes, Tests, and Ships Other Agents
Describe an agent. Get a live URL. Agent-Builder is the meta-agent inside A2A Cloud that scaffolds, writes, sandboxes, deploys, and verifies new agents — powered by DeepAgents and the platform's own runtime.
Agent-Builder: The Meta-Agent That Writes, Tests, and Ships Other Agents
The most ambitious agent on A2A Cloud is the one that builds other agents.
Agent-Builder takes a natural-language description and returns a live, deployed, callable agent. Not a code snippet. Not a draft. A running service at a public URL. And it does that by being an A2A agent itself — written in the same A2A Pack contract, deployed through the same pipeline, running in the same Knative runtime as everything else on the platform.
This is agents-all-the-way-down done right.
The One Skill That Does Everything
Agent-Builder is an A2AAgent with exactly one public skill: build. Pass it a name and a prompt. Stand back.
build(name="weather-bot", prompt="Tell me the weather for any city")What happens next is a real DeepAgents loop. Not a script. Not a template renderer. An agent that thinks, writes code, runs that code, fixes it, and ships it.
The outer A2AAgent surface wraps an inner DeepAgents graph created with create_deep_agent(). The graph gets the user prompt, plus access to a curated set of tools and skill bundles. Then it runs.
Skills That Make It Smart
Five skill bundles teach the builder how to build:
deepagent-agent-design— architecture patterns for the agents it will writea2apack-agent-authoring— the A2A class shape, card shape, manifest shapedeepagents-implementation-patterns— tool/subagent/skill wiringworkspace-artifact-safety— don't write past the grant, don't ship secretsagent-quality-review— pre-deploy validation
These live at BUILDER_SKILL_SOURCE = "/.agent-builder/skills/" and get mounted into the workspace at runtime. The builder consults them as it works. The skills are the playbook.
This is the DeepAgents pattern: don't bake knowledge into prompts. Put it in a directory the agent can read, file-by-file, as needed.
The Build Loop
The LLM doesn't get to YOLO files. It works through tools. Here's the order:
- `init_agent_template(name, ...)` — scaffold a clean A2A Pack project in the workspace.
- `write_agent_file(...)` — write
agent.py,a2a.yaml,requirements.txt, optional frontend, optional skill bundles. The builder reads back what it wrote, reviews the file tree, patches as needed. - `test_agent_in_sandbox(name)` — bundle the workspace into a gzip tarball, POST to the sandbox runtime, install
a2a-pack, install requirements, runa2a card. If it fails, the builder reads the error and fixes the code. - `cp_deploy_tarball(name, version, public)` — tarball the verified source, POST to the control plane's
/v1/agents/from-tarballwith the user'scp_jwt. - `_wait_for_live_card(...)` — poll
/.well-known/agent-cardevery 2s with exponential backoff (capped 10s, 900s timeout) until the deployed version matches.
When step 5 returns, the agent is actually live and callable. Not "upload accepted." Not "build queued." Live.
Testing In The Same Sandbox Everyone Else Uses
This is the elegant part. The builder doesn't have a special test rig. It uses the same microsandbox layer every other agent uses.
test_agent_in_sandbox() POSTs the project tarball to the sandbox runtime, which boots a libkrun microVM, mounts a workspace, runs pip install, runs a2a card. The output — exit code, stdout, stderr — streams back. The builder reads it. If a2a card fails because of a syntax error or missing import or bad type hint, the builder patches the file and tries again.
The builder eats its own dogfood. Every generated agent passes the same gate every developer-written agent passes.
Upload, GitOps, Done
When the sandbox test succeeds, cp_deploy_tarball() ships the source up. The control plane:
- Creates or updates the managed Gitea repo for this agent.
- Commits the source as the user.
- Wires the ArgoCD application.
- Records deployment events.
- Lets the normal build-and-rollout pipeline take over.
The builder then polls the live card. It doesn't claim success until the runtime confirms the new version is serving. Honest delivery.
What Knative Sees
The agent-builder itself is a Knative service. Its deploy manifest:
- Image:
registry.a2acloud.io/agents/agent-builder:<sha> - Port: 8000
- Max concurrency: 1 (one build at a time per pod)
- Timeout: 1200s
- Resources: 200m CPU request / 1 CPU limit, 512Mi / 1Gi memory
- Env:
SANDBOX_URL,SANDBOX_TIMEOUT_S=1200,DEPLOY_WAIT_TIMEOUT_S=900,A2A_CP_URL
It scales to zero when idle. Boots cold when called. Builds an agent. Hands back a URL. Goes back to sleep.
A meta-agent that costs nothing while it isn't working.
Why The Architecture Is Beautiful
Look at what this composition gives you:
- The builder is an agent. It uses
ctx.workspaceto write source files,ctx.sandboxto test them,ctx.cp_jwtto deploy them, andctx.llmto think. - The agents it builds use the same exact contract.
- The runtime is the same for both — microVM-isolated, grant-scoped, GitOps-tracked.
- The deployment path is the same. The builder doesn't have a privileged shortcut. It uploads tarballs to the same endpoint every other agent uses.
That's not luck. That's an architecture where the platform's primitives are powerful enough that the platform's own tools can be built from them. Composability all the way through.
Most agent platforms ship code generators that bypass their own infrastructure. A2A Cloud's code generator uses its own infrastructure. That's the test.
What This Means For The Future
Agent-builder is the proof point. Once you can describe an agent and get a real one back, the marketplace becomes generative.
- Builders ship agent ideas in minutes, not days.
- Operators can fork, customize, and re-deploy agents.
- Buyers can request agents for specific tasks.
- The platform learns from every build — which patterns work, which fail, which need new skills.
This is the loop that makes the agent economy *scale*. Not "hire ten engineers to build ten agents." Describe ten agents. Get ten agents. Iterate.
The Direction
Agent-builder is the *current* meta-agent. The architecture invites more:
- A reviewer agent that audits other agents before deploy.
- A patcher agent that diagnoses failing live agents and ships fixes.
- A composer agent that wires existing agents into multi-agent workflows.
- A migrator agent that ports agents between SDK versions.
All of them: agents calling the same platform primitives, deploying through the same GitOps path, isolated in the same microVMs, governed by the same grants.
This is what a platform built for agents looks like. Not a chatbot wrapper. Not a function-calling library. An operating system where agents build agents that build agents — safely, repeatably, and at scale.
A2A Cloud isn't talking about that future. It's the live runtime.