
Natural Language
Implement and review iOS NaturalLanguage features—language detection, tokenization, entities, sentiment, and embeddings—for inbox or search UX on Apple platforms.
Install
npx skills add https://github.com/dpearson2699/swift-ios-skills --skill natural-languageWhat is this skill?
- NLTokenizer, NLLanguageRecognizer, NLTagger, and NLEmbedding usage for analysis pipelines
- Thread confinement: one tokenizer/tagger per queue to avoid Apple framework thread-safety pitfalls
- languageConstraints and languageHints for short or ambiguous text
- Sentiment and tags treated as optional with graceful handling of unsupported languages
- Eval-driven review checklist for translation availability in SwiftUI flows
Adoption & trust: 1.7k installs on skills.sh; 713 GitHub stars; 3/3 security scanners passed (skills.sh audits).
Recommended Skills
Vercel React Native Skillsvercel-labs/agent-skills
Firebase Basicsfirebase/agent-skills
Building Native Uiexpo/skills
Firebase Ai Logic Basicsfirebase/agent-skills
Native Data Fetchingexpo/skills
Firebase Firestorefirebase/agent-skills
Journey fit
Primary fit
NaturalLanguage framework work happens while building the iOS client feature surface, before App Store launch polish. Tokenizer, tagger, and embedding APIs are wired in SwiftUI or UIKit frontend code with on-device Apple frameworks.
Common Questions / FAQ
Is Natural Language safe to install?
skills.sh reports 3 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.
SKILL.md
READMESKILL.md - Natural Language
{ "skill_name": "natural-language", "evals": [ { "id": 0, "name": "text-analysis-pipeline", "prompt": "I'm adding an iOS 26 inbox feature that detects the message language, tokenizes words, extracts people and organizations, computes a sentiment score, and finds semantically similar keywords for search suggestions. Sketch the NaturalLanguage implementation and review checklist.", "expected_output": "A NaturalLanguage implementation outline that uses NLTokenizer, NLLanguageRecognizer, NLTagger, and NLEmbedding accurately, handles language/support limits, and avoids thread-safety and per-token tagger mistakes.", "files": [], "expectations": [ "Uses NLTokenizer with the correct token unit and keeps tokenizer/tagger instances confined to one thread or dispatch queue at a time.", "Uses NLLanguageRecognizer with languageConstraints or languageHints when text is short or expected languages are known.", "Uses NLTagger with .nameType, .sentimentScore, and appropriate options such as .omitWhitespace, .omitPunctuation, and .joinNames.", "Treats sentiment and tags as optional and handles unsupported languages or missing tag schemes instead of force-unwrapping.", "Checks NLEmbedding word or sentence embedding availability and does not assume embeddings exist for every language." ] }, { "id": 1, "name": "translation-availability-review", "prompt": "Review this SwiftUI translation plan: use the system translation popover on iOS 17.4, use TranslationSession and .translationTask for programmatic batch translation on the same deployment target, prefer .highFidelity because it can use a server, and ignore errors because the framework downloads languages automatically.", "expected_output": "A correction-focused Translation framework review that splits API availability, keeps translation on-device, handles language availability and throwing APIs, and explains SwiftUI and direct-session usage safely.", "files": [], "expectations": [ "Separates translationPresentation availability from TranslationSession, translationTask, LanguageAvailability, and batch translation availability.", "Corrects highFidelity/lowLatency guidance without claiming TranslationSession sends content to a server.", "Uses LanguageAvailability status checks and handles .installed, .supported, and .unsupported.", "Wraps TranslationSession throwing calls such as translate, translations(from:), and prepareTranslation in error handling.", "Explains that direct TranslationSession(installedSource:target:) outside SwiftUI requires installed languages, while SwiftUI translationTask can request downloads." ] }, { "id": 2, "name": "sibling-boundary-routing", "prompt": "I have one feature request: scan text from a receipt image, transcribe a spoken note, tokenize and identify the language of the resulting text, detect names and sentiment, find semantically similar keywords with embeddings, maybe add a custom text classifier/tagger, translate a summary to Spanish, localize UI strings with String Catalogs (.xcstrings), plurals, RTL, date and currency formatting, and maybe use Apple Intelligence to generate the summary. Which parts belong in the NaturalLanguage skill and which should be handed to sibling skills?", "expected_output": "A boundary-aware routing answer that keeps NaturalLanguage/Translation responsible for text analysis and translation, and routes OCR, speech transcription, localization, and generative summarization to the appropriate sibling skills.", "files": [], "expectations": [ "Keeps tokenization, language identification, named entity recognition, sentiment analysis, embeddings, and in-app translation in the natural-language scope.", "Routes receipt-image OCR to the Vision framework skill rather than treating NaturalLanguage as OCR.",