@amrhas82/agentic-kit 1.0.0 → 1.2.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 (2349) hide show
  1. package/CHANGELOG.md +352 -0
  2. package/README.md +242 -339
  3. package/TROUBLESHOOTING.md +1 -1
  4. package/docs/.gitkeep +1 -0
  5. package/docs/CONTRIBUTING.md +739 -0
  6. package/docs/DUAL_PUBLISH_SUMMARY.md +177 -0
  7. package/docs/ERROR_HANDLING_IMPLEMENTATION.md +327 -0
  8. package/docs/GITHUB_PACKAGES.md +181 -0
  9. package/docs/GITHUB_SETUP.md +158 -0
  10. package/docs/INSTALLATION_DEMO.md +691 -0
  11. package/docs/INSTALLER_GUIDE.md +1586 -0
  12. package/docs/INTEGRATION_ISSUES_9.1.md +341 -0
  13. package/docs/KNOWLEDGE_BASE.md +727 -0
  14. package/docs/MIGRATION.md +384 -0
  15. package/docs/PACKAGE_BASELINE.md +557 -0
  16. package/docs/PACKAGE_VALIDATION_REPORT.md +427 -0
  17. package/docs/PASS_INTEGRATION.md +307 -0
  18. package/docs/PASS_QUICK_START.md +150 -0
  19. package/docs/PRIVACY.md +203 -0
  20. package/docs/PUBLISHING.md +494 -0
  21. package/docs/SECURITY.md +317 -0
  22. package/docs/SILENT_MODE_GUIDE.md +526 -0
  23. package/docs/SKILLS_CONVERSION.md +154 -0
  24. package/docs/TESTING.md +582 -0
  25. package/docs/TEST_COVERAGE.md +347 -0
  26. package/docs/UPDATED_VARIANT_CONFIGURATION.md +274 -0
  27. package/docs/VARIANT_CONFIGURATION.md +440 -0
  28. package/installer/cli.js +2229 -0
  29. package/installer/installation-engine.js +1502 -0
  30. package/installer/package-manager.js +597 -0
  31. package/installer/path-manager.js +427 -0
  32. package/installer/report-template.js +298 -0
  33. package/installer/state-manager.js +426 -0
  34. package/installer/telemetry.js +241 -0
  35. package/installer/verification-system.js +274 -0
  36. package/package.json +33 -7
  37. package/packages/ampcode/AGENTS.md +109 -0
  38. package/packages/ampcode/README.md +17 -0
  39. package/packages/ampcode/agents/orchestrator.md +103 -0
  40. package/packages/ampcode/hooks/register-agents.js +128 -0
  41. package/packages/ampcode/hooks/session-start.js +168 -0
  42. package/packages/ampcode/resources/agent-teams.yaml +50 -0
  43. package/packages/ampcode/resources/data.md +1372 -0
  44. package/packages/ampcode/resources/templates.yaml +5810 -0
  45. package/packages/ampcode/resources/workflows.yaml +1513 -0
  46. package/packages/ampcode/settings.json +13 -0
  47. package/packages/ampcode/skills/README.md +76 -0
  48. package/packages/ampcode/subagents-and-skills.md +79 -0
  49. package/packages/ampcode/variants.json +67 -0
  50. package/packages/claude/.claude-plugin/marketplace.json +67 -0
  51. package/packages/claude/.claude-plugin/plugin-lite.json +43 -0
  52. package/packages/claude/.claude-plugin/plugin-pro.json +188 -0
  53. package/packages/claude/.claude-plugin/plugin-standard.json +152 -0
  54. package/packages/claude/.claude-plugin/plugin.json +52 -0
  55. package/packages/claude/AGENTS.md +243 -0
  56. package/packages/claude/README.md +23 -0
  57. package/packages/claude/agents/1-create-prd.md +56 -0
  58. package/packages/claude/agents/2-generate-tasks.md +73 -0
  59. package/packages/claude/agents/3-process-task-list.md +101 -0
  60. package/packages/claude/agents/business-analyst.md +76 -0
  61. package/packages/claude/agents/full-stack-dev.md +80 -0
  62. package/packages/claude/agents/holistic-architect.md +91 -0
  63. package/packages/claude/agents/master.md +55 -0
  64. package/packages/claude/agents/product-manager.md +82 -0
  65. package/packages/claude/agents/product-owner.md +97 -0
  66. package/packages/claude/agents/qa-test-architect.md +72 -0
  67. package/packages/claude/agents/scrum-master.md +64 -0
  68. package/packages/claude/agents/ux-expert.md +74 -0
  69. package/packages/claude/hooks/session-start.js +159 -0
  70. package/packages/claude/resources/agent-teams.yaml +50 -0
  71. package/packages/claude/resources/checklists.md +1724 -0
  72. package/packages/claude/resources/task-briefs.md +4428 -0
  73. package/packages/claude/resources/templates.yaml +5810 -0
  74. package/packages/claude/resources/workflows.yaml +1513 -0
  75. package/packages/claude/skills/README.md +76 -0
  76. package/packages/claude/skills/algorithmic-art/LICENSE.txt +202 -0
  77. package/packages/claude/skills/algorithmic-art/SKILL.md +405 -0
  78. package/packages/claude/skills/algorithmic-art/templates/generator_template.js +223 -0
  79. package/packages/claude/skills/algorithmic-art/templates/viewer.html +599 -0
  80. package/packages/claude/skills/artifacts-builder/LICENSE.txt +202 -0
  81. package/packages/claude/skills/artifacts-builder/SKILL.md +74 -0
  82. package/packages/claude/skills/artifacts-builder/scripts/bundle-artifact.sh +54 -0
  83. package/packages/claude/skills/artifacts-builder/scripts/init-artifact.sh +322 -0
  84. package/packages/claude/skills/artifacts-builder/scripts/shadcn-components.tar.gz +0 -0
  85. package/packages/claude/skills/brainstorming/SKILL.md +54 -0
  86. package/packages/claude/skills/brand-guidelines/LICENSE.txt +202 -0
  87. package/packages/claude/skills/brand-guidelines/SKILL.md +73 -0
  88. package/packages/claude/skills/canvas-design/LICENSE.txt +202 -0
  89. package/packages/claude/skills/canvas-design/SKILL.md +130 -0
  90. package/packages/claude/skills/canvas-design/canvas-fonts/ArsenalSC-OFL.txt +93 -0
  91. package/packages/claude/skills/canvas-design/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
  92. package/packages/claude/skills/canvas-design/canvas-fonts/BigShoulders-Bold.ttf +0 -0
  93. package/packages/claude/skills/canvas-design/canvas-fonts/BigShoulders-OFL.txt +93 -0
  94. package/packages/claude/skills/canvas-design/canvas-fonts/BigShoulders-Regular.ttf +0 -0
  95. package/packages/claude/skills/canvas-design/canvas-fonts/Boldonse-OFL.txt +93 -0
  96. package/packages/claude/skills/canvas-design/canvas-fonts/Boldonse-Regular.ttf +0 -0
  97. package/packages/claude/skills/canvas-design/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
  98. package/packages/claude/skills/canvas-design/canvas-fonts/BricolageGrotesque-OFL.txt +93 -0
  99. package/packages/claude/skills/canvas-design/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
  100. package/packages/claude/skills/canvas-design/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
  101. package/packages/claude/skills/canvas-design/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
  102. package/packages/claude/skills/canvas-design/canvas-fonts/CrimsonPro-OFL.txt +93 -0
  103. package/packages/claude/skills/canvas-design/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
  104. package/packages/claude/skills/canvas-design/canvas-fonts/DMMono-OFL.txt +93 -0
  105. package/packages/claude/skills/canvas-design/canvas-fonts/DMMono-Regular.ttf +0 -0
  106. package/packages/claude/skills/canvas-design/canvas-fonts/EricaOne-OFL.txt +94 -0
  107. package/packages/claude/skills/canvas-design/canvas-fonts/EricaOne-Regular.ttf +0 -0
  108. package/packages/claude/skills/canvas-design/canvas-fonts/GeistMono-Bold.ttf +0 -0
  109. package/packages/claude/skills/canvas-design/canvas-fonts/GeistMono-OFL.txt +93 -0
  110. package/packages/claude/skills/canvas-design/canvas-fonts/GeistMono-Regular.ttf +0 -0
  111. package/packages/claude/skills/canvas-design/canvas-fonts/Gloock-OFL.txt +93 -0
  112. package/packages/claude/skills/canvas-design/canvas-fonts/Gloock-Regular.ttf +0 -0
  113. package/packages/claude/skills/canvas-design/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
  114. package/packages/claude/skills/canvas-design/canvas-fonts/IBMPlexMono-OFL.txt +93 -0
  115. package/packages/claude/skills/canvas-design/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
  116. package/packages/claude/skills/canvas-design/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
  117. package/packages/claude/skills/canvas-design/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
  118. package/packages/claude/skills/canvas-design/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
  119. package/packages/claude/skills/canvas-design/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
  120. package/packages/claude/skills/canvas-design/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
  121. package/packages/claude/skills/canvas-design/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
  122. package/packages/claude/skills/canvas-design/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
  123. package/packages/claude/skills/canvas-design/canvas-fonts/InstrumentSans-OFL.txt +93 -0
  124. package/packages/claude/skills/canvas-design/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
  125. package/packages/claude/skills/canvas-design/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
  126. package/packages/claude/skills/canvas-design/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
  127. package/packages/claude/skills/canvas-design/canvas-fonts/Italiana-OFL.txt +93 -0
  128. package/packages/claude/skills/canvas-design/canvas-fonts/Italiana-Regular.ttf +0 -0
  129. package/packages/claude/skills/canvas-design/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
  130. package/packages/claude/skills/canvas-design/canvas-fonts/JetBrainsMono-OFL.txt +93 -0
  131. package/packages/claude/skills/canvas-design/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
  132. package/packages/claude/skills/canvas-design/canvas-fonts/Jura-Light.ttf +0 -0
  133. package/packages/claude/skills/canvas-design/canvas-fonts/Jura-Medium.ttf +0 -0
  134. package/packages/claude/skills/canvas-design/canvas-fonts/Jura-OFL.txt +93 -0
  135. package/packages/claude/skills/canvas-design/canvas-fonts/LibreBaskerville-OFL.txt +93 -0
  136. package/packages/claude/skills/canvas-design/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
  137. package/packages/claude/skills/canvas-design/canvas-fonts/Lora-Bold.ttf +0 -0
  138. package/packages/claude/skills/canvas-design/canvas-fonts/Lora-BoldItalic.ttf +0 -0
  139. package/packages/claude/skills/canvas-design/canvas-fonts/Lora-Italic.ttf +0 -0
  140. package/packages/claude/skills/canvas-design/canvas-fonts/Lora-OFL.txt +93 -0
  141. package/packages/claude/skills/canvas-design/canvas-fonts/Lora-Regular.ttf +0 -0
  142. package/packages/claude/skills/canvas-design/canvas-fonts/NationalPark-Bold.ttf +0 -0
  143. package/packages/claude/skills/canvas-design/canvas-fonts/NationalPark-OFL.txt +93 -0
  144. package/packages/claude/skills/canvas-design/canvas-fonts/NationalPark-Regular.ttf +0 -0
  145. package/packages/claude/skills/canvas-design/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -0
  146. package/packages/claude/skills/canvas-design/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
  147. package/packages/claude/skills/canvas-design/canvas-fonts/Outfit-Bold.ttf +0 -0
  148. package/packages/claude/skills/canvas-design/canvas-fonts/Outfit-OFL.txt +93 -0
  149. package/packages/claude/skills/canvas-design/canvas-fonts/Outfit-Regular.ttf +0 -0
  150. package/packages/claude/skills/canvas-design/canvas-fonts/PixelifySans-Medium.ttf +0 -0
  151. package/packages/claude/skills/canvas-design/canvas-fonts/PixelifySans-OFL.txt +93 -0
  152. package/packages/claude/skills/canvas-design/canvas-fonts/PoiretOne-OFL.txt +93 -0
  153. package/packages/claude/skills/canvas-design/canvas-fonts/PoiretOne-Regular.ttf +0 -0
  154. package/packages/claude/skills/canvas-design/canvas-fonts/RedHatMono-Bold.ttf +0 -0
  155. package/packages/claude/skills/canvas-design/canvas-fonts/RedHatMono-OFL.txt +93 -0
  156. package/packages/claude/skills/canvas-design/canvas-fonts/RedHatMono-Regular.ttf +0 -0
  157. package/packages/claude/skills/canvas-design/canvas-fonts/Silkscreen-OFL.txt +93 -0
  158. package/packages/claude/skills/canvas-design/canvas-fonts/Silkscreen-Regular.ttf +0 -0
  159. package/packages/claude/skills/canvas-design/canvas-fonts/SmoochSans-Medium.ttf +0 -0
  160. package/packages/claude/skills/canvas-design/canvas-fonts/SmoochSans-OFL.txt +93 -0
  161. package/packages/claude/skills/canvas-design/canvas-fonts/Tektur-Medium.ttf +0 -0
  162. package/packages/claude/skills/canvas-design/canvas-fonts/Tektur-OFL.txt +93 -0
  163. package/packages/claude/skills/canvas-design/canvas-fonts/Tektur-Regular.ttf +0 -0
  164. package/packages/claude/skills/canvas-design/canvas-fonts/WorkSans-Bold.ttf +0 -0
  165. package/packages/claude/skills/canvas-design/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
  166. package/packages/claude/skills/canvas-design/canvas-fonts/WorkSans-Italic.ttf +0 -0
  167. package/packages/claude/skills/canvas-design/canvas-fonts/WorkSans-OFL.txt +93 -0
  168. package/packages/claude/skills/canvas-design/canvas-fonts/WorkSans-Regular.ttf +0 -0
  169. package/packages/claude/skills/canvas-design/canvas-fonts/YoungSerif-OFL.txt +93 -0
  170. package/packages/claude/skills/canvas-design/canvas-fonts/YoungSerif-Regular.ttf +0 -0
  171. package/packages/claude/skills/code-review/SKILL.md +105 -0
  172. package/packages/claude/skills/code-review/code-reviewer.md +146 -0
  173. package/packages/claude/skills/condition-based-waiting/SKILL.md +120 -0
  174. package/packages/claude/skills/condition-based-waiting/example.ts +158 -0
  175. package/packages/claude/skills/docx/LICENSE.txt +30 -0
  176. package/packages/claude/skills/docx/SKILL.md +197 -0
  177. package/packages/claude/skills/docx/docx-js.md +350 -0
  178. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  179. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  180. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  181. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  182. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  183. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  184. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  185. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  186. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  187. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  188. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  189. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  190. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  191. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  192. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  193. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  194. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  195. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  196. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  197. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  198. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  199. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  200. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  201. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  202. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  203. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  204. package/packages/claude/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  205. package/packages/claude/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  206. package/packages/claude/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  207. package/packages/claude/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  208. package/packages/claude/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  209. package/packages/claude/skills/docx/ooxml/schemas/mce/mc.xsd +75 -0
  210. package/packages/claude/skills/docx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
  211. package/packages/claude/skills/docx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
  212. package/packages/claude/skills/docx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
  213. package/packages/claude/skills/docx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
  214. package/packages/claude/skills/docx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
  215. package/packages/claude/skills/docx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  216. package/packages/claude/skills/docx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
  217. package/packages/claude/skills/docx/ooxml/scripts/pack.py +159 -0
  218. package/packages/claude/skills/docx/ooxml/scripts/unpack.py +29 -0
  219. package/packages/claude/skills/docx/ooxml/scripts/validate.py +69 -0
  220. package/packages/claude/skills/docx/ooxml/scripts/validation/__init__.py +15 -0
  221. package/packages/claude/skills/docx/ooxml/scripts/validation/base.py +951 -0
  222. package/packages/claude/skills/docx/ooxml/scripts/validation/docx.py +274 -0
  223. package/packages/claude/skills/docx/ooxml/scripts/validation/pptx.py +315 -0
  224. package/packages/claude/skills/docx/ooxml/scripts/validation/redlining.py +279 -0
  225. package/packages/claude/skills/docx/ooxml.md +610 -0
  226. package/packages/claude/skills/docx/scripts/__init__.py +1 -0
  227. package/packages/claude/skills/docx/scripts/document.py +1276 -0
  228. package/packages/claude/skills/docx/scripts/templates/comments.xml +3 -0
  229. package/packages/claude/skills/docx/scripts/templates/commentsExtended.xml +3 -0
  230. package/packages/claude/skills/docx/scripts/templates/commentsExtensible.xml +3 -0
  231. package/packages/claude/skills/docx/scripts/templates/commentsIds.xml +3 -0
  232. package/packages/claude/skills/docx/scripts/templates/people.xml +3 -0
  233. package/packages/claude/skills/docx/scripts/utilities.py +374 -0
  234. package/packages/claude/skills/internal-comms/LICENSE.txt +202 -0
  235. package/packages/claude/skills/internal-comms/SKILL.md +32 -0
  236. package/packages/claude/skills/internal-comms/examples/3p-updates.md +47 -0
  237. package/packages/claude/skills/internal-comms/examples/company-newsletter.md +65 -0
  238. package/packages/claude/skills/internal-comms/examples/faq-answers.md +30 -0
  239. package/packages/claude/skills/internal-comms/examples/general-comms.md +16 -0
  240. package/packages/claude/skills/mcp-builder/LICENSE.txt +202 -0
  241. package/packages/claude/skills/mcp-builder/SKILL.md +328 -0
  242. package/packages/claude/skills/mcp-builder/reference/evaluation.md +602 -0
  243. package/packages/claude/skills/mcp-builder/reference/mcp_best_practices.md +915 -0
  244. package/packages/claude/skills/mcp-builder/reference/node_mcp_server.md +916 -0
  245. package/packages/claude/skills/mcp-builder/reference/python_mcp_server.md +752 -0
  246. package/packages/claude/skills/mcp-builder/scripts/connections.py +151 -0
  247. package/packages/claude/skills/mcp-builder/scripts/evaluation.py +373 -0
  248. package/packages/claude/skills/mcp-builder/scripts/example_evaluation.xml +22 -0
  249. package/packages/claude/skills/mcp-builder/scripts/requirements.txt +2 -0
  250. package/packages/claude/skills/pdf/LICENSE.txt +30 -0
  251. package/packages/claude/skills/pdf/SKILL.md +294 -0
  252. package/packages/claude/skills/pdf/forms.md +205 -0
  253. package/packages/claude/skills/pdf/reference.md +612 -0
  254. package/packages/claude/skills/pdf/scripts/check_bounding_boxes.py +70 -0
  255. package/packages/claude/skills/pdf/scripts/check_bounding_boxes_test.py +226 -0
  256. package/packages/claude/skills/pdf/scripts/check_fillable_fields.py +12 -0
  257. package/packages/claude/skills/pdf/scripts/convert_pdf_to_images.py +35 -0
  258. package/packages/claude/skills/pdf/scripts/create_validation_image.py +41 -0
  259. package/packages/claude/skills/pdf/scripts/extract_form_field_info.py +152 -0
  260. package/packages/claude/skills/pdf/scripts/fill_fillable_fields.py +114 -0
  261. package/packages/claude/skills/pdf/scripts/fill_pdf_form_with_annotations.py +108 -0
  262. package/packages/claude/skills/pptx/LICENSE.txt +30 -0
  263. package/packages/claude/skills/pptx/SKILL.md +484 -0
  264. package/packages/claude/skills/pptx/html2pptx.md +625 -0
  265. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  266. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  267. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  268. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  269. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  270. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  271. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  272. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  273. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  274. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  275. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  276. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  277. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  278. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  279. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  280. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  281. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  282. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  283. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  284. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  285. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  286. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  287. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  288. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  289. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  290. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  291. package/packages/claude/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  292. package/packages/claude/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  293. package/packages/claude/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  294. package/packages/claude/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  295. package/packages/claude/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  296. package/packages/claude/skills/pptx/ooxml/schemas/mce/mc.xsd +75 -0
  297. package/packages/claude/skills/pptx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
  298. package/packages/claude/skills/pptx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
  299. package/packages/claude/skills/pptx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
  300. package/packages/claude/skills/pptx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
  301. package/packages/claude/skills/pptx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
  302. package/packages/claude/skills/pptx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  303. package/packages/claude/skills/pptx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
  304. package/packages/claude/skills/pptx/ooxml/scripts/pack.py +159 -0
  305. package/packages/claude/skills/pptx/ooxml/scripts/unpack.py +29 -0
  306. package/packages/claude/skills/pptx/ooxml/scripts/validate.py +69 -0
  307. package/packages/claude/skills/pptx/ooxml/scripts/validation/__init__.py +15 -0
  308. package/packages/claude/skills/pptx/ooxml/scripts/validation/base.py +951 -0
  309. package/packages/claude/skills/pptx/ooxml/scripts/validation/docx.py +274 -0
  310. package/packages/claude/skills/pptx/ooxml/scripts/validation/pptx.py +315 -0
  311. package/packages/claude/skills/pptx/ooxml/scripts/validation/redlining.py +279 -0
  312. package/packages/claude/skills/pptx/ooxml.md +427 -0
  313. package/packages/claude/skills/pptx/scripts/html2pptx.js +979 -0
  314. package/packages/claude/skills/pptx/scripts/inventory.py +1020 -0
  315. package/packages/claude/skills/pptx/scripts/rearrange.py +231 -0
  316. package/packages/claude/skills/pptx/scripts/replace.py +385 -0
  317. package/packages/claude/skills/pptx/scripts/thumbnail.py +450 -0
  318. package/packages/claude/skills/root-cause-tracing/SKILL.md +174 -0
  319. package/packages/claude/skills/root-cause-tracing/find-polluter.sh +63 -0
  320. package/packages/claude/skills/skill-creator/LICENSE.txt +202 -0
  321. package/packages/claude/skills/skill-creator/SKILL.md +209 -0
  322. package/packages/claude/skills/skill-creator/scripts/init_skill.py +303 -0
  323. package/packages/claude/skills/skill-creator/scripts/package_skill.py +110 -0
  324. package/packages/claude/skills/skill-creator/scripts/quick_validate.py +65 -0
  325. package/packages/claude/skills/slack-gif-creator/LICENSE.txt +202 -0
  326. package/packages/claude/skills/slack-gif-creator/SKILL.md +646 -0
  327. package/packages/claude/skills/slack-gif-creator/core/color_palettes.py +302 -0
  328. package/packages/claude/skills/slack-gif-creator/core/easing.py +230 -0
  329. package/packages/claude/skills/slack-gif-creator/core/frame_composer.py +469 -0
  330. package/packages/claude/skills/slack-gif-creator/core/gif_builder.py +246 -0
  331. package/packages/claude/skills/slack-gif-creator/core/typography.py +357 -0
  332. package/packages/claude/skills/slack-gif-creator/core/validators.py +264 -0
  333. package/packages/claude/skills/slack-gif-creator/core/visual_effects.py +494 -0
  334. package/packages/claude/skills/slack-gif-creator/requirements.txt +4 -0
  335. package/packages/claude/skills/slack-gif-creator/templates/bounce.py +106 -0
  336. package/packages/claude/skills/slack-gif-creator/templates/explode.py +331 -0
  337. package/packages/claude/skills/slack-gif-creator/templates/fade.py +329 -0
  338. package/packages/claude/skills/slack-gif-creator/templates/flip.py +291 -0
  339. package/packages/claude/skills/slack-gif-creator/templates/kaleidoscope.py +211 -0
  340. package/packages/claude/skills/slack-gif-creator/templates/morph.py +329 -0
  341. package/packages/claude/skills/slack-gif-creator/templates/move.py +293 -0
  342. package/packages/claude/skills/slack-gif-creator/templates/pulse.py +268 -0
  343. package/packages/claude/skills/slack-gif-creator/templates/shake.py +127 -0
  344. package/packages/claude/skills/slack-gif-creator/templates/slide.py +291 -0
  345. package/packages/claude/skills/slack-gif-creator/templates/spin.py +269 -0
  346. package/packages/claude/skills/slack-gif-creator/templates/wiggle.py +300 -0
  347. package/packages/claude/skills/slack-gif-creator/templates/zoom.py +312 -0
  348. package/packages/claude/skills/systematic-debugging/CREATION-LOG.md +119 -0
  349. package/packages/claude/skills/systematic-debugging/SKILL.md +295 -0
  350. package/packages/claude/skills/systematic-debugging/test-academic.md +14 -0
  351. package/packages/claude/skills/systematic-debugging/test-pressure-1.md +58 -0
  352. package/packages/claude/skills/systematic-debugging/test-pressure-2.md +68 -0
  353. package/packages/claude/skills/systematic-debugging/test-pressure-3.md +69 -0
  354. package/packages/claude/skills/test-driven-development/SKILL.md +364 -0
  355. package/packages/claude/skills/testing-anti-patterns/SKILL.md +302 -0
  356. package/packages/claude/skills/theme-factory/LICENSE.txt +202 -0
  357. package/packages/claude/skills/theme-factory/SKILL.md +59 -0
  358. package/packages/claude/skills/theme-factory/theme-showcase.pdf +0 -0
  359. package/packages/claude/skills/theme-factory/themes/arctic-frost.md +19 -0
  360. package/packages/claude/skills/theme-factory/themes/botanical-garden.md +19 -0
  361. package/packages/claude/skills/theme-factory/themes/desert-rose.md +19 -0
  362. package/packages/claude/skills/theme-factory/themes/forest-canopy.md +19 -0
  363. package/packages/claude/skills/theme-factory/themes/golden-hour.md +19 -0
  364. package/packages/claude/skills/theme-factory/themes/midnight-galaxy.md +19 -0
  365. package/packages/claude/skills/theme-factory/themes/modern-minimalist.md +19 -0
  366. package/packages/claude/skills/theme-factory/themes/ocean-depths.md +19 -0
  367. package/packages/claude/skills/theme-factory/themes/sunset-boulevard.md +19 -0
  368. package/packages/claude/skills/theme-factory/themes/tech-innovation.md +19 -0
  369. package/packages/claude/skills/verification-before-completion/SKILL.md +139 -0
  370. package/packages/claude/skills/webapp-testing/LICENSE.txt +202 -0
  371. package/packages/claude/skills/webapp-testing/SKILL.md +96 -0
  372. package/packages/claude/skills/webapp-testing/examples/console_logging.py +35 -0
  373. package/packages/claude/skills/webapp-testing/examples/element_discovery.py +40 -0
  374. package/packages/claude/skills/webapp-testing/examples/static_html_automation.py +33 -0
  375. package/packages/claude/skills/webapp-testing/scripts/with_server.py +106 -0
  376. package/packages/claude/skills/xlsx/LICENSE.txt +30 -0
  377. package/packages/claude/skills/xlsx/SKILL.md +289 -0
  378. package/packages/claude/skills/xlsx/recalc.py +178 -0
  379. package/packages/claude/subagents-and-skills.md +79 -0
  380. package/packages/claude/variants.json +67 -0
  381. package/packages/droid/README.md +17 -0
  382. package/packages/droid/agents/1-create-prd.md +56 -0
  383. package/packages/droid/agents/2-generate-tasks.md +73 -0
  384. package/packages/droid/agents/3-process-task-list.md +101 -0
  385. package/packages/droid/agents/business-analyst.md +76 -0
  386. package/packages/droid/agents/full-stack-dev.md +80 -0
  387. package/packages/droid/agents/holistic-architect.md +91 -0
  388. package/packages/droid/agents/master.md +55 -0
  389. package/packages/droid/agents/orchestrator.md +103 -0
  390. package/packages/droid/agents/product-manager.md +82 -0
  391. package/packages/droid/agents/product-owner.md +97 -0
  392. package/packages/droid/agents/qa-test-architect.md +72 -0
  393. package/packages/droid/agents/scrum-master.md +64 -0
  394. package/packages/droid/agents/ux-expert.md +74 -0
  395. package/packages/droid/hooks/register-agents.js +128 -0
  396. package/packages/droid/hooks/session-start.js +168 -0
  397. package/packages/droid/resources/agent-teams.yaml +50 -0
  398. package/packages/droid/resources/checklists.md +1724 -0
  399. package/packages/droid/resources/data.md +1372 -0
  400. package/packages/droid/resources/task-briefs.md +4428 -0
  401. package/packages/droid/resources/templates.yaml +5810 -0
  402. package/packages/droid/resources/workflows.yaml +1513 -0
  403. package/packages/droid/skills/README.md +76 -0
  404. package/packages/droid/skills/algorithmic-art/LICENSE.txt +202 -0
  405. package/packages/droid/skills/algorithmic-art/SKILL.md +405 -0
  406. package/packages/droid/skills/algorithmic-art/templates/generator_template.js +223 -0
  407. package/packages/droid/skills/algorithmic-art/templates/viewer.html +599 -0
  408. package/packages/droid/skills/artifacts-builder/LICENSE.txt +202 -0
  409. package/packages/droid/skills/artifacts-builder/SKILL.md +74 -0
  410. package/packages/droid/skills/artifacts-builder/scripts/bundle-artifact.sh +54 -0
  411. package/packages/droid/skills/artifacts-builder/scripts/init-artifact.sh +322 -0
  412. package/packages/droid/skills/artifacts-builder/scripts/shadcn-components.tar.gz +0 -0
  413. package/packages/droid/skills/brainstorming/SKILL.md +54 -0
  414. package/packages/droid/skills/brand-guidelines/LICENSE.txt +202 -0
  415. package/packages/droid/skills/brand-guidelines/SKILL.md +73 -0
  416. package/packages/droid/skills/canvas-design/LICENSE.txt +202 -0
  417. package/packages/droid/skills/canvas-design/SKILL.md +130 -0
  418. package/packages/droid/skills/canvas-design/canvas-fonts/ArsenalSC-OFL.txt +93 -0
  419. package/packages/droid/skills/canvas-design/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
  420. package/packages/droid/skills/canvas-design/canvas-fonts/BigShoulders-Bold.ttf +0 -0
  421. package/packages/droid/skills/canvas-design/canvas-fonts/BigShoulders-OFL.txt +93 -0
  422. package/packages/droid/skills/canvas-design/canvas-fonts/BigShoulders-Regular.ttf +0 -0
  423. package/packages/droid/skills/canvas-design/canvas-fonts/Boldonse-OFL.txt +93 -0
  424. package/packages/droid/skills/canvas-design/canvas-fonts/Boldonse-Regular.ttf +0 -0
  425. package/packages/droid/skills/canvas-design/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
  426. package/packages/droid/skills/canvas-design/canvas-fonts/BricolageGrotesque-OFL.txt +93 -0
  427. package/packages/droid/skills/canvas-design/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
  428. package/packages/droid/skills/canvas-design/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
  429. package/packages/droid/skills/canvas-design/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
  430. package/packages/droid/skills/canvas-design/canvas-fonts/CrimsonPro-OFL.txt +93 -0
  431. package/packages/droid/skills/canvas-design/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
  432. package/packages/droid/skills/canvas-design/canvas-fonts/DMMono-OFL.txt +93 -0
  433. package/packages/droid/skills/canvas-design/canvas-fonts/DMMono-Regular.ttf +0 -0
  434. package/packages/droid/skills/canvas-design/canvas-fonts/EricaOne-OFL.txt +94 -0
  435. package/packages/droid/skills/canvas-design/canvas-fonts/EricaOne-Regular.ttf +0 -0
  436. package/packages/droid/skills/canvas-design/canvas-fonts/GeistMono-Bold.ttf +0 -0
  437. package/packages/droid/skills/canvas-design/canvas-fonts/GeistMono-OFL.txt +93 -0
  438. package/packages/droid/skills/canvas-design/canvas-fonts/GeistMono-Regular.ttf +0 -0
  439. package/packages/droid/skills/canvas-design/canvas-fonts/Gloock-OFL.txt +93 -0
  440. package/packages/droid/skills/canvas-design/canvas-fonts/Gloock-Regular.ttf +0 -0
  441. package/packages/droid/skills/canvas-design/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
  442. package/packages/droid/skills/canvas-design/canvas-fonts/IBMPlexMono-OFL.txt +93 -0
  443. package/packages/droid/skills/canvas-design/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
  444. package/packages/droid/skills/canvas-design/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
  445. package/packages/droid/skills/canvas-design/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
  446. package/packages/droid/skills/canvas-design/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
  447. package/packages/droid/skills/canvas-design/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
  448. package/packages/droid/skills/canvas-design/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
  449. package/packages/droid/skills/canvas-design/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
  450. package/packages/droid/skills/canvas-design/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
  451. package/packages/droid/skills/canvas-design/canvas-fonts/InstrumentSans-OFL.txt +93 -0
  452. package/packages/droid/skills/canvas-design/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
  453. package/packages/droid/skills/canvas-design/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
  454. package/packages/droid/skills/canvas-design/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
  455. package/packages/droid/skills/canvas-design/canvas-fonts/Italiana-OFL.txt +93 -0
  456. package/packages/droid/skills/canvas-design/canvas-fonts/Italiana-Regular.ttf +0 -0
  457. package/packages/droid/skills/canvas-design/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
  458. package/packages/droid/skills/canvas-design/canvas-fonts/JetBrainsMono-OFL.txt +93 -0
  459. package/packages/droid/skills/canvas-design/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
  460. package/packages/droid/skills/canvas-design/canvas-fonts/Jura-Light.ttf +0 -0
  461. package/packages/droid/skills/canvas-design/canvas-fonts/Jura-Medium.ttf +0 -0
  462. package/packages/droid/skills/canvas-design/canvas-fonts/Jura-OFL.txt +93 -0
  463. package/packages/droid/skills/canvas-design/canvas-fonts/LibreBaskerville-OFL.txt +93 -0
  464. package/packages/droid/skills/canvas-design/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
  465. package/packages/droid/skills/canvas-design/canvas-fonts/Lora-Bold.ttf +0 -0
  466. package/packages/droid/skills/canvas-design/canvas-fonts/Lora-BoldItalic.ttf +0 -0
  467. package/packages/droid/skills/canvas-design/canvas-fonts/Lora-Italic.ttf +0 -0
  468. package/packages/droid/skills/canvas-design/canvas-fonts/Lora-OFL.txt +93 -0
  469. package/packages/droid/skills/canvas-design/canvas-fonts/Lora-Regular.ttf +0 -0
  470. package/packages/droid/skills/canvas-design/canvas-fonts/NationalPark-Bold.ttf +0 -0
  471. package/packages/droid/skills/canvas-design/canvas-fonts/NationalPark-OFL.txt +93 -0
  472. package/packages/droid/skills/canvas-design/canvas-fonts/NationalPark-Regular.ttf +0 -0
  473. package/packages/droid/skills/canvas-design/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -0
  474. package/packages/droid/skills/canvas-design/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
  475. package/packages/droid/skills/canvas-design/canvas-fonts/Outfit-Bold.ttf +0 -0
  476. package/packages/droid/skills/canvas-design/canvas-fonts/Outfit-OFL.txt +93 -0
  477. package/packages/droid/skills/canvas-design/canvas-fonts/Outfit-Regular.ttf +0 -0
  478. package/packages/droid/skills/canvas-design/canvas-fonts/PixelifySans-Medium.ttf +0 -0
  479. package/packages/droid/skills/canvas-design/canvas-fonts/PixelifySans-OFL.txt +93 -0
  480. package/packages/droid/skills/canvas-design/canvas-fonts/PoiretOne-OFL.txt +93 -0
  481. package/packages/droid/skills/canvas-design/canvas-fonts/PoiretOne-Regular.ttf +0 -0
  482. package/packages/droid/skills/canvas-design/canvas-fonts/RedHatMono-Bold.ttf +0 -0
  483. package/packages/droid/skills/canvas-design/canvas-fonts/RedHatMono-OFL.txt +93 -0
  484. package/packages/droid/skills/canvas-design/canvas-fonts/RedHatMono-Regular.ttf +0 -0
  485. package/packages/droid/skills/canvas-design/canvas-fonts/Silkscreen-OFL.txt +93 -0
  486. package/packages/droid/skills/canvas-design/canvas-fonts/Silkscreen-Regular.ttf +0 -0
  487. package/packages/droid/skills/canvas-design/canvas-fonts/SmoochSans-Medium.ttf +0 -0
  488. package/packages/droid/skills/canvas-design/canvas-fonts/SmoochSans-OFL.txt +93 -0
  489. package/packages/droid/skills/canvas-design/canvas-fonts/Tektur-Medium.ttf +0 -0
  490. package/packages/droid/skills/canvas-design/canvas-fonts/Tektur-OFL.txt +93 -0
  491. package/packages/droid/skills/canvas-design/canvas-fonts/Tektur-Regular.ttf +0 -0
  492. package/packages/droid/skills/canvas-design/canvas-fonts/WorkSans-Bold.ttf +0 -0
  493. package/packages/droid/skills/canvas-design/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
  494. package/packages/droid/skills/canvas-design/canvas-fonts/WorkSans-Italic.ttf +0 -0
  495. package/packages/droid/skills/canvas-design/canvas-fonts/WorkSans-OFL.txt +93 -0
  496. package/packages/droid/skills/canvas-design/canvas-fonts/WorkSans-Regular.ttf +0 -0
  497. package/packages/droid/skills/canvas-design/canvas-fonts/YoungSerif-OFL.txt +93 -0
  498. package/packages/droid/skills/canvas-design/canvas-fonts/YoungSerif-Regular.ttf +0 -0
  499. package/packages/droid/skills/code-review/SKILL.md +105 -0
  500. package/packages/droid/skills/code-review/code-reviewer.md +146 -0
  501. package/packages/droid/skills/condition-based-waiting/SKILL.md +120 -0
  502. package/packages/droid/skills/condition-based-waiting/example.ts +158 -0
  503. package/packages/droid/skills/docx/LICENSE.txt +30 -0
  504. package/packages/droid/skills/docx/SKILL.md +197 -0
  505. package/packages/droid/skills/docx/docx-js.md +350 -0
  506. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  507. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  508. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  509. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  510. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  511. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  512. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  513. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  514. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  515. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  516. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  517. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  518. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  519. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  520. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  521. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  522. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  523. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  524. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  525. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  526. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  527. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  528. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  529. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  530. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  531. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  532. package/packages/droid/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  533. package/packages/droid/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  534. package/packages/droid/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  535. package/packages/droid/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  536. package/packages/droid/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  537. package/packages/droid/skills/docx/ooxml/schemas/mce/mc.xsd +75 -0
  538. package/packages/droid/skills/docx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
  539. package/packages/droid/skills/docx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
  540. package/packages/droid/skills/docx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
  541. package/packages/droid/skills/docx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
  542. package/packages/droid/skills/docx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
  543. package/packages/droid/skills/docx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  544. package/packages/droid/skills/docx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
  545. package/packages/droid/skills/docx/ooxml/scripts/pack.py +159 -0
  546. package/packages/droid/skills/docx/ooxml/scripts/unpack.py +29 -0
  547. package/packages/droid/skills/docx/ooxml/scripts/validate.py +69 -0
  548. package/packages/droid/skills/docx/ooxml/scripts/validation/__init__.py +15 -0
  549. package/packages/droid/skills/docx/ooxml/scripts/validation/base.py +951 -0
  550. package/packages/droid/skills/docx/ooxml/scripts/validation/docx.py +274 -0
  551. package/packages/droid/skills/docx/ooxml/scripts/validation/pptx.py +315 -0
  552. package/packages/droid/skills/docx/ooxml/scripts/validation/redlining.py +279 -0
  553. package/packages/droid/skills/docx/ooxml.md +610 -0
  554. package/packages/droid/skills/docx/scripts/__init__.py +1 -0
  555. package/packages/droid/skills/docx/scripts/document.py +1276 -0
  556. package/packages/droid/skills/docx/scripts/templates/comments.xml +3 -0
  557. package/packages/droid/skills/docx/scripts/templates/commentsExtended.xml +3 -0
  558. package/packages/droid/skills/docx/scripts/templates/commentsExtensible.xml +3 -0
  559. package/packages/droid/skills/docx/scripts/templates/commentsIds.xml +3 -0
  560. package/packages/droid/skills/docx/scripts/templates/people.xml +3 -0
  561. package/packages/droid/skills/docx/scripts/utilities.py +374 -0
  562. package/packages/droid/skills/internal-comms/LICENSE.txt +202 -0
  563. package/packages/droid/skills/internal-comms/SKILL.md +32 -0
  564. package/packages/droid/skills/internal-comms/examples/3p-updates.md +47 -0
  565. package/packages/droid/skills/internal-comms/examples/company-newsletter.md +65 -0
  566. package/packages/droid/skills/internal-comms/examples/faq-answers.md +30 -0
  567. package/packages/droid/skills/internal-comms/examples/general-comms.md +16 -0
  568. package/packages/droid/skills/mcp-builder/LICENSE.txt +202 -0
  569. package/packages/droid/skills/mcp-builder/SKILL.md +328 -0
  570. package/packages/droid/skills/mcp-builder/reference/evaluation.md +602 -0
  571. package/packages/droid/skills/mcp-builder/reference/mcp_best_practices.md +915 -0
  572. package/packages/droid/skills/mcp-builder/reference/node_mcp_server.md +916 -0
  573. package/packages/droid/skills/mcp-builder/reference/python_mcp_server.md +752 -0
  574. package/packages/droid/skills/mcp-builder/scripts/connections.py +151 -0
  575. package/packages/droid/skills/mcp-builder/scripts/evaluation.py +373 -0
  576. package/packages/droid/skills/mcp-builder/scripts/example_evaluation.xml +22 -0
  577. package/packages/droid/skills/mcp-builder/scripts/requirements.txt +2 -0
  578. package/packages/droid/skills/pdf/LICENSE.txt +30 -0
  579. package/packages/droid/skills/pdf/SKILL.md +294 -0
  580. package/packages/droid/skills/pdf/forms.md +205 -0
  581. package/packages/droid/skills/pdf/reference.md +612 -0
  582. package/packages/droid/skills/pdf/scripts/check_bounding_boxes.py +70 -0
  583. package/packages/droid/skills/pdf/scripts/check_bounding_boxes_test.py +226 -0
  584. package/packages/droid/skills/pdf/scripts/check_fillable_fields.py +12 -0
  585. package/packages/droid/skills/pdf/scripts/convert_pdf_to_images.py +35 -0
  586. package/packages/droid/skills/pdf/scripts/create_validation_image.py +41 -0
  587. package/packages/droid/skills/pdf/scripts/extract_form_field_info.py +152 -0
  588. package/packages/droid/skills/pdf/scripts/fill_fillable_fields.py +114 -0
  589. package/packages/droid/skills/pdf/scripts/fill_pdf_form_with_annotations.py +108 -0
  590. package/packages/droid/skills/pptx/LICENSE.txt +30 -0
  591. package/packages/droid/skills/pptx/SKILL.md +484 -0
  592. package/packages/droid/skills/pptx/html2pptx.md +625 -0
  593. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  594. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  595. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  596. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  597. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  598. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  599. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  600. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  601. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  602. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  603. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  604. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  605. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  606. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  607. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  608. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  609. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  610. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  611. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  612. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  613. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  614. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  615. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  616. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  617. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  618. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  619. package/packages/droid/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  620. package/packages/droid/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  621. package/packages/droid/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  622. package/packages/droid/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  623. package/packages/droid/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  624. package/packages/droid/skills/pptx/ooxml/schemas/mce/mc.xsd +75 -0
  625. package/packages/droid/skills/pptx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
  626. package/packages/droid/skills/pptx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
  627. package/packages/droid/skills/pptx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
  628. package/packages/droid/skills/pptx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
  629. package/packages/droid/skills/pptx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
  630. package/packages/droid/skills/pptx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  631. package/packages/droid/skills/pptx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
  632. package/packages/droid/skills/pptx/ooxml/scripts/pack.py +159 -0
  633. package/packages/droid/skills/pptx/ooxml/scripts/unpack.py +29 -0
  634. package/packages/droid/skills/pptx/ooxml/scripts/validate.py +69 -0
  635. package/packages/droid/skills/pptx/ooxml/scripts/validation/__init__.py +15 -0
  636. package/packages/droid/skills/pptx/ooxml/scripts/validation/base.py +951 -0
  637. package/packages/droid/skills/pptx/ooxml/scripts/validation/docx.py +274 -0
  638. package/packages/droid/skills/pptx/ooxml/scripts/validation/pptx.py +315 -0
  639. package/packages/droid/skills/pptx/ooxml/scripts/validation/redlining.py +279 -0
  640. package/packages/droid/skills/pptx/ooxml.md +427 -0
  641. package/packages/droid/skills/pptx/scripts/html2pptx.js +979 -0
  642. package/packages/droid/skills/pptx/scripts/inventory.py +1020 -0
  643. package/packages/droid/skills/pptx/scripts/rearrange.py +231 -0
  644. package/packages/droid/skills/pptx/scripts/replace.py +385 -0
  645. package/packages/droid/skills/pptx/scripts/thumbnail.py +450 -0
  646. package/packages/droid/skills/root-cause-tracing/SKILL.md +174 -0
  647. package/packages/droid/skills/root-cause-tracing/find-polluter.sh +63 -0
  648. package/packages/droid/skills/skill-creator/LICENSE.txt +202 -0
  649. package/packages/droid/skills/skill-creator/SKILL.md +209 -0
  650. package/packages/droid/skills/skill-creator/scripts/init_skill.py +303 -0
  651. package/packages/droid/skills/skill-creator/scripts/package_skill.py +110 -0
  652. package/packages/droid/skills/skill-creator/scripts/quick_validate.py +65 -0
  653. package/packages/droid/skills/slack-gif-creator/LICENSE.txt +202 -0
  654. package/packages/droid/skills/slack-gif-creator/SKILL.md +646 -0
  655. package/packages/droid/skills/slack-gif-creator/core/color_palettes.py +302 -0
  656. package/packages/droid/skills/slack-gif-creator/core/easing.py +230 -0
  657. package/packages/droid/skills/slack-gif-creator/core/frame_composer.py +469 -0
  658. package/packages/droid/skills/slack-gif-creator/core/gif_builder.py +246 -0
  659. package/packages/droid/skills/slack-gif-creator/core/typography.py +357 -0
  660. package/packages/droid/skills/slack-gif-creator/core/validators.py +264 -0
  661. package/packages/droid/skills/slack-gif-creator/core/visual_effects.py +494 -0
  662. package/packages/droid/skills/slack-gif-creator/requirements.txt +4 -0
  663. package/packages/droid/skills/slack-gif-creator/templates/bounce.py +106 -0
  664. package/packages/droid/skills/slack-gif-creator/templates/explode.py +331 -0
  665. package/packages/droid/skills/slack-gif-creator/templates/fade.py +329 -0
  666. package/packages/droid/skills/slack-gif-creator/templates/flip.py +291 -0
  667. package/packages/droid/skills/slack-gif-creator/templates/kaleidoscope.py +211 -0
  668. package/packages/droid/skills/slack-gif-creator/templates/morph.py +329 -0
  669. package/packages/droid/skills/slack-gif-creator/templates/move.py +293 -0
  670. package/packages/droid/skills/slack-gif-creator/templates/pulse.py +268 -0
  671. package/packages/droid/skills/slack-gif-creator/templates/shake.py +127 -0
  672. package/packages/droid/skills/slack-gif-creator/templates/slide.py +291 -0
  673. package/packages/droid/skills/slack-gif-creator/templates/spin.py +269 -0
  674. package/packages/droid/skills/slack-gif-creator/templates/wiggle.py +300 -0
  675. package/packages/droid/skills/slack-gif-creator/templates/zoom.py +312 -0
  676. package/packages/droid/skills/systematic-debugging/CREATION-LOG.md +119 -0
  677. package/packages/droid/skills/systematic-debugging/SKILL.md +295 -0
  678. package/packages/droid/skills/systematic-debugging/test-academic.md +14 -0
  679. package/packages/droid/skills/systematic-debugging/test-pressure-1.md +58 -0
  680. package/packages/droid/skills/systematic-debugging/test-pressure-2.md +68 -0
  681. package/packages/droid/skills/systematic-debugging/test-pressure-3.md +69 -0
  682. package/packages/droid/skills/test-driven-development/SKILL.md +364 -0
  683. package/packages/droid/skills/testing-anti-patterns/SKILL.md +302 -0
  684. package/packages/droid/skills/theme-factory/LICENSE.txt +202 -0
  685. package/packages/droid/skills/theme-factory/SKILL.md +59 -0
  686. package/packages/droid/skills/theme-factory/theme-showcase.pdf +0 -0
  687. package/packages/droid/skills/theme-factory/themes/arctic-frost.md +19 -0
  688. package/packages/droid/skills/theme-factory/themes/botanical-garden.md +19 -0
  689. package/packages/droid/skills/theme-factory/themes/desert-rose.md +19 -0
  690. package/packages/droid/skills/theme-factory/themes/forest-canopy.md +19 -0
  691. package/packages/droid/skills/theme-factory/themes/golden-hour.md +19 -0
  692. package/packages/droid/skills/theme-factory/themes/midnight-galaxy.md +19 -0
  693. package/packages/droid/skills/theme-factory/themes/modern-minimalist.md +19 -0
  694. package/packages/droid/skills/theme-factory/themes/ocean-depths.md +19 -0
  695. package/packages/droid/skills/theme-factory/themes/sunset-boulevard.md +19 -0
  696. package/packages/droid/skills/theme-factory/themes/tech-innovation.md +19 -0
  697. package/packages/droid/skills/verification-before-completion/SKILL.md +139 -0
  698. package/packages/droid/skills/webapp-testing/LICENSE.txt +202 -0
  699. package/packages/droid/skills/webapp-testing/SKILL.md +96 -0
  700. package/packages/droid/skills/webapp-testing/examples/console_logging.py +35 -0
  701. package/packages/droid/skills/webapp-testing/examples/element_discovery.py +40 -0
  702. package/packages/droid/skills/webapp-testing/examples/static_html_automation.py +33 -0
  703. package/packages/droid/skills/webapp-testing/scripts/with_server.py +106 -0
  704. package/packages/droid/skills/xlsx/LICENSE.txt +30 -0
  705. package/packages/droid/skills/xlsx/SKILL.md +289 -0
  706. package/packages/droid/skills/xlsx/recalc.py +178 -0
  707. package/packages/droid/subagents-and-skills.md +79 -0
  708. package/packages/droid/variants.json +67 -0
  709. package/packages/opencode/AGENTS.md +379 -0
  710. package/packages/opencode/README.md +17 -0
  711. package/packages/opencode/agents/1-create-prd.md +56 -0
  712. package/packages/opencode/agents/2-generate-tasks.md +73 -0
  713. package/packages/opencode/agents/3-process-task-list.md +101 -0
  714. package/packages/opencode/agents/business-analyst.md +76 -0
  715. package/packages/opencode/agents/full-stack-dev.md +73 -0
  716. package/packages/opencode/agents/holistic-architect.md +91 -0
  717. package/packages/opencode/agents/master.md +55 -0
  718. package/packages/opencode/agents/orchestrator.md +103 -0
  719. package/packages/opencode/agents/product-manager.md +82 -0
  720. package/packages/opencode/agents/product-owner.md +97 -0
  721. package/packages/opencode/agents/qa-test-architect.md +72 -0
  722. package/packages/opencode/agents/scrum-master.md +64 -0
  723. package/packages/opencode/agents/ux-expert.md +74 -0
  724. package/packages/opencode/hooks/register-agents.js +128 -0
  725. package/packages/opencode/hooks/session-start.js +168 -0
  726. package/packages/opencode/opencode.jsonc +225 -0
  727. package/packages/opencode/resources/agent-teams.yaml +50 -0
  728. package/packages/opencode/resources/checklists.md +1724 -0
  729. package/packages/opencode/resources/data.md +1372 -0
  730. package/packages/opencode/resources/task-briefs.md +4428 -0
  731. package/packages/opencode/resources/templates.yaml +5810 -0
  732. package/packages/opencode/resources/workflows.yaml +1513 -0
  733. package/packages/opencode/skills/README.md +76 -0
  734. package/packages/opencode/skills/algorithmic-art/LICENSE.txt +202 -0
  735. package/packages/opencode/skills/algorithmic-art/SKILL.md +405 -0
  736. package/packages/opencode/skills/algorithmic-art/templates/generator_template.js +223 -0
  737. package/packages/opencode/skills/algorithmic-art/templates/viewer.html +599 -0
  738. package/packages/opencode/skills/artifacts-builder/LICENSE.txt +202 -0
  739. package/packages/opencode/skills/artifacts-builder/SKILL.md +74 -0
  740. package/packages/opencode/skills/artifacts-builder/scripts/bundle-artifact.sh +54 -0
  741. package/packages/opencode/skills/artifacts-builder/scripts/init-artifact.sh +322 -0
  742. package/packages/opencode/skills/artifacts-builder/scripts/shadcn-components.tar.gz +0 -0
  743. package/packages/opencode/skills/brainstorming/SKILL.md +54 -0
  744. package/packages/opencode/skills/brand-guidelines/LICENSE.txt +202 -0
  745. package/packages/opencode/skills/brand-guidelines/SKILL.md +73 -0
  746. package/packages/opencode/skills/canvas-design/LICENSE.txt +202 -0
  747. package/packages/opencode/skills/canvas-design/SKILL.md +130 -0
  748. package/packages/opencode/skills/canvas-design/canvas-fonts/ArsenalSC-OFL.txt +93 -0
  749. package/packages/opencode/skills/canvas-design/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
  750. package/packages/opencode/skills/canvas-design/canvas-fonts/BigShoulders-Bold.ttf +0 -0
  751. package/packages/opencode/skills/canvas-design/canvas-fonts/BigShoulders-OFL.txt +93 -0
  752. package/packages/opencode/skills/canvas-design/canvas-fonts/BigShoulders-Regular.ttf +0 -0
  753. package/packages/opencode/skills/canvas-design/canvas-fonts/Boldonse-OFL.txt +93 -0
  754. package/packages/opencode/skills/canvas-design/canvas-fonts/Boldonse-Regular.ttf +0 -0
  755. package/packages/opencode/skills/canvas-design/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
  756. package/packages/opencode/skills/canvas-design/canvas-fonts/BricolageGrotesque-OFL.txt +93 -0
  757. package/packages/opencode/skills/canvas-design/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
  758. package/packages/opencode/skills/canvas-design/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
  759. package/packages/opencode/skills/canvas-design/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
  760. package/packages/opencode/skills/canvas-design/canvas-fonts/CrimsonPro-OFL.txt +93 -0
  761. package/packages/opencode/skills/canvas-design/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
  762. package/packages/opencode/skills/canvas-design/canvas-fonts/DMMono-OFL.txt +93 -0
  763. package/packages/opencode/skills/canvas-design/canvas-fonts/DMMono-Regular.ttf +0 -0
  764. package/packages/opencode/skills/canvas-design/canvas-fonts/EricaOne-OFL.txt +94 -0
  765. package/packages/opencode/skills/canvas-design/canvas-fonts/EricaOne-Regular.ttf +0 -0
  766. package/packages/opencode/skills/canvas-design/canvas-fonts/GeistMono-Bold.ttf +0 -0
  767. package/packages/opencode/skills/canvas-design/canvas-fonts/GeistMono-OFL.txt +93 -0
  768. package/packages/opencode/skills/canvas-design/canvas-fonts/GeistMono-Regular.ttf +0 -0
  769. package/packages/opencode/skills/canvas-design/canvas-fonts/Gloock-OFL.txt +93 -0
  770. package/packages/opencode/skills/canvas-design/canvas-fonts/Gloock-Regular.ttf +0 -0
  771. package/packages/opencode/skills/canvas-design/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
  772. package/packages/opencode/skills/canvas-design/canvas-fonts/IBMPlexMono-OFL.txt +93 -0
  773. package/packages/opencode/skills/canvas-design/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
  774. package/packages/opencode/skills/canvas-design/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
  775. package/packages/opencode/skills/canvas-design/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
  776. package/packages/opencode/skills/canvas-design/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
  777. package/packages/opencode/skills/canvas-design/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
  778. package/packages/opencode/skills/canvas-design/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
  779. package/packages/opencode/skills/canvas-design/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
  780. package/packages/opencode/skills/canvas-design/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
  781. package/packages/opencode/skills/canvas-design/canvas-fonts/InstrumentSans-OFL.txt +93 -0
  782. package/packages/opencode/skills/canvas-design/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
  783. package/packages/opencode/skills/canvas-design/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
  784. package/packages/opencode/skills/canvas-design/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
  785. package/packages/opencode/skills/canvas-design/canvas-fonts/Italiana-OFL.txt +93 -0
  786. package/packages/opencode/skills/canvas-design/canvas-fonts/Italiana-Regular.ttf +0 -0
  787. package/packages/opencode/skills/canvas-design/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
  788. package/packages/opencode/skills/canvas-design/canvas-fonts/JetBrainsMono-OFL.txt +93 -0
  789. package/packages/opencode/skills/canvas-design/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
  790. package/packages/opencode/skills/canvas-design/canvas-fonts/Jura-Light.ttf +0 -0
  791. package/packages/opencode/skills/canvas-design/canvas-fonts/Jura-Medium.ttf +0 -0
  792. package/packages/opencode/skills/canvas-design/canvas-fonts/Jura-OFL.txt +93 -0
  793. package/packages/opencode/skills/canvas-design/canvas-fonts/LibreBaskerville-OFL.txt +93 -0
  794. package/packages/opencode/skills/canvas-design/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
  795. package/packages/opencode/skills/canvas-design/canvas-fonts/Lora-Bold.ttf +0 -0
  796. package/packages/opencode/skills/canvas-design/canvas-fonts/Lora-BoldItalic.ttf +0 -0
  797. package/packages/opencode/skills/canvas-design/canvas-fonts/Lora-Italic.ttf +0 -0
  798. package/packages/opencode/skills/canvas-design/canvas-fonts/Lora-OFL.txt +93 -0
  799. package/packages/opencode/skills/canvas-design/canvas-fonts/Lora-Regular.ttf +0 -0
  800. package/packages/opencode/skills/canvas-design/canvas-fonts/NationalPark-Bold.ttf +0 -0
  801. package/packages/opencode/skills/canvas-design/canvas-fonts/NationalPark-OFL.txt +93 -0
  802. package/packages/opencode/skills/canvas-design/canvas-fonts/NationalPark-Regular.ttf +0 -0
  803. package/packages/opencode/skills/canvas-design/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -0
  804. package/packages/opencode/skills/canvas-design/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
  805. package/packages/opencode/skills/canvas-design/canvas-fonts/Outfit-Bold.ttf +0 -0
  806. package/packages/opencode/skills/canvas-design/canvas-fonts/Outfit-OFL.txt +93 -0
  807. package/packages/opencode/skills/canvas-design/canvas-fonts/Outfit-Regular.ttf +0 -0
  808. package/packages/opencode/skills/canvas-design/canvas-fonts/PixelifySans-Medium.ttf +0 -0
  809. package/packages/opencode/skills/canvas-design/canvas-fonts/PixelifySans-OFL.txt +93 -0
  810. package/packages/opencode/skills/canvas-design/canvas-fonts/PoiretOne-OFL.txt +93 -0
  811. package/packages/opencode/skills/canvas-design/canvas-fonts/PoiretOne-Regular.ttf +0 -0
  812. package/packages/opencode/skills/canvas-design/canvas-fonts/RedHatMono-Bold.ttf +0 -0
  813. package/packages/opencode/skills/canvas-design/canvas-fonts/RedHatMono-OFL.txt +93 -0
  814. package/packages/opencode/skills/canvas-design/canvas-fonts/RedHatMono-Regular.ttf +0 -0
  815. package/packages/opencode/skills/canvas-design/canvas-fonts/Silkscreen-OFL.txt +93 -0
  816. package/packages/opencode/skills/canvas-design/canvas-fonts/Silkscreen-Regular.ttf +0 -0
  817. package/packages/opencode/skills/canvas-design/canvas-fonts/SmoochSans-Medium.ttf +0 -0
  818. package/packages/opencode/skills/canvas-design/canvas-fonts/SmoochSans-OFL.txt +93 -0
  819. package/packages/opencode/skills/canvas-design/canvas-fonts/Tektur-Medium.ttf +0 -0
  820. package/packages/opencode/skills/canvas-design/canvas-fonts/Tektur-OFL.txt +93 -0
  821. package/packages/opencode/skills/canvas-design/canvas-fonts/Tektur-Regular.ttf +0 -0
  822. package/packages/opencode/skills/canvas-design/canvas-fonts/WorkSans-Bold.ttf +0 -0
  823. package/packages/opencode/skills/canvas-design/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
  824. package/packages/opencode/skills/canvas-design/canvas-fonts/WorkSans-Italic.ttf +0 -0
  825. package/packages/opencode/skills/canvas-design/canvas-fonts/WorkSans-OFL.txt +93 -0
  826. package/packages/opencode/skills/canvas-design/canvas-fonts/WorkSans-Regular.ttf +0 -0
  827. package/packages/opencode/skills/canvas-design/canvas-fonts/YoungSerif-OFL.txt +93 -0
  828. package/packages/opencode/skills/canvas-design/canvas-fonts/YoungSerif-Regular.ttf +0 -0
  829. package/packages/opencode/skills/code-review/SKILL.md +105 -0
  830. package/packages/opencode/skills/code-review/code-reviewer.md +146 -0
  831. package/packages/opencode/skills/condition-based-waiting/SKILL.md +120 -0
  832. package/packages/opencode/skills/condition-based-waiting/example.ts +158 -0
  833. package/packages/opencode/skills/docx/LICENSE.txt +30 -0
  834. package/packages/opencode/skills/docx/SKILL.md +197 -0
  835. package/packages/opencode/skills/docx/docx-js.md +350 -0
  836. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  837. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  838. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  839. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  840. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  841. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  842. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  843. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  844. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  845. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  846. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  847. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  848. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  849. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  850. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  851. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  852. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  853. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  854. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  855. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  856. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  857. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  858. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  859. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  860. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  861. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  862. package/packages/opencode/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  863. package/packages/opencode/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  864. package/packages/opencode/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  865. package/packages/opencode/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  866. package/packages/opencode/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  867. package/packages/opencode/skills/docx/ooxml/schemas/mce/mc.xsd +75 -0
  868. package/packages/opencode/skills/docx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
  869. package/packages/opencode/skills/docx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
  870. package/packages/opencode/skills/docx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
  871. package/packages/opencode/skills/docx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
  872. package/packages/opencode/skills/docx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
  873. package/packages/opencode/skills/docx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  874. package/packages/opencode/skills/docx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
  875. package/packages/opencode/skills/docx/ooxml/scripts/pack.py +159 -0
  876. package/packages/opencode/skills/docx/ooxml/scripts/unpack.py +29 -0
  877. package/packages/opencode/skills/docx/ooxml/scripts/validate.py +69 -0
  878. package/packages/opencode/skills/docx/ooxml/scripts/validation/__init__.py +15 -0
  879. package/packages/opencode/skills/docx/ooxml/scripts/validation/base.py +951 -0
  880. package/packages/opencode/skills/docx/ooxml/scripts/validation/docx.py +274 -0
  881. package/packages/opencode/skills/docx/ooxml/scripts/validation/pptx.py +315 -0
  882. package/packages/opencode/skills/docx/ooxml/scripts/validation/redlining.py +279 -0
  883. package/packages/opencode/skills/docx/ooxml.md +610 -0
  884. package/packages/opencode/skills/docx/scripts/__init__.py +1 -0
  885. package/packages/opencode/skills/docx/scripts/document.py +1276 -0
  886. package/packages/opencode/skills/docx/scripts/templates/comments.xml +3 -0
  887. package/packages/opencode/skills/docx/scripts/templates/commentsExtended.xml +3 -0
  888. package/packages/opencode/skills/docx/scripts/templates/commentsExtensible.xml +3 -0
  889. package/packages/opencode/skills/docx/scripts/templates/commentsIds.xml +3 -0
  890. package/packages/opencode/skills/docx/scripts/templates/people.xml +3 -0
  891. package/packages/opencode/skills/docx/scripts/utilities.py +374 -0
  892. package/packages/opencode/skills/internal-comms/LICENSE.txt +202 -0
  893. package/packages/opencode/skills/internal-comms/SKILL.md +32 -0
  894. package/packages/opencode/skills/internal-comms/examples/3p-updates.md +47 -0
  895. package/packages/opencode/skills/internal-comms/examples/company-newsletter.md +65 -0
  896. package/packages/opencode/skills/internal-comms/examples/faq-answers.md +30 -0
  897. package/packages/opencode/skills/internal-comms/examples/general-comms.md +16 -0
  898. package/packages/opencode/skills/mcp-builder/LICENSE.txt +202 -0
  899. package/packages/opencode/skills/mcp-builder/SKILL.md +328 -0
  900. package/packages/opencode/skills/mcp-builder/reference/evaluation.md +602 -0
  901. package/packages/opencode/skills/mcp-builder/reference/mcp_best_practices.md +915 -0
  902. package/packages/opencode/skills/mcp-builder/reference/node_mcp_server.md +916 -0
  903. package/packages/opencode/skills/mcp-builder/reference/python_mcp_server.md +752 -0
  904. package/packages/opencode/skills/mcp-builder/scripts/connections.py +151 -0
  905. package/packages/opencode/skills/mcp-builder/scripts/evaluation.py +373 -0
  906. package/packages/opencode/skills/mcp-builder/scripts/example_evaluation.xml +22 -0
  907. package/packages/opencode/skills/mcp-builder/scripts/requirements.txt +2 -0
  908. package/packages/opencode/skills/pdf/LICENSE.txt +30 -0
  909. package/packages/opencode/skills/pdf/SKILL.md +294 -0
  910. package/packages/opencode/skills/pdf/forms.md +205 -0
  911. package/packages/opencode/skills/pdf/reference.md +612 -0
  912. package/packages/opencode/skills/pdf/scripts/check_bounding_boxes.py +70 -0
  913. package/packages/opencode/skills/pdf/scripts/check_bounding_boxes_test.py +226 -0
  914. package/packages/opencode/skills/pdf/scripts/check_fillable_fields.py +12 -0
  915. package/packages/opencode/skills/pdf/scripts/convert_pdf_to_images.py +35 -0
  916. package/packages/opencode/skills/pdf/scripts/create_validation_image.py +41 -0
  917. package/packages/opencode/skills/pdf/scripts/extract_form_field_info.py +152 -0
  918. package/packages/opencode/skills/pdf/scripts/fill_fillable_fields.py +114 -0
  919. package/packages/opencode/skills/pdf/scripts/fill_pdf_form_with_annotations.py +108 -0
  920. package/packages/opencode/skills/pptx/LICENSE.txt +30 -0
  921. package/packages/opencode/skills/pptx/SKILL.md +484 -0
  922. package/packages/opencode/skills/pptx/html2pptx.md +625 -0
  923. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  924. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  925. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  926. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  927. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  928. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  929. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  930. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  931. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  932. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  933. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  934. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  935. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  936. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  937. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  938. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  939. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  940. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  941. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  942. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  943. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  944. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  945. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  946. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  947. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  948. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  949. package/packages/opencode/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  950. package/packages/opencode/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  951. package/packages/opencode/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  952. package/packages/opencode/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  953. package/packages/opencode/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  954. package/packages/opencode/skills/pptx/ooxml/schemas/mce/mc.xsd +75 -0
  955. package/packages/opencode/skills/pptx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
  956. package/packages/opencode/skills/pptx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
  957. package/packages/opencode/skills/pptx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
  958. package/packages/opencode/skills/pptx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
  959. package/packages/opencode/skills/pptx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
  960. package/packages/opencode/skills/pptx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  961. package/packages/opencode/skills/pptx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
  962. package/packages/opencode/skills/pptx/ooxml/scripts/pack.py +159 -0
  963. package/packages/opencode/skills/pptx/ooxml/scripts/unpack.py +29 -0
  964. package/packages/opencode/skills/pptx/ooxml/scripts/validate.py +69 -0
  965. package/packages/opencode/skills/pptx/ooxml/scripts/validation/__init__.py +15 -0
  966. package/packages/opencode/skills/pptx/ooxml/scripts/validation/base.py +951 -0
  967. package/packages/opencode/skills/pptx/ooxml/scripts/validation/docx.py +274 -0
  968. package/packages/opencode/skills/pptx/ooxml/scripts/validation/pptx.py +315 -0
  969. package/packages/opencode/skills/pptx/ooxml/scripts/validation/redlining.py +279 -0
  970. package/packages/opencode/skills/pptx/ooxml.md +427 -0
  971. package/packages/opencode/skills/pptx/scripts/html2pptx.js +979 -0
  972. package/packages/opencode/skills/pptx/scripts/inventory.py +1020 -0
  973. package/packages/opencode/skills/pptx/scripts/rearrange.py +231 -0
  974. package/packages/opencode/skills/pptx/scripts/replace.py +385 -0
  975. package/packages/opencode/skills/pptx/scripts/thumbnail.py +450 -0
  976. package/packages/opencode/skills/root-cause-tracing/SKILL.md +174 -0
  977. package/packages/opencode/skills/root-cause-tracing/find-polluter.sh +63 -0
  978. package/packages/opencode/skills/skill-creator/LICENSE.txt +202 -0
  979. package/packages/opencode/skills/skill-creator/SKILL.md +209 -0
  980. package/packages/opencode/skills/skill-creator/scripts/init_skill.py +303 -0
  981. package/packages/opencode/skills/skill-creator/scripts/package_skill.py +110 -0
  982. package/packages/opencode/skills/skill-creator/scripts/quick_validate.py +65 -0
  983. package/packages/opencode/skills/slack-gif-creator/LICENSE.txt +202 -0
  984. package/packages/opencode/skills/slack-gif-creator/SKILL.md +646 -0
  985. package/packages/opencode/skills/slack-gif-creator/core/color_palettes.py +302 -0
  986. package/packages/opencode/skills/slack-gif-creator/core/easing.py +230 -0
  987. package/packages/opencode/skills/slack-gif-creator/core/frame_composer.py +469 -0
  988. package/packages/opencode/skills/slack-gif-creator/core/gif_builder.py +246 -0
  989. package/packages/opencode/skills/slack-gif-creator/core/typography.py +357 -0
  990. package/packages/opencode/skills/slack-gif-creator/core/validators.py +264 -0
  991. package/packages/opencode/skills/slack-gif-creator/core/visual_effects.py +494 -0
  992. package/packages/opencode/skills/slack-gif-creator/requirements.txt +4 -0
  993. package/packages/opencode/skills/slack-gif-creator/templates/bounce.py +106 -0
  994. package/packages/opencode/skills/slack-gif-creator/templates/explode.py +331 -0
  995. package/packages/opencode/skills/slack-gif-creator/templates/fade.py +329 -0
  996. package/packages/opencode/skills/slack-gif-creator/templates/flip.py +291 -0
  997. package/packages/opencode/skills/slack-gif-creator/templates/kaleidoscope.py +211 -0
  998. package/packages/opencode/skills/slack-gif-creator/templates/morph.py +329 -0
  999. package/packages/opencode/skills/slack-gif-creator/templates/move.py +293 -0
  1000. package/packages/opencode/skills/slack-gif-creator/templates/pulse.py +268 -0
  1001. package/packages/opencode/skills/slack-gif-creator/templates/shake.py +127 -0
  1002. package/packages/opencode/skills/slack-gif-creator/templates/slide.py +291 -0
  1003. package/packages/opencode/skills/slack-gif-creator/templates/spin.py +269 -0
  1004. package/packages/opencode/skills/slack-gif-creator/templates/wiggle.py +300 -0
  1005. package/packages/opencode/skills/slack-gif-creator/templates/zoom.py +312 -0
  1006. package/packages/opencode/skills/systematic-debugging/CREATION-LOG.md +119 -0
  1007. package/packages/opencode/skills/systematic-debugging/SKILL.md +295 -0
  1008. package/packages/opencode/skills/systematic-debugging/test-academic.md +14 -0
  1009. package/packages/opencode/skills/systematic-debugging/test-pressure-1.md +58 -0
  1010. package/packages/opencode/skills/systematic-debugging/test-pressure-2.md +68 -0
  1011. package/packages/opencode/skills/systematic-debugging/test-pressure-3.md +69 -0
  1012. package/packages/opencode/skills/test-driven-development/SKILL.md +364 -0
  1013. package/packages/opencode/skills/testing-anti-patterns/SKILL.md +302 -0
  1014. package/packages/opencode/skills/theme-factory/LICENSE.txt +202 -0
  1015. package/packages/opencode/skills/theme-factory/SKILL.md +59 -0
  1016. package/packages/opencode/skills/theme-factory/theme-showcase.pdf +0 -0
  1017. package/packages/opencode/skills/theme-factory/themes/arctic-frost.md +19 -0
  1018. package/packages/opencode/skills/theme-factory/themes/botanical-garden.md +19 -0
  1019. package/packages/opencode/skills/theme-factory/themes/desert-rose.md +19 -0
  1020. package/packages/opencode/skills/theme-factory/themes/forest-canopy.md +19 -0
  1021. package/packages/opencode/skills/theme-factory/themes/golden-hour.md +19 -0
  1022. package/packages/opencode/skills/theme-factory/themes/midnight-galaxy.md +19 -0
  1023. package/packages/opencode/skills/theme-factory/themes/modern-minimalist.md +19 -0
  1024. package/packages/opencode/skills/theme-factory/themes/ocean-depths.md +19 -0
  1025. package/packages/opencode/skills/theme-factory/themes/sunset-boulevard.md +19 -0
  1026. package/packages/opencode/skills/theme-factory/themes/tech-innovation.md +19 -0
  1027. package/packages/opencode/skills/verification-before-completion/SKILL.md +139 -0
  1028. package/packages/opencode/skills/webapp-testing/LICENSE.txt +202 -0
  1029. package/packages/opencode/skills/webapp-testing/SKILL.md +96 -0
  1030. package/packages/opencode/skills/webapp-testing/examples/console_logging.py +35 -0
  1031. package/packages/opencode/skills/webapp-testing/examples/element_discovery.py +40 -0
  1032. package/packages/opencode/skills/webapp-testing/examples/static_html_automation.py +33 -0
  1033. package/packages/opencode/skills/webapp-testing/scripts/with_server.py +106 -0
  1034. package/packages/opencode/skills/xlsx/LICENSE.txt +30 -0
  1035. package/packages/opencode/skills/xlsx/SKILL.md +289 -0
  1036. package/packages/opencode/skills/xlsx/recalc.py +178 -0
  1037. package/packages/opencode/skills-backup/README.md +76 -0
  1038. package/packages/opencode/skills-backup/algorithmic-art.md +159 -0
  1039. package/packages/opencode/skills-backup/artifacts-builder.md +285 -0
  1040. package/packages/opencode/skills-backup/brainstorming.md +49 -0
  1041. package/packages/opencode/skills-backup/brand-guidelines.md +123 -0
  1042. package/packages/opencode/skills-backup/canvas-design.md +155 -0
  1043. package/packages/opencode/skills-backup/code-review.md +92 -0
  1044. package/packages/opencode/skills-backup/condition-based-waiting.md +133 -0
  1045. package/packages/opencode/skills-backup/docx.md +255 -0
  1046. package/packages/opencode/skills-backup/internal-comms.md +142 -0
  1047. package/packages/opencode/skills-backup/mcp-builder.md +282 -0
  1048. package/packages/opencode/skills-backup/pdf.md +194 -0
  1049. package/packages/opencode/skills-backup/pptx.md +272 -0
  1050. package/packages/opencode/skills-backup/root-cause-tracing.md +211 -0
  1051. package/packages/opencode/skills-backup/skill-creator.md +196 -0
  1052. package/packages/opencode/skills-backup/slack-gif-creator.md +340 -0
  1053. package/packages/opencode/skills-backup/systematic-debugging.md +215 -0
  1054. package/packages/opencode/skills-backup/test-driven-development.md +231 -0
  1055. package/packages/opencode/skills-backup/testing-anti-patterns.md +248 -0
  1056. package/packages/opencode/skills-backup/theme-factory.md +146 -0
  1057. package/packages/opencode/skills-backup/verification-before-completion.md +151 -0
  1058. package/packages/opencode/skills-backup/webapp-testing.md +275 -0
  1059. package/packages/opencode/skills-backup/xlsx.md +254 -0
  1060. package/packages/opencode/subagents-and-skills.md +79 -0
  1061. package/packages/opencode/variants.json +67 -0
  1062. package/scripts/validate-all-packages.js +255 -0
  1063. package/tests/VARIANT_TESTING_REPORT.md +362 -0
  1064. package/tests/fixtures/README.md +311 -0
  1065. package/tests/fixtures/helpers/test-helpers.js +319 -0
  1066. package/tests/fixtures/manifests/manifest-lite.json +32 -0
  1067. package/tests/fixtures/manifests/manifest-pro.json +65 -0
  1068. package/tests/fixtures/manifests/manifest-standard.json +51 -0
  1069. package/tests/fixtures/packages/mock-package/agents/test-agent.md +11 -0
  1070. package/tests/fixtures/packages/mock-package/hooks/test-hook.js +16 -0
  1071. package/tests/fixtures/packages/mock-package/resources/test-resource.txt +4 -0
  1072. package/tests/fixtures/packages/mock-package/skills/test-skill/skill.md +10 -0
  1073. package/tests/fixtures/packages/mock-package/variants.json +28 -0
  1074. package/tests/fixtures/variants/variants-corrupted.json +11 -0
  1075. package/tests/fixtures/variants/variants-lite.json +42 -0
  1076. package/tests/fixtures/variants/variants-minimal.json +12 -0
  1077. package/tests/fixtures/variants/variants-pro.json +75 -0
  1078. package/tests/fixtures/variants/variants-standard.json +61 -0
  1079. package/tests/installer/cli.test.js +751 -0
  1080. package/tests/installer/cross-platform-testing.test.js +530 -0
  1081. package/tests/installer/demo-cli-args.js +241 -0
  1082. package/tests/installer/demo-error-handling.js +127 -0
  1083. package/tests/installer/demo-silent-mode.js +329 -0
  1084. package/tests/installer/demo-summary-display.js +140 -0
  1085. package/tests/installer/demo-tool-selection.js +129 -0
  1086. package/tests/installer/error-scenario-testing.test.js +513 -0
  1087. package/tests/installer/installation-engine.test.js +1540 -0
  1088. package/tests/installer/integration.test.js +1039 -0
  1089. package/tests/installer/multi-tool-testing.test.js +482 -0
  1090. package/tests/installer/package-manager.test.js +1025 -0
  1091. package/tests/installer/path-handling-testing.test.js +585 -0
  1092. package/tests/installer/state-manager.test.js +499 -0
  1093. package/tests/installer/test-cli-args.js +329 -0
  1094. package/tests/installer/test-error-handling.js +387 -0
  1095. package/tests/installer/test-install-method.js +305 -0
  1096. package/tests/installer/test-path-confirmation.js +318 -0
  1097. package/tests/installer/test-silent-mode.js +505 -0
  1098. package/tests/installer/test-summary-display.js +255 -0
  1099. package/tests/installer/test-tool-selection-ui.js +152 -0
  1100. package/tests/installer/upgrade-variant.test.js +757 -0
  1101. package/tests/installer/variant-testing.test.js +452 -0
  1102. package/tests/run-all-tests.js +359 -0
  1103. package/tests/test-progress-real-installation.js +126 -0
  1104. package/tests/test-variants-parsing.js +475 -0
  1105. package/tests/tmp/test-cli-install-1762170060156/claude-lite-test/agents/master.md +55 -0
  1106. package/tests/tmp/test-cli-install-1762170060156/claude-lite-test/agents/orchestrator.md +103 -0
  1107. package/tests/tmp/test-cli-install-1762170060156/claude-lite-test/agents/scrum-master.md +64 -0
  1108. package/tests/tmp/test-cli-install-1762170060156/claude-lite-test/hooks/register-agents.js +123 -0
  1109. package/tests/tmp/test-cli-install-1762170060156/claude-lite-test/hooks/session-start.js +159 -0
  1110. package/tests/tmp/test-cli-install-1762170060156/claude-lite-test/manifest.json +63 -0
  1111. package/tests/tmp/test-cli-install-1762170060156/claude-lite-test/resources/agent-teams.yaml +50 -0
  1112. package/tests/tmp/test-cli-install-1762170060156/claude-lite-test/resources/checklists.md +1724 -0
  1113. package/tests/tmp/test-cli-install-1762170060156/claude-lite-test/resources/data.md +1372 -0
  1114. package/tests/tmp/test-cli-install-1762170060156/claude-lite-test/resources/task-briefs.md +4428 -0
  1115. package/tests/tmp/test-cli-install-1762170060156/claude-lite-test/resources/templates.yaml +5810 -0
  1116. package/tests/tmp/test-cli-install-1762170060156/claude-lite-test/resources/workflows.yaml +1513 -0
  1117. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/agents/1-create-prd.md +56 -0
  1118. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/agents/2-generate-tasks.md +73 -0
  1119. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/agents/3-process-task-list.md +101 -0
  1120. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/agents/business-analyst.md +76 -0
  1121. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/agents/full-stack-dev.md +80 -0
  1122. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/agents/holistic-architect.md +91 -0
  1123. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/agents/master.md +55 -0
  1124. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/agents/orchestrator.md +103 -0
  1125. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/agents/product-manager.md +82 -0
  1126. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/agents/product-owner.md +97 -0
  1127. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/agents/qa-test-architect.md +72 -0
  1128. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/agents/scrum-master.md +64 -0
  1129. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/agents/ux-expert.md +74 -0
  1130. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/hooks/register-agents.js +123 -0
  1131. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/hooks/session-start.js +159 -0
  1132. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/manifest.json +82 -0
  1133. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/resources/agent-teams.yaml +50 -0
  1134. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/resources/checklists.md +1724 -0
  1135. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/resources/data.md +1372 -0
  1136. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/resources/task-briefs.md +4428 -0
  1137. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/resources/templates.yaml +5810 -0
  1138. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/resources/workflows.yaml +1513 -0
  1139. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/brand-guidelines/LICENSE.txt +202 -0
  1140. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/brand-guidelines/SKILL.md +73 -0
  1141. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/LICENSE.txt +202 -0
  1142. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/SKILL.md +130 -0
  1143. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/ArsenalSC-OFL.txt +93 -0
  1144. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
  1145. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/BigShoulders-Bold.ttf +0 -0
  1146. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/BigShoulders-OFL.txt +93 -0
  1147. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/BigShoulders-Regular.ttf +0 -0
  1148. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/Boldonse-OFL.txt +93 -0
  1149. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/Boldonse-Regular.ttf +0 -0
  1150. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
  1151. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/BricolageGrotesque-OFL.txt +93 -0
  1152. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
  1153. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
  1154. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
  1155. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/CrimsonPro-OFL.txt +93 -0
  1156. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
  1157. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/DMMono-OFL.txt +93 -0
  1158. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/DMMono-Regular.ttf +0 -0
  1159. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/EricaOne-OFL.txt +94 -0
  1160. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/EricaOne-Regular.ttf +0 -0
  1161. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/GeistMono-Bold.ttf +0 -0
  1162. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/GeistMono-OFL.txt +93 -0
  1163. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/GeistMono-Regular.ttf +0 -0
  1164. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/Gloock-OFL.txt +93 -0
  1165. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/Gloock-Regular.ttf +0 -0
  1166. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
  1167. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/IBMPlexMono-OFL.txt +93 -0
  1168. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
  1169. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
  1170. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
  1171. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
  1172. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
  1173. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
  1174. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
  1175. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
  1176. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/InstrumentSans-OFL.txt +93 -0
  1177. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
  1178. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
  1179. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
  1180. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/Italiana-OFL.txt +93 -0
  1181. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/Italiana-Regular.ttf +0 -0
  1182. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
  1183. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/JetBrainsMono-OFL.txt +93 -0
  1184. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
  1185. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/Jura-Light.ttf +0 -0
  1186. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/Jura-Medium.ttf +0 -0
  1187. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/Jura-OFL.txt +93 -0
  1188. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/LibreBaskerville-OFL.txt +93 -0
  1189. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
  1190. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/Lora-Bold.ttf +0 -0
  1191. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/Lora-BoldItalic.ttf +0 -0
  1192. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/Lora-Italic.ttf +0 -0
  1193. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/Lora-OFL.txt +93 -0
  1194. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/Lora-Regular.ttf +0 -0
  1195. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/NationalPark-Bold.ttf +0 -0
  1196. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/NationalPark-OFL.txt +93 -0
  1197. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/NationalPark-Regular.ttf +0 -0
  1198. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -0
  1199. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
  1200. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/Outfit-Bold.ttf +0 -0
  1201. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/Outfit-OFL.txt +93 -0
  1202. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/Outfit-Regular.ttf +0 -0
  1203. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/PixelifySans-Medium.ttf +0 -0
  1204. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/PixelifySans-OFL.txt +93 -0
  1205. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/PoiretOne-OFL.txt +93 -0
  1206. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/PoiretOne-Regular.ttf +0 -0
  1207. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/RedHatMono-Bold.ttf +0 -0
  1208. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/RedHatMono-OFL.txt +93 -0
  1209. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/RedHatMono-Regular.ttf +0 -0
  1210. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/Silkscreen-OFL.txt +93 -0
  1211. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/Silkscreen-Regular.ttf +0 -0
  1212. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/SmoochSans-Medium.ttf +0 -0
  1213. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/SmoochSans-OFL.txt +93 -0
  1214. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/Tektur-Medium.ttf +0 -0
  1215. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/Tektur-OFL.txt +93 -0
  1216. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/Tektur-Regular.ttf +0 -0
  1217. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/WorkSans-Bold.ttf +0 -0
  1218. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
  1219. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/WorkSans-Italic.ttf +0 -0
  1220. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/WorkSans-OFL.txt +93 -0
  1221. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/WorkSans-Regular.ttf +0 -0
  1222. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/YoungSerif-OFL.txt +93 -0
  1223. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/canvas-design/canvas-fonts/YoungSerif-Regular.ttf +0 -0
  1224. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/LICENSE.txt +30 -0
  1225. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/SKILL.md +197 -0
  1226. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/docx-js.md +350 -0
  1227. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  1228. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  1229. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  1230. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  1231. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  1232. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  1233. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  1234. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  1235. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  1236. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  1237. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  1238. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  1239. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  1240. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  1241. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  1242. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  1243. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  1244. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  1245. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  1246. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  1247. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  1248. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  1249. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  1250. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  1251. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  1252. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  1253. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  1254. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  1255. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  1256. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  1257. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  1258. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/mce/mc.xsd +75 -0
  1259. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
  1260. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
  1261. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
  1262. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
  1263. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
  1264. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  1265. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
  1266. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/scripts/pack.py +159 -0
  1267. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/scripts/unpack.py +29 -0
  1268. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/scripts/validate.py +69 -0
  1269. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/scripts/validation/__init__.py +15 -0
  1270. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/scripts/validation/base.py +951 -0
  1271. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/scripts/validation/docx.py +274 -0
  1272. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/scripts/validation/pptx.py +315 -0
  1273. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml/scripts/validation/redlining.py +279 -0
  1274. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/ooxml.md +610 -0
  1275. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/scripts/__init__.py +1 -0
  1276. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/scripts/document.py +1276 -0
  1277. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/scripts/templates/comments.xml +3 -0
  1278. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/scripts/templates/commentsExtended.xml +3 -0
  1279. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/scripts/templates/commentsExtensible.xml +3 -0
  1280. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/scripts/templates/commentsIds.xml +3 -0
  1281. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/scripts/templates/people.xml +3 -0
  1282. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/docx/scripts/utilities.py +374 -0
  1283. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/internal-comms/LICENSE.txt +202 -0
  1284. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/internal-comms/SKILL.md +32 -0
  1285. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/internal-comms/examples/3p-updates.md +47 -0
  1286. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/internal-comms/examples/company-newsletter.md +65 -0
  1287. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/internal-comms/examples/faq-answers.md +30 -0
  1288. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/internal-comms/examples/general-comms.md +16 -0
  1289. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pdf/LICENSE.txt +30 -0
  1290. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pdf/SKILL.md +294 -0
  1291. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pdf/forms.md +205 -0
  1292. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pdf/reference.md +612 -0
  1293. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pdf/scripts/check_bounding_boxes.py +70 -0
  1294. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pdf/scripts/check_bounding_boxes_test.py +226 -0
  1295. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pdf/scripts/check_fillable_fields.py +12 -0
  1296. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pdf/scripts/convert_pdf_to_images.py +35 -0
  1297. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pdf/scripts/create_validation_image.py +41 -0
  1298. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pdf/scripts/extract_form_field_info.py +152 -0
  1299. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pdf/scripts/fill_fillable_fields.py +114 -0
  1300. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pdf/scripts/fill_pdf_form_with_annotations.py +108 -0
  1301. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/LICENSE.txt +30 -0
  1302. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/SKILL.md +484 -0
  1303. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/html2pptx.md +625 -0
  1304. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  1305. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  1306. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  1307. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  1308. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  1309. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  1310. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  1311. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  1312. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  1313. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  1314. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  1315. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  1316. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  1317. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  1318. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  1319. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  1320. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  1321. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  1322. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  1323. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  1324. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  1325. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  1326. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  1327. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  1328. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  1329. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  1330. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  1331. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  1332. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  1333. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  1334. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  1335. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/mce/mc.xsd +75 -0
  1336. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
  1337. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
  1338. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
  1339. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
  1340. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
  1341. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  1342. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
  1343. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/scripts/pack.py +159 -0
  1344. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/scripts/unpack.py +29 -0
  1345. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/scripts/validate.py +69 -0
  1346. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/scripts/validation/__init__.py +15 -0
  1347. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/scripts/validation/base.py +951 -0
  1348. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/scripts/validation/docx.py +274 -0
  1349. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/scripts/validation/pptx.py +315 -0
  1350. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml/scripts/validation/redlining.py +279 -0
  1351. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/ooxml.md +427 -0
  1352. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/scripts/html2pptx.js +979 -0
  1353. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/scripts/inventory.py +1020 -0
  1354. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/scripts/rearrange.py +231 -0
  1355. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/scripts/replace.py +385 -0
  1356. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/pptx/scripts/thumbnail.py +450 -0
  1357. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/theme-factory/LICENSE.txt +202 -0
  1358. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/theme-factory/SKILL.md +59 -0
  1359. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/theme-factory/theme-showcase.pdf +0 -0
  1360. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/theme-factory/themes/arctic-frost.md +19 -0
  1361. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/theme-factory/themes/botanical-garden.md +19 -0
  1362. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/theme-factory/themes/desert-rose.md +19 -0
  1363. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/theme-factory/themes/forest-canopy.md +19 -0
  1364. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/theme-factory/themes/golden-hour.md +19 -0
  1365. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/theme-factory/themes/midnight-galaxy.md +19 -0
  1366. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/theme-factory/themes/modern-minimalist.md +19 -0
  1367. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/theme-factory/themes/ocean-depths.md +19 -0
  1368. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/theme-factory/themes/sunset-boulevard.md +19 -0
  1369. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/theme-factory/themes/tech-innovation.md +19 -0
  1370. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/xlsx/LICENSE.txt +30 -0
  1371. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/xlsx/SKILL.md +289 -0
  1372. package/tests/tmp/test-cli-install-1762170060156/claude-standard-test/skills/xlsx/recalc.py +178 -0
  1373. package/tests/tmp/test-cli-install-1762170060156/multi-claude/agents/master.md +55 -0
  1374. package/tests/tmp/test-cli-install-1762170060156/multi-claude/agents/orchestrator.md +103 -0
  1375. package/tests/tmp/test-cli-install-1762170060156/multi-claude/agents/scrum-master.md +64 -0
  1376. package/tests/tmp/test-cli-install-1762170060156/multi-claude/hooks/register-agents.js +123 -0
  1377. package/tests/tmp/test-cli-install-1762170060156/multi-claude/hooks/session-start.js +159 -0
  1378. package/tests/tmp/test-cli-install-1762170060156/multi-claude/manifest.json +63 -0
  1379. package/tests/tmp/test-cli-install-1762170060156/multi-claude/resources/agent-teams.yaml +50 -0
  1380. package/tests/tmp/test-cli-install-1762170060156/multi-claude/resources/checklists.md +1724 -0
  1381. package/tests/tmp/test-cli-install-1762170060156/multi-claude/resources/data.md +1372 -0
  1382. package/tests/tmp/test-cli-install-1762170060156/multi-claude/resources/task-briefs.md +4428 -0
  1383. package/tests/tmp/test-cli-install-1762170060156/multi-claude/resources/templates.yaml +5810 -0
  1384. package/tests/tmp/test-cli-install-1762170060156/multi-claude/resources/workflows.yaml +1513 -0
  1385. package/tests/tmp/test-cli-install-1762170060156/rollback-test-claude/agents/master.md +55 -0
  1386. package/tests/tmp/test-cli-install-1762170060156/rollback-test-claude/agents/orchestrator.md +103 -0
  1387. package/tests/tmp/test-cli-install-1762170060156/rollback-test-claude/agents/scrum-master.md +64 -0
  1388. package/tests/tmp/test-cli-install-1762170060156/rollback-test-claude/hooks/register-agents.js +123 -0
  1389. package/tests/tmp/test-cli-install-1762170060156/rollback-test-claude/hooks/session-start.js +159 -0
  1390. package/tests/tmp/test-cli-install-1762170060156/rollback-test-claude/manifest.json +63 -0
  1391. package/tests/tmp/test-cli-install-1762170060156/rollback-test-claude/resources/agent-teams.yaml +50 -0
  1392. package/tests/tmp/test-cli-install-1762170060156/rollback-test-claude/resources/checklists.md +1724 -0
  1393. package/tests/tmp/test-cli-install-1762170060156/rollback-test-claude/resources/data.md +1372 -0
  1394. package/tests/tmp/test-cli-install-1762170060156/rollback-test-claude/resources/task-briefs.md +4428 -0
  1395. package/tests/tmp/test-cli-install-1762170060156/rollback-test-claude/resources/templates.yaml +5810 -0
  1396. package/tests/tmp/test-cli-install-1762170060156/rollback-test-claude/resources/workflows.yaml +1513 -0
  1397. package/tests/tmp/test-cli-install-1762170095553/claude-lite-test/agents/master.md +55 -0
  1398. package/tests/tmp/test-cli-install-1762170095553/claude-lite-test/agents/orchestrator.md +103 -0
  1399. package/tests/tmp/test-cli-install-1762170095553/claude-lite-test/agents/scrum-master.md +64 -0
  1400. package/tests/tmp/test-cli-install-1762170095553/claude-lite-test/hooks/register-agents.js +123 -0
  1401. package/tests/tmp/test-cli-install-1762170095553/claude-lite-test/hooks/session-start.js +159 -0
  1402. package/tests/tmp/test-cli-install-1762170095553/claude-lite-test/manifest.json +63 -0
  1403. package/tests/tmp/test-cli-install-1762170095553/claude-lite-test/resources/agent-teams.yaml +50 -0
  1404. package/tests/tmp/test-cli-install-1762170095553/claude-lite-test/resources/checklists.md +1724 -0
  1405. package/tests/tmp/test-cli-install-1762170095553/claude-lite-test/resources/data.md +1372 -0
  1406. package/tests/tmp/test-cli-install-1762170095553/claude-lite-test/resources/task-briefs.md +4428 -0
  1407. package/tests/tmp/test-cli-install-1762170095553/claude-lite-test/resources/templates.yaml +5810 -0
  1408. package/tests/tmp/test-cli-install-1762170095553/claude-lite-test/resources/workflows.yaml +1513 -0
  1409. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/agents/1-create-prd.md +56 -0
  1410. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/agents/2-generate-tasks.md +73 -0
  1411. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/agents/3-process-task-list.md +101 -0
  1412. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/agents/business-analyst.md +76 -0
  1413. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/agents/full-stack-dev.md +80 -0
  1414. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/agents/holistic-architect.md +91 -0
  1415. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/agents/master.md +55 -0
  1416. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/agents/orchestrator.md +103 -0
  1417. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/agents/product-manager.md +82 -0
  1418. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/agents/product-owner.md +97 -0
  1419. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/agents/qa-test-architect.md +72 -0
  1420. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/agents/scrum-master.md +64 -0
  1421. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/agents/ux-expert.md +74 -0
  1422. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/hooks/register-agents.js +123 -0
  1423. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/hooks/session-start.js +159 -0
  1424. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/manifest.json +82 -0
  1425. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/resources/agent-teams.yaml +50 -0
  1426. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/resources/checklists.md +1724 -0
  1427. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/resources/data.md +1372 -0
  1428. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/resources/task-briefs.md +4428 -0
  1429. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/resources/templates.yaml +5810 -0
  1430. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/resources/workflows.yaml +1513 -0
  1431. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/brand-guidelines/LICENSE.txt +202 -0
  1432. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/brand-guidelines/SKILL.md +73 -0
  1433. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/LICENSE.txt +202 -0
  1434. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/SKILL.md +130 -0
  1435. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/ArsenalSC-OFL.txt +93 -0
  1436. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
  1437. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/BigShoulders-Bold.ttf +0 -0
  1438. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/BigShoulders-OFL.txt +93 -0
  1439. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/BigShoulders-Regular.ttf +0 -0
  1440. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/Boldonse-OFL.txt +93 -0
  1441. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/Boldonse-Regular.ttf +0 -0
  1442. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
  1443. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/BricolageGrotesque-OFL.txt +93 -0
  1444. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
  1445. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
  1446. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
  1447. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/CrimsonPro-OFL.txt +93 -0
  1448. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
  1449. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/DMMono-OFL.txt +93 -0
  1450. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/DMMono-Regular.ttf +0 -0
  1451. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/EricaOne-OFL.txt +94 -0
  1452. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/EricaOne-Regular.ttf +0 -0
  1453. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/GeistMono-Bold.ttf +0 -0
  1454. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/GeistMono-OFL.txt +93 -0
  1455. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/GeistMono-Regular.ttf +0 -0
  1456. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/Gloock-OFL.txt +93 -0
  1457. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/Gloock-Regular.ttf +0 -0
  1458. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
  1459. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/IBMPlexMono-OFL.txt +93 -0
  1460. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
  1461. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
  1462. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
  1463. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
  1464. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
  1465. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
  1466. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
  1467. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
  1468. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/InstrumentSans-OFL.txt +93 -0
  1469. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
  1470. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
  1471. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
  1472. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/Italiana-OFL.txt +93 -0
  1473. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/Italiana-Regular.ttf +0 -0
  1474. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
  1475. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/JetBrainsMono-OFL.txt +93 -0
  1476. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
  1477. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/Jura-Light.ttf +0 -0
  1478. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/Jura-Medium.ttf +0 -0
  1479. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/Jura-OFL.txt +93 -0
  1480. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/LibreBaskerville-OFL.txt +93 -0
  1481. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
  1482. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/Lora-Bold.ttf +0 -0
  1483. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/Lora-BoldItalic.ttf +0 -0
  1484. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/Lora-Italic.ttf +0 -0
  1485. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/Lora-OFL.txt +93 -0
  1486. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/Lora-Regular.ttf +0 -0
  1487. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/NationalPark-Bold.ttf +0 -0
  1488. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/NationalPark-OFL.txt +93 -0
  1489. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/NationalPark-Regular.ttf +0 -0
  1490. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -0
  1491. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
  1492. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/Outfit-Bold.ttf +0 -0
  1493. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/Outfit-OFL.txt +93 -0
  1494. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/Outfit-Regular.ttf +0 -0
  1495. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/PixelifySans-Medium.ttf +0 -0
  1496. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/PixelifySans-OFL.txt +93 -0
  1497. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/PoiretOne-OFL.txt +93 -0
  1498. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/PoiretOne-Regular.ttf +0 -0
  1499. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/RedHatMono-Bold.ttf +0 -0
  1500. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/RedHatMono-OFL.txt +93 -0
  1501. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/RedHatMono-Regular.ttf +0 -0
  1502. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/Silkscreen-OFL.txt +93 -0
  1503. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/Silkscreen-Regular.ttf +0 -0
  1504. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/SmoochSans-Medium.ttf +0 -0
  1505. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/SmoochSans-OFL.txt +93 -0
  1506. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/Tektur-Medium.ttf +0 -0
  1507. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/Tektur-OFL.txt +93 -0
  1508. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/Tektur-Regular.ttf +0 -0
  1509. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/WorkSans-Bold.ttf +0 -0
  1510. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
  1511. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/WorkSans-Italic.ttf +0 -0
  1512. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/WorkSans-OFL.txt +93 -0
  1513. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/WorkSans-Regular.ttf +0 -0
  1514. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/YoungSerif-OFL.txt +93 -0
  1515. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/canvas-design/canvas-fonts/YoungSerif-Regular.ttf +0 -0
  1516. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/LICENSE.txt +30 -0
  1517. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/SKILL.md +197 -0
  1518. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/docx-js.md +350 -0
  1519. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  1520. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  1521. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  1522. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  1523. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  1524. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  1525. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  1526. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  1527. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  1528. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  1529. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  1530. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  1531. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  1532. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  1533. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  1534. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  1535. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  1536. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  1537. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  1538. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  1539. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  1540. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  1541. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  1542. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  1543. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  1544. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  1545. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  1546. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  1547. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  1548. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  1549. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  1550. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/mce/mc.xsd +75 -0
  1551. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
  1552. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
  1553. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
  1554. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
  1555. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
  1556. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  1557. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
  1558. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/scripts/pack.py +159 -0
  1559. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/scripts/unpack.py +29 -0
  1560. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/scripts/validate.py +69 -0
  1561. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/scripts/validation/__init__.py +15 -0
  1562. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/scripts/validation/base.py +951 -0
  1563. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/scripts/validation/docx.py +274 -0
  1564. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/scripts/validation/pptx.py +315 -0
  1565. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml/scripts/validation/redlining.py +279 -0
  1566. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/ooxml.md +610 -0
  1567. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/scripts/__init__.py +1 -0
  1568. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/scripts/document.py +1276 -0
  1569. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/scripts/templates/comments.xml +3 -0
  1570. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/scripts/templates/commentsExtended.xml +3 -0
  1571. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/scripts/templates/commentsExtensible.xml +3 -0
  1572. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/scripts/templates/commentsIds.xml +3 -0
  1573. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/scripts/templates/people.xml +3 -0
  1574. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/docx/scripts/utilities.py +374 -0
  1575. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/internal-comms/LICENSE.txt +202 -0
  1576. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/internal-comms/SKILL.md +32 -0
  1577. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/internal-comms/examples/3p-updates.md +47 -0
  1578. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/internal-comms/examples/company-newsletter.md +65 -0
  1579. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/internal-comms/examples/faq-answers.md +30 -0
  1580. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/internal-comms/examples/general-comms.md +16 -0
  1581. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pdf/LICENSE.txt +30 -0
  1582. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pdf/SKILL.md +294 -0
  1583. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pdf/forms.md +205 -0
  1584. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pdf/reference.md +612 -0
  1585. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pdf/scripts/check_bounding_boxes.py +70 -0
  1586. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pdf/scripts/check_bounding_boxes_test.py +226 -0
  1587. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pdf/scripts/check_fillable_fields.py +12 -0
  1588. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pdf/scripts/convert_pdf_to_images.py +35 -0
  1589. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pdf/scripts/create_validation_image.py +41 -0
  1590. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pdf/scripts/extract_form_field_info.py +152 -0
  1591. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pdf/scripts/fill_fillable_fields.py +114 -0
  1592. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pdf/scripts/fill_pdf_form_with_annotations.py +108 -0
  1593. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/LICENSE.txt +30 -0
  1594. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/SKILL.md +484 -0
  1595. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/html2pptx.md +625 -0
  1596. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  1597. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  1598. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  1599. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  1600. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  1601. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  1602. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  1603. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  1604. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  1605. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  1606. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  1607. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  1608. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  1609. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  1610. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  1611. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  1612. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  1613. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  1614. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  1615. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  1616. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  1617. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  1618. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  1619. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  1620. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  1621. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  1622. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  1623. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  1624. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  1625. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  1626. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  1627. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/mce/mc.xsd +75 -0
  1628. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
  1629. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
  1630. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
  1631. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
  1632. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
  1633. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  1634. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
  1635. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/scripts/pack.py +159 -0
  1636. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/scripts/unpack.py +29 -0
  1637. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/scripts/validate.py +69 -0
  1638. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/scripts/validation/__init__.py +15 -0
  1639. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/scripts/validation/base.py +951 -0
  1640. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/scripts/validation/docx.py +274 -0
  1641. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/scripts/validation/pptx.py +315 -0
  1642. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml/scripts/validation/redlining.py +279 -0
  1643. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/ooxml.md +427 -0
  1644. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/scripts/html2pptx.js +979 -0
  1645. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/scripts/inventory.py +1020 -0
  1646. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/scripts/rearrange.py +231 -0
  1647. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/scripts/replace.py +385 -0
  1648. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/pptx/scripts/thumbnail.py +450 -0
  1649. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/theme-factory/LICENSE.txt +202 -0
  1650. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/theme-factory/SKILL.md +59 -0
  1651. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/theme-factory/theme-showcase.pdf +0 -0
  1652. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/theme-factory/themes/arctic-frost.md +19 -0
  1653. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/theme-factory/themes/botanical-garden.md +19 -0
  1654. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/theme-factory/themes/desert-rose.md +19 -0
  1655. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/theme-factory/themes/forest-canopy.md +19 -0
  1656. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/theme-factory/themes/golden-hour.md +19 -0
  1657. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/theme-factory/themes/midnight-galaxy.md +19 -0
  1658. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/theme-factory/themes/modern-minimalist.md +19 -0
  1659. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/theme-factory/themes/ocean-depths.md +19 -0
  1660. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/theme-factory/themes/sunset-boulevard.md +19 -0
  1661. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/theme-factory/themes/tech-innovation.md +19 -0
  1662. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/xlsx/LICENSE.txt +30 -0
  1663. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/xlsx/SKILL.md +289 -0
  1664. package/tests/tmp/test-cli-install-1762170095553/claude-standard-test/skills/xlsx/recalc.py +178 -0
  1665. package/tests/tmp/test-cli-install-1762170095553/multi-claude/agents/master.md +55 -0
  1666. package/tests/tmp/test-cli-install-1762170095553/multi-claude/agents/orchestrator.md +103 -0
  1667. package/tests/tmp/test-cli-install-1762170095553/multi-claude/agents/scrum-master.md +64 -0
  1668. package/tests/tmp/test-cli-install-1762170095553/multi-claude/hooks/register-agents.js +123 -0
  1669. package/tests/tmp/test-cli-install-1762170095553/multi-claude/hooks/session-start.js +159 -0
  1670. package/tests/tmp/test-cli-install-1762170095553/multi-claude/manifest.json +63 -0
  1671. package/tests/tmp/test-cli-install-1762170095553/multi-claude/resources/agent-teams.yaml +50 -0
  1672. package/tests/tmp/test-cli-install-1762170095553/multi-claude/resources/checklists.md +1724 -0
  1673. package/tests/tmp/test-cli-install-1762170095553/multi-claude/resources/data.md +1372 -0
  1674. package/tests/tmp/test-cli-install-1762170095553/multi-claude/resources/task-briefs.md +4428 -0
  1675. package/tests/tmp/test-cli-install-1762170095553/multi-claude/resources/templates.yaml +5810 -0
  1676. package/tests/tmp/test-cli-install-1762170095553/multi-claude/resources/workflows.yaml +1513 -0
  1677. package/tests/tmp/test-cli-install-1762170095553/rollback-test-claude/agents/master.md +55 -0
  1678. package/tests/tmp/test-cli-install-1762170095553/rollback-test-claude/agents/orchestrator.md +103 -0
  1679. package/tests/tmp/test-cli-install-1762170095553/rollback-test-claude/agents/scrum-master.md +64 -0
  1680. package/tests/tmp/test-cli-install-1762170095553/rollback-test-claude/hooks/register-agents.js +123 -0
  1681. package/tests/tmp/test-cli-install-1762170095553/rollback-test-claude/hooks/session-start.js +159 -0
  1682. package/tests/tmp/test-cli-install-1762170095553/rollback-test-claude/manifest.json +63 -0
  1683. package/tests/tmp/test-cli-install-1762170095553/rollback-test-claude/resources/agent-teams.yaml +50 -0
  1684. package/tests/tmp/test-cli-install-1762170095553/rollback-test-claude/resources/checklists.md +1724 -0
  1685. package/tests/tmp/test-cli-install-1762170095553/rollback-test-claude/resources/data.md +1372 -0
  1686. package/tests/tmp/test-cli-install-1762170095553/rollback-test-claude/resources/task-briefs.md +4428 -0
  1687. package/tests/tmp/test-cli-install-1762170095553/rollback-test-claude/resources/templates.yaml +5810 -0
  1688. package/tests/tmp/test-cli-install-1762170095553/rollback-test-claude/resources/workflows.yaml +1513 -0
  1689. package/tests/tmp/test-installation-engine-1762169302975/install-lite/agents/master.md +3 -0
  1690. package/tests/tmp/test-installation-engine-1762169302975/install-lite/agents/orchestrator.md +3 -0
  1691. package/tests/tmp/test-installation-engine-1762169302975/install-lite/agents/scrum-master.md +3 -0
  1692. package/tests/tmp/test-installation-engine-1762169302975/install-lite/hooks/session-start.js +1 -0
  1693. package/tests/tmp/test-installation-engine-1762169302975/install-lite/manifest.json +45 -0
  1694. package/tests/tmp/test-installation-engine-1762169302975/install-lite/resources/workflows.yaml +2 -0
  1695. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-agents-test/agents/master.md +3 -0
  1696. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-agents-test/agents/orchestrator.md +3 -0
  1697. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-agents-test/agents/scrum-master.md +3 -0
  1698. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-agents-test/hooks/session-start.js +1 -0
  1699. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-agents-test/manifest.json +45 -0
  1700. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-agents-test/resources/workflows.yaml +2 -0
  1701. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-compat-test/agents/master.md +3 -0
  1702. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-compat-test/agents/orchestrator.md +3 -0
  1703. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-compat-test/agents/scrum-master.md +3 -0
  1704. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-compat-test/hooks/session-start.js +1 -0
  1705. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-compat-test/manifest.json +45 -0
  1706. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-compat-test/resources/workflows.yaml +2 -0
  1707. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-counts-test/agents/analyst.md +3 -0
  1708. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-counts-test/agents/designer.md +3 -0
  1709. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-counts-test/agents/developer.md +3 -0
  1710. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-counts-test/agents/documenter.md +3 -0
  1711. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-counts-test/agents/executor.md +3 -0
  1712. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-counts-test/agents/master.md +3 -0
  1713. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-counts-test/agents/monitor.md +3 -0
  1714. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-counts-test/agents/orchestrator.md +3 -0
  1715. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-counts-test/agents/planner.md +3 -0
  1716. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-counts-test/agents/reporter.md +3 -0
  1717. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-counts-test/agents/reviewer.md +3 -0
  1718. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-counts-test/agents/scrum-master.md +3 -0
  1719. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-counts-test/agents/tester.md +3 -0
  1720. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-counts-test/hooks/session-start.js +1 -0
  1721. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-counts-test/manifest.json +58 -0
  1722. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-counts-test/resources/workflows.yaml +2 -0
  1723. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-counts-test/skills/docx/docx.md +3 -0
  1724. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-counts-test/skills/pdf/pdf.md +3 -0
  1725. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-lite/agents/master.md +3 -0
  1726. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-lite/agents/orchestrator.md +3 -0
  1727. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-lite/agents/scrum-master.md +3 -0
  1728. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-lite/hooks/session-start.js +1 -0
  1729. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-lite/manifest.json +45 -0
  1730. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-lite/resources/workflows.yaml +2 -0
  1731. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-metadata-test/agents/analyst.md +3 -0
  1732. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-metadata-test/agents/designer.md +3 -0
  1733. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-metadata-test/agents/developer.md +3 -0
  1734. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-metadata-test/agents/documenter.md +3 -0
  1735. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-metadata-test/agents/executor.md +3 -0
  1736. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-metadata-test/agents/master.md +3 -0
  1737. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-metadata-test/agents/monitor.md +3 -0
  1738. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-metadata-test/agents/orchestrator.md +3 -0
  1739. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-metadata-test/agents/planner.md +3 -0
  1740. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-metadata-test/agents/reporter.md +3 -0
  1741. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-metadata-test/agents/reviewer.md +3 -0
  1742. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-metadata-test/agents/scrum-master.md +3 -0
  1743. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-metadata-test/agents/tester.md +3 -0
  1744. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-metadata-test/hooks/session-start.js +1 -0
  1745. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-metadata-test/manifest.json +58 -0
  1746. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-metadata-test/resources/workflows.yaml +2 -0
  1747. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-metadata-test/skills/docx/docx.md +3 -0
  1748. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-metadata-test/skills/pdf/pdf.md +3 -0
  1749. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-pro/agents/analyst.md +3 -0
  1750. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-pro/agents/designer.md +3 -0
  1751. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-pro/agents/developer.md +3 -0
  1752. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-pro/agents/documenter.md +3 -0
  1753. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-pro/agents/executor.md +3 -0
  1754. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-pro/agents/master.md +3 -0
  1755. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-pro/agents/monitor.md +3 -0
  1756. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-pro/agents/orchestrator.md +3 -0
  1757. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-pro/agents/planner.md +3 -0
  1758. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-pro/agents/reporter.md +3 -0
  1759. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-pro/agents/reviewer.md +3 -0
  1760. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-pro/agents/scrum-master.md +3 -0
  1761. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-pro/agents/tester.md +3 -0
  1762. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-pro/hooks/session-start.js +1 -0
  1763. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-pro/manifest.json +58 -0
  1764. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-pro/resources/workflows.yaml +2 -0
  1765. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-pro/skills/docx/docx.md +3 -0
  1766. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-pro/skills/pdf/pdf.md +3 -0
  1767. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-resources-hooks-test/agents/analyst.md +3 -0
  1768. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-resources-hooks-test/agents/designer.md +3 -0
  1769. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-resources-hooks-test/agents/developer.md +3 -0
  1770. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-resources-hooks-test/agents/documenter.md +3 -0
  1771. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-resources-hooks-test/agents/executor.md +3 -0
  1772. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-resources-hooks-test/agents/master.md +3 -0
  1773. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-resources-hooks-test/agents/monitor.md +3 -0
  1774. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-resources-hooks-test/agents/orchestrator.md +3 -0
  1775. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-resources-hooks-test/agents/planner.md +3 -0
  1776. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-resources-hooks-test/agents/reporter.md +3 -0
  1777. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-resources-hooks-test/agents/reviewer.md +3 -0
  1778. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-resources-hooks-test/agents/scrum-master.md +3 -0
  1779. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-resources-hooks-test/agents/tester.md +3 -0
  1780. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-resources-hooks-test/hooks/session-start.js +1 -0
  1781. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-resources-hooks-test/manifest.json +58 -0
  1782. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-resources-hooks-test/resources/workflows.yaml +2 -0
  1783. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-resources-hooks-test/skills/docx/docx.md +3 -0
  1784. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-resources-hooks-test/skills/pdf/pdf.md +3 -0
  1785. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-skills-test/agents/analyst.md +3 -0
  1786. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-skills-test/agents/designer.md +3 -0
  1787. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-skills-test/agents/developer.md +3 -0
  1788. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-skills-test/agents/documenter.md +3 -0
  1789. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-skills-test/agents/executor.md +3 -0
  1790. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-skills-test/agents/master.md +3 -0
  1791. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-skills-test/agents/monitor.md +3 -0
  1792. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-skills-test/agents/orchestrator.md +3 -0
  1793. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-skills-test/agents/planner.md +3 -0
  1794. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-skills-test/agents/reporter.md +3 -0
  1795. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-skills-test/agents/reviewer.md +3 -0
  1796. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-skills-test/agents/scrum-master.md +3 -0
  1797. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-skills-test/agents/tester.md +3 -0
  1798. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-skills-test/hooks/session-start.js +1 -0
  1799. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-skills-test/manifest.json +58 -0
  1800. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-skills-test/resources/workflows.yaml +2 -0
  1801. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-skills-test/skills/docx/docx.md +3 -0
  1802. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-skills-test/skills/pdf/pdf.md +3 -0
  1803. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-test/agents/master.md +3 -0
  1804. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-test/agents/orchestrator.md +3 -0
  1805. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-test/agents/scrum-master.md +3 -0
  1806. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-test/hooks/session-start.js +1 -0
  1807. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-test/manifest.json +45 -0
  1808. package/tests/tmp/test-installation-engine-1762169302975/install-manifest-test/resources/workflows.yaml +2 -0
  1809. package/tests/tmp/test-installation-engine-1762169302975/install-no-callback-test/agents/master.md +3 -0
  1810. package/tests/tmp/test-installation-engine-1762169302975/install-no-callback-test/agents/orchestrator.md +3 -0
  1811. package/tests/tmp/test-installation-engine-1762169302975/install-no-callback-test/agents/scrum-master.md +3 -0
  1812. package/tests/tmp/test-installation-engine-1762169302975/install-no-callback-test/hooks/session-start.js +1 -0
  1813. package/tests/tmp/test-installation-engine-1762169302975/install-no-callback-test/manifest.json +45 -0
  1814. package/tests/tmp/test-installation-engine-1762169302975/install-no-callback-test/resources/workflows.yaml +2 -0
  1815. package/tests/tmp/test-installation-engine-1762169302975/install-pro/agents/analyst.md +3 -0
  1816. package/tests/tmp/test-installation-engine-1762169302975/install-pro/agents/designer.md +3 -0
  1817. package/tests/tmp/test-installation-engine-1762169302975/install-pro/agents/developer.md +3 -0
  1818. package/tests/tmp/test-installation-engine-1762169302975/install-pro/agents/documenter.md +3 -0
  1819. package/tests/tmp/test-installation-engine-1762169302975/install-pro/agents/executor.md +3 -0
  1820. package/tests/tmp/test-installation-engine-1762169302975/install-pro/agents/master.md +3 -0
  1821. package/tests/tmp/test-installation-engine-1762169302975/install-pro/agents/monitor.md +3 -0
  1822. package/tests/tmp/test-installation-engine-1762169302975/install-pro/agents/orchestrator.md +3 -0
  1823. package/tests/tmp/test-installation-engine-1762169302975/install-pro/agents/planner.md +3 -0
  1824. package/tests/tmp/test-installation-engine-1762169302975/install-pro/agents/reporter.md +3 -0
  1825. package/tests/tmp/test-installation-engine-1762169302975/install-pro/agents/reviewer.md +3 -0
  1826. package/tests/tmp/test-installation-engine-1762169302975/install-pro/agents/scrum-master.md +3 -0
  1827. package/tests/tmp/test-installation-engine-1762169302975/install-pro/agents/tester.md +3 -0
  1828. package/tests/tmp/test-installation-engine-1762169302975/install-pro/hooks/session-start.js +1 -0
  1829. package/tests/tmp/test-installation-engine-1762169302975/install-pro/manifest.json +58 -0
  1830. package/tests/tmp/test-installation-engine-1762169302975/install-pro/resources/workflows.yaml +2 -0
  1831. package/tests/tmp/test-installation-engine-1762169302975/install-pro/skills/docx/docx.md +3 -0
  1832. package/tests/tmp/test-installation-engine-1762169302975/install-pro/skills/pdf/pdf.md +3 -0
  1833. package/tests/tmp/test-installation-engine-1762169302975/install-progress-bytes-test/agents/analyst.md +3 -0
  1834. package/tests/tmp/test-installation-engine-1762169302975/install-progress-bytes-test/agents/designer.md +3 -0
  1835. package/tests/tmp/test-installation-engine-1762169302975/install-progress-bytes-test/agents/developer.md +3 -0
  1836. package/tests/tmp/test-installation-engine-1762169302975/install-progress-bytes-test/agents/documenter.md +3 -0
  1837. package/tests/tmp/test-installation-engine-1762169302975/install-progress-bytes-test/agents/executor.md +3 -0
  1838. package/tests/tmp/test-installation-engine-1762169302975/install-progress-bytes-test/agents/master.md +3 -0
  1839. package/tests/tmp/test-installation-engine-1762169302975/install-progress-bytes-test/agents/monitor.md +3 -0
  1840. package/tests/tmp/test-installation-engine-1762169302975/install-progress-bytes-test/agents/orchestrator.md +3 -0
  1841. package/tests/tmp/test-installation-engine-1762169302975/install-progress-bytes-test/agents/planner.md +3 -0
  1842. package/tests/tmp/test-installation-engine-1762169302975/install-progress-bytes-test/agents/reporter.md +3 -0
  1843. package/tests/tmp/test-installation-engine-1762169302975/install-progress-bytes-test/agents/reviewer.md +3 -0
  1844. package/tests/tmp/test-installation-engine-1762169302975/install-progress-bytes-test/agents/scrum-master.md +3 -0
  1845. package/tests/tmp/test-installation-engine-1762169302975/install-progress-bytes-test/agents/tester.md +3 -0
  1846. package/tests/tmp/test-installation-engine-1762169302975/install-progress-bytes-test/hooks/session-start.js +1 -0
  1847. package/tests/tmp/test-installation-engine-1762169302975/install-progress-bytes-test/manifest.json +58 -0
  1848. package/tests/tmp/test-installation-engine-1762169302975/install-progress-bytes-test/resources/workflows.yaml +2 -0
  1849. package/tests/tmp/test-installation-engine-1762169302975/install-progress-bytes-test/skills/docx/docx.md +3 -0
  1850. package/tests/tmp/test-installation-engine-1762169302975/install-progress-bytes-test/skills/pdf/pdf.md +3 -0
  1851. package/tests/tmp/test-installation-engine-1762169302975/install-progress-info-test/agents/master.md +3 -0
  1852. package/tests/tmp/test-installation-engine-1762169302975/install-progress-info-test/agents/orchestrator.md +3 -0
  1853. package/tests/tmp/test-installation-engine-1762169302975/install-progress-info-test/agents/scrum-master.md +3 -0
  1854. package/tests/tmp/test-installation-engine-1762169302975/install-progress-info-test/hooks/session-start.js +1 -0
  1855. package/tests/tmp/test-installation-engine-1762169302975/install-progress-info-test/manifest.json +45 -0
  1856. package/tests/tmp/test-installation-engine-1762169302975/install-progress-info-test/resources/workflows.yaml +2 -0
  1857. package/tests/tmp/test-installation-engine-1762169302975/install-progress-percentage-test/agents/master.md +3 -0
  1858. package/tests/tmp/test-installation-engine-1762169302975/install-progress-percentage-test/agents/orchestrator.md +3 -0
  1859. package/tests/tmp/test-installation-engine-1762169302975/install-progress-percentage-test/agents/scrum-master.md +3 -0
  1860. package/tests/tmp/test-installation-engine-1762169302975/install-progress-percentage-test/hooks/session-start.js +1 -0
  1861. package/tests/tmp/test-installation-engine-1762169302975/install-progress-percentage-test/manifest.json +45 -0
  1862. package/tests/tmp/test-installation-engine-1762169302975/install-progress-percentage-test/resources/workflows.yaml +2 -0
  1863. package/tests/tmp/test-installation-engine-1762169302975/install-progress-pro-test/agents/analyst.md +3 -0
  1864. package/tests/tmp/test-installation-engine-1762169302975/install-progress-pro-test/agents/designer.md +3 -0
  1865. package/tests/tmp/test-installation-engine-1762169302975/install-progress-pro-test/agents/developer.md +3 -0
  1866. package/tests/tmp/test-installation-engine-1762169302975/install-progress-pro-test/agents/documenter.md +3 -0
  1867. package/tests/tmp/test-installation-engine-1762169302975/install-progress-pro-test/agents/executor.md +3 -0
  1868. package/tests/tmp/test-installation-engine-1762169302975/install-progress-pro-test/agents/master.md +3 -0
  1869. package/tests/tmp/test-installation-engine-1762169302975/install-progress-pro-test/agents/monitor.md +3 -0
  1870. package/tests/tmp/test-installation-engine-1762169302975/install-progress-pro-test/agents/orchestrator.md +3 -0
  1871. package/tests/tmp/test-installation-engine-1762169302975/install-progress-pro-test/agents/planner.md +3 -0
  1872. package/tests/tmp/test-installation-engine-1762169302975/install-progress-pro-test/agents/reporter.md +3 -0
  1873. package/tests/tmp/test-installation-engine-1762169302975/install-progress-pro-test/agents/reviewer.md +3 -0
  1874. package/tests/tmp/test-installation-engine-1762169302975/install-progress-pro-test/agents/scrum-master.md +3 -0
  1875. package/tests/tmp/test-installation-engine-1762169302975/install-progress-pro-test/agents/tester.md +3 -0
  1876. package/tests/tmp/test-installation-engine-1762169302975/install-progress-pro-test/hooks/session-start.js +1 -0
  1877. package/tests/tmp/test-installation-engine-1762169302975/install-progress-pro-test/manifest.json +58 -0
  1878. package/tests/tmp/test-installation-engine-1762169302975/install-progress-pro-test/resources/workflows.yaml +2 -0
  1879. package/tests/tmp/test-installation-engine-1762169302975/install-progress-pro-test/skills/docx/docx.md +3 -0
  1880. package/tests/tmp/test-installation-engine-1762169302975/install-progress-pro-test/skills/pdf/pdf.md +3 -0
  1881. package/tests/tmp/test-installation-engine-1762169302975/install-progress-sequential-test/agents/master.md +3 -0
  1882. package/tests/tmp/test-installation-engine-1762169302975/install-progress-sequential-test/agents/orchestrator.md +3 -0
  1883. package/tests/tmp/test-installation-engine-1762169302975/install-progress-sequential-test/agents/scrum-master.md +3 -0
  1884. package/tests/tmp/test-installation-engine-1762169302975/install-progress-sequential-test/hooks/session-start.js +1 -0
  1885. package/tests/tmp/test-installation-engine-1762169302975/install-progress-sequential-test/manifest.json +45 -0
  1886. package/tests/tmp/test-installation-engine-1762169302975/install-progress-sequential-test/resources/workflows.yaml +2 -0
  1887. package/tests/tmp/test-installation-engine-1762169302975/install-progress-skills-test/agents/analyst.md +3 -0
  1888. package/tests/tmp/test-installation-engine-1762169302975/install-progress-skills-test/agents/designer.md +3 -0
  1889. package/tests/tmp/test-installation-engine-1762169302975/install-progress-skills-test/agents/developer.md +3 -0
  1890. package/tests/tmp/test-installation-engine-1762169302975/install-progress-skills-test/agents/documenter.md +3 -0
  1891. package/tests/tmp/test-installation-engine-1762169302975/install-progress-skills-test/agents/executor.md +3 -0
  1892. package/tests/tmp/test-installation-engine-1762169302975/install-progress-skills-test/agents/master.md +3 -0
  1893. package/tests/tmp/test-installation-engine-1762169302975/install-progress-skills-test/agents/monitor.md +3 -0
  1894. package/tests/tmp/test-installation-engine-1762169302975/install-progress-skills-test/agents/orchestrator.md +3 -0
  1895. package/tests/tmp/test-installation-engine-1762169302975/install-progress-skills-test/agents/planner.md +3 -0
  1896. package/tests/tmp/test-installation-engine-1762169302975/install-progress-skills-test/agents/reporter.md +3 -0
  1897. package/tests/tmp/test-installation-engine-1762169302975/install-progress-skills-test/agents/reviewer.md +3 -0
  1898. package/tests/tmp/test-installation-engine-1762169302975/install-progress-skills-test/agents/scrum-master.md +3 -0
  1899. package/tests/tmp/test-installation-engine-1762169302975/install-progress-skills-test/agents/tester.md +3 -0
  1900. package/tests/tmp/test-installation-engine-1762169302975/install-progress-skills-test/hooks/session-start.js +1 -0
  1901. package/tests/tmp/test-installation-engine-1762169302975/install-progress-skills-test/manifest.json +58 -0
  1902. package/tests/tmp/test-installation-engine-1762169302975/install-progress-skills-test/resources/workflows.yaml +2 -0
  1903. package/tests/tmp/test-installation-engine-1762169302975/install-progress-skills-test/skills/docx/docx.md +3 -0
  1904. package/tests/tmp/test-installation-engine-1762169302975/install-progress-skills-test/skills/pdf/pdf.md +3 -0
  1905. package/tests/tmp/test-installation-engine-1762169302975/install-progress-test/agents/analyst.md +3 -0
  1906. package/tests/tmp/test-installation-engine-1762169302975/install-progress-test/agents/designer.md +3 -0
  1907. package/tests/tmp/test-installation-engine-1762169302975/install-progress-test/agents/developer.md +3 -0
  1908. package/tests/tmp/test-installation-engine-1762169302975/install-progress-test/agents/documenter.md +3 -0
  1909. package/tests/tmp/test-installation-engine-1762169302975/install-progress-test/agents/executor.md +3 -0
  1910. package/tests/tmp/test-installation-engine-1762169302975/install-progress-test/agents/master.md +3 -0
  1911. package/tests/tmp/test-installation-engine-1762169302975/install-progress-test/agents/monitor.md +3 -0
  1912. package/tests/tmp/test-installation-engine-1762169302975/install-progress-test/agents/orchestrator.md +3 -0
  1913. package/tests/tmp/test-installation-engine-1762169302975/install-progress-test/agents/planner.md +3 -0
  1914. package/tests/tmp/test-installation-engine-1762169302975/install-progress-test/agents/reporter.md +3 -0
  1915. package/tests/tmp/test-installation-engine-1762169302975/install-progress-test/agents/reviewer.md +3 -0
  1916. package/tests/tmp/test-installation-engine-1762169302975/install-progress-test/agents/scrum-master.md +3 -0
  1917. package/tests/tmp/test-installation-engine-1762169302975/install-progress-test/agents/tester.md +3 -0
  1918. package/tests/tmp/test-installation-engine-1762169302975/install-progress-test/hooks/session-start.js +1 -0
  1919. package/tests/tmp/test-installation-engine-1762169302975/install-progress-test/manifest.json +58 -0
  1920. package/tests/tmp/test-installation-engine-1762169302975/install-progress-test/resources/workflows.yaml +2 -0
  1921. package/tests/tmp/test-installation-engine-1762169302975/install-progress-test/skills/docx/docx.md +3 -0
  1922. package/tests/tmp/test-installation-engine-1762169302975/install-progress-test/skills/pdf/pdf.md +3 -0
  1923. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-granular-test/my-custom-file.txt +1 -0
  1924. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-preserve-test/agents/analyst.md +3 -0
  1925. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-preserve-test/agents/designer.md +3 -0
  1926. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-preserve-test/agents/developer.md +3 -0
  1927. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-preserve-test/agents/documenter.md +3 -0
  1928. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-preserve-test/agents/executor.md +3 -0
  1929. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-preserve-test/agents/master.md +3 -0
  1930. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-preserve-test/agents/monitor.md +3 -0
  1931. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-preserve-test/agents/my-custom-agent.md +1 -0
  1932. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-preserve-test/agents/orchestrator.md +3 -0
  1933. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-preserve-test/agents/planner.md +3 -0
  1934. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-preserve-test/agents/reporter.md +3 -0
  1935. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-preserve-test/agents/reviewer.md +3 -0
  1936. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-preserve-test/agents/scrum-master.md +3 -0
  1937. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-preserve-test/agents/tester.md +3 -0
  1938. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-preserve-test/hooks/session-start.js +1 -0
  1939. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-preserve-test/resources/workflows.yaml +2 -0
  1940. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-preserve-test/skills/custom-skill/skill.md +1 -0
  1941. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-preserve-test/skills/docx/docx.md +3 -0
  1942. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-preserve-test/skills/pdf/pdf.md +3 -0
  1943. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-tracking-test/agents/master.md +3 -0
  1944. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-tracking-test/agents/orchestrator.md +3 -0
  1945. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-tracking-test/agents/scrum-master.md +3 -0
  1946. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-tracking-test/hooks/session-start.js +1 -0
  1947. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-tracking-test/manifest.json +45 -0
  1948. package/tests/tmp/test-installation-engine-1762169302975/install-rollback-tracking-test/resources/workflows.yaml +2 -0
  1949. package/tests/tmp/test-installation-engine-1762169302975/install-skills-test/agents/analyst.md +3 -0
  1950. package/tests/tmp/test-installation-engine-1762169302975/install-skills-test/agents/designer.md +3 -0
  1951. package/tests/tmp/test-installation-engine-1762169302975/install-skills-test/agents/developer.md +3 -0
  1952. package/tests/tmp/test-installation-engine-1762169302975/install-skills-test/agents/documenter.md +3 -0
  1953. package/tests/tmp/test-installation-engine-1762169302975/install-skills-test/agents/executor.md +3 -0
  1954. package/tests/tmp/test-installation-engine-1762169302975/install-skills-test/agents/master.md +3 -0
  1955. package/tests/tmp/test-installation-engine-1762169302975/install-skills-test/agents/monitor.md +3 -0
  1956. package/tests/tmp/test-installation-engine-1762169302975/install-skills-test/agents/orchestrator.md +3 -0
  1957. package/tests/tmp/test-installation-engine-1762169302975/install-skills-test/agents/planner.md +3 -0
  1958. package/tests/tmp/test-installation-engine-1762169302975/install-skills-test/agents/reporter.md +3 -0
  1959. package/tests/tmp/test-installation-engine-1762169302975/install-skills-test/agents/reviewer.md +3 -0
  1960. package/tests/tmp/test-installation-engine-1762169302975/install-skills-test/agents/scrum-master.md +3 -0
  1961. package/tests/tmp/test-installation-engine-1762169302975/install-skills-test/agents/tester.md +3 -0
  1962. package/tests/tmp/test-installation-engine-1762169302975/install-skills-test/hooks/session-start.js +1 -0
  1963. package/tests/tmp/test-installation-engine-1762169302975/install-skills-test/manifest.json +58 -0
  1964. package/tests/tmp/test-installation-engine-1762169302975/install-skills-test/resources/workflows.yaml +2 -0
  1965. package/tests/tmp/test-installation-engine-1762169302975/install-skills-test/skills/docx/docx.md +3 -0
  1966. package/tests/tmp/test-installation-engine-1762169302975/install-skills-test/skills/pdf/pdf.md +3 -0
  1967. package/tests/tmp/test-installation-engine-1762169302975/install-standard/agents/analyst.md +3 -0
  1968. package/tests/tmp/test-installation-engine-1762169302975/install-standard/agents/designer.md +3 -0
  1969. package/tests/tmp/test-installation-engine-1762169302975/install-standard/agents/developer.md +3 -0
  1970. package/tests/tmp/test-installation-engine-1762169302975/install-standard/agents/documenter.md +3 -0
  1971. package/tests/tmp/test-installation-engine-1762169302975/install-standard/agents/executor.md +3 -0
  1972. package/tests/tmp/test-installation-engine-1762169302975/install-standard/agents/master.md +3 -0
  1973. package/tests/tmp/test-installation-engine-1762169302975/install-standard/agents/monitor.md +3 -0
  1974. package/tests/tmp/test-installation-engine-1762169302975/install-standard/agents/orchestrator.md +3 -0
  1975. package/tests/tmp/test-installation-engine-1762169302975/install-standard/agents/planner.md +3 -0
  1976. package/tests/tmp/test-installation-engine-1762169302975/install-standard/agents/reporter.md +3 -0
  1977. package/tests/tmp/test-installation-engine-1762169302975/install-standard/agents/reviewer.md +3 -0
  1978. package/tests/tmp/test-installation-engine-1762169302975/install-standard/agents/scrum-master.md +3 -0
  1979. package/tests/tmp/test-installation-engine-1762169302975/install-standard/agents/tester.md +3 -0
  1980. package/tests/tmp/test-installation-engine-1762169302975/install-standard/hooks/session-start.js +1 -0
  1981. package/tests/tmp/test-installation-engine-1762169302975/install-standard/manifest.json +58 -0
  1982. package/tests/tmp/test-installation-engine-1762169302975/install-standard/resources/workflows.yaml +2 -0
  1983. package/tests/tmp/test-installation-engine-1762169302975/install-standard/skills/docx/docx.md +3 -0
  1984. package/tests/tmp/test-installation-engine-1762169302975/install-standard/skills/pdf/pdf.md +3 -0
  1985. package/tests/tmp/test-installation-engine-1762169302975/packages/testool/agents/analyst.md +3 -0
  1986. package/tests/tmp/test-installation-engine-1762169302975/packages/testool/agents/designer.md +3 -0
  1987. package/tests/tmp/test-installation-engine-1762169302975/packages/testool/agents/developer.md +3 -0
  1988. package/tests/tmp/test-installation-engine-1762169302975/packages/testool/agents/documenter.md +3 -0
  1989. package/tests/tmp/test-installation-engine-1762169302975/packages/testool/agents/executor.md +3 -0
  1990. package/tests/tmp/test-installation-engine-1762169302975/packages/testool/agents/master.md +3 -0
  1991. package/tests/tmp/test-installation-engine-1762169302975/packages/testool/agents/monitor.md +3 -0
  1992. package/tests/tmp/test-installation-engine-1762169302975/packages/testool/agents/orchestrator.md +3 -0
  1993. package/tests/tmp/test-installation-engine-1762169302975/packages/testool/agents/planner.md +3 -0
  1994. package/tests/tmp/test-installation-engine-1762169302975/packages/testool/agents/reporter.md +3 -0
  1995. package/tests/tmp/test-installation-engine-1762169302975/packages/testool/agents/reviewer.md +3 -0
  1996. package/tests/tmp/test-installation-engine-1762169302975/packages/testool/agents/scrum-master.md +3 -0
  1997. package/tests/tmp/test-installation-engine-1762169302975/packages/testool/agents/tester.md +3 -0
  1998. package/tests/tmp/test-installation-engine-1762169302975/packages/testool/hooks/session-start.js +1 -0
  1999. package/tests/tmp/test-installation-engine-1762169302975/packages/testool/resources/workflows.yaml +2 -0
  2000. package/tests/tmp/test-installation-engine-1762169302975/packages/testool/skills/docx/docx.md +3 -0
  2001. package/tests/tmp/test-installation-engine-1762169302975/packages/testool/skills/pdf/pdf.md +3 -0
  2002. package/tests/tmp/test-installation-engine-1762169302975/packages/testool/variants.json +47 -0
  2003. package/tests/tmp/test-installation-engine-1762169302975/tools/testool/manifest-template.json +6 -0
  2004. package/tests/tmp/tests/tmp/test-installation-engine-1762152629295/packages/testool/agents/analyst.md +3 -0
  2005. package/tests/tmp/tests/tmp/test-installation-engine-1762152629295/packages/testool/agents/designer.md +3 -0
  2006. package/tests/tmp/tests/tmp/test-installation-engine-1762152629295/packages/testool/agents/developer.md +3 -0
  2007. package/tests/tmp/tests/tmp/test-installation-engine-1762152629295/packages/testool/agents/documenter.md +3 -0
  2008. package/tests/tmp/tests/tmp/test-installation-engine-1762152629295/packages/testool/agents/executor.md +3 -0
  2009. package/tests/tmp/tests/tmp/test-installation-engine-1762152629295/packages/testool/agents/master.md +3 -0
  2010. package/tests/tmp/tests/tmp/test-installation-engine-1762152629295/packages/testool/agents/monitor.md +3 -0
  2011. package/tests/tmp/tests/tmp/test-installation-engine-1762152629295/packages/testool/agents/orchestrator.md +3 -0
  2012. package/tests/tmp/tests/tmp/test-installation-engine-1762152629295/packages/testool/agents/planner.md +3 -0
  2013. package/tests/tmp/tests/tmp/test-installation-engine-1762152629295/packages/testool/agents/reporter.md +3 -0
  2014. package/tests/tmp/tests/tmp/test-installation-engine-1762152629295/packages/testool/agents/reviewer.md +3 -0
  2015. package/tests/tmp/tests/tmp/test-installation-engine-1762152629295/packages/testool/agents/scrum-master.md +3 -0
  2016. package/tests/tmp/tests/tmp/test-installation-engine-1762152629295/packages/testool/agents/tester.md +3 -0
  2017. package/tests/tmp/tests/tmp/test-installation-engine-1762152629295/packages/testool/hooks/session-start.js +1 -0
  2018. package/tests/tmp/tests/tmp/test-installation-engine-1762152629295/packages/testool/resources/workflows.yaml +2 -0
  2019. package/tests/tmp/tests/tmp/test-installation-engine-1762152629295/packages/testool/skills/docx/docx.md +3 -0
  2020. package/tests/tmp/tests/tmp/test-installation-engine-1762152629295/packages/testool/skills/pdf/pdf.md +3 -0
  2021. package/tests/validation-test.js +271 -0
  2022. package/validate-package.js +312 -0
  2023. package/.claude-plugin/plugin-lite.json +0 -38
  2024. package/.claude-plugin/plugin-pro.json +0 -183
  2025. package/.claude-plugin/plugin-standard.json +0 -147
  2026. package/.claude-plugin/plugin.json +0 -47
  2027. package/resources/agent-teams.yaml +0 -50
  2028. package/resources/templates.yaml +0 -5634
  2029. package/resources/workflows.yaml +0 -1253
  2030. /package/{agents → packages/ampcode/agents}/1-create-prd.md +0 -0
  2031. /package/{agents → packages/ampcode/agents}/2-generate-tasks.md +0 -0
  2032. /package/{agents → packages/ampcode/agents}/3-process-task-list.md +0 -0
  2033. /package/{agents → packages/ampcode/agents}/business-analyst.md +0 -0
  2034. /package/{agents → packages/ampcode/agents}/full-stack-dev.md +0 -0
  2035. /package/{agents → packages/ampcode/agents}/holistic-architect.md +0 -0
  2036. /package/{agents → packages/ampcode/agents}/master.md +0 -0
  2037. /package/{agents → packages/ampcode/agents}/product-manager.md +0 -0
  2038. /package/{agents → packages/ampcode/agents}/product-owner.md +0 -0
  2039. /package/{agents → packages/ampcode/agents}/qa-test-architect.md +0 -0
  2040. /package/{agents → packages/ampcode/agents}/scrum-master.md +0 -0
  2041. /package/{agents → packages/ampcode/agents}/ux-expert.md +0 -0
  2042. /package/{resources → packages/ampcode/resources}/checklists.md +0 -0
  2043. /package/{resources → packages/ampcode/resources}/task-briefs.md +0 -0
  2044. /package/{skills → packages/ampcode/skills}/algorithmic-art/LICENSE.txt +0 -0
  2045. /package/{skills → packages/ampcode/skills}/algorithmic-art/SKILL.md +0 -0
  2046. /package/{skills → packages/ampcode/skills}/algorithmic-art/templates/generator_template.js +0 -0
  2047. /package/{skills → packages/ampcode/skills}/algorithmic-art/templates/viewer.html +0 -0
  2048. /package/{skills → packages/ampcode/skills}/artifacts-builder/LICENSE.txt +0 -0
  2049. /package/{skills → packages/ampcode/skills}/artifacts-builder/SKILL.md +0 -0
  2050. /package/{skills → packages/ampcode/skills}/artifacts-builder/scripts/bundle-artifact.sh +0 -0
  2051. /package/{skills → packages/ampcode/skills}/artifacts-builder/scripts/init-artifact.sh +0 -0
  2052. /package/{skills → packages/ampcode/skills}/artifacts-builder/scripts/shadcn-components.tar.gz +0 -0
  2053. /package/{skills → packages/ampcode/skills}/brainstorming/SKILL.md +0 -0
  2054. /package/{skills → packages/ampcode/skills}/brand-guidelines/LICENSE.txt +0 -0
  2055. /package/{skills → packages/ampcode/skills}/brand-guidelines/SKILL.md +0 -0
  2056. /package/{skills → packages/ampcode/skills}/canvas-design/LICENSE.txt +0 -0
  2057. /package/{skills → packages/ampcode/skills}/canvas-design/SKILL.md +0 -0
  2058. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/ArsenalSC-OFL.txt +0 -0
  2059. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
  2060. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/BigShoulders-Bold.ttf +0 -0
  2061. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/BigShoulders-OFL.txt +0 -0
  2062. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/BigShoulders-Regular.ttf +0 -0
  2063. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/Boldonse-OFL.txt +0 -0
  2064. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/Boldonse-Regular.ttf +0 -0
  2065. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
  2066. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/BricolageGrotesque-OFL.txt +0 -0
  2067. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
  2068. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
  2069. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
  2070. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/CrimsonPro-OFL.txt +0 -0
  2071. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
  2072. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/DMMono-OFL.txt +0 -0
  2073. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/DMMono-Regular.ttf +0 -0
  2074. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/EricaOne-OFL.txt +0 -0
  2075. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/EricaOne-Regular.ttf +0 -0
  2076. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/GeistMono-Bold.ttf +0 -0
  2077. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/GeistMono-OFL.txt +0 -0
  2078. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/GeistMono-Regular.ttf +0 -0
  2079. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/Gloock-OFL.txt +0 -0
  2080. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/Gloock-Regular.ttf +0 -0
  2081. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
  2082. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/IBMPlexMono-OFL.txt +0 -0
  2083. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
  2084. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
  2085. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
  2086. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
  2087. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
  2088. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
  2089. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
  2090. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
  2091. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/InstrumentSans-OFL.txt +0 -0
  2092. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
  2093. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
  2094. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
  2095. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/Italiana-OFL.txt +0 -0
  2096. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/Italiana-Regular.ttf +0 -0
  2097. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
  2098. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/JetBrainsMono-OFL.txt +0 -0
  2099. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
  2100. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/Jura-Light.ttf +0 -0
  2101. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/Jura-Medium.ttf +0 -0
  2102. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/Jura-OFL.txt +0 -0
  2103. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/LibreBaskerville-OFL.txt +0 -0
  2104. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
  2105. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/Lora-Bold.ttf +0 -0
  2106. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/Lora-BoldItalic.ttf +0 -0
  2107. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/Lora-Italic.ttf +0 -0
  2108. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/Lora-OFL.txt +0 -0
  2109. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/Lora-Regular.ttf +0 -0
  2110. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/NationalPark-Bold.ttf +0 -0
  2111. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/NationalPark-OFL.txt +0 -0
  2112. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/NationalPark-Regular.ttf +0 -0
  2113. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/NothingYouCouldDo-OFL.txt +0 -0
  2114. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
  2115. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/Outfit-Bold.ttf +0 -0
  2116. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/Outfit-OFL.txt +0 -0
  2117. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/Outfit-Regular.ttf +0 -0
  2118. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/PixelifySans-Medium.ttf +0 -0
  2119. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/PixelifySans-OFL.txt +0 -0
  2120. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/PoiretOne-OFL.txt +0 -0
  2121. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/PoiretOne-Regular.ttf +0 -0
  2122. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/RedHatMono-Bold.ttf +0 -0
  2123. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/RedHatMono-OFL.txt +0 -0
  2124. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/RedHatMono-Regular.ttf +0 -0
  2125. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/Silkscreen-OFL.txt +0 -0
  2126. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/Silkscreen-Regular.ttf +0 -0
  2127. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/SmoochSans-Medium.ttf +0 -0
  2128. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/SmoochSans-OFL.txt +0 -0
  2129. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/Tektur-Medium.ttf +0 -0
  2130. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/Tektur-OFL.txt +0 -0
  2131. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/Tektur-Regular.ttf +0 -0
  2132. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/WorkSans-Bold.ttf +0 -0
  2133. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
  2134. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/WorkSans-Italic.ttf +0 -0
  2135. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/WorkSans-OFL.txt +0 -0
  2136. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/WorkSans-Regular.ttf +0 -0
  2137. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/YoungSerif-OFL.txt +0 -0
  2138. /package/{skills → packages/ampcode/skills}/canvas-design/canvas-fonts/YoungSerif-Regular.ttf +0 -0
  2139. /package/{skills → packages/ampcode/skills}/code-review/SKILL.md +0 -0
  2140. /package/{skills → packages/ampcode/skills}/code-review/code-reviewer.md +0 -0
  2141. /package/{skills → packages/ampcode/skills}/condition-based-waiting/SKILL.md +0 -0
  2142. /package/{skills → packages/ampcode/skills}/condition-based-waiting/example.ts +0 -0
  2143. /package/{skills → packages/ampcode/skills}/docx/LICENSE.txt +0 -0
  2144. /package/{skills → packages/ampcode/skills}/docx/SKILL.md +0 -0
  2145. /package/{skills → packages/ampcode/skills}/docx/docx-js.md +0 -0
  2146. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +0 -0
  2147. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +0 -0
  2148. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +0 -0
  2149. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +0 -0
  2150. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +0 -0
  2151. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +0 -0
  2152. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +0 -0
  2153. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +0 -0
  2154. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +0 -0
  2155. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +0 -0
  2156. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +0 -0
  2157. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +0 -0
  2158. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +0 -0
  2159. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +0 -0
  2160. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +0 -0
  2161. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +0 -0
  2162. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +0 -0
  2163. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +0 -0
  2164. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +0 -0
  2165. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +0 -0
  2166. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +0 -0
  2167. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +0 -0
  2168. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +0 -0
  2169. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +0 -0
  2170. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +0 -0
  2171. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +0 -0
  2172. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +0 -0
  2173. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +0 -0
  2174. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +0 -0
  2175. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +0 -0
  2176. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +0 -0
  2177. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/mce/mc.xsd +0 -0
  2178. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/microsoft/wml-2010.xsd +0 -0
  2179. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/microsoft/wml-2012.xsd +0 -0
  2180. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/microsoft/wml-2018.xsd +0 -0
  2181. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/microsoft/wml-cex-2018.xsd +0 -0
  2182. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/microsoft/wml-cid-2016.xsd +0 -0
  2183. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +0 -0
  2184. /package/{skills → packages/ampcode/skills}/docx/ooxml/schemas/microsoft/wml-symex-2015.xsd +0 -0
  2185. /package/{skills → packages/ampcode/skills}/docx/ooxml/scripts/pack.py +0 -0
  2186. /package/{skills → packages/ampcode/skills}/docx/ooxml/scripts/unpack.py +0 -0
  2187. /package/{skills → packages/ampcode/skills}/docx/ooxml/scripts/validate.py +0 -0
  2188. /package/{skills → packages/ampcode/skills}/docx/ooxml/scripts/validation/__init__.py +0 -0
  2189. /package/{skills → packages/ampcode/skills}/docx/ooxml/scripts/validation/base.py +0 -0
  2190. /package/{skills → packages/ampcode/skills}/docx/ooxml/scripts/validation/docx.py +0 -0
  2191. /package/{skills → packages/ampcode/skills}/docx/ooxml/scripts/validation/pptx.py +0 -0
  2192. /package/{skills → packages/ampcode/skills}/docx/ooxml/scripts/validation/redlining.py +0 -0
  2193. /package/{skills → packages/ampcode/skills}/docx/ooxml.md +0 -0
  2194. /package/{skills → packages/ampcode/skills}/docx/scripts/__init__.py +0 -0
  2195. /package/{skills → packages/ampcode/skills}/docx/scripts/document.py +0 -0
  2196. /package/{skills → packages/ampcode/skills}/docx/scripts/templates/comments.xml +0 -0
  2197. /package/{skills → packages/ampcode/skills}/docx/scripts/templates/commentsExtended.xml +0 -0
  2198. /package/{skills → packages/ampcode/skills}/docx/scripts/templates/commentsExtensible.xml +0 -0
  2199. /package/{skills → packages/ampcode/skills}/docx/scripts/templates/commentsIds.xml +0 -0
  2200. /package/{skills → packages/ampcode/skills}/docx/scripts/templates/people.xml +0 -0
  2201. /package/{skills → packages/ampcode/skills}/docx/scripts/utilities.py +0 -0
  2202. /package/{skills → packages/ampcode/skills}/internal-comms/LICENSE.txt +0 -0
  2203. /package/{skills → packages/ampcode/skills}/internal-comms/SKILL.md +0 -0
  2204. /package/{skills → packages/ampcode/skills}/internal-comms/examples/3p-updates.md +0 -0
  2205. /package/{skills → packages/ampcode/skills}/internal-comms/examples/company-newsletter.md +0 -0
  2206. /package/{skills → packages/ampcode/skills}/internal-comms/examples/faq-answers.md +0 -0
  2207. /package/{skills → packages/ampcode/skills}/internal-comms/examples/general-comms.md +0 -0
  2208. /package/{skills → packages/ampcode/skills}/mcp-builder/LICENSE.txt +0 -0
  2209. /package/{skills → packages/ampcode/skills}/mcp-builder/SKILL.md +0 -0
  2210. /package/{skills → packages/ampcode/skills}/mcp-builder/reference/evaluation.md +0 -0
  2211. /package/{skills → packages/ampcode/skills}/mcp-builder/reference/mcp_best_practices.md +0 -0
  2212. /package/{skills → packages/ampcode/skills}/mcp-builder/reference/node_mcp_server.md +0 -0
  2213. /package/{skills → packages/ampcode/skills}/mcp-builder/reference/python_mcp_server.md +0 -0
  2214. /package/{skills → packages/ampcode/skills}/mcp-builder/scripts/connections.py +0 -0
  2215. /package/{skills → packages/ampcode/skills}/mcp-builder/scripts/evaluation.py +0 -0
  2216. /package/{skills → packages/ampcode/skills}/mcp-builder/scripts/example_evaluation.xml +0 -0
  2217. /package/{skills → packages/ampcode/skills}/mcp-builder/scripts/requirements.txt +0 -0
  2218. /package/{skills → packages/ampcode/skills}/pdf/LICENSE.txt +0 -0
  2219. /package/{skills → packages/ampcode/skills}/pdf/SKILL.md +0 -0
  2220. /package/{skills → packages/ampcode/skills}/pdf/forms.md +0 -0
  2221. /package/{skills → packages/ampcode/skills}/pdf/reference.md +0 -0
  2222. /package/{skills → packages/ampcode/skills}/pdf/scripts/check_bounding_boxes.py +0 -0
  2223. /package/{skills → packages/ampcode/skills}/pdf/scripts/check_bounding_boxes_test.py +0 -0
  2224. /package/{skills → packages/ampcode/skills}/pdf/scripts/check_fillable_fields.py +0 -0
  2225. /package/{skills → packages/ampcode/skills}/pdf/scripts/convert_pdf_to_images.py +0 -0
  2226. /package/{skills → packages/ampcode/skills}/pdf/scripts/create_validation_image.py +0 -0
  2227. /package/{skills → packages/ampcode/skills}/pdf/scripts/extract_form_field_info.py +0 -0
  2228. /package/{skills → packages/ampcode/skills}/pdf/scripts/fill_fillable_fields.py +0 -0
  2229. /package/{skills → packages/ampcode/skills}/pdf/scripts/fill_pdf_form_with_annotations.py +0 -0
  2230. /package/{skills → packages/ampcode/skills}/pptx/LICENSE.txt +0 -0
  2231. /package/{skills → packages/ampcode/skills}/pptx/SKILL.md +0 -0
  2232. /package/{skills → packages/ampcode/skills}/pptx/html2pptx.md +0 -0
  2233. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +0 -0
  2234. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +0 -0
  2235. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +0 -0
  2236. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +0 -0
  2237. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +0 -0
  2238. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +0 -0
  2239. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +0 -0
  2240. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +0 -0
  2241. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +0 -0
  2242. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +0 -0
  2243. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +0 -0
  2244. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +0 -0
  2245. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +0 -0
  2246. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +0 -0
  2247. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +0 -0
  2248. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +0 -0
  2249. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +0 -0
  2250. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +0 -0
  2251. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +0 -0
  2252. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +0 -0
  2253. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +0 -0
  2254. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +0 -0
  2255. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +0 -0
  2256. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +0 -0
  2257. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +0 -0
  2258. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +0 -0
  2259. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +0 -0
  2260. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +0 -0
  2261. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +0 -0
  2262. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +0 -0
  2263. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +0 -0
  2264. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/mce/mc.xsd +0 -0
  2265. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/microsoft/wml-2010.xsd +0 -0
  2266. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/microsoft/wml-2012.xsd +0 -0
  2267. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/microsoft/wml-2018.xsd +0 -0
  2268. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/microsoft/wml-cex-2018.xsd +0 -0
  2269. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/microsoft/wml-cid-2016.xsd +0 -0
  2270. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +0 -0
  2271. /package/{skills → packages/ampcode/skills}/pptx/ooxml/schemas/microsoft/wml-symex-2015.xsd +0 -0
  2272. /package/{skills → packages/ampcode/skills}/pptx/ooxml/scripts/pack.py +0 -0
  2273. /package/{skills → packages/ampcode/skills}/pptx/ooxml/scripts/unpack.py +0 -0
  2274. /package/{skills → packages/ampcode/skills}/pptx/ooxml/scripts/validate.py +0 -0
  2275. /package/{skills → packages/ampcode/skills}/pptx/ooxml/scripts/validation/__init__.py +0 -0
  2276. /package/{skills → packages/ampcode/skills}/pptx/ooxml/scripts/validation/base.py +0 -0
  2277. /package/{skills → packages/ampcode/skills}/pptx/ooxml/scripts/validation/docx.py +0 -0
  2278. /package/{skills → packages/ampcode/skills}/pptx/ooxml/scripts/validation/pptx.py +0 -0
  2279. /package/{skills → packages/ampcode/skills}/pptx/ooxml/scripts/validation/redlining.py +0 -0
  2280. /package/{skills → packages/ampcode/skills}/pptx/ooxml.md +0 -0
  2281. /package/{skills → packages/ampcode/skills}/pptx/scripts/html2pptx.js +0 -0
  2282. /package/{skills → packages/ampcode/skills}/pptx/scripts/inventory.py +0 -0
  2283. /package/{skills → packages/ampcode/skills}/pptx/scripts/rearrange.py +0 -0
  2284. /package/{skills → packages/ampcode/skills}/pptx/scripts/replace.py +0 -0
  2285. /package/{skills → packages/ampcode/skills}/pptx/scripts/thumbnail.py +0 -0
  2286. /package/{skills → packages/ampcode/skills}/root-cause-tracing/SKILL.md +0 -0
  2287. /package/{skills → packages/ampcode/skills}/root-cause-tracing/find-polluter.sh +0 -0
  2288. /package/{skills → packages/ampcode/skills}/skill-creator/LICENSE.txt +0 -0
  2289. /package/{skills → packages/ampcode/skills}/skill-creator/SKILL.md +0 -0
  2290. /package/{skills → packages/ampcode/skills}/skill-creator/scripts/init_skill.py +0 -0
  2291. /package/{skills → packages/ampcode/skills}/skill-creator/scripts/package_skill.py +0 -0
  2292. /package/{skills → packages/ampcode/skills}/skill-creator/scripts/quick_validate.py +0 -0
  2293. /package/{skills → packages/ampcode/skills}/slack-gif-creator/LICENSE.txt +0 -0
  2294. /package/{skills → packages/ampcode/skills}/slack-gif-creator/SKILL.md +0 -0
  2295. /package/{skills → packages/ampcode/skills}/slack-gif-creator/core/color_palettes.py +0 -0
  2296. /package/{skills → packages/ampcode/skills}/slack-gif-creator/core/easing.py +0 -0
  2297. /package/{skills → packages/ampcode/skills}/slack-gif-creator/core/frame_composer.py +0 -0
  2298. /package/{skills → packages/ampcode/skills}/slack-gif-creator/core/gif_builder.py +0 -0
  2299. /package/{skills → packages/ampcode/skills}/slack-gif-creator/core/typography.py +0 -0
  2300. /package/{skills → packages/ampcode/skills}/slack-gif-creator/core/validators.py +0 -0
  2301. /package/{skills → packages/ampcode/skills}/slack-gif-creator/core/visual_effects.py +0 -0
  2302. /package/{skills → packages/ampcode/skills}/slack-gif-creator/requirements.txt +0 -0
  2303. /package/{skills → packages/ampcode/skills}/slack-gif-creator/templates/bounce.py +0 -0
  2304. /package/{skills → packages/ampcode/skills}/slack-gif-creator/templates/explode.py +0 -0
  2305. /package/{skills → packages/ampcode/skills}/slack-gif-creator/templates/fade.py +0 -0
  2306. /package/{skills → packages/ampcode/skills}/slack-gif-creator/templates/flip.py +0 -0
  2307. /package/{skills → packages/ampcode/skills}/slack-gif-creator/templates/kaleidoscope.py +0 -0
  2308. /package/{skills → packages/ampcode/skills}/slack-gif-creator/templates/morph.py +0 -0
  2309. /package/{skills → packages/ampcode/skills}/slack-gif-creator/templates/move.py +0 -0
  2310. /package/{skills → packages/ampcode/skills}/slack-gif-creator/templates/pulse.py +0 -0
  2311. /package/{skills → packages/ampcode/skills}/slack-gif-creator/templates/shake.py +0 -0
  2312. /package/{skills → packages/ampcode/skills}/slack-gif-creator/templates/slide.py +0 -0
  2313. /package/{skills → packages/ampcode/skills}/slack-gif-creator/templates/spin.py +0 -0
  2314. /package/{skills → packages/ampcode/skills}/slack-gif-creator/templates/wiggle.py +0 -0
  2315. /package/{skills → packages/ampcode/skills}/slack-gif-creator/templates/zoom.py +0 -0
  2316. /package/{skills → packages/ampcode/skills}/systematic-debugging/CREATION-LOG.md +0 -0
  2317. /package/{skills → packages/ampcode/skills}/systematic-debugging/SKILL.md +0 -0
  2318. /package/{skills → packages/ampcode/skills}/systematic-debugging/test-academic.md +0 -0
  2319. /package/{skills → packages/ampcode/skills}/systematic-debugging/test-pressure-1.md +0 -0
  2320. /package/{skills → packages/ampcode/skills}/systematic-debugging/test-pressure-2.md +0 -0
  2321. /package/{skills → packages/ampcode/skills}/systematic-debugging/test-pressure-3.md +0 -0
  2322. /package/{skills → packages/ampcode/skills}/test-driven-development/SKILL.md +0 -0
  2323. /package/{skills → packages/ampcode/skills}/testing-anti-patterns/SKILL.md +0 -0
  2324. /package/{skills → packages/ampcode/skills}/theme-factory/LICENSE.txt +0 -0
  2325. /package/{skills → packages/ampcode/skills}/theme-factory/SKILL.md +0 -0
  2326. /package/{skills → packages/ampcode/skills}/theme-factory/theme-showcase.pdf +0 -0
  2327. /package/{skills → packages/ampcode/skills}/theme-factory/themes/arctic-frost.md +0 -0
  2328. /package/{skills → packages/ampcode/skills}/theme-factory/themes/botanical-garden.md +0 -0
  2329. /package/{skills → packages/ampcode/skills}/theme-factory/themes/desert-rose.md +0 -0
  2330. /package/{skills → packages/ampcode/skills}/theme-factory/themes/forest-canopy.md +0 -0
  2331. /package/{skills → packages/ampcode/skills}/theme-factory/themes/golden-hour.md +0 -0
  2332. /package/{skills → packages/ampcode/skills}/theme-factory/themes/midnight-galaxy.md +0 -0
  2333. /package/{skills → packages/ampcode/skills}/theme-factory/themes/modern-minimalist.md +0 -0
  2334. /package/{skills → packages/ampcode/skills}/theme-factory/themes/ocean-depths.md +0 -0
  2335. /package/{skills → packages/ampcode/skills}/theme-factory/themes/sunset-boulevard.md +0 -0
  2336. /package/{skills → packages/ampcode/skills}/theme-factory/themes/tech-innovation.md +0 -0
  2337. /package/{skills → packages/ampcode/skills}/verification-before-completion/SKILL.md +0 -0
  2338. /package/{skills → packages/ampcode/skills}/webapp-testing/LICENSE.txt +0 -0
  2339. /package/{skills → packages/ampcode/skills}/webapp-testing/SKILL.md +0 -0
  2340. /package/{skills → packages/ampcode/skills}/webapp-testing/examples/console_logging.py +0 -0
  2341. /package/{skills → packages/ampcode/skills}/webapp-testing/examples/element_discovery.py +0 -0
  2342. /package/{skills → packages/ampcode/skills}/webapp-testing/examples/static_html_automation.py +0 -0
  2343. /package/{skills → packages/ampcode/skills}/webapp-testing/scripts/with_server.py +0 -0
  2344. /package/{skills → packages/ampcode/skills}/xlsx/LICENSE.txt +0 -0
  2345. /package/{skills → packages/ampcode/skills}/xlsx/SKILL.md +0 -0
  2346. /package/{skills → packages/ampcode/skills}/xlsx/recalc.py +0 -0
  2347. /package/{agents → packages/claude/agents}/orchestrator.md +0 -0
  2348. /package/{hooks → packages/claude/hooks}/register-agents.js +0 -0
  2349. /package/{resources → packages/claude/resources}/data.md +0 -0
