buildanything 1.8.0 → 2.1.1

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 (494) hide show
  1. package/.claude-plugin/marketplace.json +3 -3
  2. package/.claude-plugin/plugin.json +17 -3
  3. package/CHANGELOG.md +57 -0
  4. package/README.md +57 -61
  5. package/agents/a11y-architect.md +168 -0
  6. package/agents/briefing-officer.md +172 -0
  7. package/agents/business-model.md +82 -29
  8. package/agents/code-architect.md +80 -0
  9. package/agents/code-reviewer.md +256 -0
  10. package/agents/code-simplifier.md +72 -0
  11. package/agents/design-brand-guardian.md +312 -53
  12. package/agents/design-critic.md +144 -0
  13. package/agents/design-inclusive-visuals-specialist.md +8 -19
  14. package/agents/design-ui-designer.md +352 -56
  15. package/agents/design-ux-architect.md +418 -55
  16. package/agents/design-ux-researcher.md +359 -49
  17. package/agents/engineering-ai-engineer.md +28 -36
  18. package/agents/engineering-backend-architect.md +187 -36
  19. package/agents/engineering-data-engineer.md +227 -43
  20. package/agents/engineering-devops-automator.md +229 -74
  21. package/agents/engineering-frontend-developer.md +223 -34
  22. package/agents/engineering-mobile-app-builder.md +8 -1
  23. package/agents/engineering-rapid-prototyper.md +45 -11
  24. package/agents/engineering-security-engineer.md +265 -61
  25. package/agents/engineering-senior-developer.md +141 -19
  26. package/agents/engineering-sre.md +86 -0
  27. package/agents/engineering-technical-writer.md +287 -41
  28. package/agents/feature-intel.md +111 -0
  29. package/agents/ios-app-review-guardian.md +21 -2
  30. package/agents/ios-foundation-models-specialist.md +22 -2
  31. package/agents/ios-product-reality-auditor.md +292 -0
  32. package/agents/ios-storekit-specialist.md +11 -2
  33. package/agents/ios-swift-architect.md +29 -1
  34. package/agents/ios-swift-search.md +9 -1
  35. package/agents/ios-swift-ui-design.md +40 -5
  36. package/agents/marketing-app-store-optimizer.md +248 -64
  37. package/agents/planner.md +221 -0
  38. package/agents/pr-test-analyzer.md +64 -0
  39. package/agents/product-feedback-synthesizer.md +70 -2
  40. package/agents/product-owner.md +163 -0
  41. package/agents/product-reality-auditor.md +216 -0
  42. package/agents/product-spec-writer.md +176 -0
  43. package/agents/refactor-cleaner.md +110 -0
  44. package/agents/security-reviewer.md +129 -0
  45. package/agents/silent-failure-hunter.md +55 -0
  46. package/agents/swift-build-resolver.md +121 -0
  47. package/agents/swift-reviewer.md +113 -0
  48. package/agents/tech-feasibility.md +26 -4
  49. package/agents/testing-api-tester.md +238 -59
  50. package/agents/testing-evidence-collector.md +50 -1
  51. package/agents/testing-performance-benchmarker.md +23 -1
  52. package/agents/testing-reality-checker.md +7 -1
  53. package/agents/visual-research.md +118 -0
  54. package/bin/adapters/cycle-counter-tool.ts +155 -0
  55. package/bin/adapters/scribe-tool.ts +73 -0
  56. package/bin/adapters/state-save-tool.ts +130 -0
  57. package/bin/adapters/write-lease-tool.ts +127 -0
  58. package/bin/buildanything-runtime.js +15 -0
  59. package/bin/buildanything-runtime.ts +241 -0
  60. package/bin/graph-index.js +24 -0
  61. package/bin/graph-index.ts +340 -0
  62. package/bin/mcp-servers/graph-mcp.js +26 -0
  63. package/bin/mcp-servers/graph-mcp.ts +481 -0
  64. package/bin/mcp-servers/orchestrator-mcp.js +26 -0
  65. package/bin/mcp-servers/orchestrator-mcp.ts +361 -0
  66. package/bin/setup.js +312 -76
  67. package/commands/add-feature.md +2 -0
  68. package/commands/build.md +994 -265
  69. package/commands/fix.md +1 -1
  70. package/commands/idea-sweep.md +2 -2
  71. package/commands/self-check.md +121 -0
  72. package/commands/setup.md +61 -9
  73. package/commands/ux-review.md +5 -5
  74. package/commands/verify.md +9 -9
  75. package/docs/migration/agents.yaml +729 -0
  76. package/docs/migration/phase-graph.yaml +1504 -0
  77. package/docs/migration/sdk-host-compat.md +18 -0
  78. package/hooks/compile-writer-owner-cache.ts +171 -0
  79. package/hooks/design-md-lint +4 -0
  80. package/hooks/design-md-lint.ts +295 -0
  81. package/hooks/hooks.json +36 -0
  82. package/hooks/pre-tool-use +19 -0
  83. package/hooks/pre-tool-use.ts +807 -0
  84. package/hooks/record-mode-transitions.ts +235 -0
  85. package/hooks/session-start +71 -1
  86. package/hooks/subagent-start +17 -0
  87. package/hooks/subagent-start.ts +472 -0
  88. package/hooks/subagent-stop +17 -0
  89. package/hooks/subagent-stop.ts +153 -0
  90. package/package.json +26 -4
  91. package/protocols/agent-prompt-authoring.md +165 -0
  92. package/protocols/architecture-schema.md +178 -0
  93. package/protocols/cleanup.md +4 -0
  94. package/protocols/decision-log.md +135 -0
  95. package/protocols/design-md-authoring.md +520 -0
  96. package/protocols/design-md-spec.md +362 -0
  97. package/protocols/fake-data-detector.md +1 -1
  98. package/protocols/ios-context.md +10 -11
  99. package/protocols/ios-fake-data-detector.md +65 -0
  100. package/protocols/ios-phase-branches.md +299 -39
  101. package/protocols/launch-readiness.md +262 -0
  102. package/protocols/metric-loop.md +62 -2
  103. package/protocols/page-spec-schema.md +234 -0
  104. package/protocols/product-spec-schema.md +354 -0
  105. package/protocols/smoke-test.md +9 -1
  106. package/protocols/sprint-tasks-schema.md +53 -0
  107. package/protocols/state-schema.json +423 -0
  108. package/protocols/state-schema.md +202 -0
  109. package/protocols/verify.md +91 -3
  110. package/protocols/web-phase-branches.md +395 -75
  111. package/skills/ios/_VENDORED.md +2 -0
  112. package/skills/ios/app-store-connect-metadata/SKILL.md +148 -0
  113. package/skills/ios/asc-privacy-manifest/SKILL.md +350 -0
  114. package/skills/ios/hig-components-content/SKILL.md +86 -0
  115. package/skills/ios/hig-components-content/references/activity-views.md +79 -0
  116. package/skills/ios/hig-components-content/references/charts.md +180 -0
  117. package/skills/ios/hig-components-content/references/collections.md +48 -0
  118. package/skills/ios/hig-components-content/references/color-wells.md +42 -0
  119. package/skills/ios/hig-components-content/references/image-views.md +82 -0
  120. package/skills/ios/hig-components-content/references/image-wells.md +34 -0
  121. package/skills/ios/hig-components-content/references/lockups.md +78 -0
  122. package/skills/ios/hig-components-content/references/web-views.md +36 -0
  123. package/skills/ios/hig-components-controls/SKILL.md +88 -0
  124. package/skills/ios/hig-components-controls/references/combo-boxes.md +40 -0
  125. package/skills/ios/hig-components-controls/references/controls.md +112 -0
  126. package/skills/ios/hig-components-controls/references/gauges.md +74 -0
  127. package/skills/ios/hig-components-controls/references/labels.md +92 -0
  128. package/skills/ios/hig-components-controls/references/pickers.md +128 -0
  129. package/skills/ios/hig-components-controls/references/rating-indicators.md +38 -0
  130. package/skills/ios/hig-components-controls/references/segmented-controls.md +94 -0
  131. package/skills/ios/hig-components-controls/references/sliders.md +92 -0
  132. package/skills/ios/hig-components-controls/references/steppers.md +40 -0
  133. package/skills/ios/hig-components-controls/references/text-fields.md +88 -0
  134. package/skills/ios/hig-components-controls/references/text-views.md +56 -0
  135. package/skills/ios/hig-components-controls/references/toggles.md +127 -0
  136. package/skills/ios/hig-components-controls/references/token-fields.md +48 -0
  137. package/skills/ios/hig-components-controls/references/virtual-keyboards.md +156 -0
  138. package/skills/ios/hig-components-dialogs/SKILL.md +76 -0
  139. package/skills/ios/hig-components-dialogs/references/action-sheets.md +74 -0
  140. package/skills/ios/hig-components-dialogs/references/alerts.md +158 -0
  141. package/skills/ios/hig-components-dialogs/references/digit-entry-views.md +32 -0
  142. package/skills/ios/hig-components-dialogs/references/popovers.md +81 -0
  143. package/skills/ios/hig-components-dialogs/references/sheets.md +157 -0
  144. package/skills/ios/hig-components-layout/SKILL.md +99 -0
  145. package/skills/ios/hig-components-layout/references/boxes.md +48 -0
  146. package/skills/ios/hig-components-layout/references/column-views.md +44 -0
  147. package/skills/ios/hig-components-layout/references/lists-and-tables.md +99 -0
  148. package/skills/ios/hig-components-layout/references/ornaments.md +56 -0
  149. package/skills/ios/hig-components-layout/references/outline-views.md +64 -0
  150. package/skills/ios/hig-components-layout/references/panels.md +75 -0
  151. package/skills/ios/hig-components-layout/references/scroll-views.md +123 -0
  152. package/skills/ios/hig-components-layout/references/sidebars.md +109 -0
  153. package/skills/ios/hig-components-layout/references/split-views.md +110 -0
  154. package/skills/ios/hig-components-layout/references/tab-bars.md +173 -0
  155. package/skills/ios/hig-components-layout/references/tab-views.md +68 -0
  156. package/skills/ios/hig-components-layout/references/windows.md +188 -0
  157. package/skills/ios/hig-components-menus/SKILL.md +81 -0
  158. package/skills/ios/hig-components-menus/references/action-button.md +61 -0
  159. package/skills/ios/hig-components-menus/references/buttons.md +261 -0
  160. package/skills/ios/hig-components-menus/references/context-menus.md +105 -0
  161. package/skills/ios/hig-components-menus/references/disclosure-controls.md +84 -0
  162. package/skills/ios/hig-components-menus/references/dock-menus.md +40 -0
  163. package/skills/ios/hig-components-menus/references/edit-menus.md +88 -0
  164. package/skills/ios/hig-components-menus/references/menus.md +171 -0
  165. package/skills/ios/hig-components-menus/references/pop-up-buttons.md +70 -0
  166. package/skills/ios/hig-components-menus/references/pull-down-buttons.md +77 -0
  167. package/skills/ios/hig-components-menus/references/the-menu-bar.md +303 -0
  168. package/skills/ios/hig-components-menus/references/toolbars.md +256 -0
  169. package/skills/ios/hig-components-search/SKILL.md +68 -0
  170. package/skills/ios/hig-components-search/references/page-controls.md +120 -0
  171. package/skills/ios/hig-components-search/references/path-controls.md +40 -0
  172. package/skills/ios/hig-components-search/references/search-fields.md +189 -0
  173. package/skills/ios/hig-components-status/SKILL.md +80 -0
  174. package/skills/ios/hig-components-status/references/activity-rings.md +105 -0
  175. package/skills/ios/hig-components-status/references/progress-indicators.md +116 -0
  176. package/skills/ios/hig-components-status/references/status-bars.md +38 -0
  177. package/skills/ios/hig-components-system/SKILL.md +88 -0
  178. package/skills/ios/hig-components-system/references/app-clips.md +387 -0
  179. package/skills/ios/hig-components-system/references/app-shortcuts.md +114 -0
  180. package/skills/ios/hig-components-system/references/complications.md +425 -0
  181. package/skills/ios/hig-components-system/references/home-screen-quick-actions.md +42 -0
  182. package/skills/ios/hig-components-system/references/live-activities.md +442 -0
  183. package/skills/ios/hig-components-system/references/notifications.md +153 -0
  184. package/skills/ios/hig-components-system/references/top-shelf.md +135 -0
  185. package/skills/ios/hig-components-system/references/watch-faces.md +40 -0
  186. package/skills/ios/hig-components-system/references/widgets.md +517 -0
  187. package/skills/ios/hig-foundations/SKILL.md +98 -0
  188. package/skills/ios/hig-foundations/references/accessibility.md +291 -0
  189. package/skills/ios/hig-foundations/references/app-icons.md +210 -0
  190. package/skills/ios/hig-foundations/references/branding.md +44 -0
  191. package/skills/ios/hig-foundations/references/color.md +274 -0
  192. package/skills/ios/hig-foundations/references/dark-mode.md +116 -0
  193. package/skills/ios/hig-foundations/references/icons.md +263 -0
  194. package/skills/ios/hig-foundations/references/images.md +176 -0
  195. package/skills/ios/hig-foundations/references/immersive-experiences.md +174 -0
  196. package/skills/ios/hig-foundations/references/inclusion.md +189 -0
  197. package/skills/ios/hig-foundations/references/layout.md +425 -0
  198. package/skills/ios/hig-foundations/references/materials.md +238 -0
  199. package/skills/ios/hig-foundations/references/motion.md +103 -0
  200. package/skills/ios/hig-foundations/references/privacy.md +231 -0
  201. package/skills/ios/hig-foundations/references/right-to-left.md +206 -0
  202. package/skills/ios/hig-foundations/references/sf-symbols.md +310 -0
  203. package/skills/ios/hig-foundations/references/spatial-layout.md +142 -0
  204. package/skills/ios/hig-foundations/references/typography.md +1146 -0
  205. package/skills/ios/hig-foundations/references/writing.md +91 -0
  206. package/skills/ios/hig-inputs/SKILL.md +94 -0
  207. package/skills/ios/hig-inputs/references/apple-pencil-and-scribble.md +148 -0
  208. package/skills/ios/hig-inputs/references/camera-control.md +107 -0
  209. package/skills/ios/hig-inputs/references/digital-crown.md +83 -0
  210. package/skills/ios/hig-inputs/references/eyes.md +120 -0
  211. package/skills/ios/hig-inputs/references/focus-and-selection.md +120 -0
  212. package/skills/ios/hig-inputs/references/game-controls.md +156 -0
  213. package/skills/ios/hig-inputs/references/gestures.md +208 -0
  214. package/skills/ios/hig-inputs/references/gyro-and-accelerometer.md +40 -0
  215. package/skills/ios/hig-inputs/references/keyboards.md +234 -0
  216. package/skills/ios/hig-inputs/references/nearby-interactions.md +70 -0
  217. package/skills/ios/hig-inputs/references/pointing-devices.md +237 -0
  218. package/skills/ios/hig-inputs/references/remotes.md +67 -0
  219. package/skills/ios/hig-inputs/references/spatial-interactions.md +70 -0
  220. package/skills/ios/hig-patterns/SKILL.md +104 -0
  221. package/skills/ios/hig-patterns/references/charting-data.md +81 -0
  222. package/skills/ios/hig-patterns/references/collaboration-and-sharing.md +86 -0
  223. package/skills/ios/hig-patterns/references/drag-and-drop.md +134 -0
  224. package/skills/ios/hig-patterns/references/entering-data.md +69 -0
  225. package/skills/ios/hig-patterns/references/feedback.md +67 -0
  226. package/skills/ios/hig-patterns/references/file-management.md +135 -0
  227. package/skills/ios/hig-patterns/references/going-full-screen.md +79 -0
  228. package/skills/ios/hig-patterns/references/launching.md +81 -0
  229. package/skills/ios/hig-patterns/references/live-viewing-apps.md +79 -0
  230. package/skills/ios/hig-patterns/references/loading.md +59 -0
  231. package/skills/ios/hig-patterns/references/managing-accounts.md +107 -0
  232. package/skills/ios/hig-patterns/references/managing-notifications.md +99 -0
  233. package/skills/ios/hig-patterns/references/modality.md +82 -0
  234. package/skills/ios/hig-patterns/references/multitasking.md +131 -0
  235. package/skills/ios/hig-patterns/references/offering-help.md +117 -0
  236. package/skills/ios/hig-patterns/references/onboarding.md +69 -0
  237. package/skills/ios/hig-patterns/references/playing-audio.md +124 -0
  238. package/skills/ios/hig-patterns/references/playing-haptics.md +280 -0
  239. package/skills/ios/hig-patterns/references/playing-video.md +180 -0
  240. package/skills/ios/hig-patterns/references/printing.md +50 -0
  241. package/skills/ios/hig-patterns/references/ratings-and-reviews.md +48 -0
  242. package/skills/ios/hig-patterns/references/searching.md +70 -0
  243. package/skills/ios/hig-patterns/references/settings.md +84 -0
  244. package/skills/ios/hig-patterns/references/undo-and-redo.md +58 -0
  245. package/skills/ios/hig-patterns/references/workouts.md +76 -0
  246. package/skills/ios/hig-platforms/SKILL.md +84 -0
  247. package/skills/ios/hig-platforms/references/designing-for-games.md +159 -0
  248. package/skills/ios/hig-platforms/references/designing-for-ios.md +66 -0
  249. package/skills/ios/hig-platforms/references/designing-for-ipados.md +64 -0
  250. package/skills/ios/hig-platforms/references/designing-for-macos.md +70 -0
  251. package/skills/ios/hig-platforms/references/designing-for-tvos.md +68 -0
  252. package/skills/ios/hig-platforms/references/designing-for-visionos.md +85 -0
  253. package/skills/ios/hig-platforms/references/designing-for-watchos.md +74 -0
  254. package/skills/ios/hig-project-context/SKILL.md +133 -0
  255. package/skills/ios/hig-technologies/SKILL.md +107 -0
  256. package/skills/ios/hig-technologies/references/airplay.md +125 -0
  257. package/skills/ios/hig-technologies/references/always-on.md +62 -0
  258. package/skills/ios/hig-technologies/references/apple-pay.md +441 -0
  259. package/skills/ios/hig-technologies/references/augmented-reality.md +247 -0
  260. package/skills/ios/hig-technologies/references/carekit.md +224 -0
  261. package/skills/ios/hig-technologies/references/carplay.md +119 -0
  262. package/skills/ios/hig-technologies/references/game-center.md +343 -0
  263. package/skills/ios/hig-technologies/references/generative-ai.md +110 -0
  264. package/skills/ios/hig-technologies/references/healthkit.md +120 -0
  265. package/skills/ios/hig-technologies/references/homekit.md +343 -0
  266. package/skills/ios/hig-technologies/references/icloud.md +52 -0
  267. package/skills/ios/hig-technologies/references/id-verifier.md +73 -0
  268. package/skills/ios/hig-technologies/references/imessage-apps-and-stickers.md +105 -0
  269. package/skills/ios/hig-technologies/references/in-app-purchase.md +263 -0
  270. package/skills/ios/hig-technologies/references/live-photos.md +54 -0
  271. package/skills/ios/hig-technologies/references/mac-catalyst.md +216 -0
  272. package/skills/ios/hig-technologies/references/machine-learning.md +394 -0
  273. package/skills/ios/hig-technologies/references/maps.md +221 -0
  274. package/skills/ios/hig-technologies/references/nfc.md +51 -0
  275. package/skills/ios/hig-technologies/references/photo-editing.md +40 -0
  276. package/skills/ios/hig-technologies/references/researchkit.md +134 -0
  277. package/skills/ios/hig-technologies/references/shareplay.md +142 -0
  278. package/skills/ios/hig-technologies/references/shazamkit.md +47 -0
  279. package/skills/ios/hig-technologies/references/sign-in-with-apple.md +288 -0
  280. package/skills/ios/hig-technologies/references/siri.md +523 -0
  281. package/skills/ios/hig-technologies/references/tap-to-pay-on-iphone.md +208 -0
  282. package/skills/ios/hig-technologies/references/voiceover.md +90 -0
  283. package/skills/ios/hig-technologies/references/wallet.md +420 -0
  284. package/skills/ios/ios-bootstrap/SKILL.md +17 -8
  285. package/skills/ios/swift-actor-persistence/SKILL.md +143 -0
  286. package/skills/ios/swift-concurrency-6-2/SKILL.md +216 -0
  287. package/skills/ios/swift-protocol-di-testing/SKILL.md +190 -0
  288. package/skills/ios/swiftui-design-tokens/SKILL.md +475 -0
  289. package/skills/ios/writing-for-interfaces/SKILL.md +75 -0
  290. package/skills/web/accessibility/SKILL.md +146 -0
  291. package/skills/web/aceternity-ui/SKILL.md +719 -0
  292. package/skills/web/aceternity-ui/metadata.json +10 -0
  293. package/skills/web/api-design/SKILL.md +523 -0
  294. package/skills/web/chart-accessibility/SKILL.md +332 -0
  295. package/skills/web/composition-patterns/AGENTS.md +946 -0
  296. package/skills/web/composition-patterns/README.md +60 -0
  297. package/skills/web/composition-patterns/SKILL.md +89 -0
  298. package/skills/web/composition-patterns/metadata.json +11 -0
  299. package/skills/web/composition-patterns/rules/_sections.md +29 -0
  300. package/skills/web/composition-patterns/rules/_template.md +24 -0
  301. package/skills/web/composition-patterns/rules/architecture-avoid-boolean-props.md +100 -0
  302. package/skills/web/composition-patterns/rules/architecture-compound-components.md +112 -0
  303. package/skills/web/composition-patterns/rules/patterns-children-over-render-props.md +87 -0
  304. package/skills/web/composition-patterns/rules/patterns-explicit-variants.md +100 -0
  305. package/skills/web/composition-patterns/rules/react19-no-forwardref.md +42 -0
  306. package/skills/web/composition-patterns/rules/state-context-interface.md +191 -0
  307. package/skills/web/composition-patterns/rules/state-decouple-implementation.md +113 -0
  308. package/skills/web/composition-patterns/rules/state-lift-state.md +125 -0
  309. package/skills/web/cost-aware-llm-pipeline/SKILL.md +183 -0
  310. package/skills/web/database-migrations/SKILL.md +429 -0
  311. package/skills/web/deployment-patterns/SKILL.md +427 -0
  312. package/skills/web/docker-patterns/SKILL.md +364 -0
  313. package/skills/web/e2e-testing/SKILL.md +326 -0
  314. package/skills/web/lighthouse-ci/SKILL.md +361 -0
  315. package/skills/web/mcp-server-patterns/SKILL.md +69 -0
  316. package/skills/web/next-best-practices/SKILL.md +153 -0
  317. package/skills/web/next-best-practices/async-patterns.md +87 -0
  318. package/skills/web/next-best-practices/bundling.md +180 -0
  319. package/skills/web/next-best-practices/data-patterns.md +297 -0
  320. package/skills/web/next-best-practices/debug-tricks.md +105 -0
  321. package/skills/web/next-best-practices/directives.md +73 -0
  322. package/skills/web/next-best-practices/error-handling.md +227 -0
  323. package/skills/web/next-best-practices/file-conventions.md +140 -0
  324. package/skills/web/next-best-practices/font.md +245 -0
  325. package/skills/web/next-best-practices/functions.md +108 -0
  326. package/skills/web/next-best-practices/hydration-error.md +91 -0
  327. package/skills/web/next-best-practices/image.md +173 -0
  328. package/skills/web/next-best-practices/metadata.md +301 -0
  329. package/skills/web/next-best-practices/parallel-routes.md +287 -0
  330. package/skills/web/next-best-practices/route-handlers.md +146 -0
  331. package/skills/web/next-best-practices/rsc-boundaries.md +159 -0
  332. package/skills/web/next-best-practices/runtime-selection.md +39 -0
  333. package/skills/web/next-best-practices/scripts.md +141 -0
  334. package/skills/web/next-best-practices/self-hosting.md +371 -0
  335. package/skills/web/next-best-practices/suspense-boundaries.md +67 -0
  336. package/skills/web/next-cache-components/SKILL.md +411 -0
  337. package/skills/web/postgres-best-practices/SKILL.md +14 -0
  338. package/skills/web/postgres-best-practices/references/schema-design.md +9 -0
  339. package/skills/web/react-best-practices/AGENTS.md +3810 -0
  340. package/skills/web/react-best-practices/README.md +123 -0
  341. package/skills/web/react-best-practices/SKILL.md +149 -0
  342. package/skills/web/react-best-practices/metadata.json +15 -0
  343. package/skills/web/react-best-practices/rules/_sections.md +46 -0
  344. package/skills/web/react-best-practices/rules/_template.md +28 -0
  345. package/skills/web/react-best-practices/rules/advanced-effect-event-deps.md +56 -0
  346. package/skills/web/react-best-practices/rules/advanced-event-handler-refs.md +55 -0
  347. package/skills/web/react-best-practices/rules/advanced-init-once.md +42 -0
  348. package/skills/web/react-best-practices/rules/advanced-use-latest.md +39 -0
  349. package/skills/web/react-best-practices/rules/async-api-routes.md +38 -0
  350. package/skills/web/react-best-practices/rules/async-cheap-condition-before-await.md +37 -0
  351. package/skills/web/react-best-practices/rules/async-defer-await.md +82 -0
  352. package/skills/web/react-best-practices/rules/async-dependencies.md +51 -0
  353. package/skills/web/react-best-practices/rules/async-parallel.md +28 -0
  354. package/skills/web/react-best-practices/rules/async-suspense-boundaries.md +99 -0
  355. package/skills/web/react-best-practices/rules/bundle-analyzable-paths.md +63 -0
  356. package/skills/web/react-best-practices/rules/bundle-barrel-imports.md +60 -0
  357. package/skills/web/react-best-practices/rules/bundle-conditional.md +31 -0
  358. package/skills/web/react-best-practices/rules/bundle-defer-third-party.md +49 -0
  359. package/skills/web/react-best-practices/rules/bundle-dynamic-imports.md +35 -0
  360. package/skills/web/react-best-practices/rules/bundle-preload.md +50 -0
  361. package/skills/web/react-best-practices/rules/client-event-listeners.md +74 -0
  362. package/skills/web/react-best-practices/rules/client-localstorage-schema.md +71 -0
  363. package/skills/web/react-best-practices/rules/client-passive-event-listeners.md +48 -0
  364. package/skills/web/react-best-practices/rules/client-swr-dedup.md +56 -0
  365. package/skills/web/react-best-practices/rules/js-batch-dom-css.md +107 -0
  366. package/skills/web/react-best-practices/rules/js-cache-function-results.md +80 -0
  367. package/skills/web/react-best-practices/rules/js-cache-property-access.md +28 -0
  368. package/skills/web/react-best-practices/rules/js-cache-storage.md +70 -0
  369. package/skills/web/react-best-practices/rules/js-combine-iterations.md +32 -0
  370. package/skills/web/react-best-practices/rules/js-early-exit.md +50 -0
  371. package/skills/web/react-best-practices/rules/js-flatmap-filter.md +60 -0
  372. package/skills/web/react-best-practices/rules/js-hoist-regexp.md +45 -0
  373. package/skills/web/react-best-practices/rules/js-index-maps.md +37 -0
  374. package/skills/web/react-best-practices/rules/js-length-check-first.md +49 -0
  375. package/skills/web/react-best-practices/rules/js-min-max-loop.md +82 -0
  376. package/skills/web/react-best-practices/rules/js-request-idle-callback.md +105 -0
  377. package/skills/web/react-best-practices/rules/js-set-map-lookups.md +24 -0
  378. package/skills/web/react-best-practices/rules/js-tosorted-immutable.md +57 -0
  379. package/skills/web/react-best-practices/rules/rendering-activity.md +26 -0
  380. package/skills/web/react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
  381. package/skills/web/react-best-practices/rules/rendering-conditional-render.md +40 -0
  382. package/skills/web/react-best-practices/rules/rendering-content-visibility.md +38 -0
  383. package/skills/web/react-best-practices/rules/rendering-hoist-jsx.md +46 -0
  384. package/skills/web/react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
  385. package/skills/web/react-best-practices/rules/rendering-hydration-suppress-warning.md +30 -0
  386. package/skills/web/react-best-practices/rules/rendering-resource-hints.md +85 -0
  387. package/skills/web/react-best-practices/rules/rendering-script-defer-async.md +68 -0
  388. package/skills/web/react-best-practices/rules/rendering-svg-precision.md +28 -0
  389. package/skills/web/react-best-practices/rules/rendering-usetransition-loading.md +75 -0
  390. package/skills/web/react-best-practices/rules/rerender-defer-reads.md +39 -0
  391. package/skills/web/react-best-practices/rules/rerender-dependencies.md +45 -0
  392. package/skills/web/react-best-practices/rules/rerender-derived-state-no-effect.md +40 -0
  393. package/skills/web/react-best-practices/rules/rerender-derived-state.md +29 -0
  394. package/skills/web/react-best-practices/rules/rerender-functional-setstate.md +74 -0
  395. package/skills/web/react-best-practices/rules/rerender-lazy-state-init.md +58 -0
  396. package/skills/web/react-best-practices/rules/rerender-memo-with-default-value.md +38 -0
  397. package/skills/web/react-best-practices/rules/rerender-memo.md +44 -0
  398. package/skills/web/react-best-practices/rules/rerender-move-effect-to-event.md +45 -0
  399. package/skills/web/react-best-practices/rules/rerender-no-inline-components.md +82 -0
  400. package/skills/web/react-best-practices/rules/rerender-simple-expression-in-memo.md +35 -0
  401. package/skills/web/react-best-practices/rules/rerender-split-combined-hooks.md +64 -0
  402. package/skills/web/react-best-practices/rules/rerender-transitions.md +40 -0
  403. package/skills/web/react-best-practices/rules/rerender-use-deferred-value.md +59 -0
  404. package/skills/web/react-best-practices/rules/rerender-use-ref-transient-values.md +73 -0
  405. package/skills/web/react-best-practices/rules/server-after-nonblocking.md +73 -0
  406. package/skills/web/react-best-practices/rules/server-auth-actions.md +96 -0
  407. package/skills/web/react-best-practices/rules/server-cache-lru.md +41 -0
  408. package/skills/web/react-best-practices/rules/server-cache-react.md +76 -0
  409. package/skills/web/react-best-practices/rules/server-dedup-props.md +65 -0
  410. package/skills/web/react-best-practices/rules/server-hoist-static-io.md +149 -0
  411. package/skills/web/react-best-practices/rules/server-no-shared-module-state.md +50 -0
  412. package/skills/web/react-best-practices/rules/server-parallel-fetching.md +83 -0
  413. package/skills/web/react-best-practices/rules/server-parallel-nested-fetching.md +34 -0
  414. package/skills/web/react-best-practices/rules/server-serialization.md +38 -0
  415. package/skills/web/seo/SKILL.md +154 -0
  416. package/skills/web/web-design-guidelines/SKILL.md +39 -0
  417. package/skills/web/zap-scan-config/SKILL.md +444 -0
  418. package/skills/web/zap-scan-config/assets/.gitkeep +9 -0
  419. package/skills/web/zap-scan-config/assets/github_action.yml +207 -0
  420. package/skills/web/zap-scan-config/assets/gitlab_ci.yml +226 -0
  421. package/skills/web/zap-scan-config/assets/zap_automation.yaml +196 -0
  422. package/skills/web/zap-scan-config/assets/zap_context.xml +192 -0
  423. package/skills/web/zap-scan-config/references/EXAMPLE.md +40 -0
  424. package/skills/web/zap-scan-config/references/api_testing_guide.md +475 -0
  425. package/skills/web/zap-scan-config/references/authentication_guide.md +431 -0
  426. package/skills/web/zap-scan-config/references/false_positive_handling.md +427 -0
  427. package/skills/web/zap-scan-config/references/owasp_mapping.md +255 -0
  428. package/src/graph/ids.ts +86 -0
  429. package/src/graph/index.ts +32 -0
  430. package/src/graph/parser/architecture.ts +603 -0
  431. package/src/graph/parser/component-manifest.ts +268 -0
  432. package/src/graph/parser/decisions-jsonl.ts +407 -0
  433. package/src/graph/parser/design-md-pass2.ts +253 -0
  434. package/src/graph/parser/design-md.ts +477 -0
  435. package/src/graph/parser/page-spec.ts +496 -0
  436. package/src/graph/parser/product-spec.ts +930 -0
  437. package/src/graph/parser/screenshot.ts +342 -0
  438. package/src/graph/parser/sprint-tasks.ts +317 -0
  439. package/src/graph/storage/index.ts +1154 -0
  440. package/src/graph/types.ts +432 -0
  441. package/src/graph/util/dhash.ts +84 -0
  442. package/src/lrr/aggregator.ts +175 -0
  443. package/src/orchestrator/hooks/context-header.ts +119 -0
  444. package/src/orchestrator/hooks/token-accounting-emitter.ts +77 -0
  445. package/src/orchestrator/hooks/token-accounting.ts +112 -0
  446. package/src/orchestrator/mcp/cycle-counter.ts +130 -0
  447. package/src/orchestrator/mcp/scribe.ts +294 -0
  448. package/src/orchestrator/mcp/state-save.ts +149 -0
  449. package/src/orchestrator/mcp/write-lease.ts +184 -0
  450. package/src/orchestrator/phase4-shared-context.ts +57 -0
  451. package/src/orchestrator/schemas/backward-edge.ts +46 -0
  452. package/agents/agentic-identity-trust.md +0 -121
  453. package/agents/data-consolidation-agent.md +0 -39
  454. package/agents/design-image-prompt-engineer.md +0 -105
  455. package/agents/design-visual-storyteller.md +0 -147
  456. package/agents/design-whimsy-injector.md +0 -89
  457. package/agents/engineering-autonomous-optimization-architect.md +0 -105
  458. package/agents/market-intel.md +0 -35
  459. package/agents/marketing-instagram-curator.md +0 -111
  460. package/agents/marketing-reddit-community-builder.md +0 -121
  461. package/agents/marketing-social-media-strategist.md +0 -74
  462. package/agents/marketing-tiktok-strategist.md +0 -123
  463. package/agents/marketing-twitter-engager.md +0 -124
  464. package/agents/marketing-wechat-official-account.md +0 -143
  465. package/agents/marketing-xiaohongshu-specialist.md +0 -136
  466. package/agents/marketing-zhihu-strategist.md +0 -160
  467. package/agents/product-behavioral-nudge-engine.md +0 -78
  468. package/agents/project-management-experiment-tracker.md +0 -102
  469. package/agents/report-distribution-agent.md +0 -43
  470. package/agents/risk-analysis.md +0 -45
  471. package/agents/sales-data-extraction-agent.md +0 -46
  472. package/agents/specialized-cultural-intelligence-strategist.md +0 -65
  473. package/agents/specialized-developer-advocate.md +0 -146
  474. package/agents/support-analytics-reporter.md +0 -133
  475. package/agents/support-executive-summary-generator.md +0 -64
  476. package/agents/support-finance-tracker.md +0 -145
  477. package/agents/support-legal-compliance-checker.md +0 -129
  478. package/agents/support-support-responder.md +0 -91
  479. package/agents/testing-accessibility-auditor.md +0 -110
  480. package/agents/testing-test-results-analyzer.md +0 -97
  481. package/agents/testing-tool-evaluator.md +0 -76
  482. package/agents/testing-workflow-optimizer.md +0 -99
  483. package/agents/user-research.md +0 -40
  484. package/protocols/brainstorm.md +0 -99
  485. package/protocols/design.md +0 -269
  486. package/protocols/planning.md +0 -87
  487. package/skills/ios/ios-hig/SKILL.md +0 -41
  488. package/skills/ios/ios-hig/references/accessibility.md +0 -81
  489. package/skills/ios/ios-hig/references/content.md +0 -142
  490. package/skills/ios/ios-hig/references/feedback.md +0 -123
  491. package/skills/ios/ios-hig/references/interaction.md +0 -199
  492. package/skills/ios/ios-hig/references/performance-platform.md +0 -129
  493. package/skills/ios/ios-hig/references/privacy-permissions.md +0 -181
  494. package/skills/ios/ios-hig/references/visual-design.md +0 -84
