EPHEMERA
Infra without the Drama

Cloud infrastructure as a living Markdown plan — human-auditable, agent-executable. The plan is the program; the agent is the runtime. You author in plain English; what ships is a Markdown file you can read line-by-line — the same file that runs. Works with any agent you already use.

TL;DR? Just point your agent at this page — they can sort it out.

curl -fsSL https://ephemera.daystra.com/install.sh | sh
Verifies each file by checksum · writes 3 text files, runs no code · see exactly what it installs ↓
One prompt · Infinite galaxies

The toil was never the engineering. It was the friction.

Verification, review, blast radius, rollback — all still here. The state files, the provider binaries, the ceremony — gone.

What you need

Almost nothing — and that's the point.

The contract (EPHEMERA.md) is runtime-neutral; the per-agent adapter is a ~20-line router — the Claude skill, or the AGENTS.md block for Codex / Cursor / Gemini / Antigravity. Switch agents whenever you like; the plans don't change.

Get started

Install writes exactly three text files and runs no code: EPHEMERA.md (the contract your agent follows), EPHEMERA-TEMPLATE.md, and a thin Claude adapter skill. Pick the door that suits your shop — the audited path is the same three curls the fast path runs, by hand.

Inspect first recommended

Download the three files, read them, then they're just in your repo. Nothing was piped to a shell.

curl -fsSL https://ephemera.daystra.com/EPHEMERA.md            -o EPHEMERA.md
curl -fsSL https://ephemera.daystra.com/EPHEMERA-TEMPLATE.md   -o EPHEMERA-TEMPLATE.md
curl -fsSL https://ephemera.daystra.com/skills/claude/SKILL.md \
     --create-dirs -o .claude/skills/ephemera/SKILL.md
# optional: verify against the published manifest
curl -fsSL https://ephemera.daystra.com/SHA256SUMS.txt | shasum -a 256 -c

Fast path curl | sh

The one-liner — and it's not a black box: it reads on the page, prints every file before it lands, and verifies each against SHA256SUMS.txt, aborting on any mismatch.

cd your-project     # or: mkdir my-infra && cd my-infra
curl -fsSL https://ephemera.daystra.com/install.sh | sh
# audited variant — read it, then run it:
curl -fsSL https://ephemera.daystra.com/install.sh -o install.sh
sh install.sh

Point your agent at EPHEMERA.md (Claude's skill is pre-wired; other agents paste the AGENTS.md block), then describe what you want — the agent authors or fetches a plan, you review the file, and it runs:

"I want my contact page to send email."
"stand up a static site on Cloudflare"
verify web.cloudflare.md
take this to AWS

Fetch any ready-made plan directly — curl -fsSL https://ephemera.daystra.com/plans/<stack>.<provider>.md — read it before you run it (that's the whole point), or let the agent author one to your need. Browse them in the tree below.

What the agent can — and can't — do

An agent driving your cloud is the first thing a security reviewer asks about. Here's the honest answer, including the part that isn't finished.

Where do credentials live?
In your machine's keychain, injected at the moment a command fires — never written to the transcript, argv, or shell history. The plan's ledger records a token's name, never its value, and proves it with a negative check.
What can't it do without a human?
Anything irreversible or billable stops at a 🔴 gate for an explicit "go" — a public endpoint's first deploy, a production DNS write, spend past a ceiling, any destructive teardown. The agent proposes; a human releases the brake.
What's the blast radius?
Teardown only removes what that plan created — borrowed and upstream resources are off-limits. Work happens in an isolated copy; landing it is an explicit, reviewed merge, never a silent write.
Can you audit what actually happened?
Every edit and action is snapshotted to Arc, the version-control substrate underneath. The whole run replays from the record alone — nothing an agent claims survives without evidence on disk.
What about a tampered or third-party plan?
Untrusted plans and contributions are quarantined and graded before they're allowed to run or merge — an agent's output is a proposal, not a command. And the installed contract is checksum-verified against SHA256SUMS.txt.
What about scanning, vetting & supply chain?
That requirement didn't move — only the ceremony of running it on someone else's infra did. A plan is plain text you scan, diff, and vet before a line executes, and your existing tooling — hadolint, trivy/scout, SBOMs, your own SAST — runs exactly as before, on your infrastructure. In a world of supply-chain breaches, every opaque third party in your deploy path — downloaded provider binaries, a vendor's CI — is one more surface to trust; this keeps the pipeline yours to audit and internalize. (The docker-build recipe already ships a 16-check image audit.)
Is a fetched plan signed or pinned?
Not yet — and we'd rather say so than pretend. The installed contract is checksummed, but an individual plan you curl is not yet signed or version-pinned, so review the Markdown before you run it (it's a few KB you can read in a sitting — that's the whole design). Plan signing and pinned manifests are on the roadmap.

What's in the box

One file per stack: it describes the desired state, carries the commands, records what it built, verifies itself, and tears itself down. Every plan carries an honest maturity mark — we'd rather you know what's proven than pad the count. Click a plan to preview it here.

proven live — dogfooded end-to-end against real infra dogfooded — exercised live, some branches still partial authored — written to the contract, not yet run for real
ephemera.daystra.com/
├── EPHEMERA.md            the execution contract — agents fetch this
├── EPHEMERA-TEMPLATE.md   author a new plan
├── install.sh             writes 3 files, checksum-verified
├── SHA256SUMS.txt         integrity manifest for the installed contract
├── llms.txt               agent-readable summary
├── catalog.json           intent → bindings (now carries maturity)
├── skills/claude/SKILL.md Claude adapter (install.sh wires it)
├── AGENTS.block.md        Codex · Cursor · Gemini · Antigravity
├── plans/  — golden paths · cloud infra you'd run in production —
│   ├── web.aws.md · web.cloudflare.md · web.gcp.md · web.gcp-firebase.md      static site
│   ├── auth.firebase.md · auth.aws.md      user auth (Firebase · Cognito + credential broker)
│   ├── payments.stripe.md      accept payments — Checkout · webhook · portal
│   ├── task-runner.aws.md · …cloudflare.md  async task API
│   ├── email.resend.md · …cloudflare · …aws · email-routing.cloudflare  transactional email (send) + inbound routing (receive)
│   ├── domain.aws.md · …cloudflare.md     registration + DNS
│   ├── network.aws.md · ecs-cluster · ecs-service  VPC + container platform
│   ├── account.cloudflare.md · service · storage · database · realtime · inference · vector · workflow · cost-guard  CF onboarding + app primitives (R2·D1·DO·AI·Vectorize·Workflows·billing)
│   └── service.aws.md · storage · document-db · data-api · observability · lambda-layer · source-connection · ci-runner  AWS app primitives (Lambda+JWT·S3·DynamoDB·AppSync·alarms·layers·git-OAuth·CI)
├── plans/  — lab · our own workbench (local & experimental — not infra primitives) —
│   └── inference.ollama.md · messaging.slack · agent.local · adversarial-review.multi-model · sdd-fleet.local · archive.local  Ollama · Slack · local agent · multi-model review gate · SDD fleet · media archive
└── recipes/  — golden-path runbooks · compose the plans —
    └── docker-build · cloudflare-traffic-triage · alerts-to-slack · contact-form-site · local-slack-agent · multi-worker-app · releases-page-clerk

Start here

Preview

Click any plan above — it renders here, one at a time. Agents fetch the raw .md at the same URL.

Ephemera meme