with one click
sql
SQL queries and schemas. NOT for ORM-only code (use go, py, ts, or rs).
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
SQL queries and schemas. NOT for ORM-only code (use go, py, ts, or rs).
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
Development wisdom and workflow rules. NOT for project-specific conventions (those live in CLAUDE.md, edit via wisdom).
The `BUGS.md` open-issues queue — entry format, lifecycle, pruning to diary. NOT for the record-don't-fix policy (that's CLAUDE.md Bug Triage Protocol), NOT for resolved-bug history (use /diary), NOT for feature backlog (use TODO.md/specs).
Terminal demo GIF + MP4 recordings for READMEs and social (asciinema + agg + ffmpeg). NOT for general Makefile targets (use software) or GUI screenshots (use visual).
Go development. NOT for non-Go code (use rs, py, ts, tsx, or sh).
Humanize text: strip AI-isms and add real voice. NOT for drafting new copy (use writing).
Python development. NOT for shell scripting (use sh) or non-Python code.
| name | sql |
| description | SQL queries and schemas. NOT for ORM-only code (use go, py, ts, or rs). |
| when_to_use | editing .sql files or writing SQL queries |
Requires the software skill's code.md for shared naming, style, and design
rules. Below are SQL-specific additions.
MAX(rtime) max_rtimeJOIN ... USING (col) not ON a.col = b.col when same-namedWHERE x IN (SELECT ...) subqueriesWHERE enabled not WHERE enabled = trueON CONFLICT ... DO UPDATE SET each assignment on new lineRETURNING on its own line# single-line clauses
'SELECT tenant_id'
' FROM subscriptions'
' WHERE expires_at > NOW()'
# multi-line clauses
'SELECT'
' tenant_id,'
' COALESCE(SUM(max_slots), 0) total'
' FROM subscriptions'
' WHERE expires_at > NOW()'
' GROUP BY tenant_id'
select, insert, update, deleteupdate does upsert when logic requires itget_or_create)$1, $2 for simple queries (1-3 params), sql() helper for dicts/insertsDO $migration$ BEGIN ... END; $migration$; with version check_param suffix, locals: _var suffixformat() with %I (identifiers), %s (values)