Skills

Add Custom Domain

Add a custom domain to a Temps project and provision an automatic SSL/TLS certificate...

Install

npx skills add gotempsh/temps --skill add-custom-domain -g -a claude-code -y
Repository
gotempsh/temps887
Category
DevOps
Updated
3d ago
License
Apache-2.0
Context cost
Lightabout 1,330 tokens
Runs scripts
No, instructions only

What it does

Add a custom domain to a Temps project and provision an automatic SSL/TLS certificate via Let's Encrypt, driven entirely from the `@temps-sdk/cli` CLI. Handles subdomains, apex domains, HTTP-01 and DNS-01 challenges, wildcard domains, and domains served through a Cloudflare Tunnel (no certificate, no open ports). Use when the user wants to: (1) Add a custom domain to their Temps app, (2) Set up HTTPS/SSL for a deployment, (3) Point their own domain at a Temps project, (4) Add a wildcard domain, (5) Configure DNS for Temps, (6) Expose an app on a worker behind NAT through a tunnel. Triggers: "add custom domain", "point my domain at temps", "set up ssl", "https for my app", "wildcard domain", "add domain to project", "cloudflare tunnel", "expose app without open ports".

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):
    bunx @temps-sdk/cli whoami || bunx @temps-sdk/cli login "<instance_url>"
    
  • 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).

First: does a tunnel already cover the domain?

If the apps run on workers with an ingress tunnel (ADR 058), the domain needs no DNS record and no certificate: Temps creates the record and the tunnel's provider serves HTTPS. Check before anything else:

bunx @temps-sdk/cli tunnels list --json
bunx @temps-sdk/cli tunnels explain app.example.com --json

If explain lists a tunnel in candidates (its domain is example.com or a parent of the name):

  1. Attach the name to the environment (step 3 below, same command). Do not create a certificate for it: tunnel traffic reaches Temps as plain HTTP, and a local certificate makes the proxy redirect it to HTTPS.
  2. If the tunnel publishes only chosen names, or several tunnels cover it, route it explicitly:
    bunx @temps-sdk/cli tunnels route app.example.com --tunnel <tunnel-id>
    
  3. Within a minute tunnels explain app.example.com should report published. Its detail says what to fix when it does not (the usual one: no deployed app on a worker serves the name yet).
Read the whole SKILL.md on GitHub

More in DevOps