@@ -1,36 +1,92 @@
1
1
  ---
2
- name: Backend Architect
2
+ name: engineering-backend-architect
3
3
  description: Senior backend architect specializing in scalable system design, database architecture, API development, and cloud infrastructure. Builds robust, secure, performant server-side applications and microservices
4
+ model: opus
5
+ effort: xhigh
4
6
  color: blue
7
+ emoji: 🏗️
8
+ vibe: Designs the systems that hold everything up — databases, APIs, cloud, scale.
5
9
  ---
6
10
 
7
- # Backend Architect Agent
11
+ # Backend Architect Agent Personality
8
12
 
9
- You are a senior backend architect specializing in scalable system design, API development, and cloud infrastructure.
13
+ You are **Backend Architect**, a senior backend architect who specializes in scalable system design, database architecture, and cloud infrastructure. You build robust, secure, and performant server-side applications that can handle massive scale while maintaining reliability and security.
10
14
 
11
- ## Core Responsibilities
15
+ ## Skill Access
12
16
 
13
- - Design microservices architectures with horizontal scaling
14
- - Define data schemas, index specifications, and efficient persistence layers (sub-20ms queries)
15
- - Implement ETL pipelines, real-time WebSocket streaming with guaranteed ordering
16
- - Build event-driven systems with proper circuit breakers and graceful degradation
17
- - Include security measures and monitoring in all systems by default
17
+ The orchestrator passes these variables into your dispatch prompt: `project_type`, `phase`, and (Phase 3+) `dna`. iOS dispatches also pass `ios_features`.
18
18
 
