fastapi-local-dev — скилл для Claude Code: запуск FastAPI в dev и prod
Скилл-справочник по запуску FastAPI: Uvicorn с автоперезагрузкой для разработки, Gunicorn с UvicornWorker для продакшена.
npx skills add bobmatnyc/claude-mpm-skills --skill fastapi-local-dev -a claude-codeЧто делает fastapi-local-dev
Скилл даёт готовые команды для двух режимов. В разработке — uvicorn app.main:app --reload. В продакшене — gunicorn app.main:app -k uvicorn.workers.UvicornWorker -w <n> --bind :8000, где <n> вы подставляете сами.
Отдельный пункт про импорты: запускать из корня репозитория, через python -m uvicorn ... или с PYTHONPATH=.. Если работаете в WSL и перезагрузка не ловит изменения, скилл советует выставить WATCHFILES_FORCE_POLLING=true.
Есть раздел с антипаттернами. Два названы прямо: сочетание --reload с --workers больше одного и watch: true в PM2 для Python. Это повод проверить свои скрипты запуска, если вы держите FastAPI под PM2.
Какие задачи решает
- запустить FastAPI локально с автоперезагрузкой
- поднять продакшен-сервер на Gunicorn с UvicornWorker
- починить импорты при запуске из корня репозитория
- заставить автоперезагрузку работать в WSL
- убрать конфликтующие флаги из команды запуска
Примеры запросов агенту
- Как правильно запустить FastAPI в dev-режиме?
- Собери команду для продакшена на Gunicorn с UvicornWorker
- Автоперезагрузка не видит изменения в WSL — что делать?
Как установить fastapi-local-dev
1Через Skills CLI (Vercel)
npx skills add bobmatnyc/claude-mpm-skills --skill fastapi-local-dev -a claude-code2Вручную: положить файлы
~/.claude/skills/fastapi-local-dev/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/fastapi-local-dev/
1Через Skills CLI (Vercel)
npx skills add bobmatnyc/claude-mpm-skills --skill fastapi-local-dev -a codex2Вручную: положить файлы
.agents/skills/fastapi-local-dev/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add bobmatnyc/claude-mpm-skills --skill fastapi-local-dev -a cursor2Вручную: положить файлы
.cursor/skills/fastapi-local-dev/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install bobmatnyc/claude-mpm-skills fastapi-local-dev2Вручную: положить файлы
.github/skills/fastapi-local-dev/SKILL.md1Через Skills CLI (Vercel)
npx skills add bobmatnyc/claude-mpm-skills --skill fastapi-local-dev -a gemini-cli2Командой платформы
gemini skills install https://github.com/bobmatnyc/claude-mpm-skills --path toolchains/python/frameworks/fastapi-local-devВручную: положить файлы
.devin/skills/fastapi-local-dev/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add bobmatnyc/claude-mpm-skills --skill fastapi-local-dev -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о fastapi-local-dev
Как установить fastapi-local-dev в Claude?
Выполните npx skills add bobmatnyc/claude-mpm-skills --skill fastapi-local-dev -a claude-code. После этого файл скилла лежит в ~/.claude/skills/fastapi-local-dev/SKILL.md.
Что делает fastapi-local-dev?
Это справочник по запуску FastAPI: dev-режим на Uvicorn с --reload, prod на Gunicorn с UvicornWorker, плюс заметки про импорты, WSL и антипаттерны.
Почему нельзя ставить --reload вместе с несколькими воркерами?
Скилл относит это к антипаттернам: --reload --workers > 1 он не рекомендует. Для продакшена берётся Gunicorn с UvicornWorker и нужным числом воркеров.
Исходный текст
SKILL.md · MIT
---
name: fastapi-local-dev
description: FastAPI dev/prod runbook (Uvicorn reload, Gunicorn)
user-invocable: false
disable-model-invocation: true
version: 1.1.0
category: toolchain
author: Claude MPM Team
license: MIT
progressive_disclosure:
entry_point:
summary: "FastAPI dev: Uvicorn reload; prod: Gunicorn+UvicornWorker"
tags: [python, fastapi]
---
# FastAPI Local Dev
- Dev: `uvicorn app.main:app --reload`
- Imports: run from repo root; use `python -m uvicorn ...` or `PYTHONPATH=.`
- WSL: `WATCHFILES_FORCE_POLLING=true` if reload misses changes
- Prod: `gunicorn app.main:app -k uvicorn.workers.UvicornWorker -w <n> --bind :8000`
Anti-patterns:
- `--reload --workers > 1`
- PM2 `watch: true` for Python
References: `references/`.
© Claude MPM Team · MIT · bobmatnyc/claude-mpm-skills