@mmerterden/multi-agent-pipeline 20.34.0 → 20.36.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (335) hide show
  1. package/CHANGELOG.md +69 -1
  2. package/README.md +7 -5
  3. package/README.tr.md +6 -5
  4. package/docs/architecture.md +3 -3
  5. package/docs/ecosystem.md +5 -5
  6. package/docs/facts.json +4 -4
  7. package/install/catalog-history.json +1 -1
  8. package/install/claude.mjs +16 -1
  9. package/install/templates/claude-hooks.json +23 -1
  10. package/manifest.json +338 -305
  11. package/package.json +5 -1
  12. package/pipeline/agents/bulk-reader.md +3 -0
  13. package/pipeline/commands/multi-agent/channels/SKILL.md +1 -1
  14. package/pipeline/commands/multi-agent/office-on/SKILL.md +7 -3
  15. package/pipeline/commands/multi-agent/office-pair/SKILL.md +66 -0
  16. package/pipeline/commands/multi-agent/office-status/SKILL.md +3 -2
  17. package/pipeline/commands/multi-agent/sync/SKILL.md +3 -3
  18. package/pipeline/contract/CHANGELOG.md +9 -0
  19. package/pipeline/contract/README.md +1 -0
  20. package/pipeline/contract/fixtures/error-invalid-request.json +1 -1
  21. package/pipeline/contract/fixtures/error-unauthorized.json +1 -1
  22. package/pipeline/contract/fixtures/error-unsigned.json +1 -1
  23. package/pipeline/contract/manifest.json +14 -1
  24. package/pipeline/contract/types/index.d.ts +24 -2
  25. package/pipeline/lib/json-file-lock.mjs +61 -15
  26. package/pipeline/lib/office-remote.mjs +228 -0
  27. package/pipeline/lib/qr-code.mjs +386 -0
  28. package/pipeline/lib/repo-hygiene.sh +1 -0
  29. package/pipeline/lib/run-completion.mjs +17 -0
  30. package/pipeline/multi-agent-refs/channels/issue-comment.md +1 -1
  31. package/pipeline/multi-agent-refs/cross-cli-contract.md +4 -4
  32. package/pipeline/multi-agent-refs/features/office-remote-protocol.md +166 -0
  33. package/pipeline/multi-agent-refs/features/office-threat-model.md +1 -1
  34. package/pipeline/multi-agent-refs/features/scope-check.md +16 -1
  35. package/pipeline/multi-agent-refs/features/verify-by-test.md +10 -0
  36. package/pipeline/multi-agent-refs/help/en.md +1 -0
  37. package/pipeline/multi-agent-refs/help/tr.md +1 -0
  38. package/pipeline/multi-agent-refs/keychain.md +7 -0
  39. package/pipeline/multi-agent-refs/phases/phase-0-init.md +6 -2
  40. package/pipeline/multi-agent-refs/phases/phase-1-plan.md +4 -6
  41. package/pipeline/multi-agent-refs/phases/phase-2-dev.md +9 -12
  42. package/pipeline/multi-agent-refs/phases/phase-3-review.md +9 -8
  43. package/pipeline/multi-agent-refs/phases/phase-4-commit.md +1 -4
  44. package/pipeline/multi-agent-refs/rules.md +3 -2
  45. package/pipeline/multi-agent-refs/tracker-contract.md +1 -1
  46. package/pipeline/office/NOTICE.md +4 -1
  47. package/pipeline/office/assets/char_12.png +0 -0
  48. package/pipeline/office/assets/char_13.png +0 -0
  49. package/pipeline/office/assets/char_14.png +0 -0
  50. package/pipeline/office/assets/char_15.png +0 -0
  51. package/pipeline/office/assets/char_16.png +0 -0
  52. package/pipeline/office/assets/char_17.png +0 -0
  53. package/pipeline/office/assets/char_18.png +0 -0
  54. package/pipeline/office/assets/char_19.png +0 -0
  55. package/pipeline/office/assets/char_20.png +0 -0
  56. package/pipeline/office/assets/char_21.png +0 -0
  57. package/pipeline/office/assets/char_22.png +0 -0
  58. package/pipeline/office/assets/char_23.png +0 -0
  59. package/pipeline/office/assets/char_24.png +0 -0
  60. package/pipeline/office/assets/char_25.png +0 -0
  61. package/pipeline/office/assets/char_26.png +0 -0
  62. package/pipeline/office/assets/char_27.png +0 -0
  63. package/pipeline/office/assets/char_28.png +0 -0
  64. package/pipeline/office/assets/char_29.png +0 -0
  65. package/pipeline/office/assets/char_30.png +0 -0
  66. package/pipeline/office/index.html +293 -49
  67. package/pipeline/schemas/agent-state.schema.json +18 -0
  68. package/pipeline/schemas/planning-output.schema.json +18 -0
  69. package/pipeline/schemas/pr-reach.schema.json +55 -0
  70. package/pipeline/schemas/prefs.schema.json +13 -7
  71. package/pipeline/schemas/triage-output.schema.json +12 -1
  72. package/pipeline/schemas/unattended-policy.json +2 -1
  73. package/pipeline/scripts/_guard_rules.py +449 -1
  74. package/pipeline/scripts/_test-gaming.mjs +36 -0
  75. package/pipeline/scripts/agent-guard.py +79 -19
  76. package/pipeline/scripts/anonymize-findings.mjs +99 -0
  77. package/pipeline/scripts/answer-check.mjs +113 -0
  78. package/pipeline/scripts/answer-check.sh +20 -0
  79. package/pipeline/scripts/autopilot-publish.mjs +9 -2
  80. package/pipeline/scripts/contract-server.mjs +35 -1
  81. package/pipeline/scripts/gate-ledger.mjs +144 -21
  82. package/pipeline/scripts/office-build.mjs +276 -5
  83. package/pipeline/scripts/office-control.mjs +70 -10
  84. package/pipeline/scripts/office-pair.mjs +438 -0
  85. package/pipeline/scripts/office-remote-client.mjs +463 -0
  86. package/pipeline/scripts/phase-tracker.sh +8 -0
  87. package/pipeline/scripts/phase0-exit-gate.mjs +40 -37
  88. package/pipeline/scripts/phone-devices.mjs +9 -1
  89. package/pipeline/scripts/pre-commit-check.sh +28 -2
  90. package/pipeline/scripts/pre-push-check.sh +6 -12
  91. package/pipeline/scripts/rework-base.mjs +87 -0
  92. package/pipeline/scripts/run-commit-check.mjs +104 -0
  93. package/pipeline/scripts/run-scope-guard.mjs +58 -3
  94. package/pipeline/scripts/run-scope-guard.sh +13 -1
  95. package/pipeline/scripts/scope-check-gate.mjs +70 -6
  96. package/pipeline/scripts/task-mirror.mjs +106 -15
  97. package/pipeline/scripts/task-mirror.sh +3 -2
  98. package/pipeline/scripts/test-stability-gate.mjs +112 -0
  99. package/pipeline/scripts/update-check.sh +7 -1
  100. package/pipeline/scripts/update-issue-progress.sh +73 -8
  101. package/pipeline/scripts/validate-planning.mjs +105 -1
  102. package/pipeline/scripts/validate-triage.mjs +42 -2
  103. package/pipeline/scripts/work-items.mjs +119 -1
  104. package/pipeline/scripts/worktree-prepare-all.mjs +200 -0
  105. package/pipeline/scripts/worktree-prepare.sh +40 -4
  106. package/pipeline/scripts/write-state.mjs +67 -24
  107. package/pipeline/skills/.skill-manifest.json +12 -8
  108. package/pipeline/skills/.skills-index.json +15 -4
  109. package/pipeline/skills/shared/README.md +4 -3
  110. package/pipeline/skills/shared/core/apple-archive-compliance/SKILL.md +1 -1
  111. package/pipeline/skills/shared/core/google-play-compliance/SKILL.md +6 -6
  112. package/pipeline/skills/shared/core/google-play-compliance/references/rules.yml +1 -1
  113. package/pipeline/skills/shared/core/multi-agent-channels/SKILL.md +1 -1
  114. package/pipeline/skills/shared/core/multi-agent-office-pair/SKILL.md +19 -0
  115. package/pipeline/skills/shared/core/multi-agent-office-status/SKILL.md +2 -2
  116. package/pipeline/skills/shared/core/multi-agent-sync/SKILL.md +3 -3
  117. package/pipeline/skills/shared/external/alarmkit/references/alarmkit-patterns.md +14 -0
  118. package/pipeline/skills/shared/external/android-architecture/references/patterns.md +6 -0
  119. package/pipeline/skills/shared/external/android-build-quality-gates/references/patterns.md +10 -0
  120. package/pipeline/skills/shared/external/android-datastore/references/patterns.md +11 -0
  121. package/pipeline/skills/shared/external/android-design-tokens-codegen/references/patterns.md +8 -0
  122. package/pipeline/skills/shared/external/android-jetpack-compose-expert/references/patterns.md +6 -0
  123. package/pipeline/skills/shared/external/android-mvi-viewmodel/references/patterns.md +10 -0
  124. package/pipeline/skills/shared/external/android-performance/references/patterns.md +13 -0
  125. package/pipeline/skills/shared/external/android-security/references/patterns.md +16 -0
  126. package/pipeline/skills/shared/external/api-patterns/references/contract-details.md +9 -0
  127. package/pipeline/skills/shared/external/api-security-best-practices/references/abuse-controls.md +12 -0
  128. package/pipeline/skills/shared/external/api-security-best-practices/references/identity-and-access.md +13 -0
  129. package/pipeline/skills/shared/external/api-security-best-practices/references/request-handling.md +12 -0
  130. package/pipeline/skills/shared/external/app-clips/references/data-handoff-notifications-location.md +9 -0
  131. package/pipeline/skills/shared/external/app-clips/references/routing-and-experiences.md +8 -0
  132. package/pipeline/skills/shared/external/app-clips/references/size-capabilities-and-promotion.md +10 -0
  133. package/pipeline/skills/shared/external/app-intents/references/appintents-advanced.md +21 -0
  134. package/pipeline/skills/shared/external/app-store-optimization/references/keyword-research-methodology.md +9 -0
  135. package/pipeline/skills/shared/external/app-store-optimization/references/product-page-variants.md +7 -0
  136. package/pipeline/skills/shared/external/app-store-review/SKILL.md +2 -2
  137. package/pipeline/skills/shared/external/app-store-review/references/privacy-manifest.md +10 -0
  138. package/pipeline/skills/shared/external/app-store-review/references/review-checklists.md +10 -1
  139. package/pipeline/skills/shared/external/apple-on-device-ai/references/coreml-conversion.md +22 -0
  140. package/pipeline/skills/shared/external/apple-on-device-ai/references/coreml-optimization.md +17 -0
  141. package/pipeline/skills/shared/external/apple-on-device-ai/references/foundation-models.md +22 -0
  142. package/pipeline/skills/shared/external/apple-on-device-ai/references/mlx-swift.md +17 -0
  143. package/pipeline/skills/shared/external/authentication/references/keychain-biometric.md +9 -0
  144. package/pipeline/skills/shared/external/authentication/references/passkeys.md +11 -0
  145. package/pipeline/skills/shared/external/avkit/references/avkit-patterns.md +13 -0
  146. package/pipeline/skills/shared/external/background-processing/references/background-task-patterns.md +9 -0
  147. package/pipeline/skills/shared/external/callkit-voip/references/callkit-patterns.md +10 -0
  148. package/pipeline/skills/shared/external/cloudkit-sync/references/cloudkit-patterns.md +15 -0
  149. package/pipeline/skills/shared/external/compose-components/references/patterns.md +7 -0
  150. package/pipeline/skills/shared/external/compose-navigation/references/patterns.md +7 -0
  151. package/pipeline/skills/shared/external/compose-testing/references/patterns.md +15 -0
  152. package/pipeline/skills/shared/external/contacts-framework/references/contacts-patterns.md +9 -0
  153. package/pipeline/skills/shared/external/core-bluetooth/references/ble-patterns.md +11 -0
  154. package/pipeline/skills/shared/external/core-motion/references/motion-patterns.md +10 -0
  155. package/pipeline/skills/shared/external/core-nfc/references/nfc-patterns.md +13 -0
  156. package/pipeline/skills/shared/external/coreml/references/coreml-swift-integration.md +20 -0
  157. package/pipeline/skills/shared/external/cryptokit/references/cryptokit-patterns.md +16 -0
  158. package/pipeline/skills/shared/external/debugging-instruments/references/instruments-guide.md +16 -0
  159. package/pipeline/skills/shared/external/debugging-instruments/references/lldb-patterns.md +14 -0
  160. package/pipeline/skills/shared/external/device-integrity/references/device-integrity-patterns.md +13 -0
  161. package/pipeline/skills/shared/external/energykit/references/energykit-patterns.md +10 -0
  162. package/pipeline/skills/shared/external/eventkit-calendar/references/eventkit-patterns.md +10 -0
  163. package/pipeline/skills/shared/external/fastapi-pro/references/app-structure.md +10 -0
  164. package/pipeline/skills/shared/external/gradle-kotlin-dsl/references/patterns.md +17 -0
  165. package/pipeline/skills/shared/external/healthkit/references/healthkit-patterns.md +12 -0
  166. package/pipeline/skills/shared/external/hig-app-icons/references/icon-workflow.md +10 -0
  167. package/pipeline/skills/shared/external/hig-components-content/references/content-views.md +10 -0
  168. package/pipeline/skills/shared/external/hig-components-layout/references/bars-and-tabs.md +11 -0
  169. package/pipeline/skills/shared/external/hig-foundations/references/foundations-detail.md +13 -0
  170. package/pipeline/skills/shared/external/hig-foundations/references/type-color-spacing.md +13 -0
  171. package/pipeline/skills/shared/external/hig-patterns/references/onboarding-and-states.md +11 -0
  172. package/pipeline/skills/shared/external/hig-platforms/references/ipad-layout.md +12 -0
  173. package/pipeline/skills/shared/external/hig-technologies/references/technologies.md +16 -0
  174. package/pipeline/skills/shared/external/homekit-matter/references/matter-commissioning.md +9 -0
  175. package/pipeline/skills/shared/external/ios-accessibility/references/a11y-patterns.md +18 -0
  176. package/pipeline/skills/shared/external/ios-accessibility/references/large-content-and-appearance.md +9 -0
  177. package/pipeline/skills/shared/external/ios-accessibility/references/media-accessibility.md +9 -0
  178. package/pipeline/skills/shared/external/ios-accessibility/references/nutrition-labels.md +7 -0
  179. package/pipeline/skills/shared/external/ios-coding-standard/references/STANDARD.md +13 -0
  180. package/pipeline/skills/shared/external/ios-design-review/references/appearance-matrix.md +9 -0
  181. package/pipeline/skills/shared/external/ios-design-review/references/checklist.md +15 -0
  182. package/pipeline/skills/shared/external/ios-haptics/references/core-haptics.md +11 -0
  183. package/pipeline/skills/shared/external/ios-iphone-duo/references/api-map.md +11 -0
  184. package/pipeline/skills/shared/external/ios-iphone-duo/references/fixed-assumptions.md +15 -0
  185. package/pipeline/skills/shared/external/ios-iphone-duo/references/poses-and-panes.md +11 -0
  186. package/pipeline/skills/shared/external/ios-localization/references/formatstyle-locale.md +18 -0
  187. package/pipeline/skills/shared/external/ios-localization/references/string-catalogs.md +19 -0
  188. package/pipeline/skills/shared/external/ios-networking/references/background-websocket.md +15 -0
  189. package/pipeline/skills/shared/external/ios-networking/references/file-storage-patterns.md +7 -0
  190. package/pipeline/skills/shared/external/ios-networking/references/lightweight-clients.md +8 -0
  191. package/pipeline/skills/shared/external/ios-networking/references/network-framework.md +12 -0
  192. package/pipeline/skills/shared/external/ios-networking/references/urlsession-patterns.md +17 -0
  193. package/pipeline/skills/shared/external/ios-security/references/app-review-guidelines.md +8 -0
  194. package/pipeline/skills/shared/external/ios-security/references/cryptokit-advanced.md +14 -0
  195. package/pipeline/skills/shared/external/ios-security/references/file-storage-patterns.md +8 -0
  196. package/pipeline/skills/shared/external/ios-security/references/privacy-manifest.md +9 -0
  197. package/pipeline/skills/shared/external/ios-sf-symbols/references/effects-and-custom-symbols.md +9 -0
  198. package/pipeline/skills/shared/external/ios-simulator/references/simctl-commands.md +13 -0
  199. package/pipeline/skills/shared/external/kotlin-coroutines-expert/references/patterns.md +8 -0
  200. package/pipeline/skills/shared/external/live-activities/references/activitykit-patterns.md +21 -0
  201. package/pipeline/skills/shared/external/localization-reuse-map/reference/format-and-output.md +9 -0
  202. package/pipeline/skills/shared/external/localization-reuse-map/reference/sources-and-recipes.md +12 -0
  203. package/pipeline/skills/shared/external/mapkit-location/references/mapkit-corelocation-patterns.md +16 -0
  204. package/pipeline/skills/shared/external/mapkit-location/references/mapkit-patterns.md +21 -0
  205. package/pipeline/skills/shared/external/metrickit-diagnostics/references/metrickit-patterns.md +10 -0
  206. package/pipeline/skills/shared/external/musickit-audio/references/musickit-patterns.md +9 -0
  207. package/pipeline/skills/shared/external/natural-language/references/translation-patterns.md +12 -0
  208. package/pipeline/skills/shared/external/nodejs-backend-patterns/references/runtime-patterns.md +11 -0
  209. package/pipeline/skills/shared/external/passkit-wallet/references/wallet-passes.md +11 -0
  210. package/pipeline/skills/shared/external/pdfkit/references/pdfkit-patterns.md +18 -0
  211. package/pipeline/skills/shared/external/pencilkit-drawing/references/pencilkit-patterns.md +11 -0
  212. package/pipeline/skills/shared/external/permissionkit/references/permissionkit-patterns.md +11 -0
  213. package/pipeline/skills/shared/external/photos-camera-media/references/av-playback.md +15 -0
  214. package/pipeline/skills/shared/external/photos-camera-media/references/camera-capture.md +14 -0
  215. package/pipeline/skills/shared/external/photos-camera-media/references/image-loading-caching.md +14 -0
  216. package/pipeline/skills/shared/external/photos-camera-media/references/photokit-patterns.md +14 -0
  217. package/pipeline/skills/shared/external/push-notifications/references/notification-patterns.md +14 -0
  218. package/pipeline/skills/shared/external/push-notifications/references/rich-notifications.md +10 -0
  219. package/pipeline/skills/shared/external/realitykit-ar/references/realitykit-patterns.md +12 -0
  220. package/pipeline/skills/shared/external/retrofit-networking/references/patterns.md +14 -0
  221. package/pipeline/skills/shared/external/room-database/references/patterns.md +16 -0
  222. package/pipeline/skills/shared/external/shareplay-activities/references/shareplay-patterns.md +10 -0
  223. package/pipeline/skills/shared/external/speech-recognition/references/speechanalyzer-patterns.md +10 -0
  224. package/pipeline/skills/shared/external/spm-build-analysis/references/build-optimization-sources.md +14 -0
  225. package/pipeline/skills/shared/external/spm-build-analysis/references/spm-analysis-checks.md +19 -0
  226. package/pipeline/skills/shared/external/storekit/references/core-patterns.md +13 -0
  227. package/pipeline/skills/shared/external/storekit/references/storekit-advanced.md +31 -0
  228. package/pipeline/skills/shared/external/swift-api-design-guidelines/references/argument-labels-and-parameters.md +8 -0
  229. package/pipeline/skills/shared/external/swift-api-design-guidelines/references/conventions-and-special-rules.md +9 -0
  230. package/pipeline/skills/shared/external/swift-api-design-guidelines/references/naming-and-clarity.md +10 -0
  231. package/pipeline/skills/shared/external/swift-api-design-guidelines/references/side-effects-and-mutating-pairs.md +8 -0
  232. package/pipeline/skills/shared/external/swift-charts/references/charts-patterns.md +24 -0
  233. package/pipeline/skills/shared/external/swift-concurrency/references/bridging-interop.md +8 -0
  234. package/pipeline/skills/shared/external/swift-concurrency/references/concurrency-patterns.md +14 -0
  235. package/pipeline/skills/shared/external/swift-concurrency/references/swiftui-concurrency.md +12 -0
  236. package/pipeline/skills/shared/external/swift-concurrency/references/synchronization-primitives.md +10 -0
  237. package/pipeline/skills/shared/external/swift-concurrency-expert/references/swift-6-2-concurrency.md +8 -0
  238. package/pipeline/skills/shared/external/swift-concurrency-pro/references/actors.md +10 -0
  239. package/pipeline/skills/shared/external/swift-concurrency-pro/references/cancellation.md +7 -0
  240. package/pipeline/skills/shared/external/swift-concurrency-pro/references/interop.md +10 -0
  241. package/pipeline/skills/shared/external/swift-concurrency-pro/references/new-features.md +11 -0
  242. package/pipeline/skills/shared/external/swift-concurrency-pro/references/structured.md +9 -0
  243. package/pipeline/skills/shared/external/swift-concurrency-pro/references/testing.md +13 -0
  244. package/pipeline/skills/shared/external/swift-language/references/swift-attributes-interop.md +7 -0
  245. package/pipeline/skills/shared/external/swift-language/references/swift-patterns-extended.md +14 -0
  246. package/pipeline/skills/shared/external/swift-security/references/biometric-authentication.md +16 -0
  247. package/pipeline/skills/shared/external/swift-security/references/certificate-trust.md +17 -0
  248. package/pipeline/skills/shared/external/swift-security/references/common-anti-patterns.md +19 -0
  249. package/pipeline/skills/shared/external/swift-security/references/compliance-owasp-mapping.md +16 -0
  250. package/pipeline/skills/shared/external/swift-security/references/credential-storage-patterns.md +19 -0
  251. package/pipeline/skills/shared/external/swift-security/references/cryptokit-public-key.md +18 -0
  252. package/pipeline/skills/shared/external/swift-security/references/cryptokit-symmetric.md +16 -0
  253. package/pipeline/skills/shared/external/swift-security/references/keychain-access-control.md +17 -0
  254. package/pipeline/skills/shared/external/swift-security/references/keychain-fundamentals.md +17 -0
  255. package/pipeline/skills/shared/external/swift-security/references/keychain-item-classes.md +17 -0
  256. package/pipeline/skills/shared/external/swift-security/references/keychain-sharing.md +18 -0
  257. package/pipeline/skills/shared/external/swift-security/references/migration-legacy-stores.md +21 -0
  258. package/pipeline/skills/shared/external/swift-security/references/secure-enclave.md +16 -0
  259. package/pipeline/skills/shared/external/swift-security/references/testing-security-code.md +16 -0
  260. package/pipeline/skills/shared/external/swift-testing/references/testing-advanced.md +9 -0
  261. package/pipeline/skills/shared/external/swift-testing/references/testing-patterns.md +24 -0
  262. package/pipeline/skills/shared/external/swift-testing-pro/references/async-tests.md +9 -0
  263. package/pipeline/skills/shared/external/swift-testing-pro/references/new-features.md +11 -0
  264. package/pipeline/skills/shared/external/swift-testing-pro/references/writing-better-tests.md +13 -0
  265. package/pipeline/skills/shared/external/swiftdata/references/core-data-coexistence.md +8 -0
  266. package/pipeline/skills/shared/external/swiftdata/references/swiftdata-advanced.md +17 -0
  267. package/pipeline/skills/shared/external/swiftdata/references/swiftdata-queries.md +12 -0
  268. package/pipeline/skills/shared/external/swiftlint/references/adoption-and-configuration.md +11 -0
  269. package/pipeline/skills/shared/external/swiftlint/references/custom-rules-and-analyze.md +7 -0
  270. package/pipeline/skills/shared/external/swiftlint/references/plugins-run-scripts-and-integrations.md +13 -0
  271. package/pipeline/skills/shared/external/swiftlint/references/rule-reference.md +24 -0
  272. package/pipeline/skills/shared/external/swiftlint/references/rules-suppressions-and-baselines.md +12 -0
  273. package/pipeline/skills/shared/external/swiftui-animation/references/animation-advanced.md +15 -0
  274. package/pipeline/skills/shared/external/swiftui-animation/references/core-animation-bridge.md +15 -0
  275. package/pipeline/skills/shared/external/swiftui-animation/references/scroll-effects.md +12 -0
  276. package/pipeline/skills/shared/external/swiftui-expert-skill/references/accessibility-patterns.md +11 -0
  277. package/pipeline/skills/shared/external/swiftui-expert-skill/references/animation-advanced.md +7 -0
  278. package/pipeline/skills/shared/external/swiftui-expert-skill/references/animation-basics.md +13 -0
  279. package/pipeline/skills/shared/external/swiftui-expert-skill/references/animation-transitions.md +9 -0
  280. package/pipeline/skills/shared/external/swiftui-expert-skill/references/charts-accessibility.md +9 -0
  281. package/pipeline/skills/shared/external/swiftui-expert-skill/references/charts.md +17 -0
  282. package/pipeline/skills/shared/external/swiftui-expert-skill/references/image-optimization.md +9 -0
  283. package/pipeline/skills/shared/external/swiftui-expert-skill/references/latest-apis.md +10 -0
  284. package/pipeline/skills/shared/external/swiftui-expert-skill/references/layout-best-practices.md +12 -0
  285. package/pipeline/skills/shared/external/swiftui-expert-skill/references/list-patterns.md +12 -0
  286. package/pipeline/skills/shared/external/swiftui-expert-skill/references/macos-scenes.md +13 -0
  287. package/pipeline/skills/shared/external/swiftui-expert-skill/references/macos-views.md +12 -0
  288. package/pipeline/skills/shared/external/swiftui-expert-skill/references/macos-window-styling.md +12 -0
  289. package/pipeline/skills/shared/external/swiftui-expert-skill/references/performance-patterns.md +7 -0
  290. package/pipeline/skills/shared/external/swiftui-expert-skill/references/scroll-patterns.md +9 -0
  291. package/pipeline/skills/shared/external/swiftui-expert-skill/references/sheet-navigation-patterns.md +10 -0
  292. package/pipeline/skills/shared/external/swiftui-expert-skill/references/state-management.md +18 -0
  293. package/pipeline/skills/shared/external/swiftui-expert-skill/references/view-structure.md +16 -0
  294. package/pipeline/skills/shared/external/swiftui-gestures/references/gesture-patterns.md +11 -0
  295. package/pipeline/skills/shared/external/swiftui-layout-components/references/form.md +8 -0
  296. package/pipeline/skills/shared/external/swiftui-layout-components/references/grids.md +14 -0
  297. package/pipeline/skills/shared/external/swiftui-layout-components/references/scrollview.md +9 -0
  298. package/pipeline/skills/shared/external/swiftui-liquid-glass/references/liquid-glass.md +22 -0
  299. package/pipeline/skills/shared/external/swiftui-liquid-glass/references/uikit-glass.md +14 -0
  300. package/pipeline/skills/shared/external/swiftui-navigation/references/deeplinks.md +10 -0
  301. package/pipeline/skills/shared/external/swiftui-navigation/references/navigationstack.md +10 -0
  302. package/pipeline/skills/shared/external/swiftui-navigation/references/sheets.md +13 -0
  303. package/pipeline/skills/shared/external/swiftui-navigation/references/tabview.md +10 -0
  304. package/pipeline/skills/shared/external/swiftui-patterns/references/architecture-patterns.md +14 -0
  305. package/pipeline/skills/shared/external/swiftui-patterns/references/deprecated-migration.md +30 -0
  306. package/pipeline/skills/shared/external/swiftui-patterns/references/platform-and-sharing.md +16 -0
  307. package/pipeline/skills/shared/external/swiftui-performance/references/demystify-swiftui-performance-wwdc23.md +11 -0
  308. package/pipeline/skills/shared/external/swiftui-performance/references/optimizing-swiftui-performance-instruments.md +11 -0
  309. package/pipeline/skills/shared/external/swiftui-performance/references/understanding-hangs-in-your-app.md +10 -0
  310. package/pipeline/skills/shared/external/swiftui-performance-audit/references/code-smells.md +8 -0
  311. package/pipeline/skills/shared/external/swiftui-ui-patterns/references/app-wiring.md +12 -0
  312. package/pipeline/skills/shared/external/swiftui-ui-patterns/references/menu-bar.md +10 -0
  313. package/pipeline/skills/shared/external/swiftui-ui-patterns/references/navigationstack.md +11 -0
  314. package/pipeline/skills/shared/external/swiftui-ui-patterns/references/scroll-reveal.md +12 -0
  315. package/pipeline/skills/shared/external/swiftui-ui-patterns/references/sheets.md +14 -0
  316. package/pipeline/skills/shared/external/swiftui-ui-patterns/references/tabview.md +10 -0
  317. package/pipeline/skills/shared/external/swiftui-uikit-interop/references/hosting-migration.md +10 -0
  318. package/pipeline/skills/shared/external/swiftui-uikit-interop/references/representable-recipes.md +13 -0
  319. package/pipeline/skills/shared/external/swiftui-view-refactor/references/mv-patterns.md +12 -0
  320. package/pipeline/skills/shared/external/swiftui-webkit/references/loading-and-observation.md +8 -0
  321. package/pipeline/skills/shared/external/swiftui-webkit/references/navigation-and-javascript.md +8 -0
  322. package/pipeline/skills/shared/external/tipkit/references/tipkit-patterns.md +14 -0
  323. package/pipeline/skills/shared/external/vision-framework/references/vision-requests.md +17 -0
  324. package/pipeline/skills/shared/external/vision-framework/references/visionkit-scanner.md +11 -0
  325. package/pipeline/skills/shared/external/weatherkit/references/weatherkit-patterns.md +11 -0
  326. package/pipeline/skills/shared/external/widgetkit/references/widgetkit-advanced.md +27 -0
  327. package/pipeline/skills/shared/external/xcode-build-fixer/references/build-settings-best-practices.md +9 -0
  328. package/pipeline/skills/shared/external/xcode-build-fixer/references/fix-patterns.md +7 -0
  329. package/pipeline/skills/shared/external/xcode-build-orchestrator/references/build-settings-best-practices.md +9 -0
  330. package/pipeline/skills/shared/external/xcode-compilation-analyzer/references/build-optimization-sources.md +14 -0
  331. package/pipeline/skills/shared/external/xcode-compilation-analyzer/references/code-compilation-checks.md +8 -0
  332. package/pipeline/skills/shared/external/xcode-project-analyzer/references/build-optimization-sources.md +14 -0
  333. package/pipeline/skills/shared/external/xcode-project-analyzer/references/build-settings-best-practices.md +9 -0
  334. package/pipeline/skills/shared/external/xcode-project-analyzer/references/project-audit-checks.md +13 -0
  335. package/pipeline/skills/skills-index.md +2 -1
