# Add Custom Domain

> |

- **Type:** Skill
- **Install:** `agentstack add skill-gotempsh-temps-add-custom-domain`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [gotempsh](https://agentstack.voostack.com/s/gotempsh)
- **Installs:** 0
- **Category:** [Cloud & Infrastructure](https://agentstack.voostack.com/c/cloud-infrastructure)
- **Latest version:** 0.1.0
- **License:** Apache-2.0
- **Upstream author:** [gotempsh](https://github.com/gotempsh)
- **Source:** https://github.com/gotempsh/temps/tree/main/skills/add-custom-domain
- **Website:** https://temps.sh/docs

## Install

```sh
agentstack add skill-gotempsh-temps-add-custom-domain
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Add a Custom Domain

Add a custom domain to a Temps project and get automatic HTTPS. This skill drives
the whole flow from the CLI; the human equivalent is **Project → Domains → Add Domain**
in the dashboard.

## When to use

The user wants their own domain (e.g. `app.example.com`) serving a Temps project,
with an SSL certificate, instead of the auto-assigned subdomain.

## Prerequisites

- The Temps CLI is authenticated. Verify, and log in to the user's instance if needed
  (`login` is a top-level command; the instance URL is the positional argument):
  ```bash
  bunx @temps-sdk/cli whoami || bunx @temps-sdk/cli login ""
  ```
- The user knows the **domain** to add and which **project** it belongs to.
- The user can edit DNS for the domain (or has a DNS provider connected in Temps
  for DNS-01 / wildcard).

## Steps

1. **Identify the project.** If the user gave a name but not an ID, list projects
   and resolve it:
   ```bash
   bunx @temps-sdk/cli projects list --json
   ```
   Note the numeric `id` of the target project. Use it as `` below.

2. **Create the DNS record** at the user's DNS provider so the domain points at
   the Temps server. Tell the user exactly what to add (you cannot create this for
   them unless a DNS provider is connected in Temps):
   - **Subdomain** (`app.example.com`): `A` record, name `app`, value = the
     server's public IP. A `CNAME` to the server hostname also works.
   - **Apex** (`example.com`): `A` record, name `@`, value = the server's IP.
     (CNAMEs are not allowed at the zone root.)
   - If the user is on **Cloudflare**, have them set the record to **DNS only**
     (grey cloud) during issuance so Temps' Let's Encrypt challenge isn't proxied.

3. **Add the domain to the project.** Default is the HTTP-01 challenge, handled
   automatically:
   ```bash
   bunx @temps-sdk/cli custom-domains create --project-id  -d app.example.com -y
   ```
   - **Apex + Cloudflare/another provider connected, or port 80 not reachable:**
     use DNS-01 instead (see Wildcard below) — confirm a DNS provider is connected
     in **Settings → DNS Providers** first.

4. **Wildcard domains** (`*.example.com`) require DNS-01 and a connected DNS
   provider. Confirm the provider is connected, then add the wildcard the same way:
   ```bash
   bunx @temps-sdk/cli custom-domains create --project-id  -d "*.example.com" -y
   ```
   Temps creates the `_acme-challenge` TXT record automatically via the provider.

## Verify

```bash
bunx @temps-sdk/cli custom-domains list --project-id 
```

The domain should progress to **active** once DNS propagates and the certificate
is issued (usually under a minute for HTTP-01). You can confirm DNS independently:

```bash
dig +short app.example.com A
```

If the domain stays pending: verify the DNS record resolves to the server, that
port 80 is reachable (HTTP-01), and — on Cloudflare — that the proxy is off during
issuance. Certificates renew automatically ~30 days before expiry.

## Related

- Dashboard path: **Project → Domains → Add Domain**
- Doc: https://temps.sh/docs/add-a-custom-domain
- CLI group: `bunx @temps-sdk/cli custom-domains --help`
- Full CLI reference: the `temps-cli` skill covers all 440+ `bunx @temps-sdk/cli`
  commands.

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [gotempsh](https://github.com/gotempsh)
- **Source:** [gotempsh/temps](https://github.com/gotempsh/temps)
- **License:** Apache-2.0
- **Homepage:** https://temps.sh/docs

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-gotempsh-temps-add-custom-domain
- Seller: https://agentstack.voostack.com/s/gotempsh
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
