Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add Phaedra-Solutions/cursor-rules --skill upgrade-djangogit clone --depth 1 https://github.com/Phaedra-Solutions/cursor-rulesWrote 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/phaedra-solutions/cursor-rules/upgrade-django)<a href="https://agentmods.dev/skills/phaedra-solutions/cursor-rules/upgrade-django"><img src="https://agentmods.dev/badge/skills/phaedra-solutions/cursor-rules/upgrade-django/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/phaedra-solutions/cursor-rules/upgrade-django"><img src="https://agentmods.dev/badge/skills/phaedra-solutions/cursor-rules/upgrade-django.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.00132 | $0.01418 |
| Opus 5.5 | $0.00053 | $0.00567 |
| Sonnet 5.5 | $0.00026 | $0.00284 |
| Haiku 4.5 | $0.00013 | $0.00142 |
Grade A, and why
upgrade-django 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 3d 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 — 82 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Upgrade Django
When to use
- The user asks to upgrade Django, or the project is below 5.2 (see
legacy/django-legacy). - A security fix exists only in a supported release (5.2, 6.0, 6.1).
- Moving from 5.2 LTS to 6.x as a planned change.
For a patch release within the same feature release, update the pin and run Verify.
Before you start
- Read
django, Python, and every Django add-on with its supported Django range:djangorestframework(3.17 supports 4.2–6.0; 3.18 needs 5.2+),django-cors-headers,django-filter,celery/django-celery-*,django-allauth,django-storages,channels, admin themes, and anything with its own migrations. - Python compatibility per target: 5.2 supports 3.10–3.14; 6.0 and 6.1 need 3.12+. Plan
upgrade-pythonfirst if needed. - Working tree clean; new branch (
chore/django-5.2). - Ask the user:
- the target (default: 5.2 LTS, security support to Apr 2028; 6.1 if they want the newest and can take Python 3.12+);
- whether to stop after each feature release for review;
- whether network installs are approved (
core/supply-chaincooldown applies).
- Plan the hops: each feature release in turn (4.2 → 5.0 → 5.1 → 5.2 → 6.0 → 6.1). From older versions, go LTS to LTS through every intermediate release (2.2 → 3.0 → 3.1 → 3.2 → 4.0 → 4.1 → 4.2), fixing warnings at each step.
Steps
-
Baseline: locked install,
python manage.py check, tests,makemigrations --check. Record failures. -
Patch the current release to its last patch (for example 4.2.30) and run the tests with warnings visible:
python -Wd manage.py test # or: python -W error::DeprecationWarning -m pytestFix every
RemovedInDjangoXXWarningfor the next release now; that's what breaks on the hop. -
Hop one feature release:
- pin
django~=5.0.0(the next release), upgrade add-ons to versions that support it, re-lock and sync; - run django-upgrade with the new target and review the diff:
- pin
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.
- 3d ago First seen · 82 lines · 132 tokens per session scan A 8a9798206f7c
upgrade-django is a skill published in the GitHub repository Phaedra-Solutions/cursor-rules (4 stars, last pushed 2d ago), licensed MIT. It adds 132 tokens to every session and 1,418 once invoked, about $0.0005 per session on Opus 5.5. 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-11-01.
Other skills, from other repositories
flask
Skill "flask" from rishapgandhi/python-skills, covering flask skill, stack, project structure, app factory and app/init.py.
django
Skill "django" from rishapgandhi/python-skills, covering django skill, stack, project structure, settings pattern (split by environment) and config/settings/base.py.
drf
Skill "drf" from rishapgandhi/python-skills, covering django rest framework (drf) skill, stack additions (on top of django), settings, config/settings/base.py and serializer standards.
fastapi
Skill "fastapi" from rishapgandhi/python-skills, covering fastapi skill, stack, project structure (fastapi-specific additions), app factory pattern and app/main.py.
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…