一键导入
localization-developer
Context-aware routing to the Anytype iOS localization system. Use when working with .xcstrings files, Loc constants, hardcoded strings, or user-facing text.
菜单
Context-aware routing to the Anytype iOS localization system. Use when working with .xcstrings files, Loc constants, hardcoded strings, or user-facing text.
Triage Sentry crashes for an iOS release. Pulls unresolved fatal events from sentry.anytype.io, investigates each fingerprint cluster against the source, creates one Linear ticket per cluster with a root-cause hypothesis (no proposed fix - the implementer figures that out with full context), then archives the Sentry issue (status `ignored`) so it stops cluttering the inbox. Activate on "triage Sentry crashes", "triage fatal errors", "investigate crashes in release", "fatal errors in 0.X.Y", or any time the user wants to turn a release's Sentry inbox into actionable Linear tickets. The slash entry is `/do-sentry-triage`.
Expert guidance on Swift concurrency using the Office Building mental model. Use when working with actors, isolation, Sendable, TaskGroups, or fixing concurrency warnings and data race issues.
Context-aware routing to iOS 26 Liquid Glass implementation patterns. Use when working with glass effects, GlassEffectContainer, morphing transitions, or iOS 26 visual effects.
Decompose a large Linear task into independent subtasks with a master plan. Analyzes issue, project, related tasks, PRs, and codebase to create PLAN.md and Linear sub-issues.
Context-aware routing to Swift/iOS development patterns, architecture, and best practices. Use when working with .swift files, ViewModels, Coordinators, refactoring, or discussing Swift/SwiftUI patterns.
SwiftUI view structure, composition, and best practices. Use when refactoring SwiftUI views, organizing view files, or extracting subviews.
| name | localization-developer |
| description | Context-aware routing to the Anytype iOS localization system. Use when working with .xcstrings files, Loc constants, hardcoded strings, or user-facing text. |
Context-aware routing to the Anytype iOS localization system. Helps you navigate the 3-file .xcstrings structure and use Loc constants correctly.
.xcstrings filesLoc constantsLoc constantsen), Crowdin handles othersmake generate after editing .xcstrings filesrg "yourSearchTerm" Modules/Loc/Sources/Loc/Generated/Strings.swiftmake generateAnytypeText(Loc.yourKey, style: .uxCalloutMedium)Is this text for authentication/login/vault?
YES → Auth.xcstrings (86 keys)
NO → Continue
Is this text for spaces/objects/collaboration?
YES → Workspace.xcstrings (493 keys)
NO → Continue
Is this text for settings/widgets/general UI?
YES → UI.xcstrings (667 keys)
Modules/Loc/Sources/Loc/Resources/Auth.xcstringsModules/Loc/Sources/Loc/Resources/Workspace.xcstringsModules/Loc/Sources/Loc/Resources/UI.xcstringsGenerated output: All 3 files → single Strings.swift (~5,000 lines, 1,246 total keys)
"Your localization key" : {
"extractionState" : "manual",
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "Your English text here"
}
}
}
}
Key naming:
"No properties yet" ✅"No properties yet. Add some." ❌"QR.join.title" → Loc.Qr.Join.title// String: "You've reached the limit of %lld editors"
Loc.SpaceLimit.Editors.title(4)
// String: "Welcome, %@!"
Loc.welcomeMessage("John")
String(format: Loc.limitReached, 10) // DON'T DO THIS
Why: SwiftGen auto-generates parameterized functions for format specifiers (%lld, %d, %@).
Format specifiers:
%lld → Int parameter%d → Int parameter%@ → String parameter%.1f → Double parameterrg "keyName" --type swiftmake generate// ❌ WRONG
Text("Delete")
// ✅ CORRECT
Text(Loc.delete)
// In Auth.xcstrings
"Settings" : { ... }
// In UI.xcstrings
"Settings" : { ... } // ❌ DUPLICATE! Breaks generation
// ❌ WRONG
String(format: Loc.limitReached, 10)
// ✅ CORRECT
Loc.limitReached(10)
// ❌ WRONG - Crowdin will overwrite
"de" : { "value" : "Meine Übersetzung" }
// ✅ CORRECT - Only edit English
"en" : { "value" : "My translation" }
Full Guide: Anytype/Sources/PresentationLayer/Common/LOCALIZATION_GUIDE.md
For comprehensive coverage of:
rg in Strings.swift)en)make generateLoc.yourKeyIOS_DEVELOPMENT_GUIDE.md - Never use hardcoded stringsCODE_GENERATION_GUIDE.md - Understanding make generateNavigation: This is a smart router. For deep details, always refer to LOCALIZATION_GUIDE.md.