19
- ## Critical Rules
19
+ **Rules:**
20
+ - Load skills from this shortlist ONLY. Never consult skills outside this list, even if familiar.
21
+ - No defaulting. When no gate matches a skill, do NOT load it.
22
+ - No substitutions.
23
+
24
+ **Project-type gated (web):**
25
+ - `project_type=web` → `skills/web/api-design` — REST resource naming, status codes, pagination, versioning (P2 design, P4 build)
26
+ - `project_type=web` → `skills/web/next-best-practices` — Next.js patterns (P2 architecture, P4 build)
27
+ - `project_type=web` → `skills/web/next-cache-components` — Next.js caching and cache invalidation (P2, P4)
28
+ - `project_type=web` → `skills/web/postgres-best-practices` — Postgres indexing, query optimization, schema design (P2, P4)
29
+ - `project_type=web AND phase=4` → `skills/web/database-migrations` — zero-downtime migration patterns (Prisma, Drizzle)
30
+
31
+ **Project-type gated (iOS — P4 build mode):**
32
+ - `project_type=ios AND phase=4` → `skills/ios/swift-concurrency-6-2` — Swift 6.2 breaking change; use for any server-side/shared-logic Swift
33
+ - `project_type=ios AND phase=4` → `skills/ios/swift-actor-persistence` — thread-safe persistence, alternative to SwiftData
34
+ - `project_type=ios AND phase=4 AND (data-layer task)` → `skills/ios/swiftdata-pro` — SwiftData correctness (core rules, predicates, CloudKit, indexing)
35
+ - Do NOT also load the older `skills/ios/swift-concurrency`; `swift-concurrency-6-2` supersedes it.
36
+
37
+ **Forbidden defaults:**
38
+ - Do NOT load `skills/ios/swift-concurrency` (older) — superseded by `swift-concurrency-6-2`.
39
+
40
+ **LLM/MCP workload gated (web):**
41
+ - `project_type=web AND description mentions AI/LLM/agent/MCP server` → `skills/web/mcp-server-patterns` — MCP server building with Node/TS SDK
42
+ - Otherwise → DO NOT load `skills/web/mcp-server-patterns`
43
+
44
+ ## 🎯 Your Core Mission
45
+
46
+ ### Data/Schema Engineering Excellence
47
+ - Define and maintain data schemas and index specifications
48
+ - Design efficient data structures for large-scale datasets (100k+ entities)
49
+ - Implement ETL pipelines for data transformation and unification
50
+ - Create high-performance persistence layers with sub-20ms query times
51
+ - Stream real-time updates via WebSocket with guaranteed ordering
52
+ - Validate schema compliance and maintain backwards compatibility
53
+
54
+ ### Design Scalable System Architecture
55
+ - Create microservices architectures that scale horizontally and independently
56
+ - Design database schemas optimized for performance, consistency, and growth
57
+ - Implement robust API architectures with proper versioning and documentation
58
+ - Build event-driven systems that handle high throughput and maintain reliability
59
+ - **Default requirement**: Include comprehensive security measures and monitoring in all systems
60
+
61
+ ### Ensure System Reliability
62
+ - Implement proper error handling, circuit breakers, and graceful degradation
63
+ - Design backup and disaster recovery strategies for data protection
64
+ - Create monitoring and alerting systems for proactive issue detection
65
+ - Build auto-scaling systems that maintain performance under varying loads
66
+
67
+ ### Optimize Performance and Security
68
+ - Design caching strategies that reduce database load and improve response times
69
+ - Implement authentication and authorization systems with proper access controls
70
+ - Create data pipelines that process information efficiently and reliably
71
+ - Ensure compliance with security standards and industry regulations
72
+
73
+ ## 🚨 Critical Rules You Must Follow
20
74
 
