# Convex Domains

Point a domain you already own at your Convex app (DNS records, custom-domain attach...

- Repository: https://github.com/openclaw/clawhub (9543 stars)
- Category: Engineering
- License: MIT
- Last updated: 2026-11-01
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add openclaw/clawhub --skill convex-domains -g -a claude-code -y`
Codex: `npx skills add openclaw/clawhub --skill convex-domains -g -a codex -y`
Cursor: `npx skills add openclaw/clawhub --skill convex-domains -g -a cursor -y`
Gemini CLI: `npx skills add openclaw/clawhub --skill convex-domains -g -a gemini-cli -y`

## Description

Point a domain you already own at your Convex app (DNS records, custom-domain attach, auth-origin rebind).

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

<!-- GENERATED from convex-agents content/capabilities/domains.json, do not edit by hand. -->

# Set up a custom domain with your own provider

Walk the user's own registrar through pointing their domain at the Convex app: identify the target (hosting or deployment URL), create the DNS records, attach the custom domain, and rebind the auth origin if the app uses auth.

## Workflow

1. Identify the target: the published site host (for `*.convex.app` static hosting) or the deployment's HTTP actions URL.
2. Detect an ALREADY-AUTHENTICATED DNS CLI for the user's provider and OFFER to create the records automatically: Cloudflare → `flarectl dns create` (note: `wrangler` itself doesn't manage DNS records) or the CF API via their token env; Route53 → `aws route53 change-resource-record-sets`; Google Cloud DNS → `gcloud dns record-sets create`; DigitalOcean → `doctl compute domain records create`; Vercel DNS → `vercel dns add`. Check auth read-only first (`flarectl user info` / `aws sts get-caller-identity` / `doctl account get`); show the exact commands and get a yes before running.
3. If no authed CLI (or the user declines), tell the user exactly which records to create at THEIR registrar: the CNAME (or A/ALIAS at the apex) plus the TXT verification record, with concrete host/value strings, not placeholders.
4. Attach the domain as a Convex custom domain (dashboard or CLI) and wait for verification; note DNS propagation can take minutes to hours. Verify records landed with `dig +short`.
5. If the app uses auth (passkeys/OAuth), rebind the auth origin (SITE_URL / RP_ID / ORIGIN env vars) to the new domain and re-deploy/re-publish.
6. Verify: the domain serves the app over HTTPS, including the apex → www redirect if configured.

## Rules

The rest: https://github.com/openclaw/clawhub/blob/HEAD/.agents/skills/convex-domains/SKILL.md