@@ -0,0 +1,2229 @@
1
+ #!/usr/bin/env node
2
+
3
+ /**
4
+ * Interactive CLI Installer for Agentic Kit
5
+ *
6
+ * Provides 4-step installation process:
7
+ * 1. Package variant selection (Lite/Standard/Pro)
8
+ * 2. Tool selection (Claude/Opencode/Ampcode/Droid)
9
+ * 3. Path configuration with confirmation
10
+ * 4. Installation summary and execution
11
+ */
12
+
13
+ const fs = require('fs');
14
+ const path = require('path');
15
+ const readline = require('readline');
16
+
17
+ // ANSI color codes
18
+ const colors = {
19
+ reset: '\x1b[0m',
20
+ bright: '\x1b[1m',
21
+ green: '\x1b[32m',
22
+ blue: '\x1b[34m',
23
+ yellow: '\x1b[33m',
24
+ cyan: '\x1b[36m',
25
+ magenta: '\x1b[35m',
26
+ red: '\x1b[31m'
27
+ };
28
+
29
+ class InteractiveInstaller {
30
+ constructor() {
31
+ this.rl = readline.createInterface({
32
+ input: process.stdin,
33
+ output: process.stdout
34
+ });
35
+
36
+ this.selections = {
37
+ variant: null,
38
+ tools: [],
39
+ paths: {}
40
+ };
41
+
42
+ // Command-line arguments
43
+ this.cliArgs = this.parseCommandLineArgs();
44
+
45
+ // Initialize PackageManager for accessing package information
46
+ const PackageManager = require('./package-manager');
47
+ this.packageManager = new PackageManager();
48
+
49
+ this.tools = [
50
+ {
51
+ id: 'claude',
52
+ name: 'Claude Code',
53
+ path: '~/.claude',
54
+ description: 'AI-powered development assistant',
55
+ useCase: 'General software development with conversational AI',
56
+ targetUsers: 'All developers'
57
+ },
58
+ {
59
+ id: 'opencode',
60
+ name: 'Opencode',
61
+ path: '~/.config/opencode',
62
+ description: 'CLI-optimized AI codegen tool',
63
+ useCase: 'Terminal-based development and automation',
64
+ targetUsers: 'CLI power users, DevOps teams'
65
+ },
66
+ {
67
+ id: 'ampcode',
68
+ name: 'Ampcode',
69
+ path: '~/.config/amp',
70
+ description: 'Amplified AI development accelerator',
71
+ useCase: 'Velocity-focused workflows and rapid prototyping',
72
+ targetUsers: 'Teams seeking development acceleration'
73
+ },
74
+ {
75
+ id: 'droid',
76
+ name: 'Droid',
77
+ path: '~/.factory',
78
+ description: 'Android-focused AI development companion',
79
+ useCase: 'Mobile app development with Android Studio',
80
+ targetUsers: 'Android developers, mobile teams'
81
+ }
82
+ ];
83
+
84
+ this.variants = [
85
+ { id: 'lite', name: 'Lite', agents: 3, skills: 0, description: 'Minimal setup, CI/CD' },
86
+ { id: 'standard', name: 'Standard', agents: 13, skills: 8, description: 'Most users, general dev' },
87
+ { id: 'pro', name: 'Pro', agents: 13, skills: 14, description: 'Advanced users, full features' }
88
+ ];
89
+ }
90
+
91
+ /**
92
+ * Parse command-line arguments
93
+ * Supports various flags for non-interactive operation
94
+ *
95
+ * @returns {Object} - Parsed arguments object
96
+ */
97
+ parseCommandLineArgs() {
98
+ const args = process.argv.slice(2);
99
+ const parsed = {
100
+ help: false,
101
+ uninstall: null,
102
+ upgrade: null,
103
+ upgradeVariant: null,
104
+ variant: null,
105
+ tools: [],
106
+ paths: {},
107
+ silent: false,
108
+ nonInteractive: false,
109
+ config: null,
110
+ noTelemetry: false
111
+ };
112
+
113
+ for (let i = 0; i < args.length; i++) {
114
+ const arg = args[i];
115
+
116
+ if (arg === '--help' || arg === '-h') {
117
+ parsed.help = true;
118
+ } else if (arg === '--uninstall') {
119
+ parsed.uninstall = args[++i];
120
+ } else if (arg === '--upgrade') {
121
+ parsed.upgrade = args[++i];
122
+ parsed.upgradeVariant = args[++i];
123
+ } else if (arg === '--variant') {
124
+ parsed.variant = args[++i];
125
+ } else if (arg === '--tools') {
126
+ parsed.tools = args[++i].split(',').map(t => t.trim());
127
+ } else if (arg === '--path') {
128
+ const pathArg = args[++i];
129
+ const [tool, pathValue] = pathArg.split('=');
130
+ parsed.paths[tool] = pathValue;
131
+ } else if (arg === '--silent' || arg === '--non-interactive' || arg === '--yes' || arg === '-y') {
132
+ parsed.silent = true;
133
+ parsed.nonInteractive = true;
134
+ } else if (arg === '--config') {
135
+ parsed.config = args[++i];
136
+ } else if (arg === '--no-telemetry') {
137
+ parsed.noTelemetry = true;
138
+ }
139
+ }
140
+
141
+ return parsed;
142
+ }
143
+
144
+ /**
145
+ * Display help information
146
+ * Shows usage, options, and examples
147
+ */
148
+ showHelp() {
149
+ console.log(`
150
+ ${colors.bright}${colors.cyan}Agentic Kit Installer${colors.reset}
151
+
152
+ ${colors.bright}USAGE:${colors.reset}
153
+ node installer/cli.js [OPTIONS]
154
+
155
+ ${colors.bright}OPTIONS:${colors.reset}
156
+ ${colors.green}--help, -h${colors.reset}
157
+ Display this help message
158
+
159
+ ${colors.green}--uninstall <tool>${colors.reset}
160
+ Uninstall a specific tool
161
+ Example: node installer/cli.js --uninstall claude
162
+
163
+ ${colors.green}--upgrade <tool> <variant>${colors.reset}
164
+ Upgrade or downgrade a tool to a different variant
165
+ Example: node installer/cli.js --upgrade claude pro
166
+ Example: node installer/cli.js --upgrade claude lite
167
+
168
+ ${colors.green}--variant <lite|standard|pro>${colors.reset}
169
+ Select package variant (non-interactive mode)
170
+ Example: node installer/cli.js --variant standard --tools claude
171
+
172
+ ${colors.green}--tools <tool1,tool2,...>${colors.reset}
173
+ Select tools to install (comma-separated, non-interactive mode)
174
+ Example: node installer/cli.js --variant standard --tools claude,opencode
175
+
176
+ ${colors.green}--path <tool>=<path>${colors.reset}
177
+ Specify custom installation path for a tool
178
+ Example: node installer/cli.js --variant standard --tools claude --path claude=/custom/path
179
+
180
+ ${colors.green}--silent, --non-interactive, --yes, -y${colors.reset}
181
+ Run in silent mode (no prompts, auto-confirm all)
182
+ Example: node installer/cli.js --variant standard --tools claude --silent
183
+
184
+ ${colors.green}--config <file>${colors.reset}
185
+ Load configuration from JSON file
186
+ Example: node installer/cli.js --config install-config.json
187
+
188
+ ${colors.green}--no-telemetry${colors.reset}
189
+ Disable anonymous usage statistics collection
190
+ Example: node installer/cli.js --no-telemetry
191
+ See docs/PRIVACY.md for details
192
+
193
+ ${colors.bright}TOOLS:${colors.reset}
194
+ ${colors.cyan}claude${colors.reset} - Claude Code (AI-powered development assistant)
195
+ ${colors.cyan}opencode${colors.reset} - Opencode (CLI-optimized AI codegen tool)
196
+ ${colors.cyan}ampcode${colors.reset} - Ampcode (Amplified AI development accelerator)
197
+ ${colors.cyan}droid${colors.reset} - Droid (Android-focused AI development companion)
198
+
199
+ ${colors.bright}VARIANTS:${colors.reset}
200
+ ${colors.cyan}lite${colors.reset} - Minimal setup (3 agents, 0 skills) - For CI/CD
201
+ ${colors.cyan}standard${colors.reset} - Standard setup (13 agents, 8 skills) - For most users
202
+ ${colors.cyan}pro${colors.reset} - Full setup (13 agents, 22 skills) - For advanced users
203
+
204
+ ${colors.bright}EXAMPLES:${colors.reset}
205
+ # Interactive installation (default)
206
+ node installer/cli.js
207
+
208
+ # Install Claude with Standard variant (non-interactive)
209
+ node installer/cli.js --variant standard --tools claude
210
+
211
+ # Install multiple tools with custom paths
212
+ node installer/cli.js --variant pro --tools claude,opencode --path claude=~/.claude-custom
213
+
214
+ # Uninstall a tool
215
+ node installer/cli.js --uninstall claude
216
+
217
+ # Silent installation for CI/CD
218
+ node installer/cli.js --variant lite --tools claude --silent
219
+
220
+ ${colors.bright}For more information, visit:${colors.reset}
221
+ https://github.com/amrhas82/agentic-kit
222
+ `);
223
+ }
224
+
225
+ async run() {
226
+ try {
227
+ // Handle --help flag
228
+ if (this.cliArgs.help) {
229
+ this.showHelp();
230
+ process.exit(0);
231
+ }
232
+
233
+ // Handle --uninstall flag
234
+ if (this.cliArgs.uninstall) {
235
+ await this.runUninstall(this.cliArgs.uninstall);
236
+ process.exit(0);
237
+ }
238
+
239
+ // Handle --upgrade flag
240
+ if (this.cliArgs.upgrade) {
241
+ await this.runUpgrade(this.cliArgs.upgrade, this.cliArgs.upgradeVariant);
242
+ process.exit(0);
243
+ }
244
+
245
+ // Handle --config flag
246
+ if (this.cliArgs.config) {
247
+ await this.loadConfig(this.cliArgs.config);
248
+ }
249
+
250
+ // Handle non-interactive mode
251
+ if (this.cliArgs.variant && this.cliArgs.tools.length > 0) {
252
+ await this.runNonInteractive();
253
+ process.exit(0);
254
+ }
255
+
256
+ // Interactive mode
257
+ this.showWelcome();
258
+
259
+ // Prompt for telemetry consent (first-time only)
260
+ await this.promptTelemetryConsent();
261
+
262
+ // Check for interrupted installation
263
+ const InstallationEngine = require('./installation-engine');
264
+ const PathManager = require('./path-manager');
265
+ const pathManager = new PathManager();
266
+ const installationEngine = new InstallationEngine(pathManager, this.packageManager);
267
+
268
+ const hasInterrupted = await installationEngine.hasInterruptedInstallation();
269
+
270
+ if (hasInterrupted) {
271
+ const shouldResume = await this.promptResume(installationEngine);
272
+
273
+ if (shouldResume) {
274
+ await this.resumeInstallation(installationEngine);
275
+ return; // Exit after resume
276
+ } else {
277
+ // Clear state and start fresh
278
+ await installationEngine.getStateManager().clearState();
279
+ console.log(`${colors.yellow}Starting fresh installation...${colors.reset}\n`);
280
+ }
281
+ }
282
+
283
+ // Normal installation flow
284
+ await this.selectVariant();
285
+ await this.selectTools();
286
+ await this.configurePaths();
287
+ await this.showSummary();
288
+ await this.install();
289
+ } catch (error) {
290
+ await this.handleFatalError(error);
291
+ } finally {
292
+ this.rl.close();
293
+ }
294
+ }
295
+
296
+ /**
297
+ * Run uninstall command for a specific tool
298
+ * Detects installation, prompts for confirmation, and executes uninstall
299
+ *
300
+ * @param {string} toolId - Tool to uninstall (claude, opencode, ampcode, droid)
301
+ */
302
+ async runUninstall(toolId) {
303
+ console.log(`\n${colors.bright}${colors.cyan}Agentic Kit Uninstaller${colors.reset}\n`);
304
+
305
+ // Validate tool ID
306
+ const tool = this.tools.find(t => t.id === toolId);
307
+ if (!tool) {
308
+ console.log(`${colors.red}Error: Unknown tool '${toolId}'${colors.reset}`);
309
+ console.log(`${colors.yellow}Available tools: ${this.tools.map(t => t.id).join(', ')}${colors.reset}\n`);
310
+ process.exit(1);
311
+ }
312
+
313
+ // Detect installation at default path
314
+ const os = require('os');
315
+ const defaultPath = tool.path.startsWith('~')
316
+ ? path.join(os.homedir(), tool.path.slice(1))
317
+ : path.resolve(tool.path);
318
+
319
+ // Check if manifest exists at default path
320
+ const manifestPath = path.join(defaultPath, 'manifest.json');
321
+ let targetPath = defaultPath;
322
+
323
+ if (!fs.existsSync(manifestPath)) {
324
+ console.log(`${colors.yellow}No installation found at default path: ${defaultPath}${colors.reset}\n`);
325
+
326
+ // If not in silent mode, ask for custom path
327
+ if (!this.cliArgs.silent) {
328
+ const customPath = await this.askQuestion(
329
+ `${colors.cyan}Enter installation path (or press Enter to cancel):${colors.reset} `,
330
+ ''
331
+ );
332
+
333
+ if (!customPath) {
334
+ console.log(`${colors.yellow}Uninstall cancelled${colors.reset}\n`);
335
+ return;
336
+ }
337
+
338
+ targetPath = customPath.startsWith('~')
339
+ ? path.join(os.homedir(), customPath.slice(1))
340
+ : path.resolve(customPath);
341
+
342
+ const customManifestPath = path.join(targetPath, 'manifest.json');
343
+ if (!fs.existsSync(customManifestPath)) {
344
+ console.log(`${colors.red}Error: No installation found at ${targetPath}${colors.reset}\n`);
345
+ process.exit(1);
346
+ }
347
+ } else {
348
+ console.log(`${colors.red}Error: No installation found at default path${colors.reset}\n`);
349
+ process.exit(1);
350
+ }
351
+ }
352
+
353
+ console.log(`${colors.bright}Tool:${colors.reset} ${tool.name}`);
354
+ console.log(`${colors.bright}Path:${colors.reset} ${targetPath}\n`);
355
+
356
+ // Initialize InstallationEngine
357
+ const PathManager = require('./path-manager');
358
+ const InstallationEngine = require('./installation-engine');
359
+ const pathManager = new PathManager();
360
+ const installationEngine = new InstallationEngine(pathManager, this.packageManager);
361
+
362
+ try {
363
+ // Read manifest to get file count
364
+ const manifest = JSON.parse(fs.readFileSync(manifestPath, 'utf8'));
365
+ const fileCount = manifest.installedFiles
366
+ ? Object.values(manifest.installedFiles).reduce((sum, arr) => sum + arr.length, 0)
367
+ : 0;
368
+
369
+ // Confirmation prompt (unless in silent mode)
370
+ if (!this.cliArgs.silent) {
371
+ console.log(`${colors.yellow}This will remove ${fileCount} file(s) and create a backup.${colors.reset}\n`);
372
+
373
+ const confirm = await this.askQuestion(
374
+ `${colors.bright}Proceed with uninstallation? (y/N):${colors.reset} `,
375
+ 'n'
376
+ );
377
+
378
+ if (confirm.toLowerCase() !== 'y') {
379
+ console.log(`${colors.yellow}Uninstall cancelled${colors.reset}\n`);
380
+ return;
381
+ }
382
+ }
383
+
384
+ console.log(`\n${colors.bright}Uninstalling ${tool.name}...${colors.reset}\n`);
385
+
386
+ // Uninstall with progress callback
387
+ const result = await installationEngine.uninstall(
388
+ toolId,
389
+ targetPath,
390
+ null, // confirmCallback (already confirmed above)
391
+ (progress) => {
392
+ // Display progress
393
+ const percentage = Math.round((progress.filesRemoved / progress.totalFiles) * 100);
394
+ process.stdout.write(`\r${colors.cyan}Progress:${colors.reset} ${percentage}% (${progress.filesRemoved}/${progress.totalFiles} files removed)`);
395
+ }
396
+ );
397
+
398
+ // Clear progress line
399
+ process.stdout.write('\r' + ' '.repeat(80) + '\r');
400
+
401
+ // Display results
402
+ console.log(`${colors.green}✓ ${tool.name} uninstalled successfully${colors.reset}`);
403
+ console.log(`${colors.cyan}Files removed:${colors.reset} ${result.filesRemoved}`);
404
+ console.log(`${colors.cyan}Directories removed:${colors.reset} ${result.directoriesRemoved}`);
405
+ console.log(`${colors.cyan}Backup created:${colors.reset} ${result.backupPath}\n`);
406
+
407
+ if (result.warnings.length > 0) {
408
+ console.log(`${colors.yellow}Warnings:${colors.reset}`);
409
+ result.warnings.forEach(warning => {
410
+ console.log(` ${colors.yellow}⚠${colors.reset} ${warning.message}`);
411
+ });
412
+ console.log('');
413
+ }
414
+
415
+ if (result.errors.length > 0) {
416
+ console.log(`${colors.red}Errors:${colors.reset}`);
417
+ result.errors.forEach(error => {
418
+ console.log(` ${colors.red}✗${colors.reset} ${error.message}`);
419
+ });
420
+ console.log('');
421
+ }
422
+
423
+ } catch (error) {
424
+ console.error(`\n${colors.red}✗ Uninstall failed: ${error.message}${colors.reset}\n`);
425
+ process.exit(1);
426
+ }
427
+ }
428
+
429
+ /**
430
+ * Run upgrade/downgrade command for a specific tool
431
+ * Changes the variant of an installed tool
432
+ *
433
+ * @param {string} toolId - Tool to upgrade (claude, opencode, ampcode, droid)
434
+ * @param {string} newVariant - Target variant (lite, standard, pro)
435
+ */
436
+ async runUpgrade(toolId, newVariant) {
437
+ console.log(`\n${colors.bright}${colors.cyan}Agentic Kit Variant Upgrade${colors.reset}\n`);
438
+
439
+ // Validate tool ID
440
+ const tool = this.tools.find(t => t.id === toolId);
441
+ if (!tool) {
442
+ console.log(`${colors.red}Error: Unknown tool '${toolId}'${colors.reset}`);
443
+ console.log(`${colors.yellow}Available tools: ${this.tools.map(t => t.id).join(', ')}${colors.reset}\n`);
444
+ process.exit(1);
445
+ }
446
+
447
+ // Validate variant
448
+ const validVariants = ['lite', 'standard', 'pro'];
449
+ if (!validVariants.includes(newVariant)) {
450
+ console.log(`${colors.red}Error: Invalid variant '${newVariant}'${colors.reset}`);
451
+ console.log(`${colors.yellow}Valid variants: ${validVariants.join(', ')}${colors.reset}\n`);
452
+ process.exit(1);
453
+ }
454
+
455
+ // Detect installation at default path
456
+ const os = require('os');
457
+ const defaultPath = tool.path.startsWith('~')
458
+ ? path.join(os.homedir(), tool.path.slice(1))
459
+ : path.resolve(tool.path);
460
+
461
+ // Check if manifest exists at default path
462
+ const manifestPath = path.join(defaultPath, 'manifest.json');
463
+ let targetPath = defaultPath;
464
+
465
+ if (!fs.existsSync(manifestPath)) {
466
+ console.log(`${colors.yellow}No installation found at default path: ${defaultPath}${colors.reset}\n`);
467
+
468
+ // If not in silent mode, ask for custom path
469
+ if (!this.cliArgs.silent) {
470
+ const customPath = await this.askQuestion(
471
+ `${colors.cyan}Enter installation path (or press Enter to cancel):${colors.reset} `,
472
+ ''
473
+ );
474
+
475
+ if (!customPath) {
476
+ console.log(`${colors.yellow}Upgrade cancelled${colors.reset}\n`);
477
+ return;
478
+ }
479
+
480
+ targetPath = customPath.startsWith('~')
481
+ ? path.join(os.homedir(), customPath.slice(1))
482
+ : path.resolve(customPath);
483
+
484
+ const customManifestPath = path.join(targetPath, 'manifest.json');
485
+ if (!fs.existsSync(customManifestPath)) {
486
+ console.log(`${colors.red}Error: No installation found at ${targetPath}${colors.reset}\n`);
487
+ process.exit(1);
488
+ }
489
+ } else {
490
+ console.log(`${colors.red}Error: No installation found at default path${colors.reset}\n`);
491
+ process.exit(1);
492
+ }
493
+ }
494
+
495
+ // Read current variant
496
+ const manifest = JSON.parse(fs.readFileSync(path.join(targetPath, 'manifest.json'), 'utf8'));
497
+ const currentVariant = manifest.variant;
498
+
499
+ console.log(`${colors.bright}Tool:${colors.reset} ${tool.name}`);
500
+ console.log(`${colors.bright}Current variant:${colors.reset} ${currentVariant}`);
501
+ console.log(`${colors.bright}Target variant:${colors.reset} ${newVariant}`);
502
+ console.log(`${colors.bright}Path:${colors.reset} ${targetPath}\n`);
503
+
504
+ // Check if same variant
505
+ if (currentVariant === newVariant) {
506
+ console.log(`${colors.yellow}Already using variant: ${newVariant}${colors.reset}\n`);
507
+ return;
508
+ }
509
+
510
+ // Initialize InstallationEngine
511
+ const PathManager = require('./path-manager');
512
+ const InstallationEngine = require('./installation-engine');
513
+ const pathManager = new PathManager();
514
+ const installationEngine = new InstallationEngine(pathManager, this.packageManager);
515
+
516
+ try {
517
+ // Confirmation callback (unless in silent mode)
518
+ const confirmCallback = this.cliArgs.silent ? null : (data) => {
519
+ return new Promise(async (resolve) => {
520
+ const action = data.filesAdded > data.filesRemoved ? 'Upgrade' : 'Downgrade';
521
+ console.log(`${colors.yellow}${action} Summary:${colors.reset}`);
522
+ console.log(` ${colors.green}+${data.filesAdded} file(s) to add${colors.reset}`);
523
+ console.log(` ${colors.red}-${data.filesRemoved} file(s) to remove${colors.reset}\n`);
524
+
525
+ const confirm = await this.askQuestion(
526
+ `${colors.bright}Proceed with ${action.toLowerCase()}? (y/N):${colors.reset} `,
527
+ 'n'
528
+ );
529
+
530
+ resolve(confirm.toLowerCase() === 'y');
531
+ });
532
+ };
533
+
534
+ // Progress callback
535
+ let lastStage = '';
536
+ const progressCallback = (progress) => {
537
+ if (progress.stage !== lastStage) {
538
+ if (lastStage) {
539
+ process.stdout.write('\n');
540
+ }
541
+ lastStage = progress.stage;
542
+
543
+ const stageMessages = {
544
+ reading_manifest: 'Reading current installation...',
545
+ comparing_variants: 'Comparing variants...',
546
+ creating_backup: 'Creating backup...',
547
+ removing_files: `Removing ${progress.count || 0} file(s)...`,
548
+ adding_files: `Adding ${progress.count || 0} file(s)...`,
549
+ updating_manifest: 'Updating manifest...',
550
+ verifying: 'Verifying installation...',
551
+ complete: 'Complete!'
552
+ };
553
+
554
+ const message = stageMessages[progress.stage] || progress.stage;
555
+ process.stdout.write(`${colors.cyan}${message}${colors.reset}`);
556
+ }
557
+ };
558
+
559
+ console.log(`${colors.bright}Upgrading ${tool.name}...${colors.reset}\n`);
560
+
561
+ // Execute upgrade
562
+ const result = await installationEngine.upgradeVariant(
563
+ toolId,
564
+ newVariant,
565
+ targetPath,
566
+ confirmCallback,
567
+ progressCallback
568
+ );
569
+
570
+ // Clear progress line
571
+ process.stdout.write('\n\n');
572
+
573
+ // Display results
574
+ if (!result.success) {
575
+ console.log(`${colors.red}✗ Upgrade failed: ${result.error}${colors.reset}\n`);
576
+ process.exit(1);
577
+ }
578
+
579
+ const action = result.filesAdded > result.filesRemoved ? 'Upgrade' : 'Downgrade';
580
+ console.log(`${colors.green}✓ ${tool.name} ${action.toLowerCase()}d successfully${colors.reset}`);
581
+ console.log(`${colors.cyan}From variant:${colors.reset} ${result.fromVariant}`);
582
+ console.log(`${colors.cyan}To variant:${colors.reset} ${result.toVariant}`);
583
+ console.log(`${colors.cyan}Files added:${colors.reset} ${result.filesAdded}`);
584
+ console.log(`${colors.cyan}Files removed:${colors.reset} ${result.filesRemoved}`);
585
+ console.log(`${colors.cyan}Backup created:${colors.reset} ${result.backupPath}\n`);
586
+
587
+ if (result.verification && !result.verification.valid) {
588
+ console.log(`${colors.yellow}Warnings:${colors.reset}`);
589
+ result.verification.issues.forEach(issue => {
590
+ console.log(` ${colors.yellow}⚠${colors.reset} ${issue.message}`);
591
+ });
592
+ console.log('');
593
+ }
594
+
595
+ } catch (error) {
596
+ console.error(`\n${colors.red}✗ Upgrade failed: ${error.message}${colors.reset}\n`);
597
+ process.exit(1);
598
+ }
599
+ }
600
+
601
+ /**
602
+ * Load configuration from JSON file
603
+ * Used with --config flag
604
+ *
605
+ * @param {string} configPath - Path to configuration file
606
+ */
607
+ async loadConfig(configPath) {
608
+ try {
609
+ const configContent = await fs.promises.readFile(configPath, 'utf8');
610
+ const config = JSON.parse(configContent);
611
+
612
+ // Validate and apply configuration
613
+ if (config.variant) {
614
+ this.cliArgs.variant = config.variant;
615
+ }
616
+
617
+ if (config.tools && Array.isArray(config.tools)) {
618
+ this.cliArgs.tools = config.tools;
619
+ }
620
+
621
+ if (config.paths && typeof config.paths === 'object') {
622
+ this.cliArgs.paths = { ...this.cliArgs.paths, ...config.paths };
623
+ }
624
+
625
+ if (config.silent !== undefined) {
626
+ this.cliArgs.silent = config.silent;
627
+ this.cliArgs.nonInteractive = config.silent;
628
+ }
629
+
630
+ console.log(`${colors.green}✓ Configuration loaded from ${configPath}${colors.reset}\n`);
631
+
632
+ } catch (error) {
633
+ console.error(`${colors.red}Error loading configuration: ${error.message}${colors.reset}\n`);
634
+ process.exit(1);
635
+ }
636
+ }
637
+
638
+ /**
639
+ * Run non-interactive installation
640
+ * Uses command-line arguments instead of prompts
641
+ */
642
+ async runNonInteractive() {
643
+ console.log(`\n${colors.bright}${colors.cyan}Agentic Kit Installer (Non-Interactive Mode)${colors.reset}\n`);
644
+
645
+ // Validate variant
646
+ const variant = this.cliArgs.variant;
647
+ if (!['lite', 'standard', 'pro'].includes(variant)) {
648
+ console.log(`${colors.red}Error: Invalid variant '${variant}'${colors.reset}`);
649
+ console.log(`${colors.yellow}Valid variants: lite, standard, pro${colors.reset}\n`);
650
+ process.exit(1);
651
+ }
652
+
653
+ // Validate tools
654
+ const validTools = this.tools.map(t => t.id);
655
+ const invalidTools = this.cliArgs.tools.filter(t => !validTools.includes(t));
656
+ if (invalidTools.length > 0) {
657
+ console.log(`${colors.red}Error: Invalid tool(s): ${invalidTools.join(', ')}${colors.reset}`);
658
+ console.log(`${colors.yellow}Valid tools: ${validTools.join(', ')}${colors.reset}\n`);
659
+ process.exit(1);
660
+ }
661
+
662
+ if (this.cliArgs.tools.length === 0) {
663
+ console.log(`${colors.red}Error: At least one tool must be specified${colors.reset}\n`);
664
+ process.exit(1);
665
+ }
666
+
667
+ // Set selections
668
+ this.selections.variant = variant;
669
+ this.selections.tools = this.cliArgs.tools;
670
+
671
+ // Set paths (use custom paths or defaults)
672
+ const os = require('os');
673
+ for (const toolId of this.selections.tools) {
674
+ const tool = this.tools.find(t => t.id === toolId);
675
+
676
+ if (this.cliArgs.paths[toolId]) {
677
+ this.selections.paths[toolId] = this.cliArgs.paths[toolId];
678
+ } else {
679
+ this.selections.paths[toolId] = tool.path;
680
+ }
681
+ }
682
+
683
+ // Display summary
684
+ const variantInfo = this.variants.find(v => v.id === variant);
685
+ console.log(`${colors.bright}Installation Summary:${colors.reset}`);
686
+ console.log(`${colors.cyan}Variant:${colors.reset} ${variantInfo.name} (${variantInfo.agents} agents, ${variantInfo.skills} skills)`);
687
+ console.log(`${colors.cyan}Tools:${colors.reset} ${this.selections.tools.join(', ')}`);
688
+ console.log('');
689
+
690
+ for (const toolId of this.selections.tools) {
691
+ const tool = this.tools.find(t => t.id === toolId);
692
+ const isCustom = this.selections.paths[toolId] !== tool.path;
693
+ console.log(`${colors.bright}${tool.name}${colors.reset}`);
694
+ console.log(` Path: ${this.selections.paths[toolId]}${isCustom ? ' (custom)' : ''}`);
695
+ }
696
+ console.log('');
697
+
698
+ // Run installation
699
+ try {
700
+ await this.install();
701
+ } catch (error) {
702
+ console.error(`${colors.red}✗ Installation failed: ${error.message}${colors.reset}\n`);
703
+ process.exit(1);
704
+ }
705
+ }
706
+
707
+ /**
708
+ * Handle fatal errors with detailed error messages and actionable advice
709
+ * Categorizes errors and provides specific guidance for each type
710
+ *
711
+ * @param {Error} error - The error that occurred
712
+ */
713
+ async handleFatalError(error) {
714
+ console.log(''); // Add spacing
715
+
716
+ // Categorize the error and provide appropriate guidance
717
+ const errorInfo = this.categorizeError(error);
718
+
719
+ console.log(`${colors.red}${colors.bright}✗ Installation Failed${colors.reset}`);
720
+ console.log(`${colors.red}${'─'.repeat(60)}${colors.reset}\n`);
721
+
722
+ console.log(`${colors.bright}Error Type:${colors.reset} ${errorInfo.type}`);
723
+ console.log(`${colors.bright}Message:${colors.reset} ${error.message}\n`);
724
+
725
+ if (errorInfo.advice.length > 0) {
726
+ console.log(`${colors.yellow}${colors.bright}Suggested Actions:${colors.reset}`);
727
+ errorInfo.advice.forEach((advice, index) => {
728
+ console.log(` ${index + 1}. ${advice}`);
729
+ });
730
+ console.log('');
731
+ }
732
+
733
+ // Display additional technical details if available
734
+ if (errorInfo.technicalDetails) {
735
+ console.log(`${colors.cyan}Technical Details:${colors.reset}`);
736
+ console.log(` ${errorInfo.technicalDetails}\n`);
737
+ }
738
+
739
+ // Exit with error code
740
+ process.exit(1);
741
+ }
742
+
743
+ /**
744
+ * Categorize errors and provide actionable advice
745
+ *
746
+ * @param {Error} error - The error to categorize
747
+ * @returns {object} Object with type, advice array, and technical details
748
+ */
749
+ categorizeError(error) {
750
+ const message = error.message.toLowerCase();
751
+ const code = error.code;
752
+
753
+ // Permission errors
754
+ if (code === 'EACCES' || code === 'EPERM' || message.includes('permission denied')) {
755
+ return {
756
+ type: 'Permission Error',
757
+ advice: [
758
+ 'Try running the installer with elevated permissions: sudo node installer/cli.js',
759
+ 'Or choose a different installation directory where you have write access',
760
+ 'Check directory permissions: ls -la on the parent directory'
761
+ ],
762
+ technicalDetails: `Error code: ${code || 'EACCES'}`
763
+ };
764
+ }
765
+
766
+ // Disk space errors
767
+ if (code === 'ENOSPC' || message.includes('no space') || message.includes('disk space')) {
768
+ return {
769
+ type: 'Disk Space Error',
770
+ advice: [
771
+ 'Free up disk space by removing unnecessary files',
772
+ 'Check available space: df -h',
773
+ 'Consider installing to a different location with more space',
774
+ 'The installer requires at least 50MB of free space'
775
+ ],
776
+ technicalDetails: 'Installation requires approximately 10MB per tool'
777
+ };
778
+ }
779
+
780
+ // Network errors (if applicable)
781
+ if (code === 'ENOTFOUND' || code === 'ETIMEDOUT' || message.includes('network') || message.includes('connection')) {
782
+ return {
783
+ type: 'Network Error',
784
+ advice: [
785
+ 'Check your internet connection',
786
+ 'Verify proxy settings if behind a corporate firewall',
787
+ 'Try again in a few moments',
788
+ 'Use offline installation mode if available'
789
+ ],
790
+ technicalDetails: `Network error code: ${code || 'UNKNOWN'}`
791
+ };
792
+ }
793
+
794
+ // File not found / missing package errors
795
+ if (code === 'ENOENT' || message.includes('no such file') || message.includes('not found') || message.includes('invalid package')) {
796
+ return {
797
+ type: 'Missing Package Error',
798
+ advice: [
799
+ 'Ensure agentic-kit is properly installed: npm install -g @amrhas82/agentic-kit',
800
+ 'Verify the packages directory exists and contains required files',
801
+ 'Try reinstalling agentic-kit: npm uninstall -g @amrhas82/agentic-kit && npm install -g @amrhas82/agentic-kit',
802
+ 'Check that you are running the installer from the correct directory'
803
+ ],
804
+ technicalDetails: `Missing file or package validation failed`
805
+ };
806
+ }
807
+
808
+ // Path validation errors (check before invalid input errors)
809
+ if (message.includes('path') && (message.includes('invalid') || message.includes('absolute') || message.includes('must be absolute'))) {
810
+ return {
811
+ type: 'Path Validation Error',
812
+ advice: [
813
+ 'Ensure the path is absolute (starts with / or ~)',
814
+ 'Verify the parent directory exists',
815
+ 'Check that you have write permissions for the specified path',
816
+ 'Use default paths if custom paths are causing issues'
817
+ ],
818
+ technicalDetails: 'Paths must be absolute and writable'
819
+ };
820
+ }
821
+
822
+ // Invalid input errors
823
+ if (message.includes('invalid') || message.includes('must be') || message.includes('required')) {
824
+ return {
825
+ type: 'Invalid Input Error',
826
+ advice: [
827
+ 'Review your selections and ensure all required options are provided',
828
+ 'At least one tool must be selected',
829
+ 'Paths must be absolute (start with / or ~)',
830
+ 'Restart the installer and try again'
831
+ ],
832
+ technicalDetails: error.message
833
+ };
834
+ }
835
+
836
+ // Installation failures (general)
837
+ if (message.includes('install') || message.includes('copy') || message.includes('failed')) {
838
+ return {
839
+ type: 'Installation Error',
840
+ advice: [
841
+ 'Check available disk space: df -h',
842
+ 'Verify write permissions on the target directory',
843
+ 'Ensure no other process is using the installation directory',
844
+ 'Try installing to a different location',
845
+ 'Review the installation log at ~/.agentic-kit-install.log for details'
846
+ ],
847
+ technicalDetails: 'Installation process encountered an error during file operations'
848
+ };
849
+ }
850
+
851
+ // Generic error
852
+ return {
853
+ type: 'Unknown Error',
854
+ advice: [
855
+ 'Try running the installer again',
856
+ 'Check system logs for more details',
857
+ 'Report this issue at: https://github.com/amrhas82/agentic-kit/issues',
858
+ 'Include the error message and your system information (OS, Node version)'
859
+ ],
860
+ technicalDetails: error.stack ? error.stack.split('\n')[1] : 'No additional details'
861
+ };
862
+ }
863
+
864
+ /**
865
+ * Offer recovery options when an installation fails
866
+ * Allows user to continue with remaining tools or cancel
867
+ *
868
+ * @param {string} failedTool - Name of the tool that failed
869
+ * @param {number} currentIndex - Current tool index (1-based)
870
+ * @param {number} totalTools - Total number of tools
871
+ * @returns {Promise<boolean>} True to continue, false to cancel
872
+ */
873
+ async offerRecoveryOptions(failedTool, currentIndex, totalTools) {
874
+ const remainingTools = totalTools - currentIndex;
875
+
876
+ console.log(`${colors.yellow}┌─────────────────────────────────────────────────────────────┐${colors.reset}`);
877
+ console.log(`${colors.yellow}│ Installation Failure - Recovery Options │${colors.reset}`);
878
+ console.log(`${colors.yellow}└─────────────────────────────────────────────────────────────┘${colors.reset}\n`);
879
+
880
+ console.log(`${colors.bright}Status:${colors.reset} ${failedTool} installation failed`);
881
+ console.log(`${colors.bright}Remaining:${colors.reset} ${remainingTools} tool${remainingTools > 1 ? 's' : ''} to install\n`);
882
+
883
+ // In silent mode, auto-continue with remaining tools
884
+ if (this.cliArgs.silent) {
885
+ console.log(`${colors.yellow}Silent mode: auto-continuing with remaining tools${colors.reset}\n`);
886
+ console.log(`${colors.yellow}Note:${colors.reset} The failed installation has been rolled back automatically.`);
887
+ console.log(`${colors.yellow}No partial files remain for ${failedTool}.${colors.reset}\n`);
888
+ return true;
889
+ }
890
+
891
+ console.log(`${colors.cyan}Options:${colors.reset}`);
892
+ console.log(` ${colors.green}C${colors.reset} - Continue with remaining tools (recommended)`);
893
+ console.log(` ${colors.red}Q${colors.reset} - Quit installation (successful installations will be kept)\n`);
894
+
895
+ console.log(`${colors.yellow}Note:${colors.reset} The failed installation has been rolled back automatically.`);
896
+ console.log(`${colors.yellow}No partial files remain for ${failedTool}.${colors.reset}\n`);
897
+
898
+ const answer = await this.askQuestion(
899
+ `${colors.bright}Choose an option (C/Q):${colors.reset} `,
900
+ 'C'
901
+ );
902
+
903
+ const choice = answer.toUpperCase();
904
+
905
+ if (choice === 'C' || choice === '') {
906
+ console.log(`${colors.green}Continuing with remaining tools...${colors.reset}\n`);
907
+ return true;
908
+ } else if (choice === 'Q') {
909
+ return false;
910
+ } else {
911
+ // Invalid choice, ask again
912
+ console.log(`${colors.red}Invalid choice. Please enter C or Q.${colors.reset}\n`);
913
+ return this.offerRecoveryOptions(failedTool, currentIndex, totalTools);
914
+ }
915
+ }
916
+
917
+ /**
918
+ * Prompt user to resume interrupted installation
919
+ * Shows summary of previous installation progress
920
+ *
921
+ * @param {InstallationEngine} installationEngine - Installation engine instance
922
+ * @returns {Promise<boolean>} - True if user wants to resume, false otherwise
923
+ */
924
+ async promptResume(installationEngine) {
925
+ const summary = await installationEngine.getResumeSummary();
926
+
927
+ if (!summary) {
928
+ return false;
929
+ }
930
+
931
+ console.clear();
932
+ console.log(`\n${colors.yellow}${colors.bright}Previous Installation Detected${colors.reset}`);
933
+ console.log(`${colors.yellow}${'─'.repeat(60)}${colors.reset}\n`);
934
+
935
+ // Format timestamp
936
+ const startedAt = new Date(summary.startedAt);
937
+ const lastUpdated = new Date(summary.lastUpdated);
938
+ const timeDiff = Math.floor((lastUpdated - startedAt) / 1000 / 60);
939
+
940
+ console.log(`${colors.cyan}Session ID:${colors.reset} ${summary.sessionId}`);
941
+ console.log(`${colors.cyan}Started:${colors.reset} ${startedAt.toLocaleString()}`);
942
+ console.log(`${colors.cyan}Last Updated:${colors.reset} ${lastUpdated.toLocaleString()} (${timeDiff} min ago)`);
943
+ console.log(`${colors.cyan}Variant:${colors.reset} ${summary.variant}`);
944
+ console.log('');
945
+
946
+ // Show progress
947
+ console.log(`${colors.bright}Progress:${colors.reset}`);
948
+ console.log(` Tools: ${summary.completedTools}/${summary.totalTools} completed`);
949
+
950
+ if (summary.completedToolsList.length > 0) {
951
+ console.log(`\n${colors.green}Completed:${colors.reset}`);
952
+ summary.completedToolsList.forEach(toolId => {
953
+ console.log(` ${colors.green}✓${colors.reset} ${toolId}`);
954
+ });
955
+ }
956
+
957
+ if (summary.failedToolsList.length > 0) {
958
+ console.log(`\n${colors.red}Failed:${colors.reset}`);
959
+ summary.failedToolsList.forEach(toolId => {
960
+ console.log(` ${colors.red}✗${colors.reset} ${toolId}`);
961
+ });
962
+ }
963
+
964
+ if (summary.currentTool) {
965
+ console.log(`\n${colors.yellow}Current Tool:${colors.reset} ${summary.currentTool}`);
966
+ const progress = summary.currentToolProgress;
967
+ if (progress.totalFiles > 0) {
968
+ console.log(` Progress: ${progress.filesCompleted}/${progress.totalFiles} files (${progress.percentComplete}%)`);
969
+ }
970
+ }
971
+
972
+ console.log('');
973
+ console.log(`${colors.bright}Would you like to resume this installation?${colors.reset}`);
974
+ console.log(` ${colors.green}Y${colors.reset} - Resume from where it left off`);
975
+ console.log(` ${colors.yellow}N${colors.reset} - Start fresh (previous state will be cleared)\n`);
976
+
977
+ const answer = await this.askQuestion(
978
+ `${colors.bright}Resume installation? (Y/n):${colors.reset} `,
979
+ 'Y'
980
+ );
981
+
982
+ return answer.toLowerCase() !== 'n';
983
+ }
984
+
985
+ /**
986
+ * Resume interrupted installation
987
+ * Uses saved state to continue from where it left off
988
+ *
989
+ * @param {InstallationEngine} installationEngine - Installation engine instance with loaded state
990
+ */
991
+ async resumeInstallation(installationEngine) {
992
+ const state = installationEngine.getStateManager().getState();
993
+
994
+ if (!state) {
995
+ console.log(`${colors.red}Error: Could not load installation state${colors.reset}`);
996
+ return;
997
+ }
998
+
999
+ console.log(`\n${colors.bright}${colors.green}Resuming installation...${colors.reset}\n`);
1000
+
1001
+ // Restore selections from state
1002
+ this.selections.variant = state.variant;
1003
+ this.selections.tools = state.tools;
1004
+ this.selections.paths = state.paths;
1005
+
1006
+ // Use installMultipleTools with resume flag
1007
+ try {
1008
+ const results = await installationEngine.installMultipleTools(
1009
+ state.variant,
1010
+ state.tools,
1011
+ state.paths,
1012
+ (progress) => {
1013
+ // Progress callback (same as normal installation)
1014
+ this.drawProgressBar(
1015
+ progress.filesCompleted,
1016
+ progress.totalFiles,
1017
+ progress.percentage,
1018
+ progress.currentFile,
1019
+ this.formatBytes(progress.bytesTransferred),
1020
+ this.formatBytes(progress.totalBytes),
1021
+ this.formatBytes(progress.bytesTransferred / ((Date.now() - Date.now()) / 1000 || 1)) + '/s',
1022
+ '0:00',
1023
+ '0:00'
1024
+ );
1025
+ },
1026
+ true // resume = true
1027
+ );
1028
+
1029
+ // Display results
1030
+ console.log(`\n${colors.bright}Installation Complete${colors.reset}\n`);
1031
+
1032
+ if (results.successful.length > 0) {
1033
+ console.log(`${colors.green}Successfully installed:${colors.reset}`);
1034
+ results.successful.forEach(toolId => {
1035
+ console.log(` ${colors.green}✓${colors.reset} ${toolId}`);
1036
+ });
1037
+ }
1038
+
1039
+ if (results.skipped.length > 0) {
1040
+ console.log(`\n${colors.yellow}Skipped (already completed):${colors.reset}`);
1041
+ results.skipped.forEach(toolId => {
1042
+ console.log(` ${colors.yellow}○${colors.reset} ${toolId}`);
1043
+ });
1044
+ }
1045
+
1046
+ if (results.failed.length > 0) {
1047
+ console.log(`\n${colors.red}Failed:${colors.reset}`);
1048
+ results.failed.forEach(failure => {
1049
+ console.log(` ${colors.red}✗${colors.reset} ${failure.toolId}: ${failure.error}`);
1050
+ });
1051
+ }
1052
+
1053
+ } catch (error) {
1054
+ console.error(`${colors.red}Resume failed: ${error.message}${colors.reset}`);
1055
+ throw error;
1056
+ }
1057
+ }
1058
+
1059
+ showWelcome() {
1060
+ console.clear();
1061
+ console.log(`
1062
+ ${colors.bright}${colors.cyan}┌─────────────────────────────────────────────────────────────┐${colors.reset}
1063
+ ${colors.bright}${colors.cyan}│ Agentic Kit Installer v1.1.0 │${colors.reset}
1064
+ ${colors.bright}${colors.cyan}│ Multi-Tool AI Development Kit Installer │${colors.reset}
1065
+ ${colors.bright}${colors.cyan}└─────────────────────────────────────────────────────────────┘${colors.reset}
1066
+
1067
+ ${colors.bright}This installer will set up AI development tools for:${colors.reset}
1068
+ • Claude Code • Opencode • Ampcode • Droid
1069
+
1070
+ ${colors.yellow}Press Enter to begin or Ctrl+C to exit${colors.reset}
1071
+ `);
1072
+
1073
+ return new Promise(resolve => {
1074
+ this.rl.question('', resolve);
1075
+ });
1076
+ }
1077
+
1078
+ async selectVariant() {
1079
+ console.log(`\n${colors.bright}Step 1/4 — Choose Package Variant${colors.reset}\n`);
1080
+
1081
+ console.log('┌─────────────┬─────────┬─────────┬─────────────────────────────┐');
1082
+ console.log('│ Variant │ Agents │ Skills │ Description │');
1083
+ console.log('├─────────────┼─────────┼─────────┼─────────────────────────────┤');
1084
+
1085
+ this.variants.forEach((variant, index) => {
1086
+ const selected = index === 1 ? '●' : '○';
1087
+ const color = index === 1 ? colors.blue : colors.reset;
1088
+ console.log(`│ ${selected} ${color}${variant.name.padEnd(10)}${colors.reset} │ ${variant.agents.toString().padEnd(7)} │ ${variant.skills.toString().padEnd(7)} │ ${variant.description.padEnd(27)} │`);
1089
+ });
1090
+
1091
+ console.log('└─────────────┴─────────┴─────────┴─────────────────────────────┘');
1092
+ console.log('\nUse arrow keys to navigate, Enter to select');
1093
+
1094
+ // Default to Standard
1095
+ this.selections.variant = 'standard';
1096
+
1097
+ return new Promise(resolve => {
1098
+ this.rl.question('\nPress Enter to continue (default: Standard)', (answer) => {
1099
+ if (answer && ['lite', 'standard', 'pro'].includes(answer.toLowerCase())) {
1100
+ this.selections.variant = answer.toLowerCase();
1101
+ }
1102
+ resolve();
1103
+ });
1104
+ });
1105
+ }
1106
+
1107
+ async selectTools() {
1108
+ console.log(`\n${colors.bright}Step 2/4 — Choose Tools (Minimum 1 required)${colors.reset}\n`);
1109
+
1110
+ console.log(`${colors.cyan}Available Tools:${colors.reset}\n`);
1111
+
1112
+ // Display each tool with detailed information
1113
+ this.tools.forEach((tool, index) => {
1114
+ const num = index + 1;
1115
+ console.log(`${colors.bright}${num}. ${tool.name}${colors.reset}`);
1116
+ console.log(` ${colors.cyan}Description:${colors.reset} ${tool.description}`);
1117
+ console.log(` ${colors.cyan}Best for:${colors.reset} ${tool.useCase}`);
1118
+ console.log(` ${colors.cyan}Target Users:${colors.reset} ${tool.targetUsers}`);
1119
+ console.log(` ${colors.cyan}Default Path:${colors.reset} ${tool.path}`);
1120
+ console.log('');
1121
+ });
1122
+
1123
+ console.log(`${colors.yellow}Select tools by entering IDs separated by spaces${colors.reset}`);
1124
+ console.log(`${colors.yellow}Examples:${colors.reset}`);
1125
+ console.log(` "claude" - Install Claude Code only`);
1126
+ console.log(` "claude opencode" - Install Claude Code and Opencode`);
1127
+ console.log(` "claude opencode ampcode droid" - Install all tools`);
1128
+
1129
+ return new Promise(resolve => {
1130
+ this.rl.question(`\n${colors.bright}Select tools:${colors.reset} `, (answer) => {
1131
+ if (answer.trim()) {
1132
+ const selected = answer.toLowerCase().split(/\s+/);
1133
+ this.selections.tools = selected.filter(id =>
1134
+ this.tools.some(tool => tool.id === id)
1135
+ );
1136
+
1137
+ // Show invalid tool IDs if any
1138
+ const invalid = selected.filter(id =>
1139
+ !this.tools.some(tool => tool.id === id)
1140
+ );
1141
+ if (invalid.length > 0) {
1142
+ console.log(`${colors.yellow}Warning: Unrecognized tool IDs ignored: ${invalid.join(', ')}${colors.reset}`);
1143
+ }
1144
+ }
1145
+
1146
+ if (this.selections.tools.length === 0) {
1147
+ console.log(`${colors.red}Error: At least one tool must be selected${colors.reset}`);
1148
+ console.log(`${colors.yellow}Valid tool IDs: ${this.tools.map(t => t.id).join(', ')}${colors.reset}\n`);
1149
+ throw new Error('At least one tool must be selected');
1150
+ }
1151
+
1152
+ // Show selection summary
1153
+ console.log(`\n${colors.green}Selected ${this.selections.tools.length}/${this.tools.length} tools:${colors.reset}`);
1154
+ this.selections.tools.forEach(id => {
1155
+ const tool = this.tools.find(t => t.id === id);
1156
+ console.log(` ${colors.green}✓${colors.reset} ${tool.name}`);
1157
+ });
1158
+
1159
+ resolve();
1160
+ });
1161
+ });
1162
+ }
1163
+
1164
+ async configurePaths() {
1165
+ console.log(`\n${colors.bright}Step 3/4 — Path Configuration${colors.reset}\n`);
1166
+
1167
+ console.log('Default installation paths for selected tools:\n');
1168
+
1169
+ for (const toolId of this.selections.tools) {
1170
+ const tool = this.tools.find(t => t.id === toolId);
1171
+ console.log(`${colors.bright}${tool.name}${colors.reset}`);
1172
+ console.log(`${colors.cyan}Default path:${colors.reset} ${tool.path}`);
1173
+
1174
+ const customPath = await this.askQuestion(
1175
+ `Enter path (or press Enter for default): `,
1176
+ tool.path
1177
+ );
1178
+
1179
+ // Detect custom path
1180
+ if (customPath !== tool.path) {
1181
+ // Show custom path confirmation dialog
1182
+ const confirmed = await this.showCustomPathConfirmation(tool, customPath);
1183
+
1184
+ if (confirmed) {
1185
+ this.selections.paths[toolId] = customPath;
1186
+ console.log(`${colors.green}✓ Using custom path: ${customPath}${colors.reset}\n`);
1187
+ } else {
1188
+ this.selections.paths[toolId] = tool.path;
1189
+ console.log(`${colors.blue}Using default path: ${tool.path}${colors.reset}\n`);
1190
+ }
1191
+ } else {
1192
+ this.selections.paths[toolId] = tool.path;
1193
+ console.log(`${colors.green}✓ Using default path${colors.reset}\n`);
1194
+ }
1195
+ }
1196
+ }
1197
+
1198
+ async showCustomPathConfirmation(tool, customPath) {
1199
+ console.log(`\n${colors.yellow}┌─────────────────────────────────────────────────────────────┐${colors.reset}`);
1200
+ console.log(`${colors.yellow}│ Custom Path Confirmation │${colors.reset}`);
1201
+ console.log(`${colors.yellow}└─────────────────────────────────────────────────────────────┘${colors.reset}\n`);
1202
+
1203
+ console.log(`${colors.bright}Tool:${colors.reset} ${tool.name}`);
1204
+ console.log(`${colors.bright}Proposed custom path:${colors.reset} ${customPath}`);
1205
+ console.log(`${colors.bright}Default path:${colors.reset} ${tool.path}\n`);
1206
+
1207
+ // Validate the custom path
1208
+ const validation = this.validatePath(customPath);
1209
+
1210
+ // Display validation results
1211
+ console.log(`${colors.cyan}Validation Results:${colors.reset}`);
1212
+
1213
+ if (validation.valid) {
1214
+ console.log(`${colors.green}✓ Path is valid${colors.reset}`);
1215
+ if (validation.parentExists) {
1216
+ console.log(`${colors.green}✓ Parent directory exists${colors.reset}`);
1217
+ }
1218
+ if (validation.hasPermission) {
1219
+ console.log(`${colors.green}✓ Write permission available${colors.reset}`);
1220
+ }
1221
+ if (validation.hasDiskSpace) {
1222
+ console.log(`${colors.green}✓ Sufficient disk space${colors.reset}`);
1223
+ }
1224
+ } else {
1225
+ // Show validation warnings/errors
1226
+ validation.issues.forEach(issue => {
1227
+ const icon = issue.severity === 'error' ? '✗' : '⚠';
1228
+ const color = issue.severity === 'error' ? colors.red : colors.yellow;
1229
+ console.log(`${color}${icon} ${issue.message}${colors.reset}`);
1230
+ });
1231
+ }
1232
+
1233
+ console.log('');
1234
+
1235
+ // Require explicit confirmation
1236
+ if (!validation.valid && validation.issues.some(i => i.severity === 'error')) {
1237
+ console.log(`${colors.red}Cannot use this path due to validation errors${colors.reset}`);
1238
+ console.log(`${colors.yellow}Press Enter to use default path instead${colors.reset}`);
1239
+ await this.askQuestion('');
1240
+ return false;
1241
+ }
1242
+
1243
+ // Ask for confirmation
1244
+ const answer = await this.askQuestion(
1245
+ `${colors.bright}Confirm custom path? (y/N):${colors.reset} `,
1246
+ 'n'
1247
+ );
1248
+
1249
+ return answer.toLowerCase() === 'y';
1250
+ }
1251
+
1252
+ validatePath(customPath) {
1253
+ const result = {
1254
+ valid: true,
1255
+ issues: [],
1256
+ parentExists: false,
1257
+ hasPermission: false,
1258
+ hasDiskSpace: false
1259
+ };
1260
+
1261
+ // Expand tilde to home directory
1262
+ const expandedPath = customPath.startsWith('~')
1263
+ ? path.join(require('os').homedir(), customPath.slice(1))
1264
+ : path.resolve(customPath);
1265
+
1266
+ try {
1267
+ // Check if path is absolute or can be resolved
1268
+ if (!path.isAbsolute(expandedPath)) {
1269
+ result.issues.push({
1270
+ severity: 'error',
1271
+ message: 'Path must be absolute'
1272
+ });
1273
+ result.valid = false;
1274
+ }
1275
+
1276
+ // Check parent directory exists
1277
+ const parentDir = path.dirname(expandedPath);
1278
+ if (fs.existsSync(parentDir)) {
1279
+ result.parentExists = true;
1280
+
1281
+ // Check write permission on parent directory
1282
+ try {
1283
+ fs.accessSync(parentDir, fs.constants.W_OK);
1284
+ result.hasPermission = true;
1285
+ } catch (err) {
1286
+ result.issues.push({
1287
+ severity: 'error',
1288
+ message: 'No write permission for parent directory'
1289
+ });
1290
+ result.valid = false;
1291
+ }
1292
+
1293
+ // Check disk space (require at least 50MB free)
1294
+ try {
1295
+ const stats = fs.statfsSync ? fs.statfsSync(parentDir) : null;
1296
+ if (stats) {
1297
+ const availableSpace = stats.bavail * stats.bsize;
1298
+ const requiredSpace = 50 * 1024 * 1024; // 50MB
1299
+
1300
+ if (availableSpace >= requiredSpace) {
1301
+ result.hasDiskSpace = true;
1302
+ } else {
1303
+ result.issues.push({
1304
+ severity: 'warning',
1305
+ message: `Low disk space (${Math.round(availableSpace / 1024 / 1024)}MB available, 50MB recommended)`
1306
+ });
1307
+ }
1308
+ } else {
1309
+ // Cannot check disk space on this platform
1310
+ result.hasDiskSpace = true; // Assume OK
1311
+ }
1312
+ } catch (err) {
1313
+ // Disk space check failed, but don't block installation
1314
+ result.hasDiskSpace = true; // Assume OK
1315
+ }
1316
+ } else {
1317
+ result.issues.push({
1318
+ severity: 'warning',
1319
+ message: 'Parent directory does not exist (will be created)'
1320
+ });
1321
+ // Still allow installation if parent can be created
1322
+ result.parentExists = false;
1323
+ result.hasPermission = true; // Assume OK if we can check grandparent
1324
+ result.hasDiskSpace = true; // Assume OK
1325
+ }
1326
+
1327
+ // Check if path already exists
1328
+ if (fs.existsSync(expandedPath)) {
1329
+ result.issues.push({
1330
+ severity: 'warning',
1331
+ message: 'Path already exists (files may be overwritten)'
1332
+ });
1333
+ }
1334
+
1335
+ } catch (err) {
1336
+ result.issues.push({
1337
+ severity: 'error',
1338
+ message: `Path validation error: ${err.message}`
1339
+ });
1340
+ result.valid = false;
1341
+ }
1342
+
1343
+ return result;
1344
+ }
1345
+
1346
+ async showSummary() {
1347
+ console.log(`\n${colors.bright}Step 4/4 — Installation Summary${colors.reset}\n`);
1348
+
1349
+ const variant = this.variants.find(v => v.id === this.selections.variant);
1350
+ console.log(`Package: ${variant.name} (${variant.agents} agents, ${variant.skills} skills)`);
1351
+ console.log(`Tools: ${this.selections.tools.map(id =>
1352
+ this.tools.find(t => t.id === id).name
1353
+ ).join(', ')}\n`);
1354
+
1355
+ console.log('Installation Details:');
1356
+ console.log('┌─────────────┬──────────────────┬──────────┬─────────────┐');
1357
+ console.log('│ Tool │ Path │ Files │ Size │');
1358
+ console.log('├─────────────┼──────────────────┼──────────┼─────────────┤');
1359
+
1360
+ // Collect actual file counts and sizes for each tool
1361
+ let totalFiles = 0;
1362
+ let totalBytes = 0;
1363
+ const toolData = [];
1364
+
1365
+ for (const toolId of this.selections.tools) {
1366
+ const tool = this.tools.find(t => t.id === toolId);
1367
+ const installPath = this.selections.paths[toolId];
1368
+ const isCustom = installPath !== tool.path;
1369
+
1370
+ try {
1371
+ // Get actual package contents and size from PackageManager
1372
+ const contents = await this.packageManager.getPackageContents(toolId, this.selections.variant);
1373
+ const sizeInfo = await this.packageManager.getPackageSize(toolId, this.selections.variant);
1374
+
1375
+ toolData.push({
1376
+ tool,
1377
+ path: installPath,
1378
+ isCustom,
1379
+ fileCount: contents.totalFiles,
1380
+ size: sizeInfo.formattedSize
1381
+ });
1382
+
1383
+ totalFiles += contents.totalFiles;
1384
+ totalBytes += sizeInfo.size;
1385
+ } catch (error) {
1386
+ // If package data not available, show placeholder
1387
+ toolData.push({
1388
+ tool,
1389
+ path: installPath,
1390
+ isCustom,
1391
+ fileCount: 'N/A',
1392
+ size: 'N/A'
1393
+ });
1394
+ }
1395
+ }
1396
+
1397
+ // Display tool rows with actual data
1398
+ for (const data of toolData) {
1399
+ const pathDisplay = data.isCustom ? `${data.path} *` : data.path;
1400
+
1401
+ // Format file count and size for display
1402
+ const fileCountStr = typeof data.fileCount === 'number' ? `${data.fileCount}` : data.fileCount;
1403
+ const sizeStr = data.size;
1404
+
1405
+ console.log(`│ ${data.tool.name.padEnd(11)} │ ${pathDisplay.padEnd(16)} │ ${fileCountStr.padEnd(8)} │ ${sizeStr.padEnd(11)} │`);
1406
+ }
1407
+
1408
+ console.log('└─────────────┴──────────────────┴──────────┴─────────────┘');
1409
+
1410
+ // Show custom path footnote if applicable
1411
+ if (toolData.some(d => d.isCustom)) {
1412
+ console.log('\n* Custom path specified');
1413
+ }
1414
+
1415
+ // Show totals if we have data
1416
+ if (totalFiles > 0) {
1417
+ // Format total size
1418
+ const totalSizeFormatted = this.formatBytes(totalBytes);
1419
+ console.log(`\n${colors.cyan}Total:${colors.reset} ${totalFiles} files, ${totalSizeFormatted}`);
1420
+ }
1421
+
1422
+ console.log('\nPress Enter to install or Esc to cancel');
1423
+
1424
+ return new Promise(resolve => {
1425
+ this.rl.question('', resolve);
1426
+ });
1427
+ }
1428
+
1429
+ /**
1430
+ * Format bytes to human-readable size (helper method for summary display)
1431
+ * @param {number} bytes - Size in bytes
1432
+ * @returns {string} Formatted size string (e.g., "8.39 MB")
1433
+ */
1434
+ formatBytes(bytes) {
1435
+ if (bytes === 0) return '0 Bytes';
1436
+
1437
+ const k = 1024;
1438
+ const sizes = ['Bytes', 'KB', 'MB', 'GB'];
1439
+ const i = Math.floor(Math.log(bytes) / Math.log(k));
1440
+
1441
+ return parseFloat((bytes / Math.pow(k, i)).toFixed(2)) + ' ' + sizes[i];
1442
+ }
1443
+
1444
+ /**
1445
+ * Get PackageManager instance (for testing and internal use)
1446
+ * @returns {PackageManager} Package manager instance
1447
+ */
1448
+ getPackageManager() {
1449
+ return this.packageManager;
1450
+ }
1451
+
1452
+ /**
1453
+ * Perform pre-installation checks to catch potential issues early
1454
+ * Validates packages, paths, permissions, and disk space
1455
+ *
1456
+ * @returns {Promise<object>} Object with success flag, errors array, and warnings array
1457
+ */
1458
+ async performPreInstallationChecks() {
1459
+ const errors = [];
1460
+ const warnings = [];
1461
+ const os = require('os');
1462
+
1463
+ // Check Node.js version (require 14+)
1464
+ const nodeVersion = process.version;
1465
+ const majorVersion = parseInt(nodeVersion.slice(1).split('.')[0]);
1466
+ if (majorVersion < 14) {
1467
+ errors.push(`Node.js version ${nodeVersion} is too old. Please upgrade to Node.js 14 or higher.`);
1468
+ }
1469
+
1470
+ // Validate each selected tool's package
1471
+ for (const toolId of this.selections.tools) {
1472
+ try {
1473
+ const validation = await this.packageManager.validatePackage(toolId, this.selections.variant);
1474
+ if (!validation.valid) {
1475
+ errors.push(`Package validation failed for ${toolId}: ${validation.error}`);
1476
+ }
1477
+ } catch (error) {
1478
+ errors.push(`Cannot validate package for ${toolId}: ${error.message}`);
1479
+ }
1480
+ }
1481
+
1482
+ // Validate all installation paths
1483
+ for (const toolId of this.selections.tools) {
1484
+ const targetPath = this.selections.paths[toolId];
1485
+ const expandedPath = targetPath.startsWith('~')
1486
+ ? path.join(os.homedir(), targetPath.slice(1))
1487
+ : path.resolve(targetPath);
1488
+
1489
+ // Check parent directory write permissions
1490
+ const parentDir = path.dirname(expandedPath);
1491
+ try {
1492
+ if (fs.existsSync(parentDir)) {
1493
+ fs.accessSync(parentDir, fs.constants.W_OK);
1494
+ } else {
1495
+ // Check if we can create parent directory
1496
+ const grandParentDir = path.dirname(parentDir);
1497
+ if (fs.existsSync(grandParentDir)) {
1498
+ fs.accessSync(grandParentDir, fs.constants.W_OK);
1499
+ } else {
1500
+ errors.push(`Cannot create installation path for ${toolId}: parent directories do not exist`);
1501
+ }
1502
+ }
1503
+ } catch (error) {
1504
+ errors.push(`No write permission for ${toolId} installation path: ${targetPath}`);
1505
+ }
1506
+
1507
+ // Check if path already exists and has content
1508
+ if (fs.existsSync(expandedPath)) {
1509
+ try {
1510
+ const files = fs.readdirSync(expandedPath);
1511
+ if (files.length > 0) {
1512
+ warnings.push(`${toolId} installation path already exists and contains ${files.length} file(s). Existing installation will be backed up.`);
1513
+ }
1514
+ } catch (error) {
1515
+ warnings.push(`Cannot read existing installation directory for ${toolId}`);
1516
+ }
1517
+ }
1518
+ }
1519
+
1520
+ // Check available disk space
1521
+ try {
1522
+ // Calculate total required space for all selected tools
1523
+ let totalRequiredSpace = 0;
1524
+ for (const toolId of this.selections.tools) {
1525
+ try {
1526
+ const sizeInfo = await this.packageManager.getPackageSize(toolId, this.selections.variant);
1527
+ totalRequiredSpace += sizeInfo.size;
1528
+ } catch (error) {
1529
+ // Skip if we can't determine size
1530
+ }
1531
+ }
1532
+
1533
+ // Check disk space on home directory
1534
+ const homeDir = os.homedir();
1535
+ if (fs.statfsSync) {
1536
+ const stats = fs.statfsSync(homeDir);
1537
+ const availableSpace = stats.bavail * stats.bsize;
1538
+ const requiredSpace = totalRequiredSpace * 1.5; // 50% buffer for safety
1539
+
1540
+ if (availableSpace < requiredSpace) {
1541
+ const availableMB = Math.round(availableSpace / 1024 / 1024);
1542
+ const requiredMB = Math.round(requiredSpace / 1024 / 1024);
1543
+ errors.push(`Insufficient disk space: ${availableMB}MB available, ${requiredMB}MB required`);
1544
+ } else if (availableSpace < totalRequiredSpace * 2) {
1545
+ const availableMB = Math.round(availableSpace / 1024 / 1024);
1546
+ warnings.push(`Low disk space: ${availableMB}MB available. Consider freeing up space.`);
1547
+ }
1548
+ }
1549
+ } catch (error) {
1550
+ // Disk space check not available on this platform
1551
+ warnings.push('Could not check disk space (platform limitation)');
1552
+ }
1553
+
1554
+ // Check for conflicting installations
1555
+ for (const toolId of this.selections.tools) {
1556
+ const targetPath = this.selections.paths[toolId];
1557
+ const expandedPath = targetPath.startsWith('~')
1558
+ ? path.join(os.homedir(), targetPath.slice(1))
1559
+ : path.resolve(targetPath);
1560
+
1561
+ const manifestPath = path.join(expandedPath, 'manifest.json');
1562
+ if (fs.existsSync(manifestPath)) {
1563
+ try {
1564
+ const manifest = JSON.parse(fs.readFileSync(manifestPath, 'utf8'));
1565
+ if (manifest.tool !== toolId) {
1566
+ warnings.push(`Path ${targetPath} contains a different tool (${manifest.tool}). This may cause conflicts.`);
1567
+ }
1568
+ } catch (error) {
1569
+ warnings.push(`Cannot read existing manifest at ${targetPath}`);
1570
+ }
1571
+ }
1572
+ }
1573
+
1574
+ return {
1575
+ success: errors.length === 0,
1576
+ errors,
1577
+ warnings
1578
+ };
1579
+ }
1580
+
1581
+ async install() {
1582
+ console.log(`\n${colors.bright}Installing ${this.selections.variant} package...${colors.reset}\n`);
1583
+
1584
+ // Perform pre-installation checks
1585
+ console.log(`${colors.cyan}Performing pre-installation checks...${colors.reset}`);
1586
+ const preCheckResult = await this.performPreInstallationChecks();
1587
+
1588
+ if (!preCheckResult.success) {
1589
+ console.log(`\n${colors.red}Pre-installation checks failed:${colors.reset}`);
1590
+ preCheckResult.errors.forEach(error => {
1591
+ console.log(` ${colors.red}✗${colors.reset} ${error}`);
1592
+ });
1593
+
1594
+ if (preCheckResult.warnings.length > 0) {
1595
+ console.log(`\n${colors.yellow}Warnings:${colors.reset}`);
1596
+ preCheckResult.warnings.forEach(warning => {
1597
+ console.log(` ${colors.yellow}⚠${colors.reset} ${warning}`);
1598
+ });
1599
+ }
1600
+
1601
+ throw new Error('Pre-installation checks failed. Please resolve the issues above and try again.');
1602
+ }
1603
+
1604
+ if (preCheckResult.warnings.length > 0) {
1605
+ console.log(`${colors.yellow}Warnings detected:${colors.reset}`);
1606
+ preCheckResult.warnings.forEach(warning => {
1607
+ console.log(` ${colors.yellow}⚠${colors.reset} ${warning}`);
1608
+ });
1609
+
1610
+ // In silent mode, auto-proceed with warnings
1611
+ if (!this.cliArgs.silent) {
1612
+ const proceed = await this.askQuestion(
1613
+ `\n${colors.bright}Continue despite warnings? (Y/n):${colors.reset} `,
1614
+ 'Y'
1615
+ );
1616
+
1617
+ if (proceed.toLowerCase() === 'n') {
1618
+ throw new Error('Installation cancelled by user due to warnings');
1619
+ }
1620
+ } else {
1621
+ console.log(`${colors.yellow}Silent mode: auto-proceeding despite warnings${colors.reset}`);
1622
+ }
1623
+ }
1624
+
1625
+ console.log(`${colors.green}✓ Pre-installation checks passed${colors.reset}\n`);
1626
+
1627
+ // Initialize InstallationEngine
1628
+ const PathManager = require('./path-manager');
1629
+ const InstallationEngine = require('./installation-engine');
1630
+
1631
+ const pathManager = new PathManager();
1632
+ const installationEngine = new InstallationEngine(pathManager, this.packageManager);
1633
+
1634
+ // Initialize state management for resume capability
1635
+ installationEngine.getStateManager().initializeState(
1636
+ this.selections.variant,
1637
+ this.selections.tools,
1638
+ this.selections.paths
1639
+ );
1640
+ await installationEngine.getStateManager().saveState({ stage: 'initializing' });
1641
+
1642
+ // Track overall progress
1643
+ let overallFilesCompleted = 0;
1644
+ let overallTotalFiles = 0;
1645
+ let successfulInstalls = [];
1646
+ let failedInstalls = [];
1647
+ let verificationResults = [];
1648
+
1649
+ // Calculate total files across all tools (only for valid tools)
1650
+ const toolFileCount = {};
1651
+ for (const toolId of this.selections.tools) {
1652
+ try {
1653
+ const contents = await this.packageManager.getPackageContents(toolId, this.selections.variant);
1654
+ toolFileCount[toolId] = contents.totalFiles;
1655
+ overallTotalFiles += contents.totalFiles;
1656
+ } catch (error) {
1657
+ // Skip tools that don't have valid packages
1658
+ toolFileCount[toolId] = 0;
1659
+ }
1660
+ }
1661
+
1662
+ const startTime = Date.now();
1663
+
1664
+ // Install each selected tool
1665
+ for (let i = 0; i < this.selections.tools.length; i++) {
1666
+ const toolId = this.selections.tools[i];
1667
+ const tool = this.tools.find(t => t.id === toolId);
1668
+ const targetPath = this.selections.paths[toolId];
1669
+
1670
+ console.log(`\n${colors.bright}[${i + 1}/${this.selections.tools.length}] Installing ${tool.name}...${colors.reset}`);
1671
+ console.log(`${colors.cyan}Target:${colors.reset} ${targetPath}\n`);
1672
+
1673
+ // Track files completed for this tool
1674
+ let toolFilesCompleted = 0;
1675
+ let toolStartTime = Date.now();
1676
+
1677
+ try {
1678
+ // Install with progress callback
1679
+ await installationEngine.installPackage(
1680
+ toolId,
1681
+ this.selections.variant,
1682
+ targetPath,
1683
+ (progress) => {
1684
+ // Update tool files completed (only count new files)
1685
+ if (progress.filesCompleted > toolFilesCompleted) {
1686
+ const newFiles = progress.filesCompleted - toolFilesCompleted;
1687
+ overallFilesCompleted += newFiles;
1688
+ toolFilesCompleted = progress.filesCompleted;
1689
+ }
1690
+
1691
+ // Calculate elapsed time and speed
1692
+ const elapsedMs = Date.now() - toolStartTime;
1693
+ const elapsedSec = Math.floor(elapsedMs / 1000);
1694
+ const elapsedMin = Math.floor(elapsedSec / 60);
1695
+ const elapsedSecRemainder = elapsedSec % 60;
1696
+ const elapsedFormatted = `${elapsedMin}:${elapsedSecRemainder.toString().padStart(2, '0')}`;
1697
+
1698
+ // Calculate transfer speed (bytes per second)
1699
+ const speed = elapsedMs > 0 ? progress.bytesTransferred / (elapsedMs / 1000) : 0;
1700
+ const speedFormatted = this.formatBytes(speed);
1701
+
1702
+ // Calculate ETA
1703
+ const remainingBytes = progress.totalBytes - progress.bytesTransferred;
1704
+ const etaSec = speed > 0 ? Math.floor(remainingBytes / speed) : 0;
1705
+ const etaMin = Math.floor(etaSec / 60);
1706
+ const etaSecRemainder = etaSec % 60;
1707
+ const etaFormatted = `${etaMin}:${etaSecRemainder.toString().padStart(2, '0')}`;
1708
+
1709
+ // Draw progress bar for current tool
1710
+ this.drawProgressBar(
1711
+ progress.filesCompleted,
1712
+ progress.totalFiles,
1713
+ progress.percentage,
1714
+ progress.currentFile,
1715
+ this.formatBytes(progress.bytesTransferred),
1716
+ this.formatBytes(progress.totalBytes),
1717
+ speedFormatted,
1718
+ elapsedFormatted,
1719
+ etaFormatted
1720
+ );
1721
+
1722
+ // Draw overall progress
1723
+ // Cap overall percentage at 100% to handle file count mismatches
1724
+ const overallPercentage = overallTotalFiles > 0
1725
+ ? Math.min(100, Math.round((overallFilesCompleted / overallTotalFiles) * 100))
1726
+ : 0;
1727
+
1728
+ this.drawOverallProgress(
1729
+ overallFilesCompleted,
1730
+ overallTotalFiles,
1731
+ overallPercentage,
1732
+ i + 1,
1733
+ this.selections.tools.length
1734
+ );
1735
+ }
1736
+ );
1737
+
1738
+ // Clear progress lines after completion
1739
+ process.stdout.write('\x1b[2K\r'); // Clear current line
1740
+ process.stdout.write('\x1b[1A\x1b[2K\r'); // Clear previous line
1741
+
1742
+ console.log(`${colors.green}✓ ${tool.name} installed successfully${colors.reset}`);
1743
+ console.log(` ${colors.cyan}Location:${colors.reset} ${targetPath}`);
1744
+ console.log(` ${colors.cyan}Files:${colors.reset} ${toolFilesCompleted} files`);
1745
+
1746
+ // Verify installation
1747
+ console.log(` ${colors.cyan}Verifying installation...${colors.reset}`);
1748
+ const verification = await installationEngine.verifyInstallation(toolId, targetPath);
1749
+
1750
+ if (verification.valid) {
1751
+ console.log(` ${colors.green}✓ Verification passed${colors.reset}`);
1752
+ } else {
1753
+ console.log(` ${colors.yellow}⚠ Verification completed with issues${colors.reset}`);
1754
+ }
1755
+
1756
+ successfulInstalls.push({
1757
+ toolId,
1758
+ name: tool.name,
1759
+ path: targetPath,
1760
+ fileCount: toolFilesCompleted
1761
+ });
1762
+
1763
+ verificationResults.push(verification);
1764
+
1765
+ // Mark tool as completed in state
1766
+ await installationEngine.getStateManager().completeCurrentTool();
1767
+
1768
+ } catch (error) {
1769
+ // Clear progress lines on error
1770
+ process.stdout.write('\x1b[2K\r');
1771
+ process.stdout.write('\x1b[1A\x1b[2K\r');
1772
+
1773
+ // Categorize the error for better user guidance
1774
+ const errorInfo = this.categorizeError(error);
1775
+
1776
+ console.error(`${colors.red}✗ Failed to install ${tool.name}${colors.reset}`);
1777
+ console.error(` ${colors.red}Error Type:${colors.reset} ${errorInfo.type}`);
1778
+ console.error(` ${colors.red}Message:${colors.reset} ${error.message}\n`);
1779
+
1780
+ // Display actionable advice
1781
+ if (errorInfo.advice.length > 0) {
1782
+ console.error(` ${colors.yellow}Suggested Actions:${colors.reset}`);
1783
+ errorInfo.advice.slice(0, 3).forEach((advice, index) => {
1784
+ console.error(` ${index + 1}. ${advice}`);
1785
+ });
1786
+ console.error('');
1787
+ }
1788
+
1789
+ failedInstalls.push({
1790
+ toolId,
1791
+ name: tool.name,
1792
+ path: targetPath,
1793
+ error: error.message,
1794
+ errorType: errorInfo.type
1795
+ });
1796
+
1797
+ // Mark tool as failed in state
1798
+ await installationEngine.getStateManager().failCurrentTool(error);
1799
+
1800
+ // Offer recovery options if there are more tools to install
1801
+ if (i < this.selections.tools.length - 1) {
1802
+ const shouldContinue = await this.offerRecoveryOptions(tool.name, i + 1, this.selections.tools.length);
1803
+
1804
+ if (!shouldContinue) {
1805
+ console.log(`\n${colors.yellow}Installation cancelled by user${colors.reset}`);
1806
+ break; // Stop installing remaining tools
1807
+ }
1808
+ }
1809
+ }
1810
+ }
1811
+
1812
+ // Calculate total elapsed time
1813
+ const totalElapsedMs = Date.now() - startTime;
1814
+ const totalElapsedSec = Math.floor(totalElapsedMs / 1000);
1815
+ const totalElapsedMin = Math.floor(totalElapsedSec / 60);
1816
+ const totalElapsedSecRemainder = totalElapsedSec % 60;
1817
+ const totalElapsedFormatted = `${totalElapsedMin}:${totalElapsedSecRemainder.toString().padStart(2, '0')}`;
1818
+
1819
+ // Display final summary
1820
+ console.log(`\n${colors.bright}Installation Complete${colors.reset}`);
1821
+ console.log(`${colors.cyan}Total time:${colors.reset} ${totalElapsedFormatted}`);
1822
+ console.log(`${colors.cyan}Total files:${colors.reset} ${overallFilesCompleted} files\n`);
1823
+
1824
+ if (successfulInstalls.length > 0) {
1825
+ console.log(`${colors.green}Successfully installed:${colors.reset}`);
1826
+ for (const install of successfulInstalls) {
1827
+ console.log(` ${colors.green}✓${colors.reset} ${install.name} (${install.fileCount} files)`);
1828
+ }
1829
+ }
1830
+
1831
+ if (failedInstalls.length > 0) {
1832
+ console.log(`\n${colors.red}Failed installations:${colors.reset}`);
1833
+ for (const install of failedInstalls) {
1834
+ console.log(` ${colors.red}✗${colors.reset} ${install.name} (${install.errorType}): ${install.error}`);
1835
+ }
1836
+ console.log(`\n${colors.yellow}Note: Failed installations have been automatically rolled back${colors.reset}`);
1837
+ console.log(`${colors.yellow}No partial installations remain on your system${colors.reset}`);
1838
+
1839
+ // Offer retry options for failed installations
1840
+ if (failedInstalls.length > 0 && successfulInstalls.length > 0) {
1841
+ console.log(`\n${colors.cyan}You can retry failed installations by running the installer again${colors.reset}`);
1842
+ }
1843
+ }
1844
+
1845
+ // Display detailed verification reports for successful installations
1846
+ if (successfulInstalls.length > 0 && verificationResults.length > 0) {
1847
+ console.log(`\n${colors.bright}${'='.repeat(60)}${colors.reset}`);
1848
+ for (let i = 0; i < successfulInstalls.length; i++) {
1849
+ const install = successfulInstalls[i];
1850
+ const verification = verificationResults[i];
1851
+ this.displayVerificationReport(verification, install.name);
1852
+ }
1853
+ console.log(`${colors.bright}${'='.repeat(60)}${colors.reset}\n`);
1854
+ }
1855
+
1856
+ // Generate and save installation report
1857
+ if (successfulInstalls.length > 0 || failedInstalls.length > 0) {
1858
+ await this.generateInstallationReport(
1859
+ successfulInstalls,
1860
+ failedInstalls,
1861
+ verificationResults,
1862
+ totalElapsedMs
1863
+ );
1864
+ }
1865
+
1866
+ // Clear installation state if all tools completed successfully
1867
+ if (failedInstalls.length === 0) {
1868
+ await installationEngine.getStateManager().clearState();
1869
+ console.log(`${colors.green}✓ Installation state cleared${colors.reset}`);
1870
+ } else {
1871
+ console.log(`\n${colors.yellow}Installation state preserved for resume capability${colors.reset}`);
1872
+ console.log(`${colors.yellow}Run the installer again to retry failed tools${colors.reset}`);
1873
+ }
1874
+
1875
+ // Collect telemetry data (if user has consented)
1876
+ await this.collectInstallationTelemetry(
1877
+ failedInstalls.length === 0,
1878
+ this.selections.tools.length,
1879
+ failedInstalls.length,
1880
+ 0, // warnings are tracked in verification
1881
+ totalElapsedMs
1882
+ );
1883
+ }
1884
+
1885
+ /**
1886
+ * Draw progress bar for current tool installation
1887
+ * Updates in place without scrolling using ANSI escape codes
1888
+ */
1889
+ drawProgressBar(filesCompleted, totalFiles, percentage, currentFile, bytesTransferred, totalBytes, speed, elapsed, eta) {
1890
+ // Move cursor to beginning of line and clear it
1891
+ process.stdout.write('\x1b[2K\r');
1892
+
1893
+ // Calculate progress bar width (40 characters)
1894
+ const barWidth = 40;
1895
+ const filledWidth = Math.round((percentage / 100) * barWidth);
1896
+ const emptyWidth = barWidth - filledWidth;
1897
+
1898
+ // Build progress bar
1899
+ const bar = '█'.repeat(filledWidth) + '░'.repeat(emptyWidth);
1900
+
1901
+ // Truncate current file name if too long
1902
+ const maxFileNameLength = 50;
1903
+ let displayFileName = currentFile;
1904
+ if (displayFileName.length > maxFileNameLength) {
1905
+ displayFileName = '...' + displayFileName.slice(-(maxFileNameLength - 3));
1906
+ }
1907
+
1908
+ // Display progress bar
1909
+ process.stdout.write(
1910
+ `[${colors.cyan}${bar}${colors.reset}] ${percentage}% (${filesCompleted}/${totalFiles} files)\n`
1911
+ );
1912
+
1913
+ // Display current file and stats
1914
+ process.stdout.write(
1915
+ `${colors.yellow}Copying:${colors.reset} ${displayFileName} | ` +
1916
+ `${bytesTransferred}/${totalBytes} | ` +
1917
+ `${speed}/s | ` +
1918
+ `Elapsed: ${elapsed} | ` +
1919
+ `ETA: ${eta}`
1920
+ );
1921
+
1922
+ // Move cursor up one line to overwrite on next update
1923
+ process.stdout.write('\x1b[1A');
1924
+ }
1925
+
1926
+ /**
1927
+ * Draw overall progress across all tools
1928
+ */
1929
+ drawOverallProgress(filesCompleted, totalFiles, percentage, currentTool, totalTools) {
1930
+ // This is called after the tool progress, so cursor is already up one line
1931
+ // Move down to write overall progress below the tool progress
1932
+ process.stdout.write('\x1b[2B'); // Move down 2 lines
1933
+ process.stdout.write('\x1b[2K\r'); // Clear line
1934
+
1935
+ // Display overall progress
1936
+ process.stdout.write(
1937
+ `${colors.bright}Overall:${colors.reset} Tool ${currentTool}/${totalTools} | ` +
1938
+ `${filesCompleted}/${totalFiles} files (${percentage}%)`
1939
+ );
1940
+
1941
+ // Move cursor back up
1942
+ process.stdout.write('\x1b[1A'); // Move up 1 line to be ready for next tool progress update
1943
+ }
1944
+
1945
+ askQuestion(prompt, defaultValue = '') {
1946
+ return new Promise(resolve => {
1947
+ this.rl.question(prompt, (answer) => {
1948
+ resolve(answer.trim() || defaultValue);
1949
+ });
1950
+ });
1951
+ }
1952
+
1953
+ /**
1954
+ * Display verification report for a single tool
1955
+ * Shows verification status, component counts, and any issues/warnings
1956
+ *
1957
+ * @param {object} verification - Verification result from InstallationEngine
1958
+ * @param {string} toolName - Display name of the tool
1959
+ */
1960
+ displayVerificationReport(verification, toolName) {
1961
+ console.log(`\n${colors.bright}Verification Report: ${toolName}${colors.reset}`);
1962
+ console.log('─'.repeat(60));
1963
+
1964
+ if (verification.valid) {
1965
+ console.log(`${colors.green}✓ Installation verified successfully${colors.reset}`);
1966
+ } else {
1967
+ console.log(`${colors.red}✗ Verification failed${colors.reset}`);
1968
+ }
1969
+
1970
+ // Display manifest location
1971
+ const manifestPath = path.join(verification.targetPath, 'manifest.json');
1972
+ console.log(`\n${colors.cyan}Manifest:${colors.reset} ${manifestPath}`);
1973
+
1974
+ // Display variant and version info
1975
+ if (verification.variant) {
1976
+ console.log(`${colors.cyan}Variant:${colors.reset} ${verification.variant}`);
1977
+ }
1978
+ if (verification.version) {
1979
+ console.log(`${colors.cyan}Version:${colors.reset} ${verification.version}`);
1980
+ }
1981
+
1982
+ // Display component counts
1983
+ console.log(`\n${colors.cyan}Components:${colors.reset}`);
1984
+ const components = verification.components;
1985
+ const agentCount = components.agents.found;
1986
+ const skillCount = components.skills.found;
1987
+ const resourceCount = components.resources.found;
1988
+ const hookCount = components.hooks.found;
1989
+
1990
+ const componentSummary = [];
1991
+ if (agentCount > 0) componentSummary.push(`${agentCount} agent${agentCount !== 1 ? 's' : ''}`);
1992
+ if (skillCount > 0) componentSummary.push(`${skillCount} skill${skillCount !== 1 ? 's' : ''}`);
1993
+ if (resourceCount > 0) componentSummary.push(`${resourceCount} resource${resourceCount !== 1 ? 's' : ''}`);
1994
+ if (hookCount > 0) componentSummary.push(`${hookCount} hook${hookCount !== 1 ? 's' : ''}`);
1995
+
1996
+ console.log(` ${componentSummary.join(', ')}`);
1997
+
1998
+ // Display issues if any
1999
+ if (verification.issues.length > 0) {
2000
+ console.log(`\n${colors.red}Issues:${colors.reset}`);
2001
+ for (const issue of verification.issues) {
2002
+ console.log(` ${colors.red}✗${colors.reset} ${issue.message}`);
2003
+ }
2004
+ }
2005
+
2006
+ // Display warnings if any
2007
+ if (verification.warnings.length > 0) {
2008
+ console.log(`\n${colors.yellow}Warnings:${colors.reset}`);
2009
+ for (const warning of verification.warnings) {
2010
+ console.log(` ${colors.yellow}⚠${colors.reset} ${warning.message}`);
2011
+ }
2012
+ }
2013
+
2014
+ // Display next steps for successful installations
2015
+ if (verification.valid) {
2016
+ console.log(`\n${colors.bright}Next Steps:${colors.reset}`);
2017
+ console.log(` To use ${toolName}, navigate to: ${verification.targetPath}`);
2018
+
2019
+ // Provide tool-specific usage hints
2020
+ const toolId = verification.toolId;
2021
+ if (toolId === 'claude') {
2022
+ console.log(` ${colors.cyan}Quick start:${colors.reset} Run 'claude' to start using Claude Code`);
2023
+ } else if (toolId === 'opencode') {
2024
+ console.log(` ${colors.cyan}Quick start:${colors.reset} Run 'opencode' to start using Opencode`);
2025
+ } else if (toolId === 'ampcode') {
2026
+ console.log(` ${colors.cyan}Quick start:${colors.reset} Run 'ampcode' to start using Ampcode`);
2027
+ } else if (toolId === 'droid') {
2028
+ console.log(` ${colors.cyan}Quick start:${colors.reset} Run 'droid' to start using Droid`);
2029
+ }
2030
+ }
2031
+ }
2032
+
2033
+ /**
2034
+ * Generate and save installation report to ~/.agentic-kit-install.log
2035
+ * Creates a detailed log of the installation session
2036
+ *
2037
+ * @param {array} successfulInstalls - Array of successful installation objects
2038
+ * @param {array} failedInstalls - Array of failed installation objects
2039
+ * @param {array} verificationResults - Array of verification result objects
2040
+ * @param {number} totalElapsedMs - Total elapsed time in milliseconds
2041
+ */
2042
+ async generateInstallationReport(successfulInstalls, failedInstalls, verificationResults, totalElapsedMs) {
2043
+ const ReportTemplate = require('./report-template');
2044
+ const reportTemplate = new ReportTemplate();
2045
+
2046
+ // Prepare installation data for the report template
2047
+ const startTime = Date.now() - totalElapsedMs;
2048
+ const endTime = Date.now();
2049
+
2050
+ // Build tools array with complete information
2051
+ const tools = [];
2052
+ const allErrors = [];
2053
+ const allWarnings = [];
2054
+
2055
+ // Process successful installations
2056
+ for (let i = 0; i < successfulInstalls.length; i++) {
2057
+ const install = successfulInstalls[i];
2058
+ const verification = verificationResults[i];
2059
+
2060
+ // Get package size information
2061
+ let sizeBytes = 0;
2062
+ try {
2063
+ const sizeInfo = await this.packageManager.getPackageSize(install.toolId, this.selections.variant);
2064
+ sizeBytes = sizeInfo.bytes || 0;
2065
+ } catch (error) {
2066
+ // If we can't get size, estimate based on file count (rough estimate: 15KB per file)
2067
+ sizeBytes = install.fileCount * 15 * 1024;
2068
+ }
2069
+
2070
+ // Get manifest path
2071
+ const manifestPath = path.join(install.path, 'manifest.json');
2072
+
2073
+ tools.push({
2074
+ toolId: install.toolId,
2075
+ path: install.path,
2076
+ filesInstalled: install.fileCount,
2077
+ sizeBytes: sizeBytes,
2078
+ components: verification && verification.components ? {
2079
+ agents: verification.components.agents.found,
2080
+ skills: verification.components.skills.found,
2081
+ resources: verification.components.resources.found,
2082
+ hooks: verification.components.hooks.found
2083
+ } : {},
2084
+ verified: verification ? verification.valid : false,
2085
+ verificationStatus: verification && verification.valid ? 'All components verified successfully' : 'Verification completed with issues',
2086
+ manifestPath: manifestPath
2087
+ });
2088
+
2089
+ // Collect warnings from verification
2090
+ if (verification && verification.warnings && verification.warnings.length > 0) {
2091
+ verification.warnings.forEach(warning => {
2092
+ allWarnings.push(`[${install.toolId}] ${warning.message}`);
2093
+ });
2094
+ }
2095
+
2096
+ // Collect issues from verification as errors
2097
+ if (verification && verification.issues && verification.issues.length > 0) {
2098
+ verification.issues.forEach(issue => {
2099
+ allErrors.push(`[${install.toolId}] ${issue.message}`);
2100
+ });
2101
+ }
2102
+ }
2103
+
2104
+ // Process failed installations
2105
+ for (const install of failedInstalls) {
2106
+ allErrors.push(`[${install.toolId}] Installation failed: ${install.error}`);
2107
+ }
2108
+
2109
+ // Build installation data object
2110
+ const installationData = {
2111
+ variant: this.selections.variant,
2112
+ tools: tools,
2113
+ startTime: startTime,
2114
+ endTime: endTime,
2115
+ success: failedInstalls.length === 0,
2116
+ errors: allErrors,
2117
+ warnings: allWarnings
2118
+ };
2119
+
2120
+ // Generate and save report using ReportTemplate
2121
+ try {
2122
+ const reportPath = await reportTemplate.createAndSaveReport(installationData);
2123
+ console.log(`\n${colors.cyan}Installation report saved to:${colors.reset} ${reportPath}`);
2124
+ } catch (error) {
2125
+ console.warn(`${colors.yellow}Warning: Could not save installation report: ${error.message}${colors.reset}`);
2126
+ }
2127
+ }
2128
+
2129
+ /**
2130
+ * Prompt user for telemetry consent
2131
+ * Only prompts if consent hasn't been set before and --no-telemetry flag not present
2132
+ *
2133
+ * @returns {Promise<void>}
2134
+ */
2135
+ async promptTelemetryConsent() {
2136
+ // Skip if --no-telemetry flag is present
2137
+ if (this.cliArgs.noTelemetry) {
2138
+ return;
2139
+ }
2140
+
2141
+ // Skip if in silent mode
2142
+ if (this.cliArgs.silent) {
2143
+ return;
2144
+ }
2145
+
2146
+ const Telemetry = require('./telemetry');
2147
+ const telemetry = new Telemetry();
2148
+
2149
+ // Check if user has already made a decision
2150
+ const hasConsent = await telemetry.hasConsent();
2151
+ const hasOptedOut = await telemetry.hasOptedOut();
2152
+
2153
+ // Only prompt if user hasn't decided yet
2154
+ if (!hasConsent && !hasOptedOut) {
2155
+ console.log(`\n${colors.cyan}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${colors.reset}`);
2156
+ console.log(`${colors.bright}Help Improve Agentic Kit${colors.reset}\n`);
2157
+ console.log('Would you like to share anonymous usage statistics to help improve agentic-kit?');
2158
+ console.log('\nData collected:');
2159
+ console.log(' • Package variant selected (lite/standard/pro)');
2160
+ console.log(' • Number of tools installed');
2161
+ console.log(' • Installation time and success status');
2162
+ console.log(' • Operating system type');
2163
+ console.log(' • Node.js version');
2164
+ console.log('\nData NOT collected:');
2165
+ console.log(' • File paths or directory locations');
2166
+ console.log(' • Personal information');
2167
+ console.log(' • Specific tool names');
2168
+ console.log(' • Any identifying information');
2169
+ console.log('\nYou can change this setting later or opt-out anytime.');
2170
+ console.log(`For details, see: ${colors.cyan}docs/PRIVACY.md${colors.reset}`);
2171
+ console.log(`${colors.cyan}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${colors.reset}\n`);
2172
+
2173
+ const answer = await this.askQuestion(
2174
+ `${colors.bright}Share anonymous usage data? (y/N):${colors.reset} `,
2175
+ 'N'
2176
+ );
2177
+
2178
+ const consent = answer.toLowerCase() === 'y';
2179
+ await telemetry.setConsent(consent);
2180
+
2181
+ if (consent) {
2182
+ console.log(`${colors.green}✓ Thank you! Anonymous usage statistics enabled${colors.reset}\n`);
2183
+ } else {
2184
+ console.log(`${colors.yellow}Usage statistics disabled${colors.reset}\n`);
2185
+ }
2186
+ }
2187
+ }
2188
+
2189
+ /**
2190
+ * Collect and send telemetry data for installation
2191
+ *
2192
+ * @param {boolean} success - Installation success status
2193
+ * @param {number} toolCount - Number of tools installed
2194
+ * @param {number} errorCount - Number of errors encountered
2195
+ * @param {number} warningCount - Number of warnings encountered
2196
+ * @param {number} installationTime - Installation time in milliseconds
2197
+ * @returns {Promise<void>}
2198
+ */
2199
+ async collectInstallationTelemetry(success, toolCount, errorCount, warningCount, installationTime) {
2200
+ // Skip if --no-telemetry flag is present
2201
+ if (this.cliArgs.noTelemetry) {
2202
+ return;
2203
+ }
2204
+
2205
+ const Telemetry = require('./telemetry');
2206
+ const telemetry = new Telemetry();
2207
+
2208
+ try {
2209
+ await telemetry.collectInstallationStats({
2210
+ variant: this.selections.variant,
2211
+ toolCount: toolCount,
2212
+ installationTime: installationTime,
2213
+ success: success,
2214
+ errorCount: errorCount,
2215
+ warningCount: warningCount
2216
+ });
2217
+ } catch (error) {
2218
+ // Silently fail - don't interrupt user experience for telemetry issues
2219
+ }
2220
+ }
2221
+ }
2222
+
2223
+ // Run installer if called directly
2224
+ if (require.main === module) {
2225
+ const installer = new InteractiveInstaller();
2226
+ installer.run().catch(console.error);
2227
+ }
2228
+
2229
+ module.exports = InteractiveInstaller;