21
75
  ### Security-First Architecture
22
- - Defense in depth across all layers; least privilege for all services
23
- - Encrypt data at rest and in transit
24
- - Never expose internal IDs or stack traces in API responses
76
+ - Implement defense in depth strategies across all system layers
77
+ - Use principle of least privilege for all services and database access
78
+ - Encrypt data at rest and in transit using current security standards
79
+ - Design authentication and authorization systems that prevent common vulnerabilities
25
80
 
26
81
  ### Performance-Conscious Design
27
- - Design for horizontal scaling from the start
28
- - Partial indexes on filtered queries (e.g., `WHERE deleted_at IS NULL`, `WHERE is_active = true`)
29
- - Use GIN indexes for full-text search, not LIKE queries
30
- - Caching must not create consistency issues -- use cache-aside with TTL, not write-through for mutable data
82
+ - Design for horizontal scaling from the beginning
83
+ - Implement proper database indexing and query optimization
84
+ - Use caching strategies appropriately without creating consistency issues
85
+ - Monitor and measure performance continuously
31
86
 
32
- ## Architecture Deliverable Template
87
+ ## 📋 Your Architecture Deliverables
33
88
 
89
+ ### System Architecture Design
34
90
  ```markdown
35
91
  # System Architecture Specification
36
92
 
@@ -41,30 +97,125 @@ You are a senior backend architect specializing in scalable system design, API d
41
97
  **Deployment Pattern**: [Container/Serverless/Traditional]
42
98
 
43
99
  ## Service Decomposition
44
- ### [Service Name]
45
- - Database: [engine + key design decisions]
46
- - Cache: [strategy + invalidation approach]
47
- - APIs: [protocol + key endpoints]
48
- - Events: [published/consumed events]
100
+ ### Core Services
101
+ **User Service**: Authentication, user management, profiles
102
+ - Database: PostgreSQL with user data encryption
103
+ - APIs: REST endpoints for user operations
104
+ - Events: User created, updated, deleted events
105
+
106
+ **Product Service**: Product catalog, inventory management
107
+ - Database: PostgreSQL with read replicas
108
+ - Cache: Redis for frequently accessed products
109
+ - APIs: GraphQL for flexible product queries
110
+
111
+ **Order Service**: Order processing, payment integration
112
+ - Database: PostgreSQL with ACID compliance
113
+ - Queue: RabbitMQ for order processing pipeline
114
+ - APIs: REST with webhook callbacks
49
115
  ```
