CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

authentication

Builds iOS authentication with AuthenticationServices and LocalAuthentication. Use for Sign in with Apple, passkeys/WebAuthn, credential state or revocation, OAuth/web sessions, Password AutoFill, identity-token server validation, and local biometric reauthentication.

Quality

88%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

78%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A well-structured, code-first reference: executable examples for all five flows, a useful Common Mistakes section, a review checklist, and correctly separated one-level-deep bundle references. It falls short of top marks on actionability (undefined passkeyRequest, implied delegate conformance), workflow clarity (no explicit validation feedback loops), and conciseness (TOC and an unpinned version-target line).

Suggestions

Actionability: define or source `passkeyRequest` in the Password AutoFill snippet (it is used but never created there), and show the minimal ASAuthorizationControllerDelegate handling for passkey results so the examples are copy-paste ready.

Workflow clarity: add an explicit validation feedback loop for identity tokens, e.g., verify signature/expiry on the server → if invalid, re-check getCredentialState and re-authenticate, mirroring the loop style the Review Checklist only names.

Conciseness: move "Targets Swift 6.4 / iOS 26+" into a short compatibility note (or remove it) so version-sensitive details don't age the skill, and drop the Contents TOC — the section headers already provide navigation at this length.

DimensionReasoningScore

Conciseness

Sections are lean and code-first with no re-teaching of known concepts (e.g., "Authenticate without passwords using hardware-backed credentials synced via iCloud Keychain" is one line, then code). Minor trimmable items remain: the 8-line Contents TOC and the time-sensitive "Targets Swift 6.4 / iOS 26+" version line, which is not placed in a compatibility/deprecated section. Not 5 per the version-info guideline; not 3 because no section pads or explains what Claude already knows.

4 / 5

Actionability

Every flow has concrete, mostly executable Swift ("SignInWithAppleButton(.signIn) { request in … }", "ASAuthorizationPlatformPublicKeyCredentialProvider(relyingPartyIdentifier: \"example.com\")", "ASWebAuthenticationSession(url:callbackURLScheme:) …"), with specific config steps ("webcredentials:example.com"). Minor gaps: the Password AutoFill snippet references an undefined "passkeyRequest", and ASAuthorizationControllerDelegate/presentation-provider conformance is implied rather than shown. Not 5 (not fully copy-paste ready for the passkey/AutoFill flows); not 3 (real executable code, not pseudocode).

4 / 5

Workflow Clarity

Each flow is sequenced setup → request → result handling, and checkpoints exist: "Check credential state on app launch using ASAuthorizationAppleIDProvider().getCredentialState(forUserID:)", the canEvaluatePolicy pre-check, and a closing "Review Checklist" covering all flows. Not 5: no explicit validate→fix→retry feedback loops (server-side identity-token verification is named in the checklist/mistakes but never looped with recovery steps); not 3: checkpoints are explicit and present, not merely implicit.

4 / 5

Progressive Disclosure

The body is a concise overview with quick examples per flow, and detail is appropriately split into two real, one-level-deep, descriptively labeled references — "Keychain & biometric patterns: references/keychain-biometric.md" and "Passkey patterns: references/passkeys.md" (both files exist and contain no nested local references) — alongside a clearly organized Apple API-doc link list. Matches the anchor-5 structure of overview plus well-signaled one-level-deep references.

5 / 5

Total

17

/

20

Passed

Description

92%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description: it names the domain and frameworks, enumerates concrete capabilities comprehensively, and includes an explicit "Use for…" clause with natural trigger terms. The only weakness is missing common synonyms such as "Face ID"/"Touch ID" that users would naturally say when asking for biometric auth.

DimensionReasoningScore

Specificity

"Builds iOS authentication with AuthenticationServices and LocalAuthentication" plus "Use for Sign in with Apple, passkeys/WebAuthn, credential state or revocation, OAuth/web sessions, Password AutoFill, identity-token server validation, and local biometric reauthentication" lists multiple concrete capabilities with comprehensive coverage of the domain it scopes itself to. Not 4: there is no meaningful gap across the two named frameworks' main surfaces.

5 / 5

Completeness

Explicitly answers both: "what" ("Builds iOS authentication with AuthenticationServices and LocalAuthentication") and "when" ("Use for Sign in with Apple, passkeys/WebAuthn, credential state or revocation, OAuth/web sessions, Password AutoFill, identity-token server validation, and local biometric reauthentication") with concrete trigger phrases. Matches the anchor-5 example structure; anchor 4 would require the "when" to be less explicit, which it is not.

5 / 5

Trigger Term Quality

Natural trigger terms are strong — "Sign in with Apple", "passkeys", "WebAuthn", "OAuth", "Password AutoFill", "biometric" — but common user phrasings like "Face ID", "Touch ID", and "log in / sign in" are absent. Fits anchor 4 (good coverage, a few natural terms missing); not 5 because synonyms users actually say are missing, not 3 because coverage is far beyond "some relevant keywords".

4 / 5

Distinctiveness Conflict Risk

Clear niche — iOS authentication via Apple's AuthenticationServices and LocalAuthentication — with ecosystem-specific triggers (Sign in with Apple, passkeys, webcredentials-adjacent features) that are unlikely to fire for unrelated skills. Minimal conflict risk; not 4 because nothing in the description suggests overlap with a neighboring skill.

5 / 5

Total

19

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

thienqo/ios-skills

Path

skills/authentication/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.