@@ -1,5 +1,15 @@
1
1
  # Latest SwiftUI APIs Reference
2
2
 
3
+ <!-- toc -->
4
+ - [Table of Contents](#table-of-contents)
5
+ - [Always Use (iOS 15+)](#always-use-ios-15)
6
+ - [When Targeting iOS 16+](#when-targeting-ios-16)
7
+ - [When Targeting iOS 17+](#when-targeting-ios-17)
8
+ - [When Targeting iOS 18+](#when-targeting-ios-18)
9
+ - [When Targeting iOS 26+](#when-targeting-ios-26)
10
+ - [Quick Lookup Table](#quick-lookup-table)
11
+ <!-- /toc -->
12
+
3
13
  > Based on a comparison of Apple's documentation using the Sosumi MCP, we found the latest recommended APIs to use.
4
14
 
5
15
  ## Table of Contents
@@ -1,5 +1,17 @@
1
1
  # SwiftUI Layout Best Practices Reference
2
2
 
3
+ <!-- toc -->
4
+ - [Table of Contents](#table-of-contents)
5
+ - [Relative Layout Over Constants](#relative-layout-over-constants)
6
+ - [Context-Agnostic Views](#context-agnostic-views)
7
+ - [Own Your Container](#own-your-container)
8
+ - [Layout Performance](#layout-performance)
9
+ - [View Logic and Testability](#view-logic-and-testability)
10
+ - [Full-Width Views](#full-width-views)
11
+ - [Action Handlers](#action-handlers)
12
+ - [Summary Checklist](#summary-checklist)
13
+ <!-- /toc -->
14
+
3
15
  ## Table of Contents
4
16
 
5
17
  - [Relative Layout Over Constants](#relative-layout-over-constants)
@@ -1,5 +1,17 @@
1
1
  # SwiftUI List Patterns Reference
2
2
 
3
+ <!-- toc -->
4
+ - [Table of Contents](#table-of-contents)
5
+ - [ForEach Identity and Stability](#foreach-identity-and-stability)
6
+ - [Enumerated Sequences](#enumerated-sequences)
7
+ - [List with Custom Styling](#list-with-custom-styling)
8
+ - [List with Pull-to-Refresh](#list-with-pull-to-refresh)
9
+ - [Empty States with ContentUnavailableView (iOS 17+)](#empty-states-with-contentunavailableview-ios-17)
10
+ - [Custom List Backgrounds](#custom-list-backgrounds)
11
+ - [Table](#table)
12
+ - [Summary Checklist](#summary-checklist)
13
+ <!-- /toc -->
14
+
3
15
  ## Table of Contents
4
16
 
5
17
  - [ForEach Identity and Stability](#foreach-identity-and-stability)
@@ -1,5 +1,18 @@
1
1
  # macOS Scenes Reference
2
2
 
3
+ <!-- toc -->
4
+ - [Table of Contents](#table-of-contents)
5
+ - [Quick Lookup Table](#quick-lookup-table)
6
+ - [Settings (macOS-only)](#settings-macos-only)
7
+ - [MenuBarExtra (macOS-only)](#menubarextra-macos-only)
8
+ - [WindowGroup (macOS behavior)](#windowgroup-macos-behavior)
9
+ - [Window](#window)
10
+ - [UtilityWindow (macOS-only)](#utilitywindow-macos-only)
11
+ - [DocumentGroup](#documentgroup)
12
+ - [Platform Conditionals](#platform-conditionals)
13
+ - [Best Practices](#best-practices)
14
+ <!-- /toc -->
15
+
3
16
  > SwiftUI scene types for macOS apps - `Settings`, `MenuBarExtra`, `WindowGroup`, `Window`, `UtilityWindow`, and `DocumentGroup`. Covers macOS-only scenes and cross-platform scenes with macOS-specific behavior.
4
17
 
5
18
  ## Table of Contents
@@ -1,5 +1,17 @@
1
1
  # macOS Views & Components Reference
2
2
 
3
+ <!-- toc -->
4
+ - [Table of Contents](#table-of-contents)
5
+ - [Quick Lookup Table](#quick-lookup-table)
6
+ - [HSplitView & VSplitView (macOS-only)](#hsplitview-vsplitview-macos-only)
7
+ - [Table](#table)
8
+ - [PasteButton & CopyButton](#pastebutton-copybutton)
9
+ - [File Operations](#file-operations)
10
+ - [Drag, Drop & Pasteboard](#drag-drop-pasteboard)
11
+ - [AppKit Interop](#appkit-interop)
12
+ - [Best Practices](#best-practices)
13
+ <!-- /toc -->
14
+
3
15
  > macOS-specific SwiftUI views, file operations, drag & drop, and AppKit interop. Covers `HSplitView`, `VSplitView`, `Table`, `PasteButton`, file dialogs, cross-app drag & drop, and `NSViewRepresentable`.
4
16
 
5
17
  ## Table of Contents
@@ -1,5 +1,17 @@
1
1
  # macOS Window & Toolbar Styling Reference
2
2
 
3
+ <!-- toc -->
4
+ - [Table of Contents](#table-of-contents)
5
+ - [Quick Lookup Table](#quick-lookup-table)
6
+ - [Toolbar Styles](#toolbar-styles)
7
+ - [Window Style](#window-style)
8
+ - [Window Sizing](#window-sizing)
9
+ - [MenuBarExtra Style (macOS-only)](#menubarextra-style-macos-only)
10
+ - [Navigation Layout (macOS behavior)](#navigation-layout-macos-behavior)
11
+ - [Commands & Keyboard](#commands-keyboard)
12
+ - [Best Practices](#best-practices)
13
+ <!-- /toc -->
14
+
3
15
  > Window configuration, toolbar styles, sizing, positioning, and navigation patterns specific to macOS SwiftUI apps.
4
16
 
5
17
  ## Table of Contents
@@ -1,5 +1,12 @@
1
1
  # SwiftUI Performance Patterns Reference
2
2
 
3
+ <!-- toc -->
4
+ - [Table of Contents](#table-of-contents)
5
+ - [Performance Optimization](#performance-optimization)
6
+ - [Anti-Patterns](#anti-patterns)
7
+ - [Summary Checklist](#summary-checklist)
8
+ <!-- /toc -->
9
+
3
10
  ## Table of Contents
4
11
 
5
12
  - [Performance Optimization](#performance-optimization)
@@ -1,5 +1,14 @@
1
1
  # SwiftUI ScrollView Patterns Reference
2
2
 
3
+ <!-- toc -->
4
+ - [Table of Contents](#table-of-contents)
5
+ - [ScrollViewReader for Programmatic Scrolling](#scrollviewreader-for-programmatic-scrolling)
6
+ - [Scroll Position Tracking](#scroll-position-tracking)
7
+ - [Scroll Transitions and Effects](#scroll-transitions-and-effects)
8
+ - [Scroll Target Behavior](#scroll-target-behavior)
9
+ - [Summary Checklist](#summary-checklist)
10
+ <!-- /toc -->
11
+
3
12
  ## Table of Contents
4
13
 
5
14
  - [ScrollViewReader for Programmatic Scrolling](#scrollviewreader-for-programmatic-scrolling)
@@ -1,5 +1,15 @@
1
1
  # SwiftUI Sheet, Navigation & Inspector Patterns Reference
2
2
 
3
+ <!-- toc -->
4
+ - [Table of Contents](#table-of-contents)
5
+ - [Sheet Patterns](#sheet-patterns)
6
+ - [Navigation Patterns](#navigation-patterns)
7
+ - [Multi-Column Navigation with NavigationSplitView](#multi-column-navigation-with-navigationsplitview)
8
+ - [Inspector](#inspector)
9
+ - [Presentation Modifiers](#presentation-modifiers)
10
+ - [Summary Checklist](#summary-checklist)
11
+ <!-- /toc -->
12
+
3
13
  ## Table of Contents
4
14
 
5
15
  - [Sheet Patterns](#sheet-patterns)
@@ -1,5 +1,23 @@
1
1
  # SwiftUI State Management Reference
2
2
 
3
+ <!-- toc -->
4
+ - [Table of Contents](#table-of-contents)
5
+ - [Property Wrapper Selection Guide](#property-wrapper-selection-guide)
6
+ - [@State](#state)
7
+ - [Property Wrappers Inside @Observable Classes](#property-wrappers-inside-observable-classes)
8
+ - [@Binding](#binding)
9
+ - [@FocusState](#focusstate)
10
+ - [@StateObject vs @ObservedObject (Legacy - Pre-iOS 17)](#stateobject-vs-observedobject-legacy---pre-ios-17)
11
+ - [Don't Pass Values as @State](#dont-pass-values-as-state)
12
+ - [@Bindable (iOS 17+)](#bindable-ios-17)
13
+ - [let vs var for Passed Values](#let-vs-var-for-passed-values)
14
+ - [Environment and Preferences](#environment-and-preferences)
15
+ - [Decision Flowchart](#decision-flowchart)
16
+ - [State Privacy Rules](#state-privacy-rules)
17
+ - [Avoid Nested ObservableObject](#avoid-nested-observableobject)
18
+ - [Key Principles](#key-principles)
19
+ <!-- /toc -->
20
+
3
21
  ## Table of Contents
4
22
 
5
23
  - [Property Wrapper Selection Guide](#property-wrapper-selection-guide)
@@ -1,5 +1,21 @@
1
1
  # SwiftUI View Structure Reference
2
2
 
3
+ <!-- toc -->
4
+ - [Table of Contents](#table-of-contents)
5
+ - [View Structure Principles](#view-structure-principles)
6
+ - [Prefer Modifiers Over Conditional Views](#prefer-modifiers-over-conditional-views)
7
+ - [Extract Subviews, Not Computed Properties](#extract-subviews-not-computed-properties)
8
+ - [When @ViewBuilder Functions Are Acceptable](#when-viewbuilder-functions-are-acceptable)
9
+ - [When to Extract Subviews](#when-to-extract-subviews)
10
+ - [Container View Pattern](#container-view-pattern)
11
+ - [ZStack vs overlay/background](#zstack-vs-overlaybackground)
12
+ - [Compositing Group Before Clipping](#compositing-group-before-clipping)
13
+ - [Reusable Styling with ViewModifier](#reusable-styling-with-viewmodifier)
14
+ - [Skeleton Loading with Redacted Views](#skeleton-loading-with-redacted-views)
15
+ - [UIViewRepresentable Essentials](#uiviewrepresentable-essentials)
16
+ - [Summary Checklist](#summary-checklist)
17
+ <!-- /toc -->
18
+
3
19
  ## Table of Contents
4
20
 
5
21
  - [View Structure Principles](#view-structure-principles)
@@ -1,5 +1,16 @@
1
1
  # Gesture Patterns
2
2
 
3
+ <!-- toc -->
4
+ - [Contents](#contents)
5
+ - [Pinch-to-zoom with MagnifyGesture](#pinch-to-zoom-with-magnifygesture)
6
+ - [Combined rotate and scale](#combined-rotate-and-scale)
7
+ - [Drag-to-reorder](#drag-to-reorder)
8
+ - [Gesture velocity calculations](#gesture-velocity-calculations)
9
+ - [Long-press then drag](#long-press-then-drag)
10
+ - [SwiftUI and UIKit gesture interop](#swiftui-and-uikit-gesture-interop)
11
+ - [Accessibility considerations](#accessibility-considerations)
12
+ <!-- /toc -->
13
+
3
14
  Worked interactions for the `swiftui-gestures` skill. The SKILL.md explains the
4
15
  gesture types, composition and `@GestureState`; this file assumes that
5
16
  material.
@@ -1,5 +1,13 @@
1
1
  # Forms
2
2
 
3
+ <!-- toc -->
4
+ - [When to use Form](#when-to-use-form)
5
+ - [Settings form](#settings-form)
6
+ - [Modal form with validation](#modal-form-with-validation)
7
+ - [Design choices](#design-choices)
8
+ - [Pitfalls](#pitfalls)
9
+ <!-- /toc -->
10
+
3
11
  Form guidance for the `swiftui-layout-components` skill.
4
12
 
5
13
  ## When to use Form
@@ -1,5 +1,19 @@
1
1
  # Grids
2
2
 
3
+ <!-- toc -->
4
+ - [When a grid is the right shape](#when-a-grid-is-the-right-shape)
5
+ - [Picking the grid type](#picking-the-grid-type)
6
+ - [Column strategies](#column-strategies)
7
+ - [Sizing cells](#sizing-cells)
8
+ - [Adaptive picker with selection](#adaptive-picker-with-selection)
9
+ - [Three-up media gallery](#three-up-media-gallery)
10
+ - [Sections in a grid](#sections-in-a-grid)
11
+ - [Selection and interaction](#selection-and-interaction)
12
+ - [Performance](#performance)
13
+ - [Accessibility](#accessibility)
14
+ - [Pitfalls](#pitfalls)
15
+ <!-- /toc -->
16
+
3
17
  Grid guidance for the `swiftui-layout-components` skill.
4
18
 
5
19
  ## When a grid is the right shape
@@ -1,5 +1,14 @@
1
1
  # Scroll Views
2
2
 
3
+ <!-- toc -->
4
+ - [When to use ScrollView](#when-to-use-scrollview)
5
+ - [Conversation screen](#conversation-screen)
6
+ - [ScrollPosition](#scrollposition)
7
+ - [More shapes](#more-shapes)
8
+ - [Scroll edge effects (iOS 26)](#scroll-edge-effects-ios-26)
9
+ - [Pitfalls](#pitfalls)
10
+ <!-- /toc -->
11
+
3
12
  Scroll view guidance for the `swiftui-layout-components` skill.
4
13
 
5
14
  ## When to use ScrollView
@@ -1,5 +1,27 @@
1
1
  # Liquid Glass API Reference
2
2
 
3
+ <!-- toc -->
4
+ - [Contents](#contents)
5
+ - [Overview](#overview)
6
+ - [glassEffect(_:in:)](#glasseffect_in)
7
+ - [Glass](#glass)
8
+ - [Clear glass and the dimming layer](#clear-glass-and-the-dimming-layer)
9
+ - [GlassEffectContainer](#glasseffectcontainer)
10
+ - [glassEffectID(_:in:)](#glasseffectid_in)
11
+ - [glassEffectUnion(id:namespace:)](#glasseffectunionidnamespace)
12
+ - [glassEffectTransition(_:) and GlassEffectTransition](#glasseffecttransition_-and-glasseffecttransition)
13
+ - [Button styles](#button-styles)
14
+ - [DefaultGlassEffectShape](#defaultglasseffectshape)
15
+ - [Concentric shapes](#concentric-shapes)
16
+ - [Custom bars: safeAreaBar](#custom-bars-safeareabar)
17
+ - [Scroll edge effect](#scroll-edge-effect)
18
+ - [Background extension (split views)](#background-extension-split-views)
19
+ - [Availability gating](#availability-gating)
20
+ - [Performance guidelines](#performance-guidelines)
21
+ - [Examples](#examples)
22
+ - [Apple documentation links](#apple-documentation-links)
23
+ <!-- /toc -->
24
+
3
25
  Signatures and behaviour behind the `swiftui-liquid-glass` skill. Read its
4
26
  SKILL.md first for where glass belongs and the workflow; this file is the
5
27
  SwiftUI detail. UIKit is in [uikit-glass.md](uikit-glass.md).
@@ -1,5 +1,19 @@
1
1
  # Liquid Glass in UIKit
2
2
 
3
+ <!-- toc -->
4
+ - [Contents](#contents)
5
+ - [Standard components first](#standard-components-first)
6
+ - [UIGlassEffect](#uiglasseffect)
7
+ - [UIGlassContainerEffect](#uiglasscontainereffect)
8
+ - [Glass buttons](#glass-buttons)
9
+ - [Corners: UICornerConfiguration](#corners-uicornerconfiguration)
10
+ - [Scroll edge effects](#scroll-edge-effects)
11
+ - [UIBackgroundExtensionView](#uibackgroundextensionview)
12
+ - [Fallback and accessibility](#fallback-and-accessibility)
13
+ - [Opting out for one release](#opting-out-for-one-release)
14
+ - [Links](#links)
15
+ <!-- /toc -->
16
+
3
17
  UIKit side of the `swiftui-liquid-glass` skill. Where glass belongs, regular
4
18
  versus clear, and the accessibility rules are in `../SKILL.md` and apply
5
19
  unchanged here. Every API in this file is iOS, iPadOS, Mac Catalyst and tvOS
@@ -1,5 +1,15 @@
1
1
  # Incoming Links and Handoff
2
2
 
3
+ <!-- toc -->
4
+ - [Shape of the solution](#shape-of-the-solution)
5
+ - [Router entry points](#router-entry-points)
6
+ - [Installing it once at the top](#installing-it-once-at-the-top)
7
+ - [Rules and pitfalls](#rules-and-pitfalls)
8
+ - [Universal links](#universal-links)
9
+ - [Custom URL schemes](#custom-url-schemes)
10
+ - [Handoff with NSUserActivity](#handoff-with-nsuseractivity)
11
+ <!-- /toc -->
12
+
3
13
  Part of the `swiftui-navigation` skill. The aim is to send external URLs to
4
14
  the right screen inside the app, and to let the system handle anything the app
5
15
  does not own.
@@ -1,5 +1,15 @@
1
1
  # NavigationStack and Routers
2
2
 
3
+ <!-- toc -->
4
+ - [Building blocks](#building-blocks)
5
+ - [A router with a per-tab stack](#a-router-with-a-per-tab-stack)
6
+ - [Mapping destinations once](#mapping-destinations-once)
7
+ - [One router per tab](#one-router-per-tab)
8
+ - [Data-driven tabs, each with its own stack](#data-driven-tabs-each-with-its-own-stack)
9
+ - [Rules worth keeping](#rules-worth-keeping)
10
+ - [Pitfalls](#pitfalls)
11
+ <!-- /toc -->
12
+
3
13
  Part of the `swiftui-navigation` skill. Use this when navigation is driven from
4
14
  code or from deep links and every tab needs a history of its own: one
5
15
  `NavigationStack` per tab, each bound to its own path and router.
@@ -1,5 +1,18 @@
1
1
  # Sheet Routing
2
2
 
3
+ <!-- toc -->
4
+ - [Building blocks](#building-blocks)
5
+ - [The destination enum](#the-destination-enum)
6
+ - [The mapping modifier](#the-mapping-modifier)
7
+ - [Opening a sheet from deep in the tree](#opening-a-sheet-from-deep-in-the-tree)
8
+ - [Wiring at the root](#wiring-at-the-root)
9
+ - [Sheets that push their own screens](#sheets-that-push-their-own-screens)
10
+ - [Rules worth keeping](#rules-worth-keeping)
11
+ - [Presentation sizing](#presentation-sizing)
12
+ - [Confirming dismissal](#confirming-dismissal)
13
+ - [Pitfalls](#pitfalls)
14
+ <!-- /toc -->
15
+
3
16
  Part of the `swiftui-navigation` skill. Routing every modal through one place
4
17
  lets any view open a sheet without threading bindings through its parents, and
5
18
  it keeps working as screens are added.
@@ -1,5 +1,15 @@
1
1
  # TabView Architecture
2
2
 
3
+ <!-- toc -->
4
+ - [Building blocks](#building-blocks)
5
+ - [Selection with side effects](#selection-with-side-effects)
6
+ - [Selection without side effects](#selection-without-side-effects)
7
+ - [Rules worth keeping](#rules-worth-keeping)
8
+ - [Tabs generated from data](#tabs-generated-from-data)
9
+ - [Tab APIs from iOS 18 and iOS 26](#tab-apis-from-ios-18-and-ios-26)
10
+ - [Pitfalls](#pitfalls)
11
+ <!-- /toc -->
12
+
3
13
  Part of the `swiftui-navigation` skill. Goal: tabs that scale across platforms,
4
14
  with one source of truth for what each tab is and shows, different tab sets and
5
15
  sidebar groupings per platform, tabs generated from data, and a hook that can
@@ -1,5 +1,19 @@
1
1
  # Architecture Patterns
2
2
 
3
+ <!-- toc -->
4
+ - [Contents](#contents)
5
+ - [1. MV Principles](#1-mv-principles)
6
+ - [2. Why Not MVVM](#2-why-not-mvvm)
7
+ - [3. MV in Practice](#3-mv-in-practice)
8
+ - [4. Working With an Existing View Model](#4-working-with-an-existing-view-model)
9
+ - [5. When a New View Model Is Justified](#5-when-a-new-view-model-is-justified)
10
+ - [6. Environment or Initializer Injection](#6-environment-or-initializer-injection)
11
+ - [7. Testing Strategy](#7-testing-strategy)
12
+ - [8. App Shell and Dependency Graph](#8-app-shell-and-dependency-graph)
13
+ - [9. Lightweight Clients](#9-lightweight-clients)
14
+ - [10. Further Reading](#10-further-reading)
15
+ <!-- /toc -->
16
+
3
17
  The reasoning behind the Model-View default, the cases where a view model still
4
18
  earns its place, and a reference wiring for the app shell.
5
19
 
@@ -1,5 +1,35 @@
1
1
  # Deprecated API Migration
2
2
 
3
+ <!-- toc -->
4
+ - [Contents](#contents)
5
+ - [1. NavigationView to NavigationStack](#1-navigationview-to-navigationstack)
6
+ - [2. NavigationView Sidebar to NavigationSplitView](#2-navigationview-sidebar-to-navigationsplitview)
7
+ - [3. ObservableObject and @StateObject to @Observable and @State](#3-observableobject-and-stateobject-to-observable-and-state)
8
+ - [4. @ObservedObject to let or @Bindable](#4-observedobject-to-let-or-bindable)
9
+ - [5. @EnvironmentObject to @Environment](#5-environmentobject-to-environment)
10
+ - [6. foregroundColor to foregroundStyle](#6-foregroundcolor-to-foregroundstyle)
11
+ - [7. Single-Value onChange to Two-Value onChange](#7-single-value-onchange-to-two-value-onchange)
12
+ - [8. ActionSheet to confirmationDialog](#8-actionsheet-to-confirmationdialog)
13
+ - [9. Legacy Alert to alert with Actions](#9-legacy-alert-to-alert-with-actions)
14
+ - [10. AnyView to @ViewBuilder and Concrete Types](#10-anyview-to-viewbuilder-and-concrete-types)
15
+ - [11. onAppear with Task to .task](#11-onappear-with-task-to-task)
16
+ - [12. presentationMode to dismiss](#12-presentationmode-to-dismiss)
17
+ - [13. GeometryReader Overuse to containerRelativeFrame and Layout](#13-geometryreader-overuse-to-containerrelativeframe-and-layout)
18
+ - [14. PreviewProvider to the #Preview Macro](#14-previewprovider-to-the-preview-macro)
19
+ - [15. XCTest to Swift Testing](#15-xctest-to-swift-testing)
20
+ - [16. onDelete and EditButton to swipeActions](#16-ondelete-and-editbutton-to-swipeactions)
21
+ - [17. UIApplication.shared.open to openURL](#17-uiapplicationsharedopen-to-openurl)
22
+ - [18. @FetchRequest to @Query](#18-fetchrequest-to-query)
23
+ - [19. Type-Erased Returns to some and any](#19-type-erased-returns-to-some-and-any)
24
+ - [20. sheet(isPresented:) with an Optional to sheet(item:)](#20-sheetispresented-with-an-optional-to-sheetitem)
25
+ - [21. UIColor Interop to Asset Colors and Color.resolve](#21-uicolor-interop-to-asset-colors-and-colorresolve)
26
+ - [22. ForEach over a Range to Identifiable Data](#22-foreach-over-a-range-to-identifiable-data)
27
+ - [23. Toolbar Placements navigationBar to topBar](#23-toolbar-placements-navigationbar-to-topbar)
28
+ - [24. cornerRadius to clipShape](#24-cornerradius-to-clipshape)
29
+ - [25. tabItem to Tab (iOS 18)](#25-tabitem-to-tab-ios-18)
30
+ - [26. showsIndicators to scrollIndicators](#26-showsindicators-to-scrollindicators)
31
+ <!-- /toc -->
32
+
3
33
  A map from older SwiftUI and iOS patterns (iOS 15 era through iOS 26) to their
4
34
  current replacements. Each entry shows the old form, the new form, and notes.
5
35
  Code is written for iOS 26 and Swift 6.3. Every entry names the release its
@@ -1,5 +1,21 @@
1
1
  # Platform and Sharing
2
2
 
3
+ <!-- toc -->
4
+ - [Contents](#contents)
5
+ - [1. Transferable](#1-transferable)
6
+ - [2. ShareLink](#2-sharelink)
7
+ - [3. Drag and Drop](#3-drag-and-drop)
8
+ - [4. Pasteboard](#4-pasteboard)
9
+ - [5. Transferable Recipes](#5-transferable-recipes)
10
+ - [6. Transferable Pitfalls](#6-transferable-pitfalls)
11
+ - [7. Media Previews and Viewer](#7-media-previews-and-viewer)
12
+ - [8. Top Bar Overlays](#8-top-bar-overlays)
13
+ - [9. Title Menus](#9-title-menus)
14
+ - [10. Input Toolbar](#10-input-toolbar)
15
+ - [11. Menu Bar Commands](#11-menu-bar-commands)
16
+ - [12. macOS Settings](#12-macos-settings)
17
+ <!-- /toc -->
18
+
3
19
  Moving data in and out of the app (`Transferable`, `ShareLink`, drag and drop,
4
20
  the pasteboard), media previews, top bar overlays, title menus, input bars,
5
21
  menu bar commands and the macOS Settings window.
@@ -1,5 +1,16 @@
1
1
  # Mental Model: Dependencies, Identity and Lifecycle
2
2
 
3
+ <!-- toc -->
4
+ - [The Model](#the-model)
5
+ - [Dependencies Decide What Updates](#dependencies-decide-what-updates)
6
+ - [Work That Does Not Belong in `body`](#work-that-does-not-belong-in-body)
7
+ - [Identity for Lists and Tables](#identity-for-lists-and-tables)
8
+ - [Initialisation and Lifecycle](#initialisation-and-lifecycle)
9
+ - [Tools](#tools)
10
+ - [Fix Patterns](#fix-patterns)
11
+ - [Checking a Fix](#checking-a-fix)
12
+ <!-- /toc -->
13
+
3
14
  Notes drawn from the WWDC23 session "Demystify SwiftUI performance". Use them
4
15
  to explain why a SwiftUI screen does more work than it should.
5
16
 
@@ -1,5 +1,16 @@
1
1
  # Profiling with the SwiftUI Instrument
2
2
 
3
+ <!-- toc -->
4
+ - [When It Is the Right Tool](#when-it-is-the-right-tool)
5
+ - [Capture Setup](#capture-setup)
6
+ - [The SwiftUI Lanes](#the-swiftui-lanes)
7
+ - [Workflow: One Update Is Too Slow](#workflow-one-update-is-too-slow)
8
+ - [Workflow: Too Many Updates](#workflow-too-many-updates)
9
+ - [Cause and Effect Graph](#cause-and-effect-graph)
10
+ - [Hot Spots and How to Fix Them](#hot-spots-and-how-to-fix-them)
11
+ - [Measuring Again](#measuring-again)
12
+ <!-- /toc -->
13
+
3
14
  Based on the WWDC25 session "Optimize SwiftUI performance with Instruments".
4
15
  The SwiftUI Instrument described here ships with Instruments 26.
5
16
 
@@ -1,5 +1,15 @@
1
1
  # Hangs and the Main Run Loop
2
2
 
3
+ <!-- toc -->
4
+ - [What Counts as a Hang](#what-counts-as-a-hang)
5
+ - [How the Main Thread Spends a Frame](#how-the-main-thread-spends-a-frame)
6
+ - [Triage](#triage)
7
+ - [Common Causes](#common-causes)
8
+ - [Fix Patterns](#fix-patterns)
9
+ - [Verification](#verification)
10
+ - [What This Means for SwiftUI](#what-this-means-for-swiftui)
11
+ <!-- /toc -->
12
+
3
13
  Based on Apple's article "Understanding hangs in your app" and the WWDC23
4
14
  session "Analyze hangs with Instruments".
5
15
 
@@ -1,5 +1,13 @@
1
1
  # Common code smells and remediation patterns
2
2
 
3
+ <!-- toc -->
4
+ - [Intent](#intent)
5
+ - [High-priority smells](#high-priority-smells)
6
+ - [Observation fan-out](#observation-fan-out)
7
+ - [Remediation notes](#remediation-notes)
8
+ - [Triage order](#triage-order)
9
+ <!-- /toc -->
10
+
3
11
  ## Intent
4
12
 
5
13
  Use this reference during code-first review to map visible SwiftUI patterns to likely runtime costs and safer remediation guidance.
@@ -1,5 +1,17 @@
1
1
  # App wiring and dependency graph
2
2
 
3
+ <!-- toc -->
4
+ - [Intent](#intent)
5
+ - [Recommended structure](#recommended-structure)
6
+ - [Dependency selection](#dependency-selection)
7
+ - [Root shell example (generic)](#root-shell-example-generic)
8
+ - [Dependency graph modifier (generic)](#dependency-graph-modifier-generic)
9
+ - [SwiftData / ModelContainer](#swiftdata-modelcontainer)
10
+ - [Sheet routing (enum-driven)](#sheet-routing-enum-driven)
11
+ - [When to use](#when-to-use)
12
+ - [Caveats](#caveats)
13
+ <!-- /toc -->
14
+
3
15
  ## Intent
4
16
 
5
17
  Show how to wire the app shell (TabView + NavigationStack + sheets) and install a global dependency graph (environment objects, services, streaming clients, SwiftData ModelContainer) in one place.
@@ -1,5 +1,15 @@
1
1
  # Menu Bar
2
2
 
3
+ <!-- toc -->
4
+ - [Intent](#intent)
5
+ - [Core patterns](#core-patterns)
6
+ - [Example: basic command menu](#example-basic-command-menu)
7
+ - [Example: insert and replace groups](#example-insert-and-replace-groups)
8
+ - [Example: focused menu state](#example-focused-menu-state)
9
+ - [Menu bar and Settings](#menu-bar-and-settings)
10
+ - [Pitfalls](#pitfalls)
11
+ <!-- /toc -->
12
+
3
13
  ## Intent
4
14
 
5
15
  Use this when adding or customizing the macOS/iPadOS menu bar with SwiftUI commands.
@@ -1,5 +1,16 @@
1
1
  # NavigationStack
2
2
 
3
+ <!-- toc -->
4
+ - [Intent](#intent)
5
+ - [Core architecture](#core-architecture)
6
+ - [Example: custom router with per-tab stack](#example-custom-router-with-per-tab-stack)
7
+ - [Example: centralized destination mapping](#example-centralized-destination-mapping)
8
+ - [Example: binding per tab (tabs with independent history)](#example-binding-per-tab-tabs-with-independent-history)
9
+ - [Example: generic tabs with per-tab NavigationStack](#example-generic-tabs-with-per-tab-navigationstack)
10
+ - [Design choices to keep](#design-choices-to-keep)
11
+ - [Pitfalls](#pitfalls)
12
+ <!-- /toc -->
13
+
3
14
  ## Intent
4
15
 
5
16
  Use this pattern for programmatic navigation and deep links, especially when each tab needs an independent navigation history. The key idea is one `NavigationStack` per tab, each with its own path binding and router object.
@@ -1,5 +1,17 @@
1
1
  # Scroll-reveal detail surfaces
2
2
 
3
+ <!-- toc -->
4
+ - [Intent](#intent)
5
+ - [Core pattern](#core-pattern)
6
+ - [Minimal structure](#minimal-structure)
7
+ - [Design choices to keep](#design-choices-to-keep)
8
+ - [Morphing a shared control](#morphing-a-shared-control)
9
+ - [Haptics and affordances](#haptics-and-affordances)
10
+ - [Interaction guards](#interaction-guards)
11
+ - [Pitfalls](#pitfalls)
12
+ - [Concrete example](#concrete-example)
13
+ <!-- /toc -->
14
+
3
15
  ## Intent
4
16
 
5
17
  Use this pattern when a detail screen has a primary surface first and secondary content behind it, and you want the user to reveal that secondary layer by scrolling or swiping instead of tapping a separate button.
@@ -1,5 +1,19 @@
1
1
  # Sheets
2
2
 
3
+ <!-- toc -->
4
+ - [Intent](#intent)
5
+ - [Core architecture](#core-architecture)
6
+ - [Example: item-driven local sheet](#example-item-driven-local-sheet)
7
+ - [Example: SheetDestination enum](#example-sheetdestination-enum)
8
+ - [Example: withSheetDestinations modifier](#example-withsheetdestinations-modifier)
9
+ - [Example: presenting from a child view](#example-presenting-from-a-child-view)
10
+ - [Required wiring](#required-wiring)
11
+ - [Example: sheets that need their own navigation](#example-sheets-that-need-their-own-navigation)
12
+ - [Example: sheet owns its actions](#example-sheet-owns-its-actions)
13
+ - [Design choices to keep](#design-choices-to-keep)
14
+ - [Pitfalls](#pitfalls)
15
+ <!-- /toc -->
16
+
3
17
  ## Intent
4
18
 
5
19
  Use a centralized sheet routing pattern so any view can present modals without prop-drilling. This keeps sheet state in one place and scales as the app grows.
@@ -1,5 +1,15 @@
1
1
  # TabView
2
2
 
3
+ <!-- toc -->
4
+ - [Intent](#intent)
5
+ - [Core architecture](#core-architecture)
6
+ - [Example: custom binding with side effects](#example-custom-binding-with-side-effects)
7
+ - [Example: direct binding without side effects](#example-direct-binding-without-side-effects)
8
+ - [Design choices to keep](#design-choices-to-keep)
9
+ - [Dynamic tabs pattern](#dynamic-tabs-pattern)
10
+ - [Pitfalls](#pitfalls)
11
+ <!-- /toc -->
12
+
3
13
  ## Intent
4
14
 
5
15
  Use this pattern for a scalable, multi-platform tab architecture with: