mcpField
S
swift-development

swift-development

github.com/rshankras开发838491 次安装14 周前更新
代码仓库

关于 swift-development

面向跨 Apple 平台 Swift 开发的指导技能,涵盖并发、内存性能和代码规模。模块包含 Swift 6.2 迁移说明及底层内存主题。

主要功能

  1. 01Swift 并发架构指导
  2. 02Swift 6.2 变更与迁移参考
  3. 03并发隔离和数据竞争指导
  4. 04InlineArray 与 Span 内存指导
  5. 05Swift 代码复杂度与规模限制

适用场景

  1. 01将项目迁移到 Swift 6 严格并发
  2. 02诊断 Actor 隔离或数据竞争错误
  3. 03了解 Swift 6.2 并发变更
  4. 04减少性能敏感代码中的内存分配

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/rshankras/claude-code-apple-skills --skill swift-development

安装后在 Claude Code 中输入/swift-development确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

code-size/rules/
swiftlint.yml
concurrency-patterns/
actors-and-isolation.md
concurrency-internals.md
continuations-bridging.md
migration-guide.md
structured-concurrency.md
swift62-concurrency.md
concurrency/rules/
swiftlint.yml
memory/
swift-performance.md

详细介绍

Swift 开发

适用于所有 Apple 平台的 Swift 语言级指南。

此技能的启用时机

在以下情况下使用此技能:

  • 用户询问 Swift 并发(async/await、actors、Sendable、TaskGroup)
  • 用户需要 Swift 6 严格并发迁移方面的帮助
  • 用户遇到数据竞争或 actor 隔离错误
  • 用户询问 InlineArray、Span 或底层内存性能
  • 用户想消除堆分配或替换不安全指针
  • 用户询问与任何特定平台无关的现代 Swift 模式
  • 用户希望对 Agent 编写的代码设置复杂度/大小限制(SwiftLint 阈值)

可用模块

concurrency-patterns/

Swift 并发架构与模式。

  • Swift 6.2 易于上手的并发功能(包括 nonisolated(nonsending)、Apple 的采用准则)
  • 结构化并发(async let、TaskGroup、.task 修饰符、任务局部值)
  • Actors、隔离、可重入性、@MainActor、Sendable
  • 运行时内部机制与性能分析(协作线程池、不安全原语、Swift Concurrency Instrument)
  • 用于桥接旧版 API 的 Continuations
  • Swift 6 严格并发迁移指南
concurrency/

Swift 6.2 并发更新参考——概述变更内容(async 保持在调用方执行、默认 MainActor 推断、隔离一致性、@concurrent),并提供从 6.0/6.1 迁移的步骤和常见错误。此文件与 concurrency-patterns/swift62-concurrency.md 有意存在内容重叠:问题是“6.2 有什么变化?”时使用此文件;构建或审查异步代码时使用 concurrency-patterns。

code-size/

Swift 代码的复杂度与大小限制——SwiftLint 阈值规则(圈复杂度、函数/类型/文件长度、参数数量),并提供违规基线采用路径,确保现有代码不会造成阻碍。属于确定性质量关卡的一部分,与 testing/fitness-functions 和 testing/coverage-ratchet 配合使用。

memory/

InlineArray、Span 和 Swift 性能成本模型。

  • InlineArray:固定大小、栈分配的集合,不产生堆开销
  • Span 系列:对连续内存进行安全、不可逃逸的访问(+ OutputRawSpan、swift-binary-parsing)
  • 生命周期依赖和不可逃逸类型约束
  • swift-performance.md:成本模型——分配、ARC/保留-释放、独占性检查、分派、泛型与存在类型、闭包、~Copyable 所有权

使用方法

  1. 根据用户的问题判断其需求
  2. 从子目录中读取相关模块文件
  3. 将指南应用于用户的具体情境
  4. 根据需要与特定平台的技能(ios/、macos/)交叉参考

评论

支持 Markdown