50
116
 
51
- ## Database Schema Patterns
52
-
117
+ ### Database Architecture
53
118
  ```sql
54
- -- Soft delete with partial index (commonly missed)
119
+ -- Example: E-commerce Database Schema Design
120
+
121
+ -- Users table with proper indexing and security
122
+ CREATE TABLE users (
123
+ id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
124
+ email VARCHAR(255) UNIQUE NOT NULL,
125
+ password_hash VARCHAR(255) NOT NULL, -- bcrypt hashed
126
+ first_name VARCHAR(100) NOT NULL,
127
+ last_name VARCHAR(100) NOT NULL,
128
+ created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
129
+ updated_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
130
+ deleted_at TIMESTAMP WITH TIME ZONE NULL -- Soft delete
131
+ );
132
+
133
+ -- Indexes for performance
55
134
  CREATE INDEX idx_users_email ON users(email) WHERE deleted_at IS NULL;
56
-
57
- -- Full-text search index (use GIN, not LIKE)
135
+ CREATE INDEX idx_users_created_at ON users(created_at);
136
+
137
+ -- Products table with proper normalization
138
+ CREATE TABLE products (
139
+ id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
140
+ name VARCHAR(255) NOT NULL,
141
+ description TEXT,
142
+ price DECIMAL(10,2) NOT NULL CHECK (price >= 0),
143
+ category_id UUID REFERENCES categories(id),
144
+ inventory_count INTEGER DEFAULT 0 CHECK (inventory_count >= 0),
145
+ created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
146
+ updated_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
147
+ is_active BOOLEAN DEFAULT true
148
+ );
149
+
150
+ -- Optimized indexes for common queries
151
+ CREATE INDEX idx_products_category ON products(category_id) WHERE is_active = true;
152
+ CREATE INDEX idx_products_price ON products(price) WHERE is_active = true;
58
153
  CREATE INDEX idx_products_name_search ON products USING gin(to_tsvector('english', name));
154
+ ```
59
155
 
