Refactor high-complexity React components in Dify frontend. Use when `pnpm analyze-component...
npx skills add jiatastic/open-python-skills --skill "pydantic"
Install specific skill from multi-skill repository
# Description
>
# SKILL.md
name: pydantic
description: >
Pydantic models and validation. Use when: (1) Defining schemas,
(2) Validating input/output, (3) Generating JSON schema.
pydantic
Type-driven validation and serialization using Pydantic models.
Overview
Pydantic validates data using Python type hints and provides rich serialization via model_dump() and JSON schema output.
When to Use
- Validating request/response payloads
- Normalizing untrusted input
- Generating JSON schema for docs
Quick Start
uv pip install pydantic
from pydantic import BaseModel
class User(BaseModel):
id: int
email: str
user = User(id=1, email="[email protected]")
Core Patterns
- Typed fields: strict schema definitions.
- Field validators: custom validation logic.
- Model validators: cross-field checks.
- Serialization:
model_dump()andmodel_dump_json(). - Settings: environment-driven config via
BaseSettings.
Example: field_validator
from pydantic import BaseModel, field_validator
class Model(BaseModel):
name: str
@field_validator("name")
@classmethod
def ensure_not_empty(cls, v: str):
if not v:
raise ValueError("name required")
return v
Example: model_validate + model_dump
from pydantic import BaseModel
class Model(BaseModel):
foo: int
model = Model.model_validate({"foo": 1})
print(model.model_dump())
Troubleshooting
- Coercion surprises: use strict types if needed
- Slow validators: keep them minimal
- Mutable defaults: use
default_factory
References
- https://docs.pydantic.dev/
# Supported AI Coding Agents
This skill is compatible with the SKILL.md standard and works with all major AI coding agents:
Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.