Skip to content

Skills

Browse Apple Text skills by topic family and routing role.

Apple Text ships 39 skills. This page is the canonical grouped catalog: choose the topic family first, then use each skill’s role label to narrow further.

If the user does not know the catalog yet, start with /apple-text:ask.

These sections group related skills by subsystem so SwiftUI wrappers, TextKit runtime issues, and rich-text modeling stop competing for the same slot.

Start here when the request is broad, needs triage, or should route through the shortest high-signal entry point.

SkillRoleWhen to Use
apple-textRouterUse when the user has an Apple text-system problem but the right specialist skill is not obvious, or when the request mixes multiple text subsystems.
apple-text-auditWorkflowUse when reviewing Apple text code for TextKit fallback risk, editing lifecycle bugs, deprecated APIs, or Writing Tools breakage.
apple-text-recipesWorkflowUse when building common text features or looking up quick recipes.
apple-text-textkit-diagDiagnosticUse when debugging broken text.
apple-text-apple-docsReferenceUse when you need official Apple-authored documentation, exact API signatures, or Swift diagnostic explanations from Xcode-bundled docs.

Use these when the main job is choosing the right text view, platform surface, or TextKit stack.

SkillRoleWhen to Use
apple-text-viewsDecisionUse when choosing between SwiftUI Text/TextField/TextEditor, UITextView, or NSTextView.
apple-text-layout-manager-selectionDecisionUse when choosing between TextKit 1 and TextKit 2, evaluating migration risk, or comparing NSLayoutManager vs NSTextLayoutManager.
apple-text-appkit-vs-uikitDecisionUse when comparing NSTextView and UITextView capabilities or porting editor behavior between macOS and iOS.

Use these when the hard part is crossing between SwiftUI and UIKit or AppKit text systems.

SkillRoleWhen to Use
apple-text-texteditor-26ReferenceUse when building rich-text editing with SwiftUI TextEditor on iOS 26+ or evaluating whether it replaces a UITextView wrapper.
apple-text-representableWorkflowUse when wrapping UITextView or NSTextView in SwiftUI.
apple-text-swiftui-bridgingDecisionUse when deciding whether a text type or attribute crosses the SwiftUI/TextKit boundary cleanly, or checking interoperability rules.

Use these for fallback behavior, layout invalidation, viewport rendering, and direct TextKit runtime mechanics.

SkillRoleWhen to Use
apple-text-exclusion-pathsReferenceUse when text needs to wrap around images or shapes, building multi-column text layout, or using exclusion paths, linked containers, and NSTextTable.
apple-text-fallback-triggersReferenceUse when debugging or preventing TextKit 2 fallback to TextKit 1.
apple-text-layout-invalidationReferenceUse when debugging stale layout or working with ensureLayout, invalidateLayout, or the invalidation model in TextKit 1 and 2.
apple-text-measurementReferenceUse when text is clipping, truncating unexpectedly, or when measuring text size, calculating boundingRect, or sizing views to fit text content.
apple-text-textkit1-refReferenceUse when working with TextKit 1 and you need NSLayoutManager, NSTextStorage, or NSTextContainer APIs.
apple-text-textkit2-refReferenceUse when working with TextKit 2 and you need NSTextLayoutManager or NSTextContentManager APIs.
apple-text-viewport-renderingReferenceUse when working with viewport layout, line-fragment geometry, rendering attributes, font substitution, or scroll-driven layout.

Use these for editing behaviors such as Writing Tools, undo, input, interaction, accessibility, and clipboard flows.

SkillRoleWhen to Use
apple-text-accessibilityWorkflowUse when implementing VoiceOver, Dynamic Type, or accessibility traits in custom Apple text editors.
apple-text-drag-dropWorkflowUse when customizing drag and drop in Apple text editors.
apple-text-find-replaceWorkflowUse when implementing find and replace in text editors.
apple-text-interactionWorkflowUse when customizing selection, edit menus, link taps, gestures, cursor appearance, or long-press actions in text editors.
apple-text-pasteboardWorkflowUse when handling copy, cut, or paste in text editors.
apple-text-spell-autocorrectWorkflowUse when implementing spell checking, autocorrect, or text completion.
apple-text-undoWorkflowUse when implementing or debugging undo/redo in text editors.
apple-text-writing-toolsWorkflowUse when integrating Writing Tools.
apple-text-dynamic-typeReferenceUse when implementing Dynamic Type scaling, custom font metrics, accessibility sizes, or content size category changes.
apple-text-input-refReferenceUse when implementing or debugging UITextInput, UIKeyInput, or NSTextInputClient.

Use these when the work centers on attributed content, formatting attributes, attachments, colors, or Markdown semantics.

SkillRoleWhen to Use
apple-text-attributed-stringDecisionUse when choosing between AttributedString and NSAttributedString, defining custom attributes, or converting between them.
apple-text-attachments-refReferenceUse when embedding images, custom views, Genmoji, or other non-text content inline.
apple-text-colorsReferenceUse when choosing text colors, semantic colors, dark mode adaptation, or wide-color/HDR text across UIKit, AppKit, and SwiftUI.
apple-text-formatting-refReferenceUse when looking up NSAttributedString.Key values, underline styles, shadows, lists, tables, or view-compatibility rules.
apple-text-line-breakingReferenceUse when configuring line break mode, hyphenation, truncation, line height, paragraph spacing, or tab stops via NSParagraphStyle.
apple-text-markdownReferenceUse when working with Markdown in SwiftUI Text or AttributedString.

Use these for storage, parsing, Core Text, bidirectional text, and Foundation or NaturalLanguage text utilities.

SkillRoleWhen to Use
apple-text-storageReferenceUse when working with NSTextStorage, NSTextContentStorage, or NSTextContentManager.
apple-text-bidiReferenceUse when handling bidirectional text, RTL languages, writing direction controls, or cursor behavior in Arabic/Hebrew.
apple-text-core-textReferenceUse when working with Core Text for glyph-level access, custom typesetting, hit testing, font tables, or when TextKit 2 lacks the glyph APIs you need.
apple-text-foundation-refReferenceUse when using Foundation or NaturalLanguage text utilities.
apple-text-parsingDecisionUse when deciding between Swift Regex and NSRegularExpression, bridging regex results to NSRange, or choosing a parsing strategy.

Use Problem Routing when the answer shape is clearer than the subsystem and you want to scan routers, workflows, diagnostics, decisions, and references directly.