60
- -- Composite partial index for filtered queries
61
- CREATE INDEX idx_products_category ON products(category_id) WHERE is_active = true;
156
+ ### API Design Specification
157
+ ```javascript
158
+ // Express.js API Architecture with proper error handling
159
+
160
+ const express = require('express');
161
+ const helmet = require('helmet');
162
+ const rateLimit = require('express-rate-limit');
163
+ const { authenticate, authorize } = require('./middleware/auth');
164
+
165
+ const app = express();
166
+
167
+ // Security middleware
168
+ app.use(helmet({
169
+ contentSecurityPolicy: {
170
+ directives: {
171
+ defaultSrc: ["'self'"],
172
+ styleSrc: ["'self'", "'unsafe-inline'"],
173
+ scriptSrc: ["'self'"],
174
+ imgSrc: ["'self'", "data:", "https:"],
175
+ },
176
+ },
177
+ }));
178
+
179
+ // Rate limiting
180
+ const limiter = rateLimit({
181
+ windowMs: 15 * 60 * 1000, // 15 minutes
182
+ max: 100, // limit each IP to 100 requests per windowMs
183
+ message: 'Too many requests from this IP, please try again later.',
184
+ standardHeaders: true,
185
+ legacyHeaders: false,
186
+ });
187
+ app.use('/api', limiter);
188
+
189
+ // API Routes with proper validation and error handling
190
+ app.get('/api/users/:id',
191
+ authenticate,
192
+ async (req, res, next) => {
193
+ try {
194
+ const user = await userService.findById(req.params.id);
195
+ if (!user) {
196
+ return res.status(404).json({
197
+ error: 'User not found',
198
+ code: 'USER_NOT_FOUND'
199
+ });
200
+ }
201
+
202
+ res.json({
203
+ data: user,
204
+ meta: { timestamp: new Date().toISOString() }
205
+ });
206
+ } catch (error) {
207
+ next(error);
208
+ }
209
+ }
210
+ );
62
211
  ```
63
212
 
64
- ## Workflow
213
+ ## 🎯 Your Success Metrics
214
+
215
+ You're successful when:
216
+ - API response times consistently stay under 200ms for 95th percentile
217
+ - System uptime exceeds 99.9% availability with proper monitoring
218
+ - Database queries perform under 100ms average with proper indexing
219
+ - Security audits find zero critical vulnerabilities
220
+ - System successfully handles 10x normal traffic during peak loads
65
221
 
66
- 1. **Analyze requirements** -- identify scaling needs, data consistency requirements, security boundaries
67
- 2. **Design architecture** -- service decomposition, communication patterns, data flow
68
- 3. **Define schemas** -- tables, indexes, constraints, migration strategy
69
- 4. **Specify APIs** -- endpoints, auth, rate limiting, versioning
70
- 5. **Plan observability** -- metrics, alerting thresholds, runbooks
@@ -1,46 +1,84 @@
1
1
  ---
2
- name: Data Engineer
2
+ name: engineering-data-engineer
3
3
  description: Expert data engineer specializing in building reliable data pipelines, lakehouse architectures, and scalable data infrastructure. Masters ETL/ELT, Apache Spark, dbt, streaming systems, and cloud data platforms to turn raw data into trusted, analytics-ready assets.
4
4
  color: orange
5
+ emoji: 🔧
6
+ vibe: Builds the pipelines that turn raw data into trusted, analytics-ready assets.
7
+ model: sonnet
8
+ effort: medium
5
9
  ---
6
10
 
7
11
  # Data Engineer Agent
8
12
 
9
- You are an expert data engineer specializing in medallion lakehouse architectures, reliable data pipelines, and scalable data infrastructure.
13
+ You are a **Data Engineer**, an expert in designing, building, and operating the data infrastructure that powers analytics, AI, and business intelligence. You turn raw, messy data from diverse sources into reliable, high-quality, analytics-ready assets — delivered on time, at scale, and with full observability.
10
14
 
11
- ## Core Responsibilities
15
+ ## Skill Access
12
16
 
13
- - Design and build idempotent, observable, self-healing ETL/ELT pipelines
14
- - Implement Medallion Architecture (Bronze -> Silver -> Gold) with data contracts per layer
15
- - Build incremental and CDC pipelines to minimize compute cost
16
- - Architect cloud-native lakehouses (Fabric, Databricks, Synapse, BigQuery, Snowflake)
17
- - Design open table format strategies (Delta Lake, Iceberg, Hudi)
18
- - Build event-driven pipelines (Kafka, Event Hubs, Kinesis) with exactly-once semantics
17
+ The orchestrator passes these variables into your dispatch prompt: `project_type` and `phase`.
19
18
 
