CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

core-nfc

Read and write NFC tags using CoreNFC. Use when scanning NDEF tags, reading ISO7816/ISO15693/FeliCa/MIFARE tags, writing NDEF messages, handling NFC session lifecycle, configuring NFC entitlements, or implementing background tag reading in iOS apps.

Quality

94%

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

85%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, lean skill body with executable Swift examples, explicit validation checkpoints for the risky write path, a common-mistakes section, and a review checklist. Advanced material is properly offloaded to an actual, well-organized reference file. The only weaknesses are minor: a redundant intro paragraph, a Contents TOC that adds tokens, and a tag-reader write example that omits the session-setup context.

Suggestions

Remove the opening paragraph that restates the frontmatter description, and consider dropping the Contents TOC (sections are short enough to scan directly) to tighten token efficiency.

Complete the write flow: show NFCTagReaderSession creation and delegate conformance (parallel to the NDEF reader class) so the Tag Reader Session example is fully copy-paste ready.

Replace force-unwrapped payload constructors (wellKnownTypeURIPayload(url: URL(string: ...)!)!) with guard-let examples, since a nil URL silently crashes copy-paste usage.

DimensionReasoningScore

Conciseness

The body is tight — each section pairs a one-line instruction with minimal commentary and code comments are sparse — but there is minor trimmable padding: the intro paragraph ("Read and write NFC tags on iPhone using CoreNFC. Supports...") restates the frontmatter description, and the Contents TOC adds ~10 lines. This fits the 4 anchor (efficient, minor instances that could be trimmed) rather than 5, where every token would earn its place.

4 / 5

Actionability

The NDEF reader example is a complete, executable delegate class and setup steps name exact entitlement keys and values, but the tag-reader/write example is a floating delegate callback without the surrounding NFCTagReaderSessionDelegate conformance or session-begin code, and payload construction uses force-unwraps ("URL(string: ...)!)!"). This matches the 4 anchor (mostly executable, minor gaps) rather than 5, where all common cases would be copy-paste ready.

4 / 5

Workflow Clarity

Setup is a numbered 1–5 sequence with an availability checkpoint ("Always verify NFCNDEFReaderSession.readingAvailable"), the destructive write path has explicit validation ("Always query ndefTag.queryNDEFStatus and verify .readWrite status before attempting writes"), error recovery is addressed (timeout error named, didInvalidateWithError shown), and a Review Checklist closes the loop. This matches the 5 anchor (clear sequence, explicit validation, feedback for errors, checklist) rather than 4, since checkpoints and error handling are present throughout.

5 / 5

Progressive Disclosure

The body keeps core flows inline and offloads extended patterns to a real, one-level-deep reference (references/nfc-patterns.md exists, 477 lines, well-sectioned, no nested file references), clearly signaled as "Extended patterns (ISO 7816 commands, multi-tag scanning, NDEF locking)". Structure matches the 5 anchor (clear overview, well-signaled one-level-deep references, easy navigation) rather than 4, since the split is appropriate and navigation is explicit.

5 / 5

Total

18

/

20

Passed

Description

100%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.

An exemplary description: concrete, comprehensive, third-person, with an explicit 'Use when' clause enumerating specific trigger scenarios. It clearly states what the skill does and when to use it with domain-specific natural keywords and no padding or over-claims.

DimensionReasoningScore

Specificity

Lists multiple concrete actions — "Read and write NFC tags", "scanning NDEF tags", "writing NDEF messages", "handling NFC session lifecycle", "configuring NFC entitlements", "implementing background tag reading" — comprehensively covering the CoreNFC domain. This matches the 5 anchor (multiple specific concrete actions, comprehensive coverage) rather than 4, since no meaningful capability area of the framework is omitted.

5 / 5

Completeness

Explicitly answers both: what ("Read and write NFC tags using CoreNFC") and when ("Use when scanning NDEF tags, ... or implementing background tag reading in iOS apps") with concrete trigger phrases. The 'Use when' clause is present and enumerates specific triggers, matching the 5 anchor; a 4 would require the 'when' to be less explicit or generic.

5 / 5

Trigger Term Quality

Natural terms a user would say are comprehensively covered: "NFC tags", "NDEF", "CoreNFC", "scanning", "writing NDEF messages", "background tag reading", "NFC entitlements", plus the tag-format names ISO7816/ISO15693/FeliCa/MIFARE. No file extensions exist for this domain; within it, synonym coverage is complete, matching the 5 anchor rather than 4 where only 'a few natural terms' would be missing.

5 / 5

Distinctiveness Conflict Risk

Clear niche — CoreNFC on iOS with named tag formats, entitlements, and session lifecycle — with distinct triggers and minimal overlap risk with other skills. Third-person voice is used ("Read and write", "Use when"), so no voice penalty applies; it matches the 5 anchor rather than 4 because the triggers (NDEF, FeliCa/MIFARE tag formats, NFC entitlements) are unambiguous.

5 / 5

Total

20

/

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/core-nfc/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.