Agent skill

Clerk Android

by geekskai in geekskai/blog

Implement Clerk authentication for native Android apps using Kotlin and Jetpack Compose with clerk-android source-guided patterns.

MITAuto-check passedMobile

Install Clerk Android

skills CLI
$ npx skills add geekskai/blog --skill clerk-android -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install geekskai/blog clerk-android --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/geekskai/blog.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/clerk-android .claude/skills/clerk-android && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
clerk-android
GitHub stars
103
Used in
1 other repo
Token cost
~2.1k tokens
SKILL.md length
912 words
Files
3 (incl. references)
Skills in repo
20
Repo updated
First seen
Licence
MIT

At a glance

Implement Clerk authentication for native Android apps using Kotlin and Jetpack Compose with clerk-android source-guided patterns.

  • Works in 10 steps: Detect native Android vs Expo/React… → If flow type is not explicitly provided,… → If publishable key is not explicitly… → …
  • Prebuilt AuthView/UserButton
  • SKILL.md covers Activation Rules, What Do You Need?, Quick Start and Decision Tree, plus 7 more sections
  • Reaches github.com and clerk.com

What it does

Clerk Android is an agent skill from geekskai/blog. Implement Clerk authentication for native Android apps using Kotlin and Jetpack Compose with clerk-android source-guided patterns. Use for prebuilt AuthView/UserButton or custom API-driven auth flows. Do not use for Expo or React Native projects.

Its SKILL.md is about 2.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files, including reference files (for example `references/custom.md` and `references/prebuilt.md`). Compatibility notes: Requires Android Studio and clerk-android Gradle dependency

It sits in Mobile, covering Android development, Cross-platform mobile apps and Authentication. It works with Android, Expo, React Native and Jetpack Compose. The repository describes itself as: 🚀 2026 Most Popular FREE Blog Template! Next.js 14, Zero Code - Just Write & Deploy | 2026最火免费博客模板!支持Markdown,一键部署,极致性能!⚡️ ✨ Write in Markdown, get your professional blog in…. The licence is MIT.

When your agent uses it

  • Prebuilt AuthView/UserButton
  • Custom API-driven auth flows
  • React Native projects

Example prompts

  • “/clerk-android”

Requirements

  • Compatibility (from SKILL.md): Requires Android Studio and clerk-android Gradle dependency
  • Pre-approved tools (allowed-tools): WebFetch

Workflow steps

10 steps, taken from the first numbered list in SKILL.md.

  1. Detect native Android vs Expo/React Native.
  2. If flow type is not explicitly provided, ask user for prebuilt or custom.
  3. If publishable key is not explicitly provided, ask user for it.
  4. Wait for both answers before changing files.
  5. Load matching flow reference file.
  6. Ensure Clerk.initialize(...) path and publishable key wiring are valid.
  7. Ensure dependencies/artifacts match selected flow.
  8. Review Android quickstart requirements and apply missing setup in project.
  9. Implement using selected reference checklist.
  10. Verify using selected reference checklist plus shared gates.

What it can do on your machine

Read from SKILL.md and the folder at commit 347e8ab. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • WebFetch

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • github.com
    • clerk.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Requires Android Studio and clerk-android Gradle dependency

    From compatibility in the SKILL.md frontmatter.

Context cost

Clerk Android loads about 2.1k tokens when it runs, and up to ~3.8k if it reads all its reference files. Until then it costs about 65 tokens; SKILL.md has 912 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~65
When it runs · the whole SKILL.md, loaded when a task matches
~2.1k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~3.8k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from geekskai/blog at commit 347e8ab, republished under its MIT licence (© geekskai). 912 words, ~2,143 tokens.

Download SKILL.mdSave it as .claude/skills/clerk-android/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
clerk-android
description
Implement Clerk authentication for native Android apps using Kotlin and Jetpack Compose with clerk-android source-guided patterns. Use for prebuilt AuthView/UserButton or custom API-driven auth flows. Do not use for Expo or React Native projects.
allowed-tools
WebFetch
compatibility
Requires Android Studio and clerk-android Gradle dependency
license
MIT
metadata.author
clerk
metadata.version
1.2.0

Clerk Android (Native)

This skill implements Clerk in native Android projects by following current clerk-android SDK and docs patterns.

Activation Rules

Activate this skill when either condition is true:

  • The user explicitly asks for Android, Kotlin, Jetpack Compose, or native mobile Clerk implementation on Android.
  • The project appears to be native Android (for example build.gradle(.kts) with Android plugins, AndroidManifest.xml, app/src/main/java, Compose UI files).

