# What is Shelley?


Shelley is a coding agent. It is web-based, works on mobile, and, when you
start an `exe.dev` VM with the default `exeuntu` image, it is running on port
9999, and you can access it securely at `https://vmname.shelley.exe.xyz/`.

You can ask Shelley to install software (e.g., run a Marimo notebook on port
8000), build a web site, browse the web, and anything in between. That said,
you don't have to use Shelley if you don't want to. Other coding agents run
just fine on `exe.dev` VMs and some are pre-installed on our default image.
If you want, disable it with `sudo systemctl disable --now shelley.service`.

By default, Shelley uses the [LLM Gateway](/docs/shelley/llm-gateway) so you
don't need to configure any API keys. You can "bring your own key" to Shelley,
and use it with your favorite provider.

## Repo buttons

Add a `repo` query parameter to `https://exe.dev/new` to spin up a VM,
open Shelley, clone the repo, and prefill the deploy instructions:

`/new?repo=https://github.com/OWNER/REPO`

Shelley will use repo instructions like `AGENTS.md` when available.

Public repos can add our buttons to their `README.md`:

```markdown
[![Deploy on exe.dev](https://raw.githubusercontent.com/boldsoftware/exe.dev/main/assets/buttons/deploy-on-exe-dev.png)](https://exe.dev/new?repo=https://github.com/OWNER/REPO)

[![Build with Shelley](https://raw.githubusercontent.com/boldsoftware/exe.dev/main/assets/buttons/build-with-shelley.png)](https://exe.dev/new?repo=https://github.com/OWNER/REPO)
```

Shelley is so named because the main tool it uses is the shell, and I like
putting "-ey" at the end of words. It is also named after Percy Bysshe Shelley,
with an appropriately ironic nod at
"[Ozymandias](https://www.poetryfoundation.org/poems/46565/ozymandias)."
Shelley is a computer program, and, it's an it.
