{"id":"d2580519-47d8-46e6-a051-e03f06f0b839","shortId":"fbtGZL","kind":"skill","title":"pydantic-models-py","tagline":"Create Pydantic models following the multi-model pattern for clean API contracts.","description":"# Pydantic Models\n\nCreate Pydantic models following the multi-model pattern for clean API contracts.\n\n## Quick Start\n\nCopy the template from assets/template.py and replace placeholders:\n- `{{ResourceName}}` → PascalCase name (e.g., `Project`)\n- `{{resource_name}}` → snake_case name (e.g., `project`)\n\n## Multi-Model Pattern\n\n| Model | Purpose |\n|-------|---------|\n| `Base` | Common fields shared across models |\n| `Create` | Request body for creation (required fields) |\n| `Update` | Request body for updates (all optional) |\n| `Response` | API response with all fields |\n| `InDB` | Database document with `doc_type` |\n\n## camelCase Aliases\n\n```python\nclass MyModel(BaseModel):\n    workspace_id: str = Field(..., alias=\"workspaceId\")\n    created_at: datetime = Field(..., alias=\"createdAt\")\n    \n    class Config:\n        populate_by_name = True  # Accept both snake_case and camelCase\n```\n\n## Optional Update Fields\n\n```python\nclass MyUpdate(BaseModel):\n    \"\"\"All fields optional for PATCH requests.\"\"\"\n    name: Optional[str] = Field(None, min_length=1)\n    description: Optional[str] = None\n```\n\n## Database Document\n\n```python\nclass MyInDB(MyResponse):\n    \"\"\"Adds doc_type for Cosmos DB queries.\"\"\"\n    doc_type: str = \"my_resource\"\n```\n\n## Integration Steps\n\n1. Create models in `src/backend/app/models/`\n2. Export from `src/backend/app/models/__init__.py`\n3. Add corresponding TypeScript types\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n\n## Limitations\n- Use this skill only when the task clearly matches the scope described above.\n- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.\n- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.","tags":["pydantic","models","antigravity","awesome","skills","sickn33","agent-skills","agentic-skills","ai-agent-skills","ai-agents","ai-coding","ai-workflows"],"capabilities":["skill","source-sickn33","skill-pydantic-models-py","topic-agent-skills","topic-agentic-skills","topic-ai-agent-skills","topic-ai-agents","topic-ai-coding","topic-ai-workflows","topic-antigravity","topic-antigravity-skills","topic-claude-code","topic-claude-code-skills","topic-codex-cli","topic-codex-skills"],"categories":["antigravity-awesome-skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/sickn33/antigravity-awesome-skills/pydantic-models-py","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add sickn33/antigravity-awesome-skills","source_repo":"https://github.com/sickn33/antigravity-awesome-skills","install_from":"skills.sh"}},"qualityScore":"0.700","qualityRationale":"deterministic score 0.70 from registry signals: · indexed on github topic:agent-skills · 34616 github stars · SKILL.md body (1,825 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-04-23T00:51:26.845Z","embedding":null,"createdAt":"2026-04-18T21:43:03.028Z","updatedAt":"2026-04-23T00:51:26.845Z","lastSeenAt":"2026-04-23T00:51:26.845Z","tsv":"'1':143,168 '2':173 '3':177 'accept':117 'across':65 'action':194 'add':154,178 'alia':103,109 'alias':94 'api':16,31,82 'applic':188 'ask':232 'assets/template.py':39 'base':61 'basemodel':98,129 'bodi':69,76 'boundari':240 'camelcas':93,122 'case':51,120 'clarif':234 'class':96,111,127,151 'clean':15,30 'clear':207 'common':62 'config':112 'contract':17,32 'copi':35 'correspond':179 'cosmos':158 'creat':5,20,67,105,169 'createdat':110 'creation':71 'criteria':243 'databas':88,148 'datetim':107 'db':159 'describ':195,211 'descript':144 'doc':91,155,161 'document':89,149 'e.g':46,53 'environ':223 'environment-specif':222 'execut':190 'expert':228 'export':174 'field':63,73,86,102,108,125,131,139 'follow':8,23 'id':100 'indb':87 'input':237 'integr':166 'length':142 'limit':199 'match':208 'min':141 'miss':245 'model':3,7,12,19,22,27,57,59,66,170 'multi':11,26,56 'multi-model':10,25,55 'myindb':152 'mymodel':97 'myrespons':153 'myupdat':128 'name':45,49,52,115,136 'none':140,147 'option':80,123,132,137,145 'output':217 'overview':198 'pascalcas':44 'patch':134 'pattern':13,28,58 'permiss':238 'placehold':42 'popul':113 'project':47,54 'purpos':60 'py':4 'pydant':2,6,18,21 'pydantic-models-pi':1 'python':95,126,150 'queri':160 'quick':33 'replac':41 'request':68,75,135 'requir':72,236 'resourc':48,165 'resourcenam':43 'respons':81,83 'review':229 'safeti':239 'scope':210 'share':64 'skill':186,202 'skill-pydantic-models-py' 'snake':50,119 'source-sickn33' 'specif':224 'src/backend/app/models':172 'src/backend/app/models/__init__.py':176 'start':34 'step':167 'stop':230 'str':101,138,146,163 'substitut':220 'success':242 'task':206 'templat':37 'test':226 'topic-agent-skills' 'topic-agentic-skills' 'topic-ai-agent-skills' 'topic-ai-agents' 'topic-ai-coding' 'topic-ai-workflows' 'topic-antigravity' 'topic-antigravity-skills' 'topic-claude-code' 'topic-claude-code-skills' 'topic-codex-cli' 'topic-codex-skills' 'treat':215 'true':116 'type':92,156,162,181 'typescript':180 'updat':74,78,124 'use':184,200 'valid':225 'workflow':192 'workspac':99 'workspaceid':104","prices":[{"id":"d5437b66-2ec3-443f-bb00-09fd48b0ce1f","listingId":"d2580519-47d8-46e6-a051-e03f06f0b839","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"sickn33","category":"antigravity-awesome-skills","install_from":"skills.sh"},"createdAt":"2026-04-18T21:43:03.028Z"}],"sources":[{"listingId":"d2580519-47d8-46e6-a051-e03f06f0b839","source":"github","sourceId":"sickn33/antigravity-awesome-skills/pydantic-models-py","sourceUrl":"https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/pydantic-models-py","isPrimary":false,"firstSeenAt":"2026-04-18T21:43:03.028Z","lastSeenAt":"2026-04-23T00:51:26.845Z"}],"details":{"listingId":"d2580519-47d8-46e6-a051-e03f06f0b839","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"sickn33","slug":"pydantic-models-py","github":{"repo":"sickn33/antigravity-awesome-skills","stars":34616,"topics":["agent-skills","agentic-skills","ai-agent-skills","ai-agents","ai-coding","ai-workflows","antigravity","antigravity-skills","claude-code","claude-code-skills","codex-cli","codex-skills","cursor","cursor-skills","developer-tools","gemini-cli","gemini-skills","kiro","mcp","skill-library"],"license":"mit","html_url":"https://github.com/sickn33/antigravity-awesome-skills","pushed_at":"2026-04-22T06:40:00Z","description":"Installable GitHub library of 1,400+ agentic skills for Claude Code, Cursor, Codex CLI, Gemini CLI, Antigravity, and more. Includes installer CLI, bundles, workflows, and official/community skill collections.","skill_md_sha":"e821320e06d1a91b311ccbb9161a4609e7c988bc","skill_md_path":"skills/pydantic-models-py/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/pydantic-models-py"},"layout":"multi","source":"github","category":"antigravity-awesome-skills","frontmatter":{"name":"pydantic-models-py","description":"Create Pydantic models following the multi-model pattern for clean API contracts."},"skills_sh_url":"https://skills.sh/sickn33/antigravity-awesome-skills/pydantic-models-py"},"updatedAt":"2026-04-23T00:51:26.845Z"}}