.claude/skills/code-generation-developer/SKILL.md
Context-aware routing to code generation workflows including SwiftGen, Sourcery, Feature Flags, and Protobuf. Use when running make generate, adding feature flags, or working with generated files.
npx skillsauth add anyproto/anytype-swift code-generation-developerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Context-aware routing to code generation workflows: SwiftGen, Sourcery, Feature Flags, and Protobuf. Helps you navigate when and how to run generators.
make generate// Generated using Sourcery/SwiftGen are auto-generatedmake generate after changes - When updating templates, flags, assets, or localizationmake generate # Run all generators (SwiftGen, Sourcery, assets, localization)
make generate-middle # Regenerate middleware and protobuf (when dependencies change)
make setup-middle # Initial middleware setup
File: /Modules/AnytypeCore/AnytypeCore/Utils/FeatureFlags/FeatureDescription+Flags.swift
extension FeatureDescription {
static let newChatInterface = FeatureDescription(
title: "New Chat Interface",
type: .feature(author: "Your Name", releaseVersion: "0.42.0"),
defaultValue: false, // Off in production
debugValue: true // On in debug builds for testing
)
}
make generate
This creates: Modules/AnytypeCore/AnytypeCore/Generated/FeatureFlags.swift
import AnytypeCore
if FeatureFlags.newChatInterface {
NewChatView()
} else {
LegacyChatView()
}
.debug: Debug-only (not available in production).feature(author:releaseVersion:): Production feature with metadatadefaultValue: false for unreleased featuresdebugValue: true for easier developer testingmake generate| You Did This | Run This | Why |
|--------------|----------|-----|
| Added/updated .xcstrings | make generate | Regenerate Loc constants |
| Added feature flag | make generate | Generate FeatureFlags enum |
| Added icon to Assets.xcassets | make generate | Generate Image asset constants |
| Modified Sourcery template | make generate | Regenerate code from templates |
| Updated middleware version | make generate-middle | Regenerate protobuf bindings |
QRCode.svg)/Modules/Assets/.../Assets.xcassets/DesignSystem/x32/QRCode.imageset/make generateImage(asset: .X32.qrCode)Icon Sizes: x18, x24, x32, x40 (pt)
SwiftGen generates Loc constants from .xcstrings files.
See localization-developer skill for complete workflow.
Sourcery generates Swift code from templates based on source file annotations.
Common uses:
Workflow:
// sourcery: AutoEquatablemake generateDependencies/Middleware/Lib.xcframework missing binariesmake setup-middle # Initial setup
make generate-middle # Regenerate middleware + protobuf
// In FeatureFlags.swift (GENERATED)
static let myFlag: Bool = true // ❌ DON'T DO THIS
// Your changes will be overwritten
✅ Correct: Edit FeatureDescription+Flags.swift, then make generate
// Added FeatureDescription but didn't generate
if FeatureFlags.myNewFlag { // ❌ Error: unresolved identifier
...
}
✅ Correct: Run make generate first
Symptoms: "Lib.xcframework missing binaries"
Solution: make setup-middle or make generate
Full Guide: Modules/AnytypeCore/CODE_GENERATION_GUIDE.md
For comprehensive coverage of:
make generate if you added/updated:
LOCALIZATION_GUIDE.md - Localization keys generated by SwiftGenIOS_DEVELOPMENT_GUIDE.md - Never edit generated filesNavigation: This is a smart router. For deep technical details, always refer to CODE_GENERATION_GUIDE.md.
development
Smart router to testing patterns and practices. Use when writing unit tests, creating mocks, testing edge cases, or working with Swift Testing and XCTest frameworks.
development
Audit and improve SwiftUI runtime performance through code review and Instruments guidance. Use for diagnosing slow rendering, janky scrolling, excessive view updates, or layout thrash in SwiftUI apps.
development
SwiftUI view structure, composition, and best practices. Use when refactoring SwiftUI views, organizing view files, or extracting subviews.
development
Write, review, or improve SwiftUI code following best practices for state management, view composition, performance, macOS-specific APIs, and iOS 26+ Liquid Glass adoption. Use when building new SwiftUI features, refactoring existing views, reviewing code quality, or adopting modern SwiftUI patterns.