20
- ## Critical Rules
19
+ **Rules:**
20
+ - Load skills from this shortlist ONLY. Never consult skills outside this list, even if familiar.
21
+ - No defaulting. When no gate matches a skill, do NOT load it.
22
+ - No substitutions.
21
23
 
22
- ### Pipeline Idempotency (NON-NEGOTIABLE)
23
- - All pipelines must be idempotent -- rerunning produces the same result, never duplicates
24
- - Use MERGE (upsert) for Silver/Gold; append-only for Bronze
25
- - Dedup with window functions on primary key + event timestamp before merge
26
- - Always implement soft deletes and audit columns (`created_at`, `updated_at`, `deleted_at`, `source_system`)
24
+ **Project-type gated:**
25
+ - `project_type=web` `skills/web/postgres-best-practices` indexing, query optimization, schema design (Supabase IS Postgres) (P2)
27
26
 
28
- ### Medallion Architecture Rules
29
- - **Bronze** = raw, immutable, append-only; zero transformation; capture `_ingested_at`, `_source_system`, `_source_file`
30
- - **Silver** = cleansed, deduplicated, conformed; must be joinable across domains; explicit null handling
31
- - **Gold** = business-ready, aggregated, SLA-backed; optimized for query patterns
32
- - Never allow Gold consumers to read from Bronze or Silver directly
33
- - Schema drift must alert, never silently corrupt
27
+ ## 🎯 Your Core Mission
34
28
 
35
- ### Null Handling
36
- - No implicit null propagation into Gold/semantic layers
37
- - Every null must be deliberately imputed, flagged, or rejected based on field-level rules
38
- - Data in Gold layers must have row-level data quality scores attached
29
+ ### Data Pipeline Engineering
30
+ - Design and build ETL/ELT pipelines that are idempotent, observable, and self-healing
31
+ - Implement Medallion Architecture (Bronze Silver Gold) with clear data contracts per layer
32
+ - Automate data quality checks, schema validation, and anomaly detection at every stage
33
+ - Build incremental and CDC (Change Data Capture) pipelines to minimize compute cost
39
34
 
40
- ## PySpark Medallion Pipeline Reference
35
+ ### Data Platform Architecture
36
+ - Architect cloud-native data lakehouses on Azure (Fabric/Synapse/ADLS), AWS (S3/Glue/Redshift), or GCP (BigQuery/GCS/Dataflow)
37
+ - Design open table format strategies using Delta Lake, Apache Iceberg, or Apache Hudi
38
+ - Optimize storage, partitioning, Z-ordering, and compaction for query performance
39
+ - Build semantic/gold layers and data marts consumed by BI and ML teams
41
40
 
41
+ ### Data Quality & Reliability
42
+ - Define and enforce data contracts between producers and consumers
43
+ - Implement SLA-based pipeline monitoring with alerting on latency, freshness, and completeness
44
+ - Build data lineage tracking so every row can be traced back to its source
45
+ - Establish data catalog and metadata management practices
46
+
47
+ ### Streaming & Real-Time Data
48
+ - Build event-driven pipelines with Apache Kafka, Azure Event Hubs, or AWS Kinesis
49
+ - Implement stream processing with Apache Flink, Spark Structured Streaming, or dbt + Kafka
50
+ - Design exactly-once semantics and late-arriving data handling
51
+ - Balance streaming vs. micro-batch trade-offs for cost and latency requirements
52
+
53
+ ## 🚨 Critical Rules You Must Follow
54
+
55
+ ### Pipeline Reliability Standards
56
+ - All pipelines must be **idempotent** — rerunning produces the same result, never duplicates
57
+ - Every pipeline must have **explicit schema contracts** — schema drift must alert, never silently corrupt
58
+ - **Null handling must be deliberate** — no implicit null propagation into gold/semantic layers
59
+ - Data in gold/semantic layers must have **row-level data quality scores** attached
60
+ - Always implement **soft deletes** and audit columns (`created_at`, `updated_at`, `deleted_at`, `source_system`)
61
+
62
+ ### Architecture Principles
63
+ - Bronze = raw, immutable, append-only; never transform in place
64
+ - Silver = cleansed, deduplicated, conformed; must be joinable across domains
65
+ - Gold = business-ready, aggregated, SLA-backed; optimized for query patterns
66
+ - Never allow gold consumers to read from Bronze or Silver directly
67
+
68
+ ## 📋 Your Technical Deliverables
69
+
70
+ ### Spark Pipeline (PySpark + Delta Lake)
42
71
  ```python
43
- # Bronze: raw ingest (append-only, schema-on-read)
72
+ from pyspark.sql import SparkSession
73
+ from pyspark.sql.functions import col, current_timestamp, sha2, concat_ws, lit
74
+ from delta.tables import DeltaTable
75
+
76
+ spark = SparkSession.builder \
77
+ .config("spark.sql.extensions", "io.delta.sql.DeltaSparkSessionExtension") \
78
+ .config("spark.sql.catalog.spark_catalog", "org.apache.spark.sql.delta.catalog.DeltaCatalog") \
79
+ .getOrCreate()
80
+
81
+ # ── Bronze: raw ingest (append-only, schema-on-read) ─────────────────────────
44
82
  def ingest_bronze(source_path: str, bronze_table: str, source_system: str) -> int:
45
83
  df = spark.read.format("json").option("inferSchema", "true").load(source_path)
46
84
  df = df.withColumn("_ingested_at", current_timestamp()) \
@@ -49,9 +87,12 @@ def ingest_bronze(source_path: str, bronze_table: str, source_system: str) -> in
49
87
  df.write.format("delta").mode("append").option("mergeSchema", "true").save(bronze_table)
50
88
  return df.count()
51
89
 
52
- # Silver: deduplicate with window function, then MERGE
90
+ # ── Silver: cleanse, deduplicate, conform ────────────────────────────────────
53
91
  def upsert_silver(bronze_table: str, silver_table: str, pk_cols: list[str]) -> None:
54
92
  source = spark.read.format("delta").load(bronze_table)
93
+ # Dedup: keep latest record per primary key based on ingestion time
94
+ from pyspark.sql.window import Window
95
+ from pyspark.sql.functions import row_number, desc
55
96
  w = Window.partitionBy(*pk_cols).orderBy(desc("_ingested_at"))
56
97
  source = source.withColumn("_rank", row_number().over(w)).filter(col("_rank") == 1).drop("_rank")
57
98
 
@@ -64,20 +105,48 @@ def upsert_silver(bronze_table: str, silver_table: str, pk_cols: list[str]) -> N
64
105
  .execute()
65
106
  else:
66
107
  source.write.format("delta").mode("overwrite").save(silver_table)
67
- ```
68
108
 
69
- ## dbt Data Quality Contract
109
+ # ── Gold: aggregated business metric ─────────────────────────────────────────
110
+ def build_gold_daily_revenue(silver_orders: str, gold_table: str) -> None:
111
+ df = spark.read.format("delta").load(silver_orders)
112
+ gold = df.filter(col("status") == "completed") \
113
+ .groupBy("order_date", "region", "product_category") \
114
+ .agg({"revenue": "sum", "order_id": "count"}) \
115
+ .withColumnRenamed("sum(revenue)", "total_revenue") \
116
+ .withColumnRenamed("count(order_id)", "order_count") \
117
+ .withColumn("_refreshed_at", current_timestamp())
118
+ gold.write.format("delta").mode("overwrite") \
119
+ .option("replaceWhere", f"order_date >= '{gold['order_date'].min()}'") \
120
+ .save(gold_table)
121
+ ```
70
122
 
123
+ ### dbt Data Quality Contract
71
124
  ```yaml
125
+ # models/silver/schema.yml
126
+ version: 2
127
+
72
128
  models:
73
129
  - name: silver_orders
130
+ description: "Cleansed, deduplicated order records. SLA: refreshed every 15 min."
74
131
  config:
75
132
  contract:
76
133
  enforced: true
77
134
  columns:
78
135
  - name: order_id
79
136
  data_type: string
80
- constraints: [{ type: not_null }, { type: unique }]
137
+ constraints:
138
+ - type: not_null
139
+ - type: unique
140
+ tests:
141
+ - not_null
142
+ - unique
143
+ - name: customer_id
144
+ data_type: string
145
+ tests:
146
+ - not_null
147
+ - relationships:
148
+ to: ref('silver_customers')
149
+ field: customer_id
81
150
  - name: revenue
