Python Packaging taste — промпт для ChatGPT и Claude.ai: правила
Промпт задаёт агенту набор правил для упаковки Python-проектов: pyproject.toml, src/, uv, Ruff. Пригодится, когда нужно привести новый пакет к одному стилю.
Открыть на GitHubЧто делает Python Packaging taste
Промпт состоит из списка правил с оценками уверенности. Агент получает их как инструкцию и дальше советует по ним: pyproject.toml вместо setup.py, раскладка src/, uv для установок, локфайлов и виртуальных окружений вместо pip и venv вручную.
Сборка идёт через hatchling или другой бэкенд PEP 517, собранные колёса в git не коммитятся. Форматирование и линтинг — Ruff, вместо Black и flake8. Типы проверяются pyright или basedpyright в строгом режиме на публичном API, тесты лежат в tests/ вне src/.
Отдельно прописаны релиз и версии: публикация на PyPI через trusted publishing из GitHub Actions, версия из git-тегов через hatch-vcs или setuptools-scm, twine check на артефактах перед выпуском. Минимальную версию Python нужно указывать явно и тестировать самую старую из поддерживаемых в CI. Это промпт, а не плагин: он ничего не запускает сам, а только направляет ответы модели. В ChatGPT и Claude.ai его вставляют в начало диалога — тогда советы по упаковке не расползутся на десяток разных подходов.
Какие задачи решает
- убрать
setup.pyиз нового пакета и оставить одинpyproject.toml - починить импорты тестов, которые тянут непакованное дерево
- перейти с pip и venv на uv с локфайлом
- заменить Black и flake8 одним Ruff
- настроить публикацию на PyPI без долгоживущих токенов
Примеры запросов агенту
- Собери pyproject.toml для нового пакета по правилам Python Packaging taste
- Проверь мой проект на соответствие этим правилам упаковки и скажи, что переделать
- Как настроить trusted publishing из GitHub Actions на PyPI по этим правилам?
Как установить Python Packaging taste
Как использовать
Вставьте текст в начало диалога или в инструкции проекта
Вручную: положить файлы
.claude/commands/prompts.csv.mdИз того же набора73
Весь набор →Похожие
Рядом в теме «Языки программирования»
Все промпты по теме «Языки программирования» →Вопросы о Python Packaging taste
Как установить Python Packaging taste в ChatGPT?
Отдельной установки нет: это промпт, его копируют и вставляют в начало диалога или в системную инструкцию.
Что делает Python Packaging taste?
Задаёт модели список правил упаковки Python: pyproject.toml, src/, uv, Ruff, pyright, trusted publishing. Дальше агент отвечает по этим правилам.
Чем этот промпт отличается от обычной просьбы настроить пакет?
Он фиксирует конкретные инструменты и раскладку каталогов заранее, поэтому модель не предлагает каждый раз новый набор. У каждого правила указана оценка уверенности.
Исходный текст
prompts.csv · CC0-1.0
# Python Packaging taste - Use `pyproject.toml` as the single source of truth and drop `setup.py` for new packages. Confidence: 0.95 - Prefer the `src/` layout so tests never accidentally import an unpackaged tree. Confidence: 0.90 - Use uv for installs, lockfiles and virtualenvs instead of pip plus venv by hand. Confidence: 0.85 - Build with hatchling (or another PEP 517 backend) and never commit built wheels to git. Confidence: 0.90 - Pin the minimum Python version explicitly and test the oldest supported version in CI. Confidence: 0.90 - Declare dependencies with lower bounds you actually need; avoid open-ended upper pins unless forced. Confidence: 0.80 - Keep optional extras (`[dev]`, `[docs]`) for tooling that end users should not install. Confidence: 0.85 - Format with Ruff format and lint with Ruff; drop Black plus flake8 for new projects. Confidence: 0.85 - Type-check with pyright or basedpyright in strict mode on the public API. Confidence: 0.80 - Test with pytest and keep tests outside `src/` under `tests/`. Confidence: 0.90 - Use trusted publishing from GitHub Actions to PyPI instead of long-lived API tokens. Confidence: 0.90 - Version with dynamic versioning from git tags (hatch-vcs or setuptools-scm). Confidence: 0.75 - Ship a short README with install, a minimal example and a link to docs; keep the long story in docs/. Confidence: 0.90 - Include `py.typed` when you publish typed packages so consumers get inline types. Confidence: 0.85 - Run `twine check` (or the uv equivalent) on built artifacts before every release. Confidence: 0.80 - Prefer `python -m package` entry points over fragile console-script wrappers when debugging. Confidence: 0.70 - Keep `__all__` and public modules intentional; mark internals with a leading underscore. Confidence: 0.80
© f · CC0-1.0 · f/prompts.chat