api-platform-dto-resou…
Map entities to API DTOs in API Platform (v5, 4.4, 4.3) with the Symfony Object Mapper (#[Map], stateOptions) for decoupled…
Secure API Platform resources with security expressions, voters, securityPostValidation, and operation-level access control
Claude Code
$ npx -y skills add dev-toolings/superpowers-symfony --skill api-platform-security --agent claude-code
Codex
$ npx skills add dev-toolings/superpowers-symfony --skill api-platform-security -a codex -y
Cursor
$ npx skills add dev-toolings/superpowers-symfony --skill api-platform-security -a cursor -y
Gemini CLI
$ npx skills add dev-toolings/superpowers-symfony --skill api-platform-security -a gemini-cli -y
GitHub Copilot
$ npx skills add dev-toolings/superpowers-symfony --skill api-platform-security -a github-copilot -y
OpenCode
$ npx skills add dev-toolings/superpowers-symfony --skill api-platform-security -a opencode -y
Windsurf
$ npx skills add dev-toolings/superpowers-symfony --skill api-platform-security -a windsurf -y
name: api-platform-security description: Secure API Platform resources with security expressions, voters, securityPostValidation, and operation-level access control capabilities: [read, search, edit, shell] tags: [api-platform, security] # projected by `bun run build` — do not edit by hand allowed-tools: - Read - Glob - Grep - Write - Edit - Bash
1. Set `security` per operation with `is_granted()`, `object`, and `user`, plus a `securityMessage`. 2. Move complex rules into voters: `is_granted('POST_EDIT', object)`. 3. When the rule depends on input, use `securityPostDenormalize`, or `securityPostValidation` to run after the Validator. 4. Scope rows with a `QueryCollectionExtensionInterface` (and `QueryItemExtensionInterface`) or a state provider. 5. Hide fields with serializer groups and a decorated context builder, and guard the firewall with `access_control`. 6. Test both the grant and the deny case for every protected operation.
Superpowers Symfony gives coding agents deep, version-accurate Symfony expertise: from Doctrine schema design and API Platform REST/GraphQL APIs to test-driven development, async Messenger workflows, caching, rate limiting, and clean architecture.
Map entities to API DTOs in API Platform (v5, 4.4, 4.3) with the Symfony Object Mapper (#[Map], stateOptions) for decoupled…
Implement API Platform filters - Parameters API (QueryParameter, v5/4.4/4.3) and the #[ApiFilter] attribute deprecated since 4.4…
Configure API Platform resources (v5, 4.4, 4.3) with explicit operations, pagination, and typed OpenAPI for clean, versioned…
Control API Platform serialization with groups, #[Context], IRI links (readableLink/writableLink), and custom context builders
Master API Platform State Providers and Processors (v5, 4.4, 4.3) (ProviderInterface/ProcessorInterface) to decouple data…
Test API Platform resources with ApiTestCase; assert collections, items, filters, JSON schema, and authentication
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.