Python workflow skills for uv bootstrapping, FastAPI and FastMCP scaffolding, integration work, and pytest setup.
- Overview
- Setup
- Usage
- Development
- Verification
- Release Notes
- License
- Active Skills
- Packaging
- Repository Layout
python-skills is the Python-specific workflow plugin in Gale's skills ecosystem.
This repository is active and currently ships a focused set of Python workflow skills.
This repository is the canonical home for Gale's Python-oriented skill authoring. Root skills/ is the authored surface, and the repo root is also the Codex plugin root through .codex-plugin/plugin.json.
It exists to keep Python-specific workflow guidance in one place without mixing it into the broader general-purpose maintainer layer owned by productivity-skills.
Use the repo-local maintainer environment when you want to inspect, test, or edit this repository:
uv sync --devIf you are trying to contribute changes instead of just consume the shipped skills, use CONTRIBUTING.md for the maintainer workflow.
Use python-skills when the work is specifically about:
- bootstrapping
uv-managed Python projects or workspaces - scaffolding FastAPI services
- scaffolding FastMCP services
- integrating FastAPI and FastMCP in one codebase
- setting up or troubleshooting pytest in
uv-managed repositories
The canonical authored surface is skills/. This repository supports direct skill installation from that shared tree into the standard Codex or Claude skill locations when you want one skill or a small subset instead of the whole packaged plugin.
The Codex plugin root is this repository root. In parent repositories such as socket, marketplace entries should point at the child repo root rather than a second nested packaged copy.
For Codex, keep these surfaces distinct:
- marketplace catalog: a repo marketplace such as
socket/.agents/plugins/marketplace.jsonor a personal marketplace at~/.agents/plugins/marketplace.json - staged plugin directory: this repo root, which is the local plugin payload directory the marketplace entry should point at
- installed plugin cache:
~/.codex/plugins/cache/$MARKETPLACE_NAME/python-skills/local/ - enabled-state config:
~/.codex/config.toml
For Claude-side discovery, this repo keeps the marketplace catalog at .claude-plugin/marketplace.json, which points directly at root skills/.
OpenAI's documented Codex plugin system supports repo marketplaces, personal marketplaces, staged plugin directories, installed plugin caches, and enabled-state config, but it does not provide proper repo-private plugin scoping beyond that marketplace model.
Treat root skills/ as the source of truth for shipped workflow content. Treat .codex-plugin/plugin.json and .claude-plugin/marketplace.json as install-surface metadata and discovery wiring, not as second authored trees.
Keep the public docs, maintainer docs, and packaging metadata aligned in the same pass when the shipped skill surface changes. Use this repository for Python-, uv-, FastAPI-, FastMCP-, and pytest-specific workflow behavior. Use productivity-skills for broader general-purpose maintainer workflows that should stay stack-neutral.
Use CONTRIBUTING.md for the contributor contract, AGENTS.md for durable repo-local guidance, and docs/maintainers/workflow-atlas.md when you need the deeper maintained map of the active repo surface.
Run the repo validation path before landing documentation, metadata, or packaging changes:
uv sync --dev
uv run scripts/validate_repo_metadata.py
uv run pytestUse Git history and GitHub releases to track shipped changes for this repository.
See LICENSE.
bootstrap-python-mcp-servicebootstrap-python-servicebootstrap-uv-python-workspaceintegrate-fastapi-fastmcpuv-pytest-unit-testing
This repository intentionally keeps authored content and plugin metadata separate.
- root
skills/is the canonical authored workflow surface .codex-plugin/plugin.jsondefines the Codex plugin metadata at the repo root.claude-plugin/marketplace.jsoncarries the repo-root Claude marketplace catalog.claude/skillsis a symlink back to the canonical root skill tree
.
├── .claude/
│ └── skills -> ../skills
├── .claude-plugin/
│ └── marketplace.json
├── .codex-plugin/
│ └── plugin.json
├── AGENTS.md
├── CONTRIBUTING.md
├── LICENSE
├── README.md
├── ROADMAP.md
├── docs/
│ └── maintainers/
├── pyproject.toml
├── scripts/
│ └── validate_repo_metadata.py
├── skills/
├── tests/
└── uv.lock