Acropolis for agents
How a coding agent uses Acropolis, the experimental app-to-image builder, through its CLI, its docs as Markdown, and Olimpia's MCP server when deploying on Olimpia.
Acropolis is an experimental builder that turns an app’s source code into an OCI image with no Dockerfile and no daemon. It is a single Rust binary, acropolis, for Linux x86_64 and arm64: it detects the language and framework, downloads verified toolchains and dependencies, compiles, and assembles the image. It is the opt-in builder behind Olimpia.
How an agent uses it
Acropolis has no MCP server and no published skill package. An agent uses it in three ways:
- The CLI, with machine-readable output.
acropolis plan --jsonprints the build plan as JSON,acropolis --events json buildwrites one JSON event per stderr line,--info FILEwrites a JSON summary, and the exit code says whether to retry, fall back or fix the app. See Tools. - These docs, as Markdown.
/llms.txt,/llms-full.txt,/skill.mdand.mdon any page. See Connect. - Olimpia’s MCP server, when the app runs on Olimpia. Olimpia builds with Acropolis when an app’s builder is set to
acropolis, and an agent connected to Olimpia’s MCP server can set it. See Build on Olimpia.
What an agent can do
| task | how |
|---|---|
| Check whether an app can be built, and how | acropolis plan ./app --json (no root) |
| Build an image to a tar or a registry | acropolis --events json build ./app --oci image.tar --info info.json or -t REF |
| Decide what to do after a failure | Exit code, or errorClass and exitCode in info.json |
| Fix detection | acropolis.json or -e ACROPOLIS_* variables, then plan again |
| Keep caches on an ephemeral machine | acropolis cache import and export |
| Inspect a base image | acropolis inspect node:22-bookworm-slim |
| Build on Olimpia with Acropolis | Olimpia MCP: update_app with builder: "acropolis", then deploy |
The step-by-step sequences are in Workflows, copyable requests in Prompts, and what is safe to run in Security.