fuck-old-python

Reject projects requiring Python < 3.13. Never downgrade, never poison the env.

16 stars

Best use case

fuck-old-python is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Reject projects requiring Python < 3.13. Never downgrade, never poison the env.

Teams using fuck-old-python should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/fuck-old-python/SKILL.md --create-dirs "https://raw.githubusercontent.com/plurigrid/asi/main/plugins/asi/skills/fuck-old-python/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/fuck-old-python/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How fuck-old-python Compares

Feature / Agentfuck-old-pythonStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Reject projects requiring Python < 3.13. Never downgrade, never poison the env.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Fuck Old Python

When a dependency, tool, or project requires Python < 3.13:

1. **Do not install an old Python version.** Not via uv, pyenv, brew, nix, or anything else.
2. **Do not create venvs with old interpreters.**
3. **Do not add compatibility shims.**
4. **Say what's broken and why.** Name the exact dependency and version constraint.
5. **Find alternatives:**
   - Fork and patch the dependency
   - Use a container (Docker/OCI) to isolate the rot
   - Run it on a remote machine that already has the old version
   - Find a modern replacement
   - Tell the maintainer to update

## The Principle

Modern Python (3.13+) is the floor. Projects that can't run on current Python are unmaintained or hostile to their users. We don't bend our environment to accommodate them — they bend to us, or they get replaced.

## Phrases to Use

- "This requires Python 3.11 — that's two years old and we don't install legacy interpreters."
- "The dependency `X` pins to `python < 3.13`. File an issue or fork it."
- "Running this in a container instead of poisoning the host env."

## What Counts as Poison

- `uv python install 3.11` (or any version < 3.13)
- `pyenv install 3.10.x`
- Adding `python_requires = "<3.13"` anywhere
- Downgrading `typing_extensions`, `regex`, or any stdlib backport to accommodate old code