スキル一覧に戻る
zircote

python-project-skel

by zircote

Claude Code dotfiles: agents, skills, commands & includes for AI-assisted development. Features domain-specific agents (backend, frontend, DevOps, security, data/ML), custom slash commands, and Opus 4.5 optimizations.

5🍴 1📅 2026年1月23日
GitHubで見るManusで実行

SKILL.md


name: python-project-skel description: Generate production-ready Python project skeletons with Astral UV package manager, Hatchling build backend with dynamic versioning, and modern tooling (ruff, mypy, pytest, bandit). Use when creating new Python projects, initializing Python packages, setting up src-layout projects, scaffolding Python libraries, or starting a new Python application. Supports Python 3.14+ by default with configurable version. Output to current directory, specified path, or tarball.

Python Project Skeleton Generator

Creates production-ready Python project structures following modern best practices.

Quick Start

Generate a project in the current directory:

Project name: my-awesome-project

The skill prompts for required info and generates a complete project structure.

Configuration Options

OptionDefaultDescription
Project name(required)Kebab-case name (e.g., my-project)
Package name(derived)Snake_case from project name
Python version3.14Minimum Python version
LicenseMITLicense type
Author name(optional)For pyproject.toml
Author email(optional)For pyproject.toml
Description(optional)Project description
Output modecwdcwd, path, or tarball

Generated Structure

{project-name}/
├── pyproject.toml          # Full config with all tools
├── README.md
├── LICENSE
├── Makefile                # UV-based dev targets
├── src/{package_name}/
│   ├── __init__.py         # With __version__ = "0.1.0"
│   ├── py.typed            # PEP 561 marker
│   └── main.py             # Entry point stub
└── tests/
    ├── __init__.py
    ├── conftest.py         # pytest fixtures
    └── test_main.py        # Example test

Included Tool Configurations

pyproject.toml sections:

  • [build-system] - Hatchling backend
  • [project] - Dynamic version, classifiers, URLs
  • [project.optional-dependencies] - dev group
  • [dependency-groups] - UV compatibility
  • [tool.hatch.version] - Points to __init__.py
  • [tool.ruff] - Format + lint (E, W, F, I, B, C4, UP, ARG, SIM)
  • [tool.mypy] - Strict configuration
  • [tool.pytest] - Native TOML (pytest 9.0+)
  • [tool.coverage] - 80% threshold
  • [tool.bandit] - Security scanning

Makefile targets:

  • help - Categorized target list
  • install, install-dev - UV-based installation
  • test, test-cov, coverage - Testing variants
  • lint, typecheck, security - Quality tools
  • format, format-check - Ruff formatting
  • quality - All checks combined
  • build, clean - Package building

Output Modes

  1. cwd (default) - Create project in current working directory
  2. path - Create at specified absolute or relative path
  3. tarball - Create .tar.gz archive (useful for distribution)

Usage

Run the generator script:

python scripts/generate_project.py \
    --name my-project \
    --python-version 3.14 \
    --output-mode cwd

Or invoke interactively - the skill will prompt for required values.

Post-Generation Steps

After generation:

cd {project-name}
uv sync                    # Install dependencies
make test                  # Run tests
make quality               # Run all quality checks

Customization

The generated project is a starting point. Common modifications:

  • Add dependencies to [project.dependencies]
  • Adjust tool configs in pyproject.toml
  • Add additional test files
  • Extend Makefile with project-specific targets

スコア

総合スコア

60/100

リポジトリの品質指標に基づく評価

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

0/10
説明文

100文字以上の説明がある

+10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

レビュー

💬

レビュー機能は近日公開予定です