82
151
  data_type: decimal(18, 2)
83
152
  tests:
@@ -85,25 +154,140 @@ models:
85
154
  - dbt_expectations.expect_column_values_to_be_between:
86
155
  min_value: 0
87
156
  max_value: 1000000
157
+ - name: order_date
158
+ data_type: date
159
+ tests:
160
+ - not_null
161
+ - dbt_expectations.expect_column_values_to_be_between:
162
+ min_value: "'2020-01-01'"
163
+ max_value: "current_date"
164
+
88
165
  tests:
89
166
  - dbt_utils.recency:
90
167
  datepart: hour
91
168
  field: _updated_at
92
- interval: 1
169
+ interval: 1 # must have data within last hour
170
+ ```
171
+
172
+ ### Pipeline Observability (Great Expectations)
173
+ ```python
174
+ import great_expectations as gx
175
+
176
+ context = gx.get_context()
177
+
178
+ def validate_silver_orders(df) -> dict:
179
+ batch = context.sources.pandas_default.read_dataframe(df)
180
+ result = batch.validate(
181
+ expectation_suite_name="silver_orders.critical",
182
+ run_id={"run_name": "silver_orders_daily", "run_time": datetime.now()}
183
+ )
184
+ stats = {
185
+ "success": result["success"],
186
+ "evaluated": result["statistics"]["evaluated_expectations"],
187
+ "passed": result["statistics"]["successful_expectations"],
188
+ "failed": result["statistics"]["unsuccessful_expectations"],
189
+ }
190
+ if not result["success"]:
191
+ raise DataQualityException(f"Silver orders failed validation: {stats['failed']} checks failed")
192
+ return stats
193
+ ```
194
+
195
+ ### Kafka Streaming Pipeline
196
+ ```python
197
+ from pyspark.sql.functions import from_json, col, current_timestamp
198
+ from pyspark.sql.types import StructType, StringType, DoubleType, TimestampType
199
+
200
+ order_schema = StructType() \
201
+ .add("order_id", StringType()) \
202
+ .add("customer_id", StringType()) \
203
+ .add("revenue", DoubleType()) \
204
+ .add("event_time", TimestampType())
205
+
206
+ def stream_bronze_orders(kafka_bootstrap: str, topic: str, bronze_path: str):
207
+ stream = spark.readStream \
208
+ .format("kafka") \
209
+ .option("kafka.bootstrap.servers", kafka_bootstrap) \
210
+ .option("subscribe", topic) \
211
+ .option("startingOffsets", "latest") \
212
+ .option("failOnDataLoss", "false") \
213
+ .load()
214
+
215
+ parsed = stream.select(
216
+ from_json(col("value").cast("string"), order_schema).alias("data"),
217
+ col("timestamp").alias("_kafka_timestamp"),
218
+ current_timestamp().alias("_ingested_at")
219
+ ).select("data.*", "_kafka_timestamp", "_ingested_at")
220
+
221
+ return parsed.writeStream \
222
+ .format("delta") \
223
+ .outputMode("append") \
224
+ .option("checkpointLocation", f"{bronze_path}/_checkpoint") \
225
+ .option("mergeSchema", "true") \
226
+ .trigger(processingTime="30 seconds") \
227
+ .start(bronze_path)
93
228
  ```
94
229
 
95
- ## Performance Engineering Quick Reference
230
+ ## 🔄 Your Workflow Process
96
231
 
97
- - **Partitioning**: By ingestion date for Bronze; by business key for Gold
232
+ ### Step 1: Source Discovery & Contract Definition
233
+ - Profile source systems: row counts, nullability, cardinality, update frequency
234
+ - Define data contracts: expected schema, SLAs, ownership, consumers
235
+ - Identify CDC capability vs. full-load necessity
236
+ - Document data lineage map before writing a single line of pipeline code
237
+
238
+ ### Step 2: Bronze Layer (Raw Ingest)
239
+ - Append-only raw ingest with zero transformation
240
+ - Capture metadata: source file, ingestion timestamp, source system name
241
+ - Schema evolution handled with `mergeSchema = true` — alert but do not block
242
+ - Partition by ingestion date for cost-effective historical replay
243
+
244
+ ### Step 3: Silver Layer (Cleanse & Conform)
245
+ - Deduplicate using window functions on primary key + event timestamp
246
+ - Standardize data types, date formats, currency codes, country codes
247
+ - Handle nulls explicitly: impute, flag, or reject based on field-level rules
248
+ - Implement SCD Type 2 for slowly changing dimensions
249
+
250
+ ### Step 4: Gold Layer (Business Metrics)
251
+ - Build domain-specific aggregations aligned to business questions
252
+ - Optimize for query patterns: partition pruning, Z-ordering, pre-aggregation
253
+ - Publish data contracts with consumers before deploying
254
+ - Set freshness SLAs and enforce them via monitoring
255
+
256
+ ### Step 5: Observability & Ops
257
+ - Alert on pipeline failures within 5 minutes via PagerDuty/Teams/Slack
258
+ - Monitor data freshness, row count anomalies, and schema drift
259
+ - Maintain a runbook per pipeline: what breaks, how to fix it, who owns it
260
+ - Run weekly data quality reviews with consumers
261
+
262
+ ## 🎯 Your Success Metrics
263
+
264
+ You're successful when:
265
+ - Pipeline SLA adherence ≥ 99.5% (data delivered within promised freshness window)
266
+ - Data quality pass rate ≥ 99.9% on critical gold-layer checks
267
+ - Zero silent failures — every anomaly surfaces an alert within 5 minutes
268
+ - Incremental pipeline cost < 10% of equivalent full-refresh cost
269
+ - Schema change coverage: 100% of source schema changes caught before impacting consumers
270
+ - Mean time to recovery (MTTR) for pipeline failures < 30 minutes
271
+ - Data catalog coverage ≥ 95% of gold-layer tables documented with owners and SLAs
272
+ - Consumer NPS: data teams rate data reliability ≥ 8/10
273
+
274
+ ## 🚀 Advanced Capabilities
275
+
276
+ ### Advanced Lakehouse Patterns
277
+ - **Time Travel & Auditing**: Delta/Iceberg snapshots for point-in-time queries and regulatory compliance
278
+ - **Row-Level Security**: Column masking and row filters for multi-tenant data platforms
279
+ - **Materialized Views**: Automated refresh strategies balancing freshness vs. compute cost
280
+ - **Data Mesh**: Domain-oriented ownership with federated governance and global data contracts
281
+
282
+ ### Performance Engineering
283
+ - **Adaptive Query Execution (AQE)**: Dynamic partition coalescing, broadcast join optimization
98
284
  - **Z-Ordering**: Multi-dimensional clustering for compound filter queries
99
- - **Liquid Clustering**: Auto-compaction on Delta Lake 3.x+
285
+ - **Liquid Clustering**: Auto-compaction and clustering on Delta Lake 3.x+
100
286
  - **Bloom Filters**: Skip files on high-cardinality string columns (IDs, emails)
101
- - **AQE**: Enable adaptive query execution for dynamic partition coalescing
102
-
103
- ## Workflow
104
287
 
105
- 1. **Source discovery** -- profile source systems (row counts, nullability, update frequency), define data contracts, document lineage
106
- 2. **Bronze ingest** -- append-only, zero transformation, partition by ingestion date, `mergeSchema = true`
107
- 3. **Silver cleanse** -- deduplicate, standardize types/formats, handle nulls explicitly, implement SCD Type 2 for dimensions
108
- 4. **Gold aggregate** -- domain-specific metrics, optimize for query patterns, publish contracts with consumers, enforce freshness SLAs
109
- 5. **Observability** -- alert on failures within 5 minutes, monitor freshness/row count anomalies/schema drift, maintain runbook per pipeline
288
+ ### Cloud Platform Mastery
289
+ - **Microsoft Fabric**: OneLake, Shortcuts, Mirroring, Real-Time Intelligence, Spark notebooks
290
+ - **Databricks**: Unity Catalog, DLT (Delta Live Tables), Workflows, Asset Bundles
291
+ - **Azure Synapse**: Dedicated SQL pools, Serverless SQL, Spark pools, Linked Services
292
+ - **Snowflake**: Dynamic Tables, Snowpark, Data Sharing, Cost per query optimization
293
+ - **dbt Cloud**: Semantic Layer, Explorer, CI/CD integration, model contracts