Do not activate this skill when either condition is true:

  • The project is Expo.
  • The project is React Native.

If Expo/React Native signals are present, route to the general setup skill instead.

What Do You Need?

TaskReference
Prebuilt AuthView / UserButton (fastest)references/prebuilt.md
Custom API-driven auth flows (full control)references/custom.md

Quick Start

StepAction
1Confirm project type is native Android and not Expo/React Native
2Determine flow type (prebuilt or custom) and load the matching reference file
3Ensure a real Clerk publishable key exists (or ask developer)
4Ensure correct Clerk artifacts are installed for the selected flow
5Read official Android quickstart and verify required setup (Native API, min SDK/Java, manifest, initialization)
6Inspect clerk-android source/sample patterns relevant to selected flow
7Implement flow by following only the selected reference checklist

Decision Tree

text
User asks for Clerk in Android/Kotlin
    |
    +-- Expo/React Native project detected?
    |     |
    |     +-- YES -> Do not use this skill
    |     |
    |     +-- NO -> Continue
    |
    +-- Existing auth UI detected?
    |     |
    |     +-- Prebuilt views detected -> Load references/prebuilt.md
    |     |
    |     +-- Custom flow detected -> Load references/custom.md
    |     |
    |     +-- New implementation -> Ask developer prebuilt/custom, then load matching reference
    |
    +-- Ensure publishable key and SDK initialization path
    |
    +-- Ensure correct Android artifacts are installed
    |
    +-- Verify quickstart prerequisites in project
    |
    +-- Implement using selected flow reference

Flow References

After flow type is known, load exactly one:

Do not blend the two references in a single implementation unless the developer explicitly asks for a hybrid approach.

Interaction Contract

Before any implementation edits, the agent must have both:

  • flow choice: prebuilt or custom
  • a real Clerk publishable key

If either value is missing from the user request/context:

  • ask the user for the missing value(s)
  • pause and wait for the answer
  • do not edit files or install dependencies yet

Only skip asking when the user has already explicitly provided the value in this conversation.

Source-Driven Templates

Do not hardcode implementation examples in this skill. Inspect current clerk-android source/docs for the installed SDK version before implementing.

