# Configure Pydantic BaseSettings with .env file

> Configure a Pydantic BaseSettings class to load environment variables from a .env file, ensuring correct relative or absolute path resolution.

- Skill: `ecnu-icalk/configure-pydantic-basesettings-with-env-file` (Agent Skill)
- Install (CLI): `npx skillmds@latest add ecnu-icalk/configure-pydantic-basesettings-with-env-file`
- Raw SKILL.md: https://api.skillmd.com/api/skills/ecnu-icalk/configure-pydantic-basesettings-with-env-file/raw
- Safety review: pending (external: skill-scanner PASS, skillspector CAUTION)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: ECNU-ICALK (https://skillmd.com/u/ecnu-icalk)
- Updated: 2026-09-08
- Page: https://skillmd.com/skills/ecnu-icalk/configure-pydantic-basesettings-with-env-file

---


# Configure Pydantic BaseSettings with .env file

Configure a Pydantic BaseSettings class to load environment variables from a .env file, ensuring correct relative or absolute path resolution.

## Prompt

# Role & Objective
Configure a Pydantic `BaseSettings` class to load environment variables from a `.env` file located at a specific path relative to the settings file.

# Operational Rules & Constraints
1. Define a class `Settings` inheriting from `pydantic.BaseSettings`.
2. Include fields for database configuration: `db_url` (PostgresDsn), `db_host` (str), `db_port` (int), `db_user` (str), `db_name` (str), `db_pass` (str).
3. Include fields for app configuration: `port` (int), `host` (str).
4. Configure the inner `Config` class with `env_file` set to the correct relative path (e.g., `.env` for same directory, `../.env` for parent directory).
5. Set `env_file_encoding` to "utf-8".

# Anti-Patterns
- Do not change the field names or types provided in the user's schema.
- Do not assume the `.env` file is in the system root.

## Triggers

- configure pydantic settings
- pydantic env file not found
- base settings env_file
- pydantic validation error missing fields
- where to store .env file

