# Srtd CLI

> This skill should be used when the user mentions "srtd", "sql templates", "migrations-templates", "live reload sql", "supabase functions", when working with files in supabase/migrations-templates/, when .buildlog.json or srtd.config.json is detected, or when writing Postgres functions/views/triggers for Supabase. Use when this capability is needed.

- Skill: `tomevault-io/srtd-cli` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add tomevault-io/srtd-cli`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tomevault-io/srtd-cli/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Data & Analytics
- Author: tomevault-io (https://skillmd.com/u/tomevault-io)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tomevault-io/srtd-cli

---


# SRTD - Iterative SQL Template Development

## Workflow

Start watch in background immediately:
```bash
srtd watch --json
```
Use `run_in_background: true`. Monitor with `TaskOutput` for events: `templateApplied` (success), `templateError` (check `errorMessage`/`errorHint`).

## Templates

Location: `supabase/migrations-templates/*.sql`. Must be idempotent.

**Idempotency patterns:**
- Functions/Views: `CREATE OR REPLACE` (use `DROP` only when changing signature)
- Policies: `DROP POLICY IF EXISTS` then `CREATE POLICY` (not replaceable)
- Triggers: Drop BOTH trigger AND function first

**Dependencies:** `-- @depends-on: other.sql` at top

**WIP:** `.wip.sql` suffix → applies locally, never builds

## Commands

```bash
srtd apply [--force] [--json]   # Apply to local DB (use instead of watch for one-off)
srtd build [--bundle]           # Generate migration FILES only (does NOT apply to DB)
srtd clear --reset              # Reset state if confused
```

## State

- `.buildlog.json` → commit (tracks built migrations)
- `.buildlog.local.json` → gitignored (local DB state)

---
> Converted and distributed by [TomeVault](https://tomevault.io/claim/t1mmen) — claim your Tome and manage your conversions.
<!-- tomevault:4.0:skill_md:2026-04-11 -->

