Cursor rules for FastAPI services with router/service/repository boundaries, typ

Cursor rules for FastAPI services with router/service/repository boundaries, typ is a skill for Claude Code, Codex from AmariahAK/atlarix-skills. It costs 14 tokens per session (2,053 once invoked), scanned A, original, Apache-2.0.

A set of Cursor instructions for building FastAPI web services with separate router, service, repository, and data-access layers. FastAPI is a Python framework for creating web APIs.

In plain words
What is it for?
Use it when designing FastAPI endpoints, typed integrations with outside providers, isolated failure handling, repeat-safe operations, and domain-specific errors.
Why use it?
It keeps request handling, business logic, storage, and outside-service access separated, making the service easier to maintain and review.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one. Also seen: mentions Cursor.

Good fit Use it when designing FastAPI endpoints, typed integrations with outside providers, isolated failure handling, repeat-safe operations, and domain-specific errors.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/amariahak/atlarix-skills/acr-fastapi-production-architecture-cursorrules-prompt-file
Install

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.

Any agent
npx skills add AmariahAK/atlarix-skills --skill acr-fastapi-production-architecture-cursorrules-prompt-file
Clone the repo
git clone --depth 1 https://github.com/AmariahAK/atlarix-skills

Made for: Claude Code, Codex.

Wrote 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.

agentmods badge for Cursor rules for FastAPI services with router/service/repository boundaries, typ

README.md
[![agentmods](https://agentmods.dev/badge/skills/amariahak/atlarix-skills/acr-fastapi-production-architecture-cursorrules-prompt-file/github.svg)](https://agentmods.dev/skills/amariahak/atlarix-skills/acr-fastapi-production-architecture-cursorrules-prompt-file)
Your own site
<a href="https://agentmods.dev/skills/amariahak/atlarix-skills/acr-fastapi-production-architecture-cursorrules-prompt-file"><img src="https://agentmods.dev/badge/skills/amariahak/atlarix-skills/acr-fastapi-production-architecture-cursorrules-prompt-file/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.

agentmods 80×15 button for Cursor rules for FastAPI services with router/service/repository boundaries, typ

Your own site · 80×15
<a href="https://agentmods.dev/skills/amariahak/atlarix-skills/acr-fastapi-production-architecture-cursorrules-prompt-file"><img src="https://agentmods.dev/badge/skills/amariahak/atlarix-skills/acr-fastapi-production-architecture-cursorrules-prompt-file.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 14 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,053 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00014 $0.02053
Opus 5 $0.00007 $0.01026
Sonnet 5 $0.00003 $0.00411
Haiku 4.5 $0.00001 $0.00205

Measured 12d ago against content hash a60ccd237df0, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-12, from the pricing page.

Security

Grade A, and why

Cursor rules for FastAPI services with router/service/repository boundaries, typ 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 12d 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.

skills/acr-fastapi-production-architecture-cursorrules-prompt-file/SKILL.md · 222 lines

How it starts

The opening of the file, as written. The whole thing — 222 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Cursor rules for FastAPI services with router/service/repository boundaries, typ

When to use this skill

Cursor rules for FastAPI services with router/service/repository boundaries, typed provider adapters, bulkhead isolation, idempotency, and domain exceptions.

Source

Synced from https://github.com/PatrickJS/awesome-cursorrules/tree/main/rules/fastapi-production-architecture-cursorrules-prompt-file.mdc.

FastAPI Production Architecture Rules

Principles for production-ready FastAPI services.

LAYER ARCHITECTURE (Principles A1-A8)

This codebase follows strict 4-layer architecture: Router → Service → Repository → ORM/HTTP/Storage. Imports flow downward only. Each layer has hard boundaries you must NOT cross.

Router rules (app/routers/**)

  • Handlers are THIN: ≤10 lines of executable code per handler
  • Allowed imports: fastapi, app.schemas., app.core.deps, app.services.
  • FORBIDDEN imports: sqlalchemy, httpx, boto3, app.models., app.repositories.
  • Every endpoint declares response_model= for OpenAPI fidelity
  • Every protected/business endpoint requires user_id: str = Depends(get_current_user_id)
  • Public endpoints (health checks, webhooks, callbacks) are exempt from auth
  • Business logic lives in services. Routers parse input, call one service method, return response.

GOOD: @router.post("/wallet/charge", response_model=WalletResponse, status_code=201) async def charge( req: ChargeRequest, user_id: str = Depends(get_current_user_id), svc: WalletUserService = Depends(get_wallet_service), ) -> WalletResponse: wallet = await svc.charge( user_id=user_id, amount=req.amount, idempotency_key=req.idempotency_key, ) return WalletResponse.from_domain(wallet)

BAD (business logic + SQL in router): @router.post("/wallet/charge") async def charge(req: ChargeRequest, db: Session = Depends(get_db)): wallet = db.query(Wallet).filter(Wallet.user_id == user_id).with_for_update().one() ...

Service rules (app/services/**)

  • FORBIDDEN imports: sqlalchemy, httpx, boto3, redis, FastAPI Request/Response/HTTPException
  • Constructor injects Protocol-typed dependencies, not concrete classes
  • Raise domain exceptions (InsufficientFundsError), not HTTPException

Read the full file on GitHub · 222 lines

Files

What ships with it

1 file 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.

Changes

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.

  1. 12d ago First seen · 222 lines · 14 tokens per session scan A a60ccd237df0

Subscribe to this mod's changes

Cursor rules for FastAPI services with router/service/repository boundaries, typ is a skill published in the GitHub repository AmariahAK/atlarix-skills (2 stars, last pushed 5d ago), licensed Apache-2.0. It adds 14 tokens to every session and 2,053 once invoked, about $0.0001 per session on Opus 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-08-31.

Related

Other skills, from other repositories

python-project

Modern Python project architecture guide for 2025. Use when creating Python projects (APIs, CLI, data pipelines). Covers uv, Ruff, Pydantic, FastAPI, and async patterns.

majiayu000/spellbook · 43 tokens

fastapi-best-practices

Use when writing, reviewing, or refactoring FastAPI code — endpoints, APIRouter, query/path parameters, dependencies (Depends), Pydantic request/response models, error handling, async def vs def, lifespan events, streaming, background tasks, settings, middleware, or CORS. Triggers on FastAPI backend work, route…

dkmqflx/fastapi-best-practices-plugin · 97 tokens

django-patterns

Django architecture patterns, REST API design with DRF, ORM best practices, caching, signals, middleware, and production-grade Django apps.

affaan-m/ECC · 32 tokens

cross-sdk-parity

Keep TypeScript and Python SDK behavior, generated client usage, public API naming, and docs examples aligned. Use when a change affects both SDKs, when generated client pins move, when comparing TS/Python behavior, or when a backend API contract changed. Do not use for single-language internal-only changes.

ComposioHQ/composio · 66 tokens

supabase-python

FastAPI with Supabase and SQLAlchemy/SQLModel.

alinaqi/maggy · 15 tokens

python-backend

Production Python async patterns including asyncio TaskGroup, FastAPI dependency injection and middleware, SQLAlchemy 2.0 async sessions, and database connection pool tuning. Python 3.11+ runtime concerns such as ExceptionGroup, cancellation semantics, and session rollback. Use when building async services, wiring…

yonatangross/orchestkit · 82 tokens