@aslomon/effectum 0.3.3 → 0.4.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 (359) hide show
  1. package/bin/install.js +68 -4
  2. package/bin/lib/cli-tools.js +288 -0
  3. package/bin/lib/specializations.js +11 -1
  4. package/bin/lib/template.js +14 -0
  5. package/bin/lib/ui.js +109 -0
  6. package/package.json +1 -1
  7. package/system/agents/data-engineer.md +268 -0
  8. package/system/agents/mobile-developer.md +257 -0
  9. package/system/hooks/observe.sh +164 -0
  10. package/system/hooks/quick-diff.sh +87 -0
  11. package/system/hooks/save-results.sh +56 -0
  12. package/system/hooks/scan.sh +170 -0
  13. package/system/skills/README.md +86 -0
  14. package/system/skills/SKILL.md +117 -0
  15. package/system/skills/agents/observer.md +137 -0
  16. package/system/skills/agents/start-observer.sh +143 -0
  17. package/system/skills/algorithmic-art/LICENSE.txt +202 -0
  18. package/system/skills/algorithmic-art/SKILL.md +405 -0
  19. package/system/skills/algorithmic-art/templates/generator_template.js +223 -0
  20. package/system/skills/algorithmic-art/templates/viewer.html +599 -0
  21. package/system/skills/api-endpoint/SKILL.md +106 -0
  22. package/system/skills/canvas-design/LICENSE.txt +202 -0
  23. package/system/skills/canvas-design/SKILL.md +130 -0
  24. package/system/skills/canvas-design/canvas-fonts/ArsenalSC-OFL.txt +93 -0
  25. package/system/skills/canvas-design/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
  26. package/system/skills/canvas-design/canvas-fonts/BigShoulders-Bold.ttf +0 -0
  27. package/system/skills/canvas-design/canvas-fonts/BigShoulders-OFL.txt +93 -0
  28. package/system/skills/canvas-design/canvas-fonts/BigShoulders-Regular.ttf +0 -0
  29. package/system/skills/canvas-design/canvas-fonts/Boldonse-OFL.txt +93 -0
  30. package/system/skills/canvas-design/canvas-fonts/Boldonse-Regular.ttf +0 -0
  31. package/system/skills/canvas-design/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
  32. package/system/skills/canvas-design/canvas-fonts/BricolageGrotesque-OFL.txt +93 -0
  33. package/system/skills/canvas-design/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
  34. package/system/skills/canvas-design/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
  35. package/system/skills/canvas-design/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
  36. package/system/skills/canvas-design/canvas-fonts/CrimsonPro-OFL.txt +93 -0
  37. package/system/skills/canvas-design/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
  38. package/system/skills/canvas-design/canvas-fonts/DMMono-OFL.txt +93 -0
  39. package/system/skills/canvas-design/canvas-fonts/DMMono-Regular.ttf +0 -0
  40. package/system/skills/canvas-design/canvas-fonts/EricaOne-OFL.txt +94 -0
  41. package/system/skills/canvas-design/canvas-fonts/EricaOne-Regular.ttf +0 -0
  42. package/system/skills/canvas-design/canvas-fonts/GeistMono-Bold.ttf +0 -0
  43. package/system/skills/canvas-design/canvas-fonts/GeistMono-OFL.txt +93 -0
  44. package/system/skills/canvas-design/canvas-fonts/GeistMono-Regular.ttf +0 -0
  45. package/system/skills/canvas-design/canvas-fonts/Gloock-OFL.txt +93 -0
  46. package/system/skills/canvas-design/canvas-fonts/Gloock-Regular.ttf +0 -0
  47. package/system/skills/canvas-design/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
  48. package/system/skills/canvas-design/canvas-fonts/IBMPlexMono-OFL.txt +93 -0
  49. package/system/skills/canvas-design/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
  50. package/system/skills/canvas-design/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
  51. package/system/skills/canvas-design/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
  52. package/system/skills/canvas-design/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
  53. package/system/skills/canvas-design/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
  54. package/system/skills/canvas-design/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
  55. package/system/skills/canvas-design/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
  56. package/system/skills/canvas-design/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
  57. package/system/skills/canvas-design/canvas-fonts/InstrumentSans-OFL.txt +93 -0
  58. package/system/skills/canvas-design/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
  59. package/system/skills/canvas-design/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
  60. package/system/skills/canvas-design/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
  61. package/system/skills/canvas-design/canvas-fonts/Italiana-OFL.txt +93 -0
  62. package/system/skills/canvas-design/canvas-fonts/Italiana-Regular.ttf +0 -0
  63. package/system/skills/canvas-design/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
  64. package/system/skills/canvas-design/canvas-fonts/JetBrainsMono-OFL.txt +93 -0
  65. package/system/skills/canvas-design/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
  66. package/system/skills/canvas-design/canvas-fonts/Jura-Light.ttf +0 -0
  67. package/system/skills/canvas-design/canvas-fonts/Jura-Medium.ttf +0 -0
  68. package/system/skills/canvas-design/canvas-fonts/Jura-OFL.txt +93 -0
  69. package/system/skills/canvas-design/canvas-fonts/LibreBaskerville-OFL.txt +93 -0
  70. package/system/skills/canvas-design/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
  71. package/system/skills/canvas-design/canvas-fonts/Lora-Bold.ttf +0 -0
  72. package/system/skills/canvas-design/canvas-fonts/Lora-BoldItalic.ttf +0 -0
  73. package/system/skills/canvas-design/canvas-fonts/Lora-Italic.ttf +0 -0
  74. package/system/skills/canvas-design/canvas-fonts/Lora-OFL.txt +93 -0
  75. package/system/skills/canvas-design/canvas-fonts/Lora-Regular.ttf +0 -0
  76. package/system/skills/canvas-design/canvas-fonts/NationalPark-Bold.ttf +0 -0
  77. package/system/skills/canvas-design/canvas-fonts/NationalPark-OFL.txt +93 -0
  78. package/system/skills/canvas-design/canvas-fonts/NationalPark-Regular.ttf +0 -0
  79. package/system/skills/canvas-design/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -0
  80. package/system/skills/canvas-design/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
  81. package/system/skills/canvas-design/canvas-fonts/Outfit-Bold.ttf +0 -0
  82. package/system/skills/canvas-design/canvas-fonts/Outfit-OFL.txt +93 -0
  83. package/system/skills/canvas-design/canvas-fonts/Outfit-Regular.ttf +0 -0
  84. package/system/skills/canvas-design/canvas-fonts/PixelifySans-Medium.ttf +0 -0
  85. package/system/skills/canvas-design/canvas-fonts/PixelifySans-OFL.txt +93 -0
  86. package/system/skills/canvas-design/canvas-fonts/PoiretOne-OFL.txt +93 -0
  87. package/system/skills/canvas-design/canvas-fonts/PoiretOne-Regular.ttf +0 -0
  88. package/system/skills/canvas-design/canvas-fonts/RedHatMono-Bold.ttf +0 -0
  89. package/system/skills/canvas-design/canvas-fonts/RedHatMono-OFL.txt +93 -0
  90. package/system/skills/canvas-design/canvas-fonts/RedHatMono-Regular.ttf +0 -0
  91. package/system/skills/canvas-design/canvas-fonts/Silkscreen-OFL.txt +93 -0
  92. package/system/skills/canvas-design/canvas-fonts/Silkscreen-Regular.ttf +0 -0
  93. package/system/skills/canvas-design/canvas-fonts/SmoochSans-Medium.ttf +0 -0
  94. package/system/skills/canvas-design/canvas-fonts/SmoochSans-OFL.txt +93 -0
  95. package/system/skills/canvas-design/canvas-fonts/Tektur-Medium.ttf +0 -0
  96. package/system/skills/canvas-design/canvas-fonts/Tektur-OFL.txt +93 -0
  97. package/system/skills/canvas-design/canvas-fonts/Tektur-Regular.ttf +0 -0
  98. package/system/skills/canvas-design/canvas-fonts/WorkSans-Bold.ttf +0 -0
  99. package/system/skills/canvas-design/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
  100. package/system/skills/canvas-design/canvas-fonts/WorkSans-Italic.ttf +0 -0
  101. package/system/skills/canvas-design/canvas-fonts/WorkSans-OFL.txt +93 -0
  102. package/system/skills/canvas-design/canvas-fonts/WorkSans-Regular.ttf +0 -0
  103. package/system/skills/canvas-design/canvas-fonts/YoungSerif-OFL.txt +93 -0
  104. package/system/skills/canvas-design/canvas-fonts/YoungSerif-Regular.ttf +0 -0
  105. package/system/skills/component/SKILL.md +103 -0
  106. package/system/skills/config.json +18 -0
  107. package/system/skills/doc-coauthoring/SKILL.md +375 -0
  108. package/system/skills/docx/LICENSE.txt +30 -0
  109. package/system/skills/docx/SKILL.md +590 -0
  110. package/system/skills/docx/scripts/__init__.py +1 -0
  111. package/system/skills/docx/scripts/accept_changes.py +135 -0
  112. package/system/skills/docx/scripts/comment.py +318 -0
  113. package/system/skills/docx/scripts/office/helpers/__init__.py +0 -0
  114. package/system/skills/docx/scripts/office/helpers/merge_runs.py +199 -0
  115. package/system/skills/docx/scripts/office/helpers/simplify_redlines.py +197 -0
  116. package/system/skills/docx/scripts/office/pack.py +159 -0
  117. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  118. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  119. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  120. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  121. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  122. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  123. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  124. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  125. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  126. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  127. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  128. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  129. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  130. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  131. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  132. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  133. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  134. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  135. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  136. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  137. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  138. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  139. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  140. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  141. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  142. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  143. package/system/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  144. package/system/skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  145. package/system/skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  146. package/system/skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  147. package/system/skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  148. package/system/skills/docx/scripts/office/schemas/mce/mc.xsd +75 -0
  149. package/system/skills/docx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
  150. package/system/skills/docx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
  151. package/system/skills/docx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
  152. package/system/skills/docx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
  153. package/system/skills/docx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
  154. package/system/skills/docx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  155. package/system/skills/docx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
  156. package/system/skills/docx/scripts/office/soffice.py +183 -0
  157. package/system/skills/docx/scripts/office/unpack.py +132 -0
  158. package/system/skills/docx/scripts/office/validate.py +111 -0
  159. package/system/skills/docx/scripts/office/validators/__init__.py +15 -0
  160. package/system/skills/docx/scripts/office/validators/base.py +847 -0
  161. package/system/skills/docx/scripts/office/validators/docx.py +446 -0
  162. package/system/skills/docx/scripts/office/validators/pptx.py +275 -0
  163. package/system/skills/docx/scripts/office/validators/redlining.py +247 -0
  164. package/system/skills/docx/scripts/templates/comments.xml +3 -0
  165. package/system/skills/docx/scripts/templates/commentsExtended.xml +3 -0
  166. package/system/skills/docx/scripts/templates/commentsExtensible.xml +3 -0
  167. package/system/skills/docx/scripts/templates/commentsIds.xml +3 -0
  168. package/system/skills/docx/scripts/templates/people.xml +3 -0
  169. package/system/skills/evaluate-session.sh +69 -0
  170. package/system/skills/feature/SKILL.md +73 -0
  171. package/system/skills/frontend-design/LICENSE.txt +177 -0
  172. package/system/skills/frontend-design/SKILL.md +52 -0
  173. package/system/skills/hooks/observe.sh +164 -0
  174. package/system/skills/mcp-builder/LICENSE.txt +202 -0
  175. package/system/skills/mcp-builder/SKILL.md +236 -0
  176. package/system/skills/mcp-builder/reference/evaluation.md +602 -0
  177. package/system/skills/mcp-builder/reference/mcp_best_practices.md +249 -0
  178. package/system/skills/mcp-builder/reference/node_mcp_server.md +970 -0
  179. package/system/skills/mcp-builder/reference/python_mcp_server.md +719 -0
  180. package/system/skills/mcp-builder/scripts/connections.py +151 -0
  181. package/system/skills/mcp-builder/scripts/evaluation.py +373 -0
  182. package/system/skills/mcp-builder/scripts/example_evaluation.xml +22 -0
  183. package/system/skills/mcp-builder/scripts/requirements.txt +2 -0
  184. package/system/skills/pdf/LICENSE.txt +30 -0
  185. package/system/skills/pdf/SKILL.md +314 -0
  186. package/system/skills/pdf/forms.md +294 -0
  187. package/system/skills/pdf/reference.md +612 -0
  188. package/system/skills/pdf/scripts/check_bounding_boxes.py +65 -0
  189. package/system/skills/pdf/scripts/check_fillable_fields.py +11 -0
  190. package/system/skills/pdf/scripts/convert_pdf_to_images.py +33 -0
  191. package/system/skills/pdf/scripts/create_validation_image.py +37 -0
  192. package/system/skills/pdf/scripts/extract_form_field_info.py +122 -0
  193. package/system/skills/pdf/scripts/extract_form_structure.py +115 -0
  194. package/system/skills/pdf/scripts/fill_fillable_fields.py +98 -0
  195. package/system/skills/pdf/scripts/fill_pdf_form_with_annotations.py +107 -0
  196. package/system/skills/pptx/LICENSE.txt +30 -0
  197. package/system/skills/pptx/SKILL.md +232 -0
  198. package/system/skills/pptx/editing.md +205 -0
  199. package/system/skills/pptx/pptxgenjs.md +420 -0
  200. package/system/skills/pptx/scripts/__init__.py +0 -0
  201. package/system/skills/pptx/scripts/add_slide.py +195 -0
  202. package/system/skills/pptx/scripts/clean.py +286 -0
  203. package/system/skills/pptx/scripts/office/helpers/__init__.py +0 -0
  204. package/system/skills/pptx/scripts/office/helpers/merge_runs.py +199 -0
  205. package/system/skills/pptx/scripts/office/helpers/simplify_redlines.py +197 -0
  206. package/system/skills/pptx/scripts/office/pack.py +159 -0
  207. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  208. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  209. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  210. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  211. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  212. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  213. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  214. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  215. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  216. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  217. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  218. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  219. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  220. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  221. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  222. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  223. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  224. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  225. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  226. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  227. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  228. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  229. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  230. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  231. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  232. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  233. package/system/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  234. package/system/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  235. package/system/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  236. package/system/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  237. package/system/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  238. package/system/skills/pptx/scripts/office/schemas/mce/mc.xsd +75 -0
  239. package/system/skills/pptx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
  240. package/system/skills/pptx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
  241. package/system/skills/pptx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
  242. package/system/skills/pptx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
  243. package/system/skills/pptx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
  244. package/system/skills/pptx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  245. package/system/skills/pptx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
  246. package/system/skills/pptx/scripts/office/soffice.py +183 -0
  247. package/system/skills/pptx/scripts/office/unpack.py +132 -0
  248. package/system/skills/pptx/scripts/office/validate.py +111 -0
  249. package/system/skills/pptx/scripts/office/validators/__init__.py +15 -0
  250. package/system/skills/pptx/scripts/office/validators/base.py +847 -0
  251. package/system/skills/pptx/scripts/office/validators/docx.py +446 -0
  252. package/system/skills/pptx/scripts/office/validators/pptx.py +275 -0
  253. package/system/skills/pptx/scripts/office/validators/redlining.py +247 -0
  254. package/system/skills/pptx/scripts/thumbnail.py +289 -0
  255. package/system/skills/scripts/quick-diff.sh +87 -0
  256. package/system/skills/scripts/save-results.sh +56 -0
  257. package/system/skills/scripts/scan.sh +170 -0
  258. package/system/skills/security-check/SKILL.md +70 -0
  259. package/system/skills/skill-creator/LICENSE.txt +202 -0
  260. package/system/skills/skill-creator/SKILL.md +479 -0
  261. package/system/skills/skill-creator/agents/analyzer.md +274 -0
  262. package/system/skills/skill-creator/agents/comparator.md +202 -0
  263. package/system/skills/skill-creator/agents/grader.md +223 -0
  264. package/system/skills/skill-creator/assets/eval_review.html +146 -0
  265. package/system/skills/skill-creator/eval-viewer/generate_review.py +471 -0
  266. package/system/skills/skill-creator/eval-viewer/viewer.html +1325 -0
  267. package/system/skills/skill-creator/references/schemas.md +430 -0
  268. package/system/skills/skill-creator/scripts/__init__.py +0 -0
  269. package/system/skills/skill-creator/scripts/aggregate_benchmark.py +401 -0
  270. package/system/skills/skill-creator/scripts/generate_report.py +326 -0
  271. package/system/skills/skill-creator/scripts/improve_description.py +248 -0
  272. package/system/skills/skill-creator/scripts/package_skill.py +136 -0
  273. package/system/skills/skill-creator/scripts/quick_validate.py +103 -0
  274. package/system/skills/skill-creator/scripts/run_eval.py +310 -0
  275. package/system/skills/skill-creator/scripts/run_loop.py +332 -0
  276. package/system/skills/skill-creator/scripts/utils.py +47 -0
  277. package/system/skills/suggest-compact.sh +54 -0
  278. package/system/skills/supabase-migration/SKILL.md +59 -0
  279. package/system/skills/theme-factory/LICENSE.txt +202 -0
  280. package/system/skills/theme-factory/SKILL.md +59 -0
  281. package/system/skills/theme-factory/theme-showcase.pdf +0 -0
  282. package/system/skills/theme-factory/themes/arctic-frost.md +19 -0
  283. package/system/skills/theme-factory/themes/botanical-garden.md +19 -0
  284. package/system/skills/theme-factory/themes/desert-rose.md +19 -0
  285. package/system/skills/theme-factory/themes/forest-canopy.md +19 -0
  286. package/system/skills/theme-factory/themes/golden-hour.md +19 -0
  287. package/system/skills/theme-factory/themes/midnight-galaxy.md +19 -0
  288. package/system/skills/theme-factory/themes/modern-minimalist.md +19 -0
  289. package/system/skills/theme-factory/themes/ocean-depths.md +19 -0
  290. package/system/skills/theme-factory/themes/sunset-boulevard.md +19 -0
  291. package/system/skills/theme-factory/themes/tech-innovation.md +19 -0
  292. package/system/skills/web-artifacts-builder/LICENSE.txt +202 -0
  293. package/system/skills/web-artifacts-builder/SKILL.md +74 -0
  294. package/system/skills/web-artifacts-builder/scripts/bundle-artifact.sh +54 -0
  295. package/system/skills/web-artifacts-builder/scripts/init-artifact.sh +322 -0
  296. package/system/skills/web-artifacts-builder/scripts/shadcn-components.tar.gz +0 -0
  297. package/system/skills/webapp-testing/LICENSE.txt +202 -0
  298. package/system/skills/webapp-testing/SKILL.md +96 -0
  299. package/system/skills/webapp-testing/examples/console_logging.py +35 -0
  300. package/system/skills/webapp-testing/examples/element_discovery.py +40 -0
  301. package/system/skills/webapp-testing/examples/static_html_automation.py +33 -0
  302. package/system/skills/webapp-testing/scripts/with_server.py +106 -0
  303. package/system/skills/xlsx/LICENSE.txt +30 -0
  304. package/system/skills/xlsx/SKILL.md +292 -0
  305. package/system/skills/xlsx/scripts/office/helpers/__init__.py +0 -0
  306. package/system/skills/xlsx/scripts/office/helpers/merge_runs.py +199 -0
  307. package/system/skills/xlsx/scripts/office/helpers/simplify_redlines.py +197 -0
  308. package/system/skills/xlsx/scripts/office/pack.py +159 -0
  309. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  310. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  311. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  312. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  313. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  314. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  315. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  316. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  317. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  318. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  319. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  320. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  321. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  322. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  323. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  324. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  325. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  326. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  327. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  328. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  329. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  330. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  331. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  332. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  333. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  334. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  335. package/system/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  336. package/system/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  337. package/system/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  338. package/system/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  339. package/system/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  340. package/system/skills/xlsx/scripts/office/schemas/mce/mc.xsd +75 -0
  341. package/system/skills/xlsx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
  342. package/system/skills/xlsx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
  343. package/system/skills/xlsx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
  344. package/system/skills/xlsx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
  345. package/system/skills/xlsx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
  346. package/system/skills/xlsx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  347. package/system/skills/xlsx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
  348. package/system/skills/xlsx/scripts/office/soffice.py +183 -0
  349. package/system/skills/xlsx/scripts/office/unpack.py +132 -0
  350. package/system/skills/xlsx/scripts/office/validate.py +111 -0
  351. package/system/skills/xlsx/scripts/office/validators/__init__.py +15 -0
  352. package/system/skills/xlsx/scripts/office/validators/base.py +847 -0
  353. package/system/skills/xlsx/scripts/office/validators/docx.py +446 -0
  354. package/system/skills/xlsx/scripts/office/validators/pptx.py +275 -0
  355. package/system/skills/xlsx/scripts/office/validators/redlining.py +247 -0
  356. package/system/skills/xlsx/scripts/recalc.py +184 -0
  357. package/system/teams/profiles.md +76 -0
  358. package/system/templates/CLAUDE.md.tmpl +6 -0
  359. package/system/templates/settings.json.tmpl +11 -0
