Agent skill

debugging-orm-queries

Converts ORM calls to raw SQL and analyzes query performance. Detects N+1 queries, missing indexes, and other anti-patterns. Use when debugging slow queries, tracing ORM-generated SQL, or optimizing database performance for Sequelize, Prisma, TypeORM (Node.js), GORM, sqlc, sqlx, ent (Go), or SQLAlchemy, Django ORM, Peewee (Python).

Stars 163
Forks 31

Install this agent skill to your Project

npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/data/debugging-orm-queries

SKILL.md

Debugging ORM Queries

References

Language ORMs Reference
Node.js Sequelize, Prisma, TypeORM references/nodejs.md
Go GORM, sqlc, sqlx, ent references/golang.md
Python SQLAlchemy, Django, Peewee references/python.md
Anti-patterns N+1, indexes, pagination references/anti_patterns.md

Scripts

bash
# Pretty-print SQL
python scripts/sql_formatter.py "SELECT..."

# Detect N+1, missing WHERE, duplicates from log file
python scripts/query_analyzer.py queries.log [--json]

# Parse EXPLAIN output (PostgreSQL or MySQL)
psql -c "EXPLAIN ANALYZE ..." | python scripts/explain_parser.py --postgres
mysql -e "EXPLAIN FORMAT=JSON ..." | python scripts/explain_parser.py --mysql

# Node.js request-scoped query tracking (see script for setup)
# Integrates with Sequelize, Prisma, TypeORM

Quick Patterns

Enable logging: Check reference for ORM-specific config (usually logging: true or echo=True)

ORM → SQL: Enable logging, run query, capture output

SQL → ORM: Map clauses to methods:

  • SELECT columns → specify fields/attributes
  • WHEREwhere/filter with operators
  • JOINinclude/preload/prefetch_related
  • ORDER BYorder/orderBy
  • LIMIT/OFFSETlimit/offset or cursor-based

Performance issues: Run query_analyzer.py on logs, check anti_patterns.md for solutions

Didn't find tool you were looking for?

Be as detailed as possible for better results