LogoLaunchSaaS

Agent Skills

LaunchSaaS ships an agent skill with commands to scaffold, iterate, and customize apps in the monorepo

LaunchSaaS ships an agent skill — a set of commands that encode this monorepo's conventions (template structure, capability wiring, i18n, schema reuse) so the agent makes contextually correct edits instead of guessing.

The skill lives at .agents/skills/launchsaas/ and is the primary interface for building on LaunchSaaS with an AI agent.

How to Invoke

Call a command with /launchsaas <command> <args>:

/launchsaas create AI writing tool for marketers
/launchsaas new-feature user notifications with read-marking
/launchsaas doctor

Run /launchsaas with no command to print the command list.

Commands

CommandArgsPurpose
create<description> [--ref <url>]Copy the best-fit template into a new app + write a next-step checklist. Copy-only.
new-page<description>Add an App Router route page or UI surface. Use content for MDX content.
new-feature<description>Full-stack feature: DB table (if needed) + service + API + UI.
rebrand[app]Update name, tagline, logo/favicon/og assets, i18n strings, SEO, marketing homepage.
add-capability<type> [provider]Wire a capability (payment/email/storage/cache/newsletter/cron) into an app.
auth<subcommand> [args]Better Auth workflows: OAuth providers, captcha, magic link, email/password, 2FA, passkeys.
integration<type> [provider]Configure app integrations that are not capabilities or auth features (analytics/live-chat).
content<subcommand> [args]Add MDX content: blog posts, docs pages, changelog entries, static pages.
add-email<description>Add a transactional email template (enum + switch case + i18n fan-out).
prune<module> [app]Safely remove an unused template module. Destructive — needs a clean git tree.
add-locale<locale> [app]Add a language to an existing app.
doctor[app]Config health check: flag capabilities that resolve to null.

Examples

/launchsaas create AI tool directory --ref https://theresanaiforthat.com
/launchsaas new-page dashboard analytics page
/launchsaas rebrand launchsaas
/launchsaas add-capability email resend
/launchsaas add-capability cron qstash
/launchsaas auth add-provider google
/launchsaas auth add-captcha cloudflare-turnstile
/launchsaas integration analytics plausible
/launchsaas content add-page "privacy policy"
/launchsaas content add-doc "API rate limits"
/launchsaas add-email trial expiring reminder
/launchsaas prune blog
/launchsaas add-locale fr
/launchsaas doctor

Typical Lifecycle

Building a new product usually flows through the commands in this order:

  1. create — scaffold from the closest template. This is copy-only; it hands you a checklist rather than a fully wired app.
  2. Commit the scaffold — all follow-up commands check for a clean git tree. Commit now so they don't block you: git add apps/<slug> package.json && git commit -m "feat: scaffold <slug>"
  3. rebrand — make it yours: name, logo, favicon, OG image, marketing homepage.
  4. add-capability / auth / integration — turn on the providers and services you need (payments, email, social login, captcha, analytics, live chat). Each finishes with a setup checklist.
  5. new-feature / new-page / content — build your product's unique UI surfaces and MDX content.
  6. prune — drop template modules you don't use (e.g. blog, docs).
  7. doctor — verify env, auth, and capability wiring before you ship.

create never edits src/capabilities.ts or src/env.ts. Capability wiring is delegated to add-capability so you never end up in a half-configured state where code references a provider whose env and dashboard resources don't exist.

Safety Model

  • Archive before mutating. Every command that edits existing files checks git status first and asks you to commit or stash if the tree is dirty.
  • prune is destructive and requires a clean tree (or explicit override), so a removal is always reversible with git stash pop.
  • Scoped writes. Commands stay inside the target app plus root workspace metadata; they won't silently change shared packages/* or other apps.
  • Docs stay in sync. Commands that touch a code surface in the Documentation Sync table also update its paired doc page.

Resources