Use CaseSource of Truth
SDK artifacts and dependency split (clerk-android-api vs clerk-android-ui)clerk-android README and Android install docs
SDK initialization and publishable key wiringAndroid quickstart and source/api/.../Clerk.kt
Prebuilt auth and profile behaviorsource/ui/.../AuthView.kt, source/ui/.../UserButton.kt, and prebuilt sample
Custom auth sequencing and factor handlingsource/ui/auth/*, source/api/auth/*, and custom-flows sample
Capability/feature gating from instance settingsClerk public fields (for example enabledFirstFactorAttributes, socialProviders, isGoogleOneTapEnabled, mfaIsEnabled) and environment model source
Required Android setup checklistOfficial Android quickstart (/docs/android/getting-started/quickstart)

Execution Gates (Do Not Skip)

  1. No implementation edits before prerequisites
  • Do not edit project files until flow type is confirmed and a valid publishable key is available.
  1. Missing flow or key must trigger a question
  • If flow choice is missing, explicitly ask: prebuilt views or custom flow.
  • If publishable key is missing/placeholder/invalid, explicitly ask for a real key.
  • Do not continue until both answers are provided.
  1. Publishable key wiring mode is mandatory
  • By default, wire the developer-provided key directly in Clerk.initialize(...).
  • Do not introduce secret-management indirection unless explicitly requested.
  1. Artifact install policy is mandatory
  • Prebuilt flow: use clerk-android-ui (includes API).
  • Custom flow: use clerk-android-api unless prebuilt components are explicitly requested.
  • If Clerk artifacts are missing, add the latest stable release available.
  1. Android quickstart compliance is mandatory
  • Verify Native API is enabled for the Clerk app.
  • Verify Android requirements from quickstart are implemented in project (minimum SDK and Java target, manifest internet permission, app-level Clerk initialization).
  • Verify app waits for SDK initialization (Clerk.isInitialized) before assuming auth-ready state.
  1. Capability-driven behavior is mandatory
  • Use Clerk runtime capability/settings state (for example enabled factors/social providers/MFA flags) to gate flow behavior.
  • Do not hardcode factor assumptions that may conflict with dashboard configuration.
  1. Reference-file discipline is mandatory
  • Once flow is selected, follow only that flow reference file for implementation and verification.
  1. Custom-flow structure parity is mandatory
  • For custom flow, preserve multi-step auth progression and factor-specific handling (no single all-fields form by default).
  • Keep UI, state orchestration, and Clerk API integration in separate modules.
  1. Prebuilt preference is mandatory when selected
  • For prebuilt flow, do not rebuild auth forms with custom API calls unless explicitly requested.
  • Use AuthView/UserButton as default building blocks.
Show full SKILL.md (233 more words)Show less

Workflow

  1. Detect native Android vs Expo/React Native.
  2. If flow type is not explicitly provided, ask user for prebuilt or custom.
  3. If publishable key is not explicitly provided, ask user for it.
  4. Wait for both answers before changing files.
  5. Load matching flow reference file.
  6. Ensure Clerk.initialize(...) path and publishable key wiring are valid.
  7. Ensure dependencies/artifacts match selected flow.
  8. Review Android quickstart requirements and apply missing setup in project.
  9. Implement using selected reference checklist.
  10. Verify using selected reference checklist plus shared gates.

Common Pitfalls

LevelIssuePrevention
CRITICALNot asking for missing flow choice before implementationAsk for prebuilt vs custom and wait before edits
CRITICALNot asking for missing publishable key before implementationAsk for key and wait before edits
CRITICALStarting implementation before flow type is confirmedConfirm flow first and load matching reference
CRITICALSkipping Android quickstart prerequisitesVerify and apply required setup from official Android quickstart
CRITICALMissing app-level Clerk.initialize(...) callInitialize Clerk from Application startup path
HIGHWrong artifact for chosen flowPrebuilt: clerk-android-ui; custom: clerk-android-api
HIGHRendering auth UI before SDK initialization completesGate UI with Clerk.isInitialized state
HIGHHardcoding auth factors/social providersDrive behavior from Clerk runtime capability fields
HIGHUsing this skill for Expo/React NativeDetect and route away before implementation

See Also

  • clerk skill for top-level Clerk routing
  • clerk-setup skill for cross-framework quickstart setup
  • https://github.com/clerk/clerk-android
  • https://clerk.com/docs/android/getting-started/quickstart

© geekskai, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files (references) in .agents/skills/clerk-android of geekskai/blog.

  • SKILL.md
  • references/custom.md
  • references/prebuilt.md

Open the folder on GitHubat commit 347e8ab

Used in 1 other repository

We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in geekskai/blog, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Clerk Android next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Clerk Android compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Clerk Android this skillgeekskai/blog1031 repos~2.1kAutomated safety check: PassMIT
Claude Android NinjaDrjacky/claude-android-ninja124—~5.2kAutomated safety check: PassApache-2.0
Expo Brownfield Integrationmweinbach/agent-coworker1562 repos~900Automated safety check: NotesCustom licence
Expo UIarcboxlabs/linkcode155—~1.2kAutomated safety check: PassMIT
Expo Brownfieldexpo/skills2.7k—~1.4kAutomated safety check: PassMIT
Cds Rn To Composecoinbase/cds506—~452Automated safety check: PassCustom licence

Similar skills

  • Claude Android Ninja

    Drjacky/claude-android-ninja

    Build and migrate Android apps with Kotlin, Jetpack Compose, MVVM, Hilt, Room 3 (KSP, SQLiteDriver, Flow/suspend DAOs), Navigation3, and multi-module Gradle.

    124 GitHub stars~5.2k tokensUpdated 8 days ago
    MobileAuto-check passed
  • Expo Brownfield Integration

    mweinbach/agent-coworker

    Helps add Expo and React Native to an existing native iOS or Android app, and choose between a prebuilt AAR or XCFramework and a fully integrated build.

    156 GitHub starsUsed in 2 repos~900 tokens
    MobileAuto-check: notes
  • Expo UI

    arcboxlabs/linkcode

    Framework (OSS). An agent skill from arcboxlabs/linkcode.

    155 GitHub stars~1.2k tokensUpdated 9 days ago
    MobileAuto-check passed
  • Expo Brownfield

    expo/skills

    Official

    Integrate Expo and React Native into an existing native iOS or Android app.

    2.7k GitHub stars~1.4k tokensUpdated today
    MobileAuto-check passed
  • Cds Rn To Compose

    coinbase/cds

    Guide for porting CDS React Native components to Jetpack Compose in packages/cds-android, and for auditing existing Android ports for completeness and quality.

    506 GitHub stars~452 tokensUpdated today
    MobileAuto-check passed
  • Compose Multiplatform Patterns

    monta-app/ocpp-emulator

    Compose Multiplatform and Jetpack Compose patterns for KMP projects — state management, navigation, theming, performance, and platform-specific UI.

    179 GitHub starsUsed in 5 repos~2k tokens
    MobileAuto-check passed

More from geekskai/blog

All 20 skills in this repo
  • React SPA auth patterns with @clerk/react for Vite/CRA - ClerkProvider setup, useAuth/useUser/useClerk hooks, React Router protected routes, custom sign-in flows.

    103 GitHub starsUsed in 1 repo~1k tokens
    Auto-check: notes
  • React Router v7/v8 patterns with Clerk — rootAuthLoader, getAuth in loaders, clerkMiddleware, protected routes, SSR user data, org switching.

    103 GitHub starsUsed in 1 repo~1.8k tokens
    Auto-check passed
  • TanStack React Start auth patterns with @clerk/tanstack-react-start - createServerFn, beforeLoad guards, loaders, Vinxi server.

    103 GitHub starsUsed in 1 repo~875 tokens
    Auto-check: notes
  • Astro patterns with Clerk — middleware, SSR pages, island components, API routes, static vs SSR rendering.

    103 GitHub stars~822 tokensUpdated yesterday
    Auto-check: notes
  • Clerk Billing

    geekskai/blog

    Clerk Billing for subscription management - render Clerk's PricingTable and in-app checkout drawer, configure subscription plans, seat-limit plans for B2B, feature entitlements with has(), and…

    103 GitHub stars~5.1k tokensUpdated yesterday
    Auto-check passed
  • Chrome Extension auth with @clerk/chrome-extension -- popup/sidepanel setup, syncHost for OAuth/SAML via web app, createClerkClient for service workers and headless extensions, stable CRX ID.

    103 GitHub stars~2.9k tokensUpdated yesterday
    Auto-check: notes

Categories

Questions about Clerk Android

What does Clerk Android do?

Implement Clerk authentication for native Android apps using Kotlin and Jetpack Compose with clerk-android source-guided patterns. Clerk Android is an agent skill from geekskai/blog. Implement Clerk authentication for native Android apps using Kotlin and Jetpack Compose with clerk-android source-guided patterns.

When should I use Clerk Android?

Clerk Android fits situations like: prebuilt AuthView/UserButton; custom API-driven auth flows; React Native projects.

How do I install Clerk Android in Claude Code?

Run `npx skills add geekskai/blog --skill clerk-android -a claude-code`. Or copy the skill folder (.agents/skills/clerk-android in geekskai/blog) into .claude/skills/clerk-android in your project. Claude Code loads it when a task matches its description.

How do I install Clerk Android in Codex?

Run `npx skills add geekskai/blog --skill clerk-android -a codex`. Or copy the skill folder (.agents/skills/clerk-android in geekskai/blog) into .agents/skills/clerk-android in your project. Codex loads it when a task matches its description.

Can I use Clerk Android in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add geekskai/blog --skill clerk-android -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/clerk-android, .gemini/skills/clerk-android, .github/skills/clerk-android and .opencode/skills/clerk-android in your project.

What does Clerk Android need to run?

SKILL.md names no scripts, command-line tools or credentials: Clerk Android is instructions for the agent only. Its frontmatter pre-approves these tools: WebFetch. Compatibility (from SKILL.md): Requires Android Studio and clerk-android Gradle dependency.

Does Clerk Android access the network?

SKILL.md names 2 domains. In commands or code: github.com and clerk.com; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.

Is Clerk Android safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Clerk Android use?

Clerk Android is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Clerk Android use?

About 2.1k tokens (SKILL.md is roughly 8.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.7k tokens, read only when the agent opens those files.

What are the alternatives to Clerk Android?

Skills that share tags, products or a category with Clerk Android: Claude Android Ninja (Drjacky/claude-android-ninja, 124 stars), Expo Brownfield Integration (mweinbach/agent-coworker, 156 stars), Expo UI (arcboxlabs/linkcode, 155 stars) and Expo Brownfield (expo/skills, 2.7k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Clerk Android?

geekskai (a GitHub user) maintains it in geekskai/blog, which has 103 GitHub stars. The repository holds 20 skills in this directory. The repository was last updated on October 6, 2026.

Source: geekskai/blog on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.