What problem does it solve? Working in a SQLModel-based FastAPI project, it's easy to introduce a second, inconsistent style: mixing up .exec() with .execute(), forgetting await on session calls, or collapsing table models and API schemas into one type. This Skill encodes the project's exact conventions so new models, queries, and session code match the existing data layer. ## Core Features & Use Cases - Table Model Conventions: Shows how to define SQLModel classes with table=True, Field(...) options, and primary keys matching the project's models.py. - Async Session Patterns: Documents the engine/session setup in db.py, the get_session() dependency, and the full read/write cycle with session.exec(), get(), commit(), and refresh(). - Gotcha Prevention: Explains the missing-await coroutine trap, the .exec() vs .execute() mismatch, and Alembic model-import visibility for autogenerate. - Use Case: When adding a new widgets table, follow the included guide to define the model, create separate WidgetCreate/WidgetRead Pydantic schemas, write CRUD queries, and hand off to Alembic for the migration. ## Quick Start Ask the AI to add a new SQLModel table model with its CRUD queries following this project's conventions.