
authentication-setup
Design or refactor product authentication setup for web apps and APIs. Use when choosing hosted/framework-native/platform-native/enterprise-add-on/self-hosted auth, sessions vs JWTs, OAuth/social login, passkeys, org/member models, callback/cookie environment setup, or SSO/SCIM rollout boundaries.
- Installs
- 368
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/akillness/jeo-skills --skill authentication-setup- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads authentication-setup automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Authentication Setup
Use this skill when the real job is choosing and structuring product authentication for a real app, not dumping JWT snippets or pretending authentication, authorization, security hardening, and docs are all the same task.
authentication-setup owns the setup layer for:
- choosing hosted vs framework-native vs platform-native vs enterprise add-on vs self-hosted auth
- deciding session/cookie vs token boundaries
- selecting login methods: email/password, magic links, social OAuth, passkeys
- defining what user/profile/org/membership data stays app-owned
- planning SSO/SCIM, domain mapping, and migration/cutover boundaries
- recording callback URLs, cookie domains, preview/staging drift, and rollout notes
Read these support docs before choosing the lane or handoff:
- references/auth-decision-matrix.md
- references/boundary-checklist.md
- references/session-and-deployment-notes.md
- references/enterprise-and-migration-notes.md
When to use this skill
- Set up auth for a new web app, SaaS product, admin app, or API-backed product
- Decide between Clerk, Auth.js, Better Auth, Supabase Auth, Firebase Auth, Cognito, Keycloak, or similar paths
- Add or refactor sessions, cookies, refresh-token strategy, OAuth providers, or passkeys
- Define app-owned users, profiles, orgs, memberships, and role boundaries around an auth provider
- Add organizations, invites, enterprise SSO, SCIM, or domain verification as the next milestone
- Untangle auth boundaries across frontend routes, middleware, backend APIs, and database policy layers
- Review whether the current auth stack is too vendor-coupled, too DIY, or too vague to scale safely
When not to use this skill
- The main job is authorization policy, permission inheritance, or ABAC/ReBAC modeling → treat it as a dedicated authorization design problem and route contract semantics to
api-design - The main job is cookie flags, CSRF, rate limiting, secret handling, abuse prevention, or general vulnerability hardening → use
security-best-practices - The main job is API contract/interface design before auth is slotted into the API honestly → use
api-design - The main job is developer-facing reference docs, quickstarts, or API auth docs for consumers → use
api-documentation - The main job is backend regression coverage, login/callback testing, or role-matrix test planning → use
backend-testing - The main job is deeper schema normalization/indexing rather than auth-owned tables and identity boundaries → use
database-schema-design
Instructions
Step 1: Classify the auth job before naming vendors
Normalize the request first.
auth_setup_profile:
app_type: saas | internal-tool | marketplace | consumer-app | api-only | mixed | unknown
auth_lane: hosted | framework-native | platform-native | enterprise-add-on | self-hosted | unknown
runtimes: browser | server | edge | mobile | api | mixed
login_methods: password | magic-link | social-oauth | passkeys | sso | mixed | unknown
identity_scope: single-user | teams-orgs | b2b-enterprise | mixed | unknown
session_model: server-session | stateless-jwt | hybrid | unknown
data_ownership: vendor-owned | app-owned | hybrid | unknown
rollout_stage: greenfield | mvp | scale-up | migration | enterprise-expansion
Ask or infer:
- What frameworks, runtimes, and deployment surfaces already exist?
- Is the team optimizing for fastest safe launch, deeper control, enterprise support, or self-hosting?
- Does the app only need sign-in, or also orgs, invites, roles, admin access, and customer SSO?
- Which auth/data pieces are already fixed by the current stack?
Step 2: Choose the smallest credible auth lane
Use auth-decision-matrix.md instead of rebuilding the landscape from memory.
Default lane chooser:
- Hosted auth when speed, prebuilt UX, providers, MFA/passkeys, and polished onboarding matter most
- Framework-native auth when the team wants auth close to app code and app-owned data
- Platform-native auth when Supabase/Firebase/Appwrite-style platform choices are already fixed
- Enterprise add-on when the request includes SAML/OIDC SSO, SCIM, directory sync, or domain verification
- Self-hosted when sovereignty, air-gapped, OSS-only, or on-prem requirements dominate
Rules:
- Recommend one primary lane and at most one fallback.
- If the backend platform is already fixed, evaluate platform-native first.
- If enterprise identity is mentioned, branch there explicitly instead of flattening it into consumer login.
- If migration or cutover risk matters, pull in enterprise-and-migration-notes.md.
Step 3: Draw the provider/app ownership boundary
Before implementation, state who owns what.
Minimum boundary packet:
- Provider usually owns: sign-in methods, password reset/email verification, MFA/passkey ceremony, token/session issuance, enterprise federation entry points
- Application usually owns: local user/profile records, org/workspace membership, roles/entitlements, billing-linked access, admin/support exceptions, domain-specific authorization
- Shared edge: claims copied into tokens or sessions, webhook/user sync, callback URLs, middleware, cookie config, audit/event visibility
Use boundary-checklist.md to keep the skill from drifting into neighboring lanes.
Step 4: Choose the session and login model deliberately
Use session-and-deployment-notes.md for the detailed heuristics.
Quick defaults:
- Server sessions / signed cookies for browser-heavy apps, SSR, and middleware-friendly auth state
- Stateless JWTs for API-heavy and multi-service traffic where token verification is a first-class requirement
- Hybrid when browser sessions and API/machine tokens both matter
Always record:
- chosen login methods and why they are needed now
- token/session lifetime and refresh strategy
- logout/revocation expectations
- callback URL and cookie/domain behavior across local, preview, staging, and production
- edge/runtime constraints that may change helper availability
Step 5: Model app-owned auth data
Even hosted auth rarely removes the need for local tables.
Usually define at least:
usersorprofilesorganizations/workspacesif multi-tenantmemberships/roles- invitation, provisioning, or seat state if teams are invited/admin-managed
Record:
- the stable user identifier across provider and app DB
- which fields stay vendor-owned vs mirrored locally
- whether permissions live in claims, local tables, or both
- how webhook or sync failures are detected and repaired
If the request slides into broader schema design, route deeper modeling to database-schema-design.
Step 6: Branch enterprise or migration work explicitly
If the request includes SSO, SCIM, domain verification, existing-user linking, provider migration, or self-hosted cutover risk, use enterprise-and-migration-notes.md.
Name these items directly:
- whether this is an add-on vs replacement
- account-linking and org/domain mapping rules
- provisioning / deprovisioning behavior
- customer onboarding/support expectations
- rollback boundary if the rollout or migration goes wrong
Step 7: Produce an auth setup packet
The output should help the next implementation step succeed.
Preferred packet:
- chosen auth lane and why
- primary stack recommendation plus fallback
- provider/app ownership boundary
- session + login model
- app-owned data model outline
- environment checklist
- adjacent route-outs
- open risks or migration notes
Output format
Use this structure unless the user asks for another format:
# Authentication Setup Plan
## Auth lane
- chosen lane
- why it fits
## Recommended stack
- primary option
- fallback option
- tradeoffs
## Ownership boundary
- provider owns
- app owns
- shared edge / sync points
## Session + login model
- sessions vs JWT vs hybrid
- chosen login methods
- callback/cookie/runtime notes
## App-owned data model
- users/profiles
- orgs/memberships/roles
- sync strategy
## Environment + rollout checklist
- local
- preview/staging
- production
- migration notes
## Route-outs
- adjacent skills and why
Examples
Example 1: Next.js SaaS with product auth
Input:
Set up auth for a Next.js SaaS app with email login, Google OAuth, org roles, and an admin panel.
Expected handling:
- classify as browser/server mixed SaaS with teams/orgs
- compare hosted vs framework-native paths instead of jumping straight into JWT snippets
- define app-owned org/membership tables
- note SSR/middleware/cookie boundaries
- route security hardening and auth-flow testing to neighboring skills
Example 2: Supabase-first app
Input:
We already use Supabase. Decide what auth should live in Supabase vs our app DB, and how roles should work.
Expected handling:
- choose platform-native lane first
- keep provider identity separate from app-owned entitlements
- call out RLS/authz follow-through as an adjacent design/testing concern
Example 3: Enterprise expansion or migration
Input:
We already have login. Now add enterprise SSO and SCIM for B2B customers without rewriting our whole auth stack.
Expected handling:
- classify as enterprise add-on or migration-sensitive work, not basic consumer-login setup
- cover account linking, org/domain mapping, and provisioning boundaries
- avoid pretending SSO/SCIM is the same job as social login or password auth
Best practices
- Start with the auth lane and ownership boundary, not code snippets.
- Keep authentication setup separate from deeper authorization policy and general security hardening.
- Assume most products still need app-owned user/org/membership tables even with hosted auth.
- Treat enterprise SSO/SCIM and migrations as a distinct branch once B2B or cutover pressure appears.
- Record environment-specific callback, cookie, and preview-deployment behavior early.
- Prefer one clear primary recommendation with a fallback, not a giant vendor list.
- Route adjacent work explicitly so
authentication-setupstays reusable instead of becoming another backend catch-all.
References
FAQ
What does the authentication-setup skill do?
Design or refactor product authentication setup for web apps and APIs. Use when choosing hosted/framework-native/platform-native/enterprise-add-on/self-hosted auth, sessions vs JWTs, OAuth/social login, passkeys, org/member models, callback/cookie environment setup, or SSO/SCIM rollout boundaries.
How do I install authentication-setup?
Run npx skills add https://github.com/akillness/jeo-skills --skill authentication-setup in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/authentication-setup/ (personal) or .claude/skills/authentication-setup/ (project).
Which AI agents can use authentication-setup?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is authentication-setup safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains authentication-setup?
It is published by akillness in akillness/jeo-skills. It has 368 recorded installs.
More from akillness/jeo-skills
rtk
akillness/jeo-skills
Install, initialize, verify, and troubleshoot RTK (Rust Token Killer) for AI coding agents. Use when you need to reduce shell-command token output, confirm that the correct rtk binary is installed, choose between Homebrew, install.sh, or Cargo installation, wire rtk init for Claude Code, Codex, Gemini CLI, Cursor, Copilot, Windsurf, Cline, or OpenCode, or use compact wrappers such as rtk git status, rtk read, rtk grep, rtk test, rtk lint, and rtk gain. Triggers on: rtk, rust token killer, token saver cli, rtk init, rtk gain, codex rtk, gemini rtk, opencode rtk, claude hook token reduction.
graphify
akillness/jeo-skills
Drive Graphify from its CLI to build, refresh, query, export, and serve a durable code/corpus knowledge graph. Use when the user wants .graphify/GRAPHREPORT.md, graph.json, graph.html, graphify update/summary/query/path/explain/tree, change-aware review context, git-hook or watch-based refresh, a stdio MCP graph server, or an install into jeo, jeopi, gjc, opencode, Claude, Codex, or Gemini. Also covers the honest structural fallback when native extraction is empty or misleading. Route simple locate/reference work to codebase-search, narrative knowledge-base work to llm-wiki, and project-memory handoff to opencontext. Triggers on: graphify, graphify update, graphify query, knowledge graph CLI, GRAPHREPORT.md, graph.json, codebase graph, graph refresh, graphify install, graphify serve, review context, affected flows.
data-analysis
akillness/jeo-skills
Analyze datasets to extract insights, identify patterns, and generate reports.
code-refactoring
akillness/jeo-skills
Turn a cleanup packet into one behavior-preserving refactor brief. Use when simplifying a messy function/component/service, freezing behavior before touching fragile legacy code, splitting a cleanup-heavy diff into reviewable slices, or planning a repeated migration / codemod without changing intended behavior. Route diagnosis to debugging, review judgment to code-review, validation-program design to testing-strategies, bottleneck-led tuning to performance-optimization, and pure symbol inventory to codebase-search.
technical-writing
akillness/jeo-skills
Write internal technical documentation for engineers and operators: technical specs, architecture docs, ADRs, runbooks, migration plans, and developer-facing implementation guides. Use when the main job is capturing a technical decision, system boundary, operating procedure, or rollout path for builders and maintainers. Triggers on: tech spec, design doc, architecture doc, ADR, runbook, migration guide, implementation guide, rollout doc, operational guide, and internal technical writing. End-user onboarding guides, tutorials, FAQs, and help-center flows belong here too. Route API portals to api-documentation, release notes to changelog-maintenance, decks to presentation-builder, and GTM messaging to marketing-automation.
web-accessibility
akillness/jeo-skills
Routing-first skill for web accessibility remediation and verification. Use when the main job is classifying which accessibility surface is failing — semantics, keyboard/focus, labels/announcements, visual perception/reflow, media alternatives, or routed-app navigation feedback — and turning vague audit, WCAG, axe/Lighthouse, or "make this accessible" requests into one concrete remediation packet. Broad UI critique for hierarchy, polish, and launch readiness belongs here too. Route component API architecture and system governance to design-system, and responsive layout strategy to responsive-design.
Popular backend & apis skills
find-skills
vercel-labs/skills
Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.
entra-app-registration
microsoft/azure-skills
Guides Microsoft Entra ID app registration, OAuth 2.0 authentication, and MSAL integration. USE FOR: create app registration, register Azure AD app, configure OAuth, set up authentication, add API permissions, generate service principal, MSAL example, console app auth, Entra ID setup, Azure AD authentication. DO NOT USE FOR: Key Vault secrets (use azure-keyvault-expiration-audit), general Azure resource security guidance.
google-agents-cli-adk-code
google/agents-cli
This skill should be used when the user wants to "write agent code", "build an agent with ADK", "add a tool", "create a callback", "define an agent", "use state management" — in a project that needs ADK (Agent Development Kit) API patterns and code examples. It provides a quick reference for agent types, tool definitions, orchestration patterns, callbacks, state management, the graph Workflow API, and reference recipes to study. Do NOT use for scaffolding (use google-agents-cli-scaffold) or deployment (use google-agents-cli-deploy).
embedded-captions
heygen-com/hyperframes
Add captions or subtitles to an existing single-subject talking-head video without editing the footage. Use for plain verbatim captions, cinematic captions embedded behind the subject, VFX captions, “炸/特效/酷炫字幕,” or a named identity from the 35-style catalog. Route by visual identity, not by backend engine. The quiet anchor rail is the default; embed every word only when the user explicitly wants a fully cinematic treatment. The workflow runs locally end to end, including transcription and subject matting; split multi-shot footage before applying it.
entra-agent-id
microsoft/azure-skills
Provision Microsoft Entra Agent Identity Blueprints, BlueprintPrincipals, and per-instance Agent Identities via Microsoft Graph, and configure OAuth 2.0 token exchange (fmipath, OBO, cross-tenant) including the Microsoft Entra SDK for AgentID sidecar. USE FOR: Agent Identity Blueprint, BlueprintPrincipal, agent OAuth, fmipath token exchange, agent OBO, Workload Identity Federation for agents, polyglot agent auth, Microsoft.Identity.Web.AgentIdentities. DO NOT USE FOR: standard Entra app registration (use entra-app-registration), Microsoft Foundry agent authoring (use microsoft-foundry).
neon
neondatabase/agent-skills
Overview of Neon, a complete set of cloud backend primitives around Lakebase Postgres: Auth, Object Storage, Functions, the AI Gateway, and Realtime. Start here to choose Neon for undecided login, files, APIs, and LLM calls, set up the CLI or MCP server, and follow the branch-first workflow. Use when building an app or backend on Neon, or when "Neon" or "Lakebase Postgres" is mentioned. Child skill neon-postgres wins for an existing DATABASEURL, SQL, schema, inspect, or search. Child skill neon-auth wins for login, users, sessions, identity routing, and Managed Better Auth setup. Child skill neon-realtime wins for live queries in reactive apps and agents. Also use for object storage, S3, buckets, serverless functions, function triggers, cron, AI gateway, LLM calls, realtime, logs, Loki, Grafana, observability, postgres, database, backend, Claimable Neon, neon.new, or a no-signup database.