About better-auth
A skill for choosing authorization procedures in Better Auth and TRPC template-ts applications. It maps access needs to procedures with the appropriate context, and gives rules for middleware and context reuse.
Key features
- 01Procedure selection by access level
- 02Organization and project access patterns
- 03Middleware chaining guidance
- 04Stable context and header handling
Use cases
- 01Selecting authorization for a TRPC route
- 02Reviewing organization or project access checks
- 03Implementing Better Auth calls in procedures
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ blogic-cz/ blogic-marketplace --skill better-authAfter installing, type/better-authin Claude Code to confirm it loaded.
Bundled filesreferences/better-auth-examples.md
Details
From the project READMEBetter Auth Procedure Selection
Select authorization boundaries with Better Auth + TRPC patterns used in template-ts apps.
Procedure Selection Table
| Procedure | Access Level | Context Provided |
|---|---|---|
publicProcedure | No auth | { db, session?, headers } |
protectedProcedure | Authenticated | { db, session, userId, headers } |
adminProcedure | Admin role | { db, session, headers } |
protectedOrganizationMemberProcedure | Org member | { ..., member, organizationId } |
protectedOrganizationAdminProcedure | Org admin/owner | { ..., member, organizationId } |
protectedProjectMemberProcedure | Project access | { ..., project, projectRole, orgRole } |
protectedProjectAdminProcedure | Project admin | { ..., project, projectRole, orgRole } |
protectedProjectEditorProcedure | Project editor+ | { ..., project, projectRole, orgRole } |
Use this table as the primary selector before writing router logic.
Use This Skill When
- Select the correct protected procedure for organization/project/member/admin access.
- Implement Better Auth authorization checks inside TRPC procedures.
- Review auth boundaries in existing routers.
Follow This Workflow
- Identify required access level from the Procedure Selection Table.
- Start implementation from the matching base procedure.
- Chain stricter middleware only when the table does not fully satisfy the access rule.
- Load
references/better-auth-examples.mdfor detailed examples and copy-ready snippets. - Keep context shape stable; add only route-specific fields.
Key Rules
- Select the narrowest procedure that matches the required permission.
- Reuse inherited context (
userId,organizationId,project, roles) instead of recomputing it. - Grant organization admins automatic project-admin behavior; avoid duplicate checks.
- Pass
ctx.headerstoauth.api.*server calls. - Validate variable origins in every middleware (
opts.ctx,opts.input) before adding business logic.
References
references/better-auth-examples.md— auth configuration, context setup, middleware examples, client auth usage, and admin API patterns.
Comments
Markdown supported