A collection of Agent Skills for designing FastAPI backends in Python using Domain-Driven Design (DDD) and Onion Architecture patterns.
This skill is based on the reference implementation:
| Skill | Description |
|---|---|
python-fastapi-ddd-skill |
Architecture + core DDD patterns (Entities, Value Objects, Repositories, UseCases) |
python-fastapi-ddd-presentation-skill |
FastAPI handlers, Pydantic schemas, error mapping |
python-fastapi-ddd-testing-skill |
pytest patterns for Domain / UseCase layers |
python-fastapi-ddd-tooling-skill |
uv / ruff / mypy / pytest / CI templates |
Register this repository as a plugin marketplace, then install:
# 1. Register the marketplace
/plugin marketplace add iktakahiro/python-fastapi-ddd-skill
# 2. Install all skills at once
/plugin install python-fastapi-ddd@python-fastapi-ddd-skillsOr browse and install interactively:
/plugin
# → "Browse and install plugins"
# → "python-fastapi-ddd-skills"
# → "python-fastapi-ddd"
# → "Install now"python3 ~/.codex/skills/.system/skill-installer/scripts/install-skill-from-github.py \
--repo iktakahiro/python-fastapi-ddd-skill \
--path skills/python-fastapi-ddd-skillInstall the other skills by changing --path to one of:
skills/python-fastapi-ddd-presentation-skillskills/python-fastapi-ddd-testing-skillskills/python-fastapi-ddd-tooling-skill
Then restart Codex to pick up the new skill.
dest="${CODEX_HOME:-$HOME/.codex}/skills"
mkdir -p "$dest"
cp -R skills/python-fastapi-ddd-skill "$dest/"You can also copy any of:
skills/python-fastapi-ddd-presentation-skillskills/python-fastapi-ddd-testing-skillskills/python-fastapi-ddd-tooling-skill
Then restart Codex to pick up the new skill.
Once installed, mention the skill in your prompt:
Design a FastAPI + SQLAlchemy service with DDD and Onion Architecture.
Implement FastAPI handlers/schemas that call UseCases and map Domain errors to HTTP responses.
Add pytest unit tests for Value Objects and UseCases (mocking repository interfaces).
Set up uv + Makefile + ruff/mypy/pytest + GitHub Actions CI for this project.
Apache-2.0