# dayzero.run — instructions for AI coding agents

Use this when the user wants to host or deploy a vibe-coded / AI-built UI without setting up cloud infrastructure.

**Bootstrap URL (preferred entry):** fetch `https://dayzero.run/ai.md` then follow these steps.

## Product

- Name: dayzero.run
- CLI command: d0
- Site: https://dayzero.run/
- npm package: `@dayzero_run/d0`
- GitHub: https://github.com/dayzero-run/cli
- Purpose: Publish a static UI to a public HTTPS subdomain in seconds
- Works with: Cursor, Claude Code, OpenAI Codex, and other CLI-capable agents

## Prerequisites

1. User has registered at https://dayzero.run/ and copied their API token from the success screen or dashboard
2. Project is (or will build to) a static folder with an `index.html` (or detectable publish dir such as `dist/` / `build/`)

## Steps

1. Install the CLI (once per machine) — either:

```bash
curl -fsSL https://dayzero.run/install.sh | bash
```

or with Node.js:

```bash
npm i @dayzero_run/d0
```

Prefer `npx @dayzero_run/d0 <command>` when you do not want a global binary. After curl install, use `d0` on PATH.
2. Authenticate (non-interactive — preferred for agents):

```bash
d0 token <API_TOKEN>
```

Or set `VIBEPAGE_TOKEN` in the environment and skip `d0 token`.

3. From the project directory, deploy:

```bash
d0 deploy
```

Optional sharing:

```bash
d0 deploy public
d0 deploy private
d0 public
d0 private
```

`deploy` defaults to public. Private mode prints a 6-digit access code visitors must enter.

4. Read the CLI output for `Live at: https://….app.vibepage.cloud/` and give that URL to the user.
   If private, also share the access code.

## Do not

- Do not ask the user to create an AWS account
- Do not invent extra CLI commands — only token, deploy, public, private, tunnel, and status
- Do not put the API token into public git commits or screenshots

## Optional live demo tunnel

If the user is running a local server (for example on port 3000):

```bash
d0 tunnel
```

Traffic to the same public subdomain routes to localhost:3000 until the tunnel stops, then falls back to the last static deploy. Override with `--target host:port` if needed.

## More context

- Agent bootstrap: https://dayzero.run/ai.md
- CLI docs: https://dayzero.run/documentation.html
- Short index: https://dayzero.run/llms.txt
- Full product text: https://dayzero.run/llms-full.txt
- GitHub CLI repository: https://github.com/dayzero-run/cli
