Borrowing it
Nothing to install: this file belongs to wislertt/bakefile. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/wislertt/bakefile/main/.claude/skills/python-cli-guidelines/SKILL.mdgit clone --depth 1 https://github.com/wislertt/bakefileWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/wislertt/bakefile/python-cli-guidelines)<a href="https://agentmods.dev/skills/wislertt/bakefile/python-cli-guidelines"><img src="https://agentmods.dev/badge/skills/wislertt/bakefile/python-cli-guidelines/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/wislertt/bakefile/python-cli-guidelines"><img src="https://agentmods.dev/badge/skills/wislertt/bakefile/python-cli-guidelines.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00000 | $0.00827 |
| Opus 5.5 | $0.00000 | $0.00331 |
| Sonnet 5.5 | $0.00000 | $0.00165 |
| Haiku 4.5 | $0.00000 | $0.00083 |
Grade A, and why
python-cli-guidelines scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 151 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Python CLI Guidelines
Production-tested patterns for building Python CLI tools using Typer, Pydantic, and UV.
Overview
This skill provides guidelines for developing bakefile - a Python-based build system with OOP reusability.
Tech Stack:
- Typer - CLI framework
- Pydantic - Data validation
- UV - Package manager (auto-resolve Python environments)
- pytest - Testing
- ty - Type checking
Quick Reference
| Topic | Resource |
|---|---|
| Typer CLI patterns | resources/typer-patterns.md |
| Pydantic validation | resources/pydantic-patterns.md |
| OOP design for bakefile | resources/oop-design.md |
| Testing CLI tools | resources/testing.md |
| UV packaging | resources/packaging.md |
| UV integration | resources/uv-integration.md |
Project Structure
src/bakefile/
├── __init__.py
├── cli.py # Typer app entry point
├── core/ # Core abstractions
│ ├── task.py # Task base class
│ └── recipe.py # Recipe base class
├── commands/ # Built-in commands
│ ├── init.py
│ ├── lint.py
│ └── docs.py
└── utils/ # Utilities
Key Patterns
1. Command Definition (Typer)
import typer
app = typer.Typer()
@app.command()
def init():
"""Initialize a new bakefile.py in current directory."""
typer.echo("Creating bakefile.py...")
2. Data Validation (Pydantic)
from pydantic import BaseModel, Field
class TaskConfig(BaseModel):
name: str = Field(..., min_length=1)
command: str
description: str | None = None
3. OOP Reusability
from abc import ABC, abstractmethod
class Task(ABC):
@abstractmethod
def execute(self) -> int:
"""Execute task, return exit code."""
pass
Common Tasks
What ships with it
6 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2mo ago First seen · 151 lines · 0 tokens per session scan A 2c041b078985
python-cli-guidelines is a skill published in the GitHub repository wislertt/bakefile (7 stars, last pushed yesterday), licensed Apache-2.0. It costs nothing until one of its globs matches a file; then it loads 827 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
biopython
Comprehensive molecular biology toolkit. Use for sequence manipulation, file parsing (FASTA/GenBank/PDB), phylogenetics, and programmatic NCBI/PubMed access (Bio.Entrez). Best for batch processing, custom bioinformatics pipelines, BLAST automation. For quick lookups use gget; for multi-service integration use…
python-repl
Interactive Python REPL automation with common helpers and best practices.
dd-code-generation
Use pup CLI for immediate Datadog operations or generate code for integration into applications.
fastapi
Use when building, reviewing, testing, securing or shipping a FastAPI / async Python service — routers, Pydantic v2 schemas, dependency injection, async SQLAlchemy 2.0, OAuth2/JWT, ASGITransport tests, production wiring. NOT language-level Python or packaging (that is python), NOT engine-level SQL (that is…
django
Use when building, reviewing, securing, testing or shipping a Django app — models, migrations, QuerySets/managers, FBV/CBV views, forms, the admin, settings split, and Django REST Framework (serializers, ModelViewSet, permissions). NOT async FastAPI/Pydantic services (that is fastapi), NOT Postgres schema/index work…
python
Use when the task is Python itself, in any framework or none: PEP 695 generics, mypy --strict typing, dataclass/Protocol/TypedDict/Enum choices, asyncio.TaskGroup, stdlib idioms, src/ layout + pyproject.toml with uv, ruff+mypy+pytest gate. NOT a FastAPI/ASGI service (that is fastapi), NOT a deep pytest suite (that is…