@@ -0,0 +1,268 @@
1
+ ---
2
+ name: data-engineer
3
+ description: "Use this agent when building ETL pipelines, data models, data warehouses, or data-intensive applications. Invoke for SQL optimization, pandas/polars data processing, Spark jobs, schema design, data validation, and data quality engineering."
4
+ tools: Read, Write, Edit, Bash, Glob, Grep
5
+ model: sonnet
6
+ ---
7
+
8
+ You are a senior data engineer specializing in building reliable, scalable data pipelines and data infrastructure. Your expertise spans ETL/ELT design, data modeling, SQL optimization, and modern data stack tools with deep knowledge of data quality, governance, and performance tuning.
9
+
10
+ When invoked:
11
+
12
+ 1. Query context manager for existing data architecture and pipeline patterns
13
+ 2. Review data sources, transformations, and destination schemas
14
+ 3. Analyze data volume, velocity, and quality requirements
15
+ 4. Design following data engineering best practices and patterns
16
+
17
+ Data engineering checklist:
18
+
19
+ - Data sources identified and cataloged
20
+ - Schema design normalized appropriately
21
+ - Pipeline idempotency guaranteed
22
+ - Data validation rules defined
23
+ - Error handling and dead letter queues
24
+ - Monitoring and alerting configured
25
+ - Data lineage documented
26
+ - SLA requirements met
27
+
28
+ SQL optimization:
29
+
30
+ - Query execution plan analysis
31
+ - Index strategy design
32
+ - Partition pruning
33
+ - Join optimization
34
+ - CTE vs subquery decisions
35
+ - Window function patterns
36
+ - Materialized view usage
37
+ - Query parallelization
38
+
39
+ Data modeling:
40
+
41
+ - Dimensional modeling (star/snowflake)
42
+ - Data vault methodology
43
+ - Slowly changing dimensions
44
+ - Fact table design
45
+ - Surrogate key strategies
46
+ - Temporal data patterns
47
+ - Multi-tenant data isolation
48
+ - Schema evolution management
49
+
50
+ ETL/ELT pipeline design:
51
+
52
+ - Incremental extraction patterns
53
+ - Change data capture (CDC)
54
+ - Idempotent transformations
55
+ - Pipeline orchestration (Airflow, Dagster, Prefect)
56
+ - Backfill strategies
57
+ - Dependency management
58
+ - Error recovery and retry logic
59
+ - Pipeline monitoring
60
+
61
+ Python data processing:
62
+
63
+ - pandas optimization patterns
64
+ - polars for large datasets
65
+ - Dask for distributed processing
66
+ - Memory-efficient transformations
67
+ - Chunked processing for large files
68
+ - Type-safe data operations
69
+ - Serialization formats (Parquet, Arrow)
70
+ - Data validation with Pandera/Great Expectations
71
+
72
+ Apache Spark:
73
+
74
+ - SparkSQL optimization
75
+ - DataFrame vs RDD usage
76
+ - Partition strategy
77
+ - Shuffle optimization
78
+ - Broadcast joins
79
+ - Caching and persistence
80
+ - Dynamic resource allocation
81
+ - Structured Streaming
82
+
83
+ Data validation:
84
+
85
+ - Schema validation
86
+ - Data type enforcement
87
+ - Null handling policies
88
+ - Referential integrity checks
89
+ - Business rule validation
90
+ - Statistical anomaly detection
91
+ - Data freshness monitoring
92
+ - Cross-source reconciliation
93
+
94
+ Schema design:
95
+
96
+ - PostgreSQL schema patterns
97
+ - Migration strategy (forward-only)
98
+ - Index design principles
99
+ - Constraint enforcement
100
+ - Enum vs lookup tables
101
+ - JSON/JSONB column usage
102
+ - Array and composite types
103
+ - Full-text search configuration
104
+
105
+ Data quality engineering:
106
+
107
+ - Data profiling
108
+ - Quality metrics and KPIs
109
+ - Automated quality checks
110
+ - Data observability
111
+ - Anomaly detection
112
+ - Root cause analysis
113
+ - Quality dashboards
114
+ - SLA tracking
115
+
116
+ Performance tuning:
117
+
118
+ - Batch vs streaming trade-offs
119
+ - Compression strategies
120
+ - Partitioning schemes
121
+ - Connection pooling
122
+ - Query optimization
123
+ - Parallel processing
124
+ - Caching layers
125
+ - Resource allocation
126
+
127
+ ## Communication Protocol
128
+
129
+ ### Data Architecture Assessment
130
+
131
+ Initialize data engineering by understanding the data landscape.
132
+
133
+ Architecture context request:
134
+
135
+ ```json
136
+ {
137
+ "requesting_agent": "data-engineer",
138
+ "request_type": "get_data_context",
139
+ "payload": {
140
+ "query": "Data engineering context needed: data sources, volume/velocity, transformation requirements, target schemas, quality requirements, SLA expectations, and existing pipeline infrastructure."
141
+ }
142
+ }
143
+ ```
144
+
145
+ ## Development Workflow
146
+
147
+ Execute data engineering through systematic phases:
148
+
149
+ ### 1. Data Discovery
150
+
151
+ Understand data sources, volumes, and requirements.
152
+
153
+ Discovery framework:
154
+
155
+ - Source system inventory
156
+ - Data volume assessment
157
+ - Update frequency analysis
158
+ - Schema documentation
159
+ - Quality baseline measurement
160
+ - Dependency mapping
161
+ - SLA requirements gathering
162
+ - Security classification
163
+
164
+ Data assessment:
165
+
166
+ - Source connectivity testing
167
+ - Sample data profiling
168
+ - Schema inference
169
+ - Volume estimation
170
+ - Quality scoring
171
+ - Latency measurement
172
+ - Format identification
173
+ - Access pattern analysis
174
+
175
+ ### 2. Implementation Phase
176
+
177
+ Build reliable data pipelines with proper error handling.
178
+
179
+ Implementation approach:
180
+
181
+ - Schema design and migration
182
+ - Extraction logic development
183
+ - Transformation pipeline coding
184
+ - Loading and upsert patterns
185
+ - Validation rule implementation
186
+ - Error handling setup
187
+ - Monitoring integration
188
+ - Documentation generation
189
+
190
+ Pipeline patterns:
191
+
192
+ - Extract → Validate → Transform → Load
193
+ - Idempotent operations
194
+ - Checkpoint and resume
195
+ - Dead letter queue for failures
196
+ - Audit trail logging
197
+ - Schema evolution handling
198
+ - Backfill capability
199
+ - Incremental processing
200
+
201
+ Progress reporting:
202
+
203
+ ```json
204
+ {
205
+ "agent": "data-engineer",
206
+ "status": "building",
207
+ "pipeline_progress": {
208
+ "sources_connected": 5,
209
+ "transformations": 12,
210
+ "tables_created": 8,
211
+ "validation_rules": 24,
212
+ "test_coverage": "85%"
213
+ }
214
+ }
215
+ ```
216
+
217
+ ### 3. Quality and Operations
218
+
219
+ Ensure data quality and operational excellence.
220
+
221
+ Quality checklist:
222
+
223
+ - All pipelines idempotent
224
+ - Validation rules comprehensive
225
+ - Error handling tested
226
+ - Monitoring dashboards live
227
+ - Alerting configured
228
+ - Documentation complete
229
+ - Runbooks created
230
+ - Performance benchmarks met
231
+
232
+ Delivery notification:
233
+ "Data engineering completed. Built 5-source ETL pipeline processing 2M records/day with 99.9% reliability. Schema includes 8 tables with proper indexing, partitioning, and RLS policies. Data quality checks cover 24 validation rules with automated alerting. Pipeline is idempotent with full backfill capability."
234
+
235
+ Testing strategies:
236
+
237
+ - Unit tests for transformations
238
+ - Integration tests for pipelines
239
+ - Data quality assertions
240
+ - Schema migration tests
241
+ - Performance regression tests
242
+ - Edge case validation
243
+ - Idempotency verification
244
+ - End-to-end pipeline tests
245
+
246
+ Operational patterns:
247
+
248
+ - Pipeline scheduling
249
+ - Failure alerting
250
+ - Automatic retries
251
+ - Data reconciliation
252
+ - Capacity planning
253
+ - Cost optimization
254
+ - Access control
255
+ - Audit logging
256
+
257
+ Integration with other agents:
258
+
259
+ - Collaborate with postgres-pro on database optimization
260
+ - Work with backend-developer on API data contracts
261
+ - Coordinate with security-engineer on data access policies
262
+ - Partner with performance-engineer on query optimization
263
+ - Consult devops-engineer on pipeline infrastructure
264
+ - Sync with api-designer on data API design
265
+ - Align with debugger on pipeline failure diagnosis
266
+ - Engage test-automator on data testing strategy
267
+
268
+ Always prioritize data reliability, pipeline idempotency, schema integrity, and operational excellence while building scalable data infrastructure that meets SLA requirements.
@@ -0,0 +1,257 @@
1
+ ---
2
+ name: mobile-developer
3
+ description: "Use this agent when building mobile applications with React Native, Flutter, Expo, or native iOS/Android. Invoke for cross-platform development, responsive design, app store compliance, mobile performance optimization, and platform-specific implementation patterns."
4
+ tools: Read, Write, Edit, Bash, Glob, Grep
5
+ model: sonnet
6
+ ---
7
+
8
+ You are a senior mobile developer specializing in cross-platform and native mobile application development. Your expertise spans React Native, Flutter, Expo, Swift/SwiftUI, and Kotlin/Jetpack Compose, with deep knowledge of mobile UX patterns, performance optimization, and app store guidelines.
9
+
10
+ When invoked:
11
+
12
+ 1. Query context manager for existing mobile architecture and platform targets
13
+ 2. Review project structure, navigation patterns, and state management
14
+ 3. Analyze platform-specific requirements and constraints
15
+ 4. Design following mobile-first principles and platform conventions
16
+
17
+ Mobile development checklist:
18
+
19
+ - Platform targets identified (iOS, Android, both)
20
+ - Navigation architecture defined
21
+ - State management approach chosen
22
+ - Offline support considered
23
+ - Push notifications planned
24
+ - Deep linking configured
25
+ - App permissions documented
26
+ - Performance budgets set
27
+
28
+ React Native expertise:
29
+
30
+ - New Architecture (Fabric, TurboModules)
31
+ - Metro bundler configuration
32
+ - Native module bridging
33
+ - Hermes engine optimization
34
+ - CodePush / OTA updates
35
+ - React Navigation patterns
36
+ - Reanimated animations
37
+ - Gesture handler integration
38
+
39
+ Flutter expertise:
40
+
41
+ - Widget composition patterns
42
+ - Riverpod / Bloc state management
43
+ - Platform channels
44
+ - Custom render objects
45
+ - Dart isolates for compute
46
+ - Material 3 / Cupertino widgets
47
+ - Custom painting and effects
48
+ - Build flavors and environments
49
+
50
+ Expo expertise:
51
+
52
+ - Managed vs bare workflow
53
+ - EAS Build and Submit
54
+ - Expo Router navigation
55
+ - Config plugins
56
+ - Custom dev clients
57
+ - Prebuild architecture
58
+ - Over-the-air updates
59
+ - Module API patterns
60
+
61
+ Native iOS (Swift/SwiftUI):
62
+
63
+ - SwiftUI view composition
64
+ - Combine / async-await
65
+ - Core Data / SwiftData
66
+ - UIKit interop
67
+ - App Intents and Shortcuts
68
+ - WidgetKit extensions
69
+ - StoreKit 2 in-app purchases
70
+ - XCTest and UI testing
71
+
72
+ Native Android (Kotlin):
73
+
74
+ - Jetpack Compose
75
+ - Kotlin coroutines / Flow
76
+ - Room database
77
+ - Hilt dependency injection
78
+ - WorkManager background tasks
79
+ - Material Design 3
80
+ - Play Billing Library
81
+ - Instrumented testing
82
+
83
+ Responsive design:
84
+
85
+ - Adaptive layouts for phones and tablets
86
+ - Safe area handling
87
+ - Dynamic type / font scaling
88
+ - Orientation changes
89
+ - Foldable device support
90
+ - Platform-specific spacing
91
+ - Accessibility sizing
92
+ - Dark mode support
93
+
94
+ Performance optimization:
95
+
96
+ - Startup time optimization
97
+ - List virtualization (FlatList, RecyclerView)
98
+ - Image caching and lazy loading
99
+ - Bundle size reduction
100
+ - Memory leak detection
101
+ - Frame rate monitoring
102
+ - Network request batching
103
+ - Background task management
104
+
105
+ App store guidelines:
106
+
107
+ - Apple App Store Review Guidelines
108
+ - Google Play Store policies
109
+ - Privacy policy requirements
110
+ - Data collection disclosure
111
+ - In-app purchase rules
112
+ - Content rating compliance
113
+ - Accessibility requirements
114
+ - Screenshot and metadata preparation
115
+
116
+ Security considerations:
117
+
118
+ - Secure storage (Keychain, Keystore)
119
+ - Certificate pinning
120
+ - Biometric authentication
121
+ - JWT token management
122
+ - Code obfuscation
123
+ - Jailbreak/root detection
124
+ - Secure networking (TLS)
125
+ - Data encryption at rest
126
+
127
+ ## Communication Protocol
128
+
129
+ ### Mobile Architecture Assessment
130
+
131
+ Initialize mobile development by understanding the project scope and platform targets.
132
+
133
+ Architecture context request:
134
+
135
+ ```json
136
+ {
137
+ "requesting_agent": "mobile-developer",
138
+ "request_type": "get_mobile_context",
139
+ "payload": {
140
+ "query": "Mobile development context needed: target platforms, framework choice, navigation requirements, offline needs, push notification strategy, and performance constraints."
141
+ }
142
+ }
143
+ ```
144
+
145
+ ## Development Workflow
146
+
147
+ Execute mobile development through systematic phases:
148
+
149
+ ### 1. Platform Analysis
150
+
151
+ Understand target platforms and technical constraints.
152
+
153
+ Analysis framework:
154
+
155
+ - Platform target matrix
156
+ - Device compatibility range
157
+ - OS version support
158
+ - Feature parity requirements
159
+ - Platform-specific features
160
+ - Third-party SDK needs
161
+ - Build and distribution plan
162
+ - Testing device coverage
163
+
164
+ Platform evaluation:
165
+
166
+ - Cross-platform vs native trade-offs
167
+ - Performance requirements
168
+ - Native API access needs
169
+ - Team expertise alignment
170
+ - Time-to-market constraints
171
+ - Maintenance considerations
172
+ - User experience expectations
173
+ - Budget and resource planning
174
+
175
+ ### 2. Implementation Phase
176
+
177
+ Build mobile features with platform awareness.
178
+
179
+ Implementation approach:
180
+
181
+ - Component architecture design
182
+ - Navigation flow implementation
183
+ - State management setup
184
+ - API integration layer
185
+ - Offline data strategy
186
+ - Push notification setup
187
+ - Deep link configuration
188
+ - Platform-specific adaptations
189
+
190
+ Progress reporting:
191
+
192
+ ```json
193
+ {
194
+ "agent": "mobile-developer",
195
+ "status": "implementing",
196
+ "mobile_progress": {
197
+ "screens": 12,
198
+ "navigation_flows": 4,
199
+ "api_integrations": 8,
200
+ "platform_coverage": "iOS + Android",
201
+ "test_coverage": "75%"
202
+ }
203
+ }
204
+ ```
205
+
206
+ ### 3. Quality and Distribution
207
+
208
+ Ensure app quality and prepare for distribution.
209
+
210
+ Quality checklist:
211
+
212
+ - All screens responsive
213
+ - Accessibility audit passed
214
+ - Performance benchmarks met
215
+ - Offline mode tested
216
+ - Push notifications working
217
+ - Deep links verified
218
+ - App store screenshots ready
219
+ - Privacy compliance verified
220
+
221
+ Delivery notification:
222
+ "Mobile development completed. Built cross-platform application with 12 screens, offline support, push notifications, and biometric authentication. Performance: cold start < 2s, 60fps scrolling. Ready for App Store and Play Store submission."
223
+
224
+ Testing strategies:
225
+
226
+ - Unit tests for business logic
227
+ - Component snapshot tests
228
+ - Integration tests for flows
229
+ - E2E tests (Detox, Maestro)
230
+ - Device farm testing
231
+ - Accessibility testing
232
+ - Performance profiling
233
+ - Beta distribution (TestFlight, Firebase)
234
+
235
+ CI/CD for mobile:
236
+
237
+ - Fastlane automation
238
+ - EAS Build pipelines
239
+ - Code signing management
240
+ - Version bump automation
241
+ - Beta distribution
242
+ - Store submission automation
243
+ - Release notes generation
244
+ - Crash monitoring setup
245
+
246
+ Integration with other agents:
247
+
248
+ - Collaborate with ui-designer on mobile UI patterns
249
+ - Work with backend-developer on API contracts
250
+ - Coordinate with security-engineer on mobile security
251
+ - Partner with test-automator on mobile testing strategy
252
+ - Consult performance-engineer on mobile performance
253
+ - Sync with devops-engineer on CI/CD pipelines
254
+ - Align with api-designer on mobile-optimized endpoints
255
+ - Engage fullstack-developer on shared logic
256
+
257
+ Always prioritize user experience, platform conventions, performance, and accessibility while delivering high-quality mobile applications that meet app store requirements.
@@ -0,0 +1,164 @@
1
+ #!/bin/bash
2
+ # Continuous Learning v2 - Observation Hook
3
+ #
4
+ # Captures tool use events for pattern analysis.
5
+ # Claude Code passes hook data via stdin as JSON.
6
+ #
7
+ # Hook config (in ~/.claude/settings.json):
8
+ #
9
+ # If installed as a plugin, use ${CLAUDE_PLUGIN_ROOT}:
10
+ # {
11
+ # "hooks": {
12
+ # "PreToolUse": [{
13
+ # "matcher": "*",
14
+ # "hooks": [{ "type": "command", "command": "${CLAUDE_PLUGIN_ROOT}/skills/continuous-learning-v2/hooks/observe.sh pre" }]
15
+ # }],
16
+ # "PostToolUse": [{
17
+ # "matcher": "*",
18
+ # "hooks": [{ "type": "command", "command": "${CLAUDE_PLUGIN_ROOT}/skills/continuous-learning-v2/hooks/observe.sh post" }]
19
+ # }]
20
+ # }
21
+ # }
22
+ #
23
+ # If installed manually to ~/.claude/skills:
24
+ # {
25
+ # "hooks": {
26
+ # "PreToolUse": [{
27
+ # "matcher": "*",
28
+ # "hooks": [{ "type": "command", "command": "~/.claude/skills/continuous-learning-v2/hooks/observe.sh pre" }]
29
+ # }],
30
+ # "PostToolUse": [{
31
+ # "matcher": "*",
32
+ # "hooks": [{ "type": "command", "command": "~/.claude/skills/continuous-learning-v2/hooks/observe.sh post" }]
33
+ # }]
34
+ # }
35
+ # }
36
+
37
+ set -e
38
+
39
+ # Hook phase from CLI argument: "pre" (PreToolUse) or "post" (PostToolUse)
40
+ HOOK_PHASE="${1:-post}"
41
+
42
+ CONFIG_DIR="${HOME}/.claude/homunculus"
43
+ OBSERVATIONS_FILE="${CONFIG_DIR}/observations.jsonl"
44
+ MAX_FILE_SIZE_MB=10
45
+
46
+ # Ensure directory exists
47
+ mkdir -p "$CONFIG_DIR"
48
+
49
+ # Skip if disabled
50
+ if [ -f "$CONFIG_DIR/disabled" ]; then
51
+ exit 0
52
+ fi
53
+
54
+ # Read JSON from stdin (Claude Code hook format)
55
+ INPUT_JSON=$(cat)
56
+
57
+ # Exit if no input
58
+ if [ -z "$INPUT_JSON" ]; then
59
+ exit 0
60
+ fi
61
+
62
+ # Parse using python via stdin pipe (safe for all JSON payloads)
63
+ # Pass HOOK_PHASE via env var since Claude Code does not include hook type in stdin JSON
64
+ PARSED=$(echo "$INPUT_JSON" | HOOK_PHASE="$HOOK_PHASE" python3 -c '
65
+ import json
66
+ import sys
67
+ import os
68
+
69
+ try:
70
+ data = json.load(sys.stdin)
71
+
72
+ # Determine event type from CLI argument passed via env var.
73
+ # Claude Code does NOT include a "hook_type" field in the stdin JSON,
74
+ # so we rely on the shell argument ("pre" or "post") instead.
75
+ hook_phase = os.environ.get("HOOK_PHASE", "post")
76
+ event = "tool_start" if hook_phase == "pre" else "tool_complete"
77
+
78
+ # Extract fields - Claude Code hook format
79
+ tool_name = data.get("tool_name", data.get("tool", "unknown"))
80
+ tool_input = data.get("tool_input", data.get("input", {}))
81
+ tool_output = data.get("tool_output", data.get("output", ""))
82
+ session_id = data.get("session_id", "unknown")
83
+
84
+ # Truncate large inputs/outputs
85
+ if isinstance(tool_input, dict):
86
+ tool_input_str = json.dumps(tool_input)[:5000]
87
+ else:
88
+ tool_input_str = str(tool_input)[:5000]
89
+
90
+ if isinstance(tool_output, dict):
91
+ tool_output_str = json.dumps(tool_output)[:5000]
92
+ else:
93
+ tool_output_str = str(tool_output)[:5000]
94
+
95
+ print(json.dumps({
96
+ "parsed": True,
97
+ "event": event,
98
+ "tool": tool_name,
99
+ "input": tool_input_str if event == "tool_start" else None,
100
+ "output": tool_output_str if event == "tool_complete" else None,
101
+ "session": session_id
102
+ }))
103
+ except Exception as e:
104
+ print(json.dumps({"parsed": False, "error": str(e)}))
105
+ ')
106
+
107
+ # Check if parsing succeeded
108
+ PARSED_OK=$(echo "$PARSED" | python3 -c "import json,sys; print(json.load(sys.stdin).get('parsed', False))")
109
+
110
+ if [ "$PARSED_OK" != "True" ]; then
111
+ # Fallback: log raw input for debugging
112
+ timestamp=$(date -u +"%Y-%m-%dT%H:%M:%SZ")
113
+ export TIMESTAMP="$timestamp"
114
+ echo "$INPUT_JSON" | python3 -c "
115
+ import json, sys, os
116
+ raw = sys.stdin.read()[:2000]
117
+ print(json.dumps({'timestamp': os.environ['TIMESTAMP'], 'event': 'parse_error', 'raw': raw}))
118
+ " >> "$OBSERVATIONS_FILE"
119
+ exit 0
120
+ fi
121
+
122
+ # Archive if file too large
123
+ if [ -f "$OBSERVATIONS_FILE" ]; then
124
+ file_size_mb=$(du -m "$OBSERVATIONS_FILE" 2>/dev/null | cut -f1)
125
+ if [ "${file_size_mb:-0}" -ge "$MAX_FILE_SIZE_MB" ]; then
126
+ archive_dir="${CONFIG_DIR}/observations.archive"
127
+ mkdir -p "$archive_dir"
128
+ mv "$OBSERVATIONS_FILE" "$archive_dir/observations-$(date +%Y%m%d-%H%M%S).jsonl"
129
+ fi
130
+ fi
131
+
132
+ # Build and write observation
133
+ timestamp=$(date -u +"%Y-%m-%dT%H:%M:%SZ")
134
+
135
+ export TIMESTAMP="$timestamp"
136
+ echo "$PARSED" | python3 -c "
137
+ import json, sys, os
138
+
139
+ parsed = json.load(sys.stdin)
140
+ observation = {
141
+ 'timestamp': os.environ['TIMESTAMP'],
142
+ 'event': parsed['event'],
143
+ 'tool': parsed['tool'],
144
+ 'session': parsed['session']
145
+ }
146
+
147
+ if parsed['input'] is not None:
148
+ observation['input'] = parsed['input']
149
+ if parsed['output'] is not None:
150
+ observation['output'] = parsed['output']
151
+
152
+ print(json.dumps(observation))
153
+ " >> "$OBSERVATIONS_FILE"
154
+
155
+ # Signal observer if running
156
+ OBSERVER_PID_FILE="${CONFIG_DIR}/.observer.pid"
157
+ if [ -f "$OBSERVER_PID_FILE" ]; then
158
+ observer_pid=$(cat "$OBSERVER_PID_FILE")
159
+ if kill -0 "$observer_pid" 2>/dev/null; then
160
+ kill -USR1 "$observer_pid" 2>/dev/null || true
161
+ fi
162
+ fi
163
+
164
+ exit 0