Python is a tool, not a new service — no negotiation.
A floor for Python in data/ML, automation and tooling: uv with a lockfile, ruff and mypy --strict gating the merge, a runtime-validated boundary and basic security. New APIs or services are born in the sanctioned languages.
$ schematize install pythonNon-negotiable floors
Never switched off "to go faster". Full list in the skill.
A tool, not a new backend
A new API or service is born in the sanctioned language list; the one exception, serving a model, is a thin service with no business rules.
uv with a committed uv.lock
uv sync --frozen in CI; without a lock, transitive deps float and works on my machine becomes literal.
ruff and mypy --strict gate the merge
One formatter, noqa always with a code and a reason; strict typing on new code and the boundary validated at runtime with pydantic.
Unsafe execution banned
pickle on external data, eval/exec on input, yaml.load without SafeLoader, subprocess with shell=True and assert as validation are forbidden.
Network timeouts, secrets for security
Every network call has an explicit timeout, and the secrets module, not random, serves anything security-related.
A notebook is not a deliverable
It ships without output, real data or credentials; when it becomes a product, it becomes a module in src/ with tests and types.
Commands
Installed in .claude/commands/. Run /python-help anytime.
/python-ccContext compact: writes the handoff (context + checklist) to the archive and runs /compact./python-claudeCreates or merges the always-on schematize-python CLAUDE.md at the repo root, without overwriting other skills' blocks./python-handoffWrites the context handoff to the archive without compacting: session end or task switch./python-helpLists every command./python-loadForce-loads the whole schematize-python normative body and applies it for the session./python-reviewReviews .py/.ipynb against the floor: runs the gate and ruff, and reads what the machine cannot.For AI agents
Install with no human in the loop. Metadata in llms.txt.
- Run: git clone https://github.com/schematizeme/skill-python.git && ./skill-python/install.sh
- Or download https://github.com/schematizeme/skill-python/releases/latest/download/skill-python.zip and unzip into .claude/skills/.
- Copy assets/CLAUDE.md to the repo root (always-on rule).
- Confirm with /python-help.
Thảo luận
Đang tải…