skills/init-python/SKILL.md
Set up a modern Python project using uv (package manager) and ruff (linter/formatter). Initializes pyproject.toml with sensible ruff rules, creates a virtual environment, and optionally migrates an existing requirements.txt. Use when starting a new Python project.
npx skillsauth add adeshmukh/claude-skills init-pythonInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Set up a modern Python project with uv + ruff.
$0 — project name. If not provided, default to the current directory name.
uv is installed by running uv --version. If not found, tell the user to install it: curl -LsSf https://astral.sh/uv/install.sh | shpyproject.toml already exists. If it does, stop and inform the user that the project appears to be already initialized.Run:
uv init <project-name>
If $0 is empty, run uv init (uses the current directory name).
If the current directory is not empty and uv init needs to create in-place, use:
uv init .
Read the generated pyproject.toml and add the following ruff configuration sections. Use the Edit tool to append to the file:
[tool.ruff]
line-length = 120
target-version = "py312"
[tool.ruff.lint]
select = ["E", "F", "I", "N", "W", "UP"]
Rule groups explained:
E — pycodestyle errorsF — pyflakesI — isort (import sorting)N — pep8-namingW — pycodestyle warningsUP — pyupgradeCheck if .python-version exists. If not, create it with:
3.12
Check if requirements.txt exists. If it does:
uv add <package>
requirements.txtRun:
uv sync
Then verify the setup:
uv run ruff check .
If ruff reports issues, show them to the user but do not fail — these are pre-existing issues in any migrated code.
Tell the user:
uv add <package>, uv run python main.py)testing
Initialize a git repository in the current (empty) folder with a curated .gitignore. Creates project-specific ignore entries plus community gitignore content for the specified technology types. Use when starting a brand-new project from scratch.
tools
Generate a context-sensitive, self-documenting Makefile by analyzing the current project. Detects languages, frameworks, and tools to select appropriate targets (build, test, lint, deploy, etc.). Presents proposed targets for approval before writing. Use on any project that would benefit from a standardized Makefile.
development
Maintainer-only workflow for handling GitHub Secret Scanning alerts on OpenClaw. Use when Codex needs to triage, redact, clean up, and resolve secret leakage found in issue comments, issue bodies, PR comments, or other GitHub content.
development
Maintainer workflow for OpenClaw releases, prereleases, changelog release notes, and publish validation. Use when Codex needs to prepare or verify stable or beta release steps, align version naming, assemble release notes, check release auth requirements, or validate publish-time commands and artifacts.