plugins/litestar/skills/litestar-requests/SKILL.md
Handle Litestar request parsing and access for path, query, header, cookie, JSON body, form, multipart, and raw request inputs with explicit typing, `Parameter`, `Body`, `Request`, and upload handling. Use when implementing or fixing inbound HTTP contracts, request metadata access, or transport-side validation in Litestar. Do not use for response serialization, exception mapping, or broker-style messaging concerns.
npx skillsauth add alti3/litestar-skills litestar-requestsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Request access.Parameter(...) and Body(...) metadata when aliases, constraints, content type, or documentation need to be explicit.Request only when you need raw body access, connection metadata, auth context, or request-scoped state.request.dict[str, object] payloads when the schema is known.Parameter(...) or Body(...).UUID, enums, dataclasses, and validated models where possible.Request access only when the handler genuinely needs request metadata or raw-body methods.Parameter(...) when aliasing, validation constraints, or source selection must be explicit.data parameter for JSON or other modeled body content.Body(...) when body metadata or request encoding must be declared explicitly.Request when you need headers, cookies, query_params, url, client, user, auth, state, or raw body methods.UploadFile only when the endpoint actually needs file transport.Read only the sections you need:
Request access, request metadata, raw-body methods, forms, multipart, and uploads, read references/request-object-and-upload-patterns.md.request when typed parameters already express the contract.Request access is only used where the typed API is insufficient.Request are used intentionally, not as hidden globals.litestar-responses for outbound contract design.litestar-exception-handling for validation and client-error response strategy.litestar-dto and litestar-custom-types for advanced transformation or custom parsing.litestar-file-uploads for deeper upload security and storage workflows.development
Build Litestar WebSocket endpoints with low-level websocket handlers, websocket listeners, websocket streams, dependency injection, custom websocket classes, transport-mode control, and graceful connection lifecycle handling. Use when implementing bidirectional real-time communication, reactive websocket message handling, or proactive server push over WebSockets. Do not use for server-side pub/sub fanout that is better expressed with channels alone.
tools
Test Litestar applications with TestClient, AsyncTestClient, create_test_client, websocket test helpers, dependency overrides, mocked dependencies, lifecycle-aware fixtures, and deterministic success and failure assertions. Use when adding or fixing Litestar test coverage, including exception contracts, override precedence, websocket behavior, event-bus side effects, or live-server-only response patterns. Do not use as a substitute for production observability or runtime debugging strategy.
development
Configure Litestar templating with `TemplateConfig`, Jinja/Mako/MiniJinja engines, file-or-string `Template` responses, request and CSRF-aware context, template callables, and custom engine integration. Use when implementing or fixing server-rendered HTML in Litestar. Do not use for static asset serving or pure JSON API endpoints.
development
Configure Litestar stores and the store registry for caching, server-side sessions, rate limiting, and other key-value state with explicit backend selection, bytes-safe data handling, TTL and renewal policy, namespacing, registry wiring, and lifecycle cleanup. Use when a Litestar app depends on `MemoryStore`, `FileStore`, `RedisStore`, `ValkeyStore`, or `StoreRegistry`. Do not use for relational persistence, domain repositories, or response-caching policy details that belong in database or caching-focused skills.