Skip to content
Back to skills

Authorization Planner

ASecurity

Use when a user wants to plan, scope, or get started with adding authorization

  • 4 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 12, 2026
toolsgodebugging

Works with

  • cli

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned September 12, 2026

npx -y skills add aibot88/sec_skill_store --skill authorization-planner --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Authorization Planner?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Authorization Planner
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/aibot88-authorization-planner/badge)](https://www.skillsdirectory.com/skills/aibot88-authorization-planner)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: Authorization Planner
description: Use when a user wants to plan, scope, or get started with adding authorization
  to their application - guides brainstorming to produce a phased implementation plan
  that incorporates the right skills and commands in sequence
---

# Authorization Planner

This plugin adds a first pass at SpiceDB fine-grained authorization to an application
being built or modified. The goal is getting authorization structurally correct --
right permissions, right places, right operations. It is not a production hardening
or debugging tool.

## Ideal Workflow

### Once, early -- before or alongside data model design

Run `/spicedb-dev:plan`. This scopes the work, produces `authorization-plan.md`,
and writes an authorization snippet to `CLAUDE.md` so permissions are considered
automatically in every future session without needing to invoke any command. This is
the most important setup step.

Then `/spicedb-dev:design-model` -- scans for existing model files and extracts
entity names. Produces `permission-model.md`.

Then `/spicedb-dev:generate-schema` -- converts the model to `schema.zed`.
Schema-validator runs automatically.

Deploy the schema externally: `zed schema write schema.zed`.

### Continuously, alongside every feature

Every feature needs both operations -- this is the most common implementation mistake:

1. **Relationship writes** (`/spicedb-dev:implement-spicedb-relationships`) --
   run when writing handlers that create resources, grant membership, or delete resources.
   SpiceDB returns NO_PERMISSION for everything until relationships are written. Writes
   must come before checks.

2. **Permission checks** (`/spicedb-dev:implement-spicedb-checks`) -- run when
   writing any handler that reads, modifies, or deletes a resource on behalf of a user.
   For list endpoints, use LookupResources -- not CheckPermission in a loop.

Use `/spicedb-dev:implement-spicedb` when unsure which is needed -- it
communicates the paired requirement and routes to the right command.

### Periodically

`/spicedb-dev:audit-coverage` produces a coverage matrix: every permission in
the schema vs. whether a corresponding check exists in code. Routes each gap to the
correct implement command.

### Once, when stable

`/spicedb-dev:test-permissions` generates test fixtures and integration tests
from the schema.

## Routing by Situation

- New project, no existing auth → `/spicedb-dev:plan`
- Have a data model, need permission design → `/spicedb-dev:design-model`
- Have a permission model, need a schema → `/spicedb-dev:generate-schema`
- Have a schema, need implementation → `/spicedb-dev:implement-spicedb`
- Inherited codebase, need coverage picture → `/spicedb-dev:audit-coverage`
- Unsure which SpiceDB pattern fits → `spicedb-schema-design` skill
- Questions about client code or consistency → `spicedb-best-practices` skill

## Scoping Tips

**Greenfield**: Start with the simplest model that works. Three resources with basic
RBAC beats ten resources with speculative complexity. Add caveats and custom roles
only when a concrete scenario requires them.

**Existing app**: The `checkpoint-identifier` agent can map current authorization
boundaries before designing the SpiceDB model. Run it early to reveal scope that
isn't obvious from the data model alone.

**Multi-tenant SaaS**: Finalize tenant isolation before designing resource-level
permissions. The tenant boundary is the most consequential design decision -- getting
it wrong affects every other resource.

**Migration**: Do not skip Phase 1. Read existing auth code first to understand the
current permission surface. See the Migration Track in `/spicedb-dev:plan`.

Files in this skill

  • SKILL.md3.6 KB
  • source.json615 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.