@mytechtoday/augment-extensions 0.1.2 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (316) hide show
  1. package/README.md +614 -39
  2. package/augment-extensions/coding-standards/bash/README.md +196 -0
  3. package/augment-extensions/coding-standards/bash/module.json +163 -0
  4. package/augment-extensions/coding-standards/bash/rules/naming-conventions.md +336 -0
  5. package/augment-extensions/coding-standards/bash/rules/universal-standards.md +289 -0
  6. package/augment-extensions/coding-standards/css/README.md +40 -0
  7. package/augment-extensions/coding-standards/css/examples/css-examples.css +550 -0
  8. package/augment-extensions/coding-standards/css/module.json +44 -0
  9. package/augment-extensions/coding-standards/css/rules/css-modern-features.md +448 -0
  10. package/augment-extensions/coding-standards/css/rules/css-standards.md +492 -0
  11. package/augment-extensions/coding-standards/html/README.md +40 -0
  12. package/augment-extensions/coding-standards/html/examples/html-examples.html +267 -0
  13. package/augment-extensions/coding-standards/html/examples/responsive-layout.html +505 -0
  14. package/augment-extensions/coding-standards/html/module.json +44 -0
  15. package/augment-extensions/coding-standards/html/rules/html-standards.md +349 -0
  16. package/augment-extensions/coding-standards/html-css-js/README.md +194 -0
  17. package/augment-extensions/coding-standards/html-css-js/examples/async-examples.js +487 -0
  18. package/augment-extensions/coding-standards/html-css-js/examples/css-examples.css +550 -0
  19. package/augment-extensions/coding-standards/html-css-js/examples/dom-examples.js +667 -0
  20. package/augment-extensions/coding-standards/html-css-js/examples/html-examples.html +267 -0
  21. package/augment-extensions/coding-standards/html-css-js/examples/javascript-examples.js +612 -0
  22. package/augment-extensions/coding-standards/html-css-js/examples/responsive-layout.html +505 -0
  23. package/augment-extensions/coding-standards/html-css-js/module.json +48 -0
  24. package/augment-extensions/coding-standards/html-css-js/rules/async-patterns.md +515 -0
  25. package/augment-extensions/coding-standards/html-css-js/rules/css-modern-features.md +448 -0
  26. package/augment-extensions/coding-standards/html-css-js/rules/css-standards.md +492 -0
  27. package/augment-extensions/coding-standards/html-css-js/rules/dom-manipulation.md +439 -0
  28. package/augment-extensions/coding-standards/html-css-js/rules/html-standards.md +349 -0
  29. package/augment-extensions/coding-standards/html-css-js/rules/javascript-standards.md +486 -0
  30. package/augment-extensions/coding-standards/html-css-js/rules/performance.md +463 -0
  31. package/augment-extensions/coding-standards/html-css-js/rules/tooling.md +543 -0
  32. package/augment-extensions/coding-standards/js/README.md +46 -0
  33. package/augment-extensions/coding-standards/js/examples/async-examples.js +487 -0
  34. package/augment-extensions/coding-standards/js/examples/dom-examples.js +667 -0
  35. package/augment-extensions/coding-standards/js/examples/javascript-examples.js +612 -0
  36. package/augment-extensions/coding-standards/js/module.json +49 -0
  37. package/augment-extensions/coding-standards/js/rules/async-patterns.md +515 -0
  38. package/augment-extensions/coding-standards/js/rules/dom-manipulation.md +439 -0
  39. package/augment-extensions/coding-standards/js/rules/javascript-standards.md +486 -0
  40. package/augment-extensions/coding-standards/js/rules/performance.md +463 -0
  41. package/augment-extensions/coding-standards/js/rules/tooling.md +543 -0
  42. package/augment-extensions/coding-standards/php/README.md +248 -0
  43. package/augment-extensions/coding-standards/php/examples/api-endpoint-example.php +204 -0
  44. package/augment-extensions/coding-standards/php/examples/cli-command-example.php +206 -0
  45. package/augment-extensions/coding-standards/php/examples/legacy-refactoring-example.php +234 -0
  46. package/augment-extensions/coding-standards/php/examples/web-application-example.php +211 -0
  47. package/augment-extensions/coding-standards/php/examples/woocommerce-extension-example.php +215 -0
  48. package/augment-extensions/coding-standards/php/examples/wordpress-plugin-example.php +189 -0
  49. package/augment-extensions/coding-standards/php/module.json +166 -0
  50. package/augment-extensions/coding-standards/php/rules/api-development.md +480 -0
  51. package/augment-extensions/coding-standards/php/rules/category-configuration.md +332 -0
  52. package/augment-extensions/coding-standards/php/rules/cli-tools.md +472 -0
  53. package/augment-extensions/coding-standards/php/rules/cms-integration.md +561 -0
  54. package/augment-extensions/coding-standards/php/rules/code-quality.md +402 -0
  55. package/augment-extensions/coding-standards/php/rules/documentation.md +425 -0
  56. package/augment-extensions/coding-standards/php/rules/ecommerce.md +627 -0
  57. package/augment-extensions/coding-standards/php/rules/error-handling.md +336 -0
  58. package/augment-extensions/coding-standards/php/rules/legacy-migration.md +677 -0
  59. package/augment-extensions/coding-standards/php/rules/naming-conventions.md +279 -0
  60. package/augment-extensions/coding-standards/php/rules/performance.md +392 -0
  61. package/augment-extensions/coding-standards/php/rules/psr-standards.md +186 -0
  62. package/augment-extensions/coding-standards/php/rules/security.md +358 -0
  63. package/augment-extensions/coding-standards/php/rules/testing.md +403 -0
  64. package/augment-extensions/coding-standards/php/rules/type-declarations.md +331 -0
  65. package/augment-extensions/coding-standards/php/rules/web-applications.md +426 -0
  66. package/augment-extensions/coding-standards/powershell/README.md +154 -0
  67. package/augment-extensions/coding-standards/powershell/examples/admin-example.ps1 +272 -0
  68. package/augment-extensions/coding-standards/powershell/examples/automation-example.ps1 +173 -0
  69. package/augment-extensions/coding-standards/powershell/examples/cloud-example.ps1 +243 -0
  70. package/augment-extensions/coding-standards/powershell/examples/cross-platform-example.ps1 +297 -0
  71. package/augment-extensions/coding-standards/powershell/examples/dsc-example.ps1 +224 -0
  72. package/augment-extensions/coding-standards/powershell/examples/legacy-migration-example.ps1 +340 -0
  73. package/augment-extensions/coding-standards/powershell/examples/module-example.psm1 +255 -0
  74. package/augment-extensions/coding-standards/powershell/module.json +165 -0
  75. package/augment-extensions/coding-standards/powershell/rules/administrative-tools.md +439 -0
  76. package/augment-extensions/coding-standards/powershell/rules/automation-scripts.md +240 -0
  77. package/augment-extensions/coding-standards/powershell/rules/cloud-orchestration.md +384 -0
  78. package/augment-extensions/coding-standards/powershell/rules/configuration-schema.md +383 -0
  79. package/augment-extensions/coding-standards/powershell/rules/cross-platform-scripts.md +482 -0
  80. package/augment-extensions/coding-standards/powershell/rules/dsc-configurations.md +296 -0
  81. package/augment-extensions/coding-standards/powershell/rules/error-handling.md +314 -0
  82. package/augment-extensions/coding-standards/powershell/rules/legacy-migrations.md +466 -0
  83. package/augment-extensions/coding-standards/powershell/rules/modules-functions.md +244 -0
  84. package/augment-extensions/coding-standards/powershell/rules/naming-conventions.md +266 -0
  85. package/augment-extensions/coding-standards/powershell/rules/performance-optimization.md +209 -0
  86. package/augment-extensions/coding-standards/powershell/rules/security-practices.md +314 -0
  87. package/augment-extensions/coding-standards/powershell/rules/testing-guidelines.md +268 -0
  88. package/augment-extensions/coding-standards/powershell/rules/universal-standards.md +197 -0
  89. package/augment-extensions/coding-standards/python/README.md +12 -8
  90. package/augment-extensions/coding-standards/python/examples/best-practices.py +373 -0
  91. package/augment-extensions/coding-standards/python/module.json +8 -4
  92. package/augment-extensions/coding-standards/python/rules/async-patterns.md +884 -0
  93. package/augment-extensions/coding-standards/python/rules/documentation.md +831 -0
  94. package/augment-extensions/coding-standards/python/rules/error-handling.md +855 -68
  95. package/augment-extensions/coding-standards/python/rules/testing.md +409 -0
  96. package/augment-extensions/coding-standards/python/rules/tooling.md +446 -0
  97. package/augment-extensions/coding-standards/python/rules/type-hints.md +115 -50
  98. package/augment-extensions/collections/html-css-js/README.md +82 -0
  99. package/augment-extensions/collections/html-css-js/collection.json +41 -0
  100. package/augment-extensions/domain-rules/database/README.md +161 -0
  101. package/augment-extensions/domain-rules/database/examples/flat-database-example.md +793 -0
  102. package/augment-extensions/domain-rules/database/examples/hybrid-database-example.md +1132 -0
  103. package/augment-extensions/domain-rules/database/examples/nosql-document-example.md +868 -0
  104. package/augment-extensions/domain-rules/database/examples/nosql-graph-example.md +805 -0
  105. package/augment-extensions/domain-rules/database/examples/relational-schema-example.md +621 -0
  106. package/augment-extensions/domain-rules/database/examples/vector-database-example.md +965 -0
  107. package/augment-extensions/domain-rules/database/module.json +28 -0
  108. package/augment-extensions/domain-rules/database/rules/flat-databases.md +624 -0
  109. package/augment-extensions/domain-rules/database/rules/nosql-databases.md +588 -0
  110. package/augment-extensions/domain-rules/database/rules/nosql-document-stores.md +856 -0
  111. package/augment-extensions/domain-rules/database/rules/nosql-graph-databases.md +778 -0
  112. package/augment-extensions/domain-rules/database/rules/nosql-key-value-stores.md +963 -0
  113. package/augment-extensions/domain-rules/database/rules/performance-optimization.md +1076 -0
  114. package/augment-extensions/domain-rules/database/rules/relational-databases.md +697 -0
  115. package/augment-extensions/domain-rules/database/rules/relational-indexing.md +671 -0
  116. package/augment-extensions/domain-rules/database/rules/relational-query-optimization.md +607 -0
  117. package/augment-extensions/domain-rules/database/rules/relational-schema-design.md +907 -0
  118. package/augment-extensions/domain-rules/database/rules/relational-transactions.md +783 -0
  119. package/augment-extensions/domain-rules/database/rules/security-standards.md +980 -0
  120. package/augment-extensions/domain-rules/database/rules/universal-best-practices.md +485 -0
  121. package/augment-extensions/domain-rules/database/rules/vector-databases.md +521 -0
  122. package/augment-extensions/domain-rules/database/rules/vector-embeddings.md +858 -0
  123. package/augment-extensions/domain-rules/database/rules/vector-indexing.md +934 -0
  124. package/augment-extensions/domain-rules/mcp/README.md +150 -0
  125. package/augment-extensions/domain-rules/mcp/examples/compressed-example.md +522 -0
  126. package/augment-extensions/domain-rules/mcp/examples/graph-augmented-example.md +520 -0
  127. package/augment-extensions/domain-rules/mcp/examples/hybrid-example.md +570 -0
  128. package/augment-extensions/domain-rules/mcp/examples/state-based-example.md +427 -0
  129. package/augment-extensions/domain-rules/mcp/examples/token-based-example.md +435 -0
  130. package/augment-extensions/domain-rules/mcp/examples/vector-based-example.md +502 -0
  131. package/augment-extensions/domain-rules/mcp/module.json +49 -0
  132. package/augment-extensions/domain-rules/mcp/rules/compressed-mcp.md +595 -0
  133. package/augment-extensions/domain-rules/mcp/rules/configuration.md +345 -0
  134. package/augment-extensions/domain-rules/mcp/rules/graph-augmented-mcp.md +687 -0
  135. package/augment-extensions/domain-rules/mcp/rules/hybrid-mcp.md +636 -0
  136. package/augment-extensions/domain-rules/mcp/rules/state-based-mcp.md +484 -0
  137. package/augment-extensions/domain-rules/mcp/rules/testing-validation.md +360 -0
  138. package/augment-extensions/domain-rules/mcp/rules/token-based-mcp.md +393 -0
  139. package/augment-extensions/domain-rules/mcp/rules/universal-rules.md +194 -0
  140. package/augment-extensions/domain-rules/mcp/rules/vector-based-mcp.md +625 -0
  141. package/augment-extensions/domain-rules/wordpress/README.md +163 -0
  142. package/augment-extensions/domain-rules/wordpress/module.json +32 -0
  143. package/augment-extensions/domain-rules/wordpress/rules/coding-standards.md +617 -0
  144. package/augment-extensions/domain-rules/wordpress/rules/directory-structure.md +270 -0
  145. package/augment-extensions/domain-rules/wordpress/rules/file-patterns.md +423 -0
  146. package/augment-extensions/domain-rules/wordpress/rules/gutenberg-blocks.md +493 -0
  147. package/augment-extensions/domain-rules/wordpress/rules/performance.md +568 -0
  148. package/augment-extensions/domain-rules/wordpress/rules/plugin-development.md +510 -0
  149. package/augment-extensions/domain-rules/wordpress/rules/project-detection.md +251 -0
  150. package/augment-extensions/domain-rules/wordpress/rules/rest-api.md +501 -0
  151. package/augment-extensions/domain-rules/wordpress/rules/security.md +564 -0
  152. package/augment-extensions/domain-rules/wordpress/rules/theme-development.md +388 -0
  153. package/augment-extensions/domain-rules/wordpress/rules/woocommerce.md +441 -0
  154. package/augment-extensions/domain-rules/wordpress-plugin/README.md +139 -0
  155. package/augment-extensions/domain-rules/wordpress-plugin/examples/ajax-plugin.md +1599 -0
  156. package/augment-extensions/domain-rules/wordpress-plugin/examples/custom-post-type-plugin.md +1727 -0
  157. package/augment-extensions/domain-rules/wordpress-plugin/examples/gutenberg-block-plugin.md +428 -0
  158. package/augment-extensions/domain-rules/wordpress-plugin/examples/gutenberg-block.md +422 -0
  159. package/augment-extensions/domain-rules/wordpress-plugin/examples/mvc-plugin.md +1623 -0
  160. package/augment-extensions/domain-rules/wordpress-plugin/examples/object-oriented-plugin.md +1343 -0
  161. package/augment-extensions/domain-rules/wordpress-plugin/examples/rest-endpoint.md +734 -0
  162. package/augment-extensions/domain-rules/wordpress-plugin/examples/settings-page-plugin.md +1350 -0
  163. package/augment-extensions/domain-rules/wordpress-plugin/examples/simple-procedural-plugin.md +503 -0
  164. package/augment-extensions/domain-rules/wordpress-plugin/examples/singleton-plugin.md +971 -0
  165. package/augment-extensions/domain-rules/wordpress-plugin/module.json +53 -0
  166. package/augment-extensions/domain-rules/wordpress-plugin/rules/activation-hooks.md +770 -0
  167. package/augment-extensions/domain-rules/wordpress-plugin/rules/admin-interface.md +874 -0
  168. package/augment-extensions/domain-rules/wordpress-plugin/rules/ajax-handlers.md +629 -0
  169. package/augment-extensions/domain-rules/wordpress-plugin/rules/asset-management.md +559 -0
  170. package/augment-extensions/domain-rules/wordpress-plugin/rules/context-providers.md +709 -0
  171. package/augment-extensions/domain-rules/wordpress-plugin/rules/cron-jobs.md +736 -0
  172. package/augment-extensions/domain-rules/wordpress-plugin/rules/database-management.md +1057 -0
  173. package/augment-extensions/domain-rules/wordpress-plugin/rules/documentation-standards.md +463 -0
  174. package/augment-extensions/domain-rules/wordpress-plugin/rules/frontend-functionality.md +478 -0
  175. package/augment-extensions/domain-rules/wordpress-plugin/rules/gutenberg-blocks.md +818 -0
  176. package/augment-extensions/domain-rules/wordpress-plugin/rules/internationalization.md +416 -0
  177. package/augment-extensions/domain-rules/wordpress-plugin/rules/migration.md +667 -0
  178. package/augment-extensions/domain-rules/wordpress-plugin/rules/performance-optimization.md +878 -0
  179. package/augment-extensions/domain-rules/wordpress-plugin/rules/plugin-architecture.md +693 -0
  180. package/augment-extensions/domain-rules/wordpress-plugin/rules/plugin-structure.md +352 -0
  181. package/augment-extensions/domain-rules/wordpress-plugin/rules/rest-api.md +818 -0
  182. package/augment-extensions/domain-rules/wordpress-plugin/rules/scaffolding-workflow.md +624 -0
  183. package/augment-extensions/domain-rules/wordpress-plugin/rules/security-best-practices.md +866 -0
  184. package/augment-extensions/domain-rules/wordpress-plugin/rules/testing-patterns.md +1165 -0
  185. package/augment-extensions/domain-rules/wordpress-plugin/rules/testing.md +414 -0
  186. package/augment-extensions/domain-rules/wordpress-plugin/rules/vscode-integration.md +751 -0
  187. package/augment-extensions/domain-rules/wordpress-plugin/rules/woocommerce-integration.md +949 -0
  188. package/augment-extensions/domain-rules/wordpress-plugin/rules/wordpress-org-submission.md +458 -0
  189. package/augment-extensions/examples/gutenberg-block-plugin/README.md +101 -0
  190. package/augment-extensions/examples/gutenberg-block-plugin/examples/testimonial-block.md +428 -0
  191. package/augment-extensions/examples/gutenberg-block-plugin/module.json +40 -0
  192. package/augment-extensions/examples/rest-api-plugin/README.md +98 -0
  193. package/augment-extensions/examples/rest-api-plugin/examples/task-manager-api.md +1299 -0
  194. package/augment-extensions/examples/rest-api-plugin/module.json +40 -0
  195. package/augment-extensions/examples/woocommerce-extension/README.md +98 -0
  196. package/augment-extensions/examples/woocommerce-extension/examples/product-customizer.md +763 -0
  197. package/augment-extensions/examples/woocommerce-extension/module.json +40 -0
  198. package/augment-extensions/workflows/beads/module.json +4 -3
  199. package/augment-extensions/workflows/database/README.md +195 -0
  200. package/augment-extensions/workflows/database/ai-prompt-testing.md +295 -0
  201. package/augment-extensions/workflows/database/examples/migration-example.md +498 -0
  202. package/augment-extensions/workflows/database/examples/optimization-example.md +496 -0
  203. package/augment-extensions/workflows/database/examples/schema-design-example.md +444 -0
  204. package/augment-extensions/workflows/database/module.json +42 -0
  205. package/augment-extensions/workflows/database/rules/data-migration.md +249 -0
  206. package/augment-extensions/workflows/database/rules/documentation-standards.md +339 -0
  207. package/augment-extensions/workflows/database/rules/migration-workflow.md +352 -0
  208. package/augment-extensions/workflows/database/rules/optimization-workflow.md +435 -0
  209. package/augment-extensions/workflows/database/rules/schema-design-workflow.md +535 -0
  210. package/augment-extensions/workflows/database/rules/testing-patterns.md +305 -0
  211. package/augment-extensions/workflows/database/rules/workflow.md +458 -0
  212. package/augment-extensions/workflows/openspec/module.json +4 -3
  213. package/augment-extensions/workflows/wordpress-plugin/README.md +232 -0
  214. package/augment-extensions/workflows/wordpress-plugin/ai-prompts.md +839 -0
  215. package/augment-extensions/workflows/wordpress-plugin/bead-decomposition-patterns.md +854 -0
  216. package/augment-extensions/workflows/wordpress-plugin/examples/complete-plugin-example.md +540 -0
  217. package/augment-extensions/workflows/wordpress-plugin/examples/custom-post-type-example.md +1083 -0
  218. package/augment-extensions/workflows/wordpress-plugin/examples/feature-addition-workflow.md +669 -0
  219. package/augment-extensions/workflows/wordpress-plugin/examples/plugin-creation-workflow.md +597 -0
  220. package/augment-extensions/workflows/wordpress-plugin/examples/secure-form-handler-example.md +925 -0
  221. package/augment-extensions/workflows/wordpress-plugin/examples/security-audit-workflow.md +752 -0
  222. package/augment-extensions/workflows/wordpress-plugin/examples/wordpress-org-submission-workflow.md +773 -0
  223. package/augment-extensions/workflows/wordpress-plugin/module.json +49 -0
  224. package/augment-extensions/workflows/wordpress-plugin/rules/best-practices.md +942 -0
  225. package/augment-extensions/workflows/wordpress-plugin/rules/development-workflow.md +702 -0
  226. package/augment-extensions/workflows/wordpress-plugin/rules/submission-workflow.md +728 -0
  227. package/augment-extensions/workflows/wordpress-plugin/rules/testing-workflow.md +775 -0
  228. package/augment-extensions/writing-standards/screenplay/README.md +171 -0
  229. package/augment-extensions/writing-standards/screenplay/examples/aaa-hollywood-scene.fountain +164 -0
  230. package/augment-extensions/writing-standards/screenplay/module.json +124 -0
  231. package/augment-extensions/writing-standards/screenplay/rules/universal-formatting.md +339 -0
  232. package/cli/MODULES.md +302 -0
  233. package/cli/dist/cli.js +142 -9
  234. package/cli/dist/cli.js.map +1 -1
  235. package/cli/dist/commands/catalog.d.ts +13 -0
  236. package/cli/dist/commands/catalog.d.ts.map +1 -0
  237. package/cli/dist/commands/catalog.js +104 -0
  238. package/cli/dist/commands/catalog.js.map +1 -0
  239. package/cli/dist/commands/gui.d.ts +6 -0
  240. package/cli/dist/commands/gui.d.ts.map +1 -0
  241. package/cli/dist/commands/gui.js +211 -0
  242. package/cli/dist/commands/gui.js.map +1 -0
  243. package/cli/dist/commands/init.d.ts.map +1 -1
  244. package/cli/dist/commands/init.js +12 -0
  245. package/cli/dist/commands/init.js.map +1 -1
  246. package/cli/dist/commands/install-rules.d.ts +14 -0
  247. package/cli/dist/commands/install-rules.d.ts.map +1 -0
  248. package/cli/dist/commands/install-rules.js +127 -0
  249. package/cli/dist/commands/install-rules.js.map +1 -0
  250. package/cli/dist/commands/link.d.ts.map +1 -1
  251. package/cli/dist/commands/link.js +9 -11
  252. package/cli/dist/commands/link.js.map +1 -1
  253. package/cli/dist/commands/list.d.ts.map +1 -1
  254. package/cli/dist/commands/list.js +11 -28
  255. package/cli/dist/commands/list.js.map +1 -1
  256. package/cli/dist/commands/mcp.d.ts +48 -0
  257. package/cli/dist/commands/mcp.d.ts.map +1 -0
  258. package/cli/dist/commands/mcp.js +229 -0
  259. package/cli/dist/commands/mcp.js.map +1 -0
  260. package/cli/dist/commands/self-remove.d.ts +7 -0
  261. package/cli/dist/commands/self-remove.d.ts.map +1 -0
  262. package/cli/dist/commands/self-remove.js +179 -0
  263. package/cli/dist/commands/self-remove.js.map +1 -0
  264. package/cli/dist/commands/show.d.ts.map +1 -1
  265. package/cli/dist/commands/show.js +42 -71
  266. package/cli/dist/commands/show.js.map +1 -1
  267. package/cli/dist/commands/skill.d.ts +67 -0
  268. package/cli/dist/commands/skill.d.ts.map +1 -0
  269. package/cli/dist/commands/skill.js +513 -0
  270. package/cli/dist/commands/skill.js.map +1 -0
  271. package/cli/dist/commands/unlink.d.ts +6 -0
  272. package/cli/dist/commands/unlink.d.ts.map +1 -0
  273. package/cli/dist/commands/unlink.js +115 -0
  274. package/cli/dist/commands/unlink.js.map +1 -0
  275. package/cli/dist/commands/validate.d.ts +6 -0
  276. package/cli/dist/commands/validate.d.ts.map +1 -0
  277. package/cli/dist/commands/validate.js +159 -0
  278. package/cli/dist/commands/validate.js.map +1 -0
  279. package/cli/dist/utils/catalog-sync.d.ts +22 -0
  280. package/cli/dist/utils/catalog-sync.d.ts.map +1 -0
  281. package/cli/dist/utils/catalog-sync.js +157 -0
  282. package/cli/dist/utils/catalog-sync.js.map +1 -0
  283. package/cli/dist/utils/character-count.d.ts +56 -0
  284. package/cli/dist/utils/character-count.d.ts.map +1 -0
  285. package/cli/dist/utils/character-count.js +190 -0
  286. package/cli/dist/utils/character-count.js.map +1 -0
  287. package/cli/dist/utils/documentation-validator.d.ts +18 -0
  288. package/cli/dist/utils/documentation-validator.d.ts.map +1 -0
  289. package/cli/dist/utils/documentation-validator.js +233 -0
  290. package/cli/dist/utils/documentation-validator.js.map +1 -0
  291. package/cli/dist/utils/install-rules.d.ts +32 -0
  292. package/cli/dist/utils/install-rules.d.ts.map +1 -0
  293. package/cli/dist/utils/install-rules.js +375 -0
  294. package/cli/dist/utils/install-rules.js.map +1 -0
  295. package/cli/dist/utils/mcp-integration.d.ts +70 -0
  296. package/cli/dist/utils/mcp-integration.d.ts.map +1 -0
  297. package/cli/dist/utils/mcp-integration.js +292 -0
  298. package/cli/dist/utils/mcp-integration.js.map +1 -0
  299. package/cli/dist/utils/module-system.d.ts +153 -0
  300. package/cli/dist/utils/module-system.d.ts.map +1 -0
  301. package/cli/dist/utils/module-system.js +528 -0
  302. package/cli/dist/utils/module-system.js.map +1 -0
  303. package/cli/dist/utils/modules-catalog.d.ts +33 -0
  304. package/cli/dist/utils/modules-catalog.d.ts.map +1 -0
  305. package/cli/dist/utils/modules-catalog.js +163 -0
  306. package/cli/dist/utils/modules-catalog.js.map +1 -0
  307. package/cli/dist/utils/rule-install-hooks.d.ts +19 -0
  308. package/cli/dist/utils/rule-install-hooks.d.ts.map +1 -0
  309. package/cli/dist/utils/rule-install-hooks.js +224 -0
  310. package/cli/dist/utils/rule-install-hooks.js.map +1 -0
  311. package/cli/dist/utils/skill-system.d.ts +95 -0
  312. package/cli/dist/utils/skill-system.d.ts.map +1 -0
  313. package/cli/dist/utils/skill-system.js +313 -0
  314. package/cli/dist/utils/skill-system.js.map +1 -0
  315. package/modules.md +534 -70
  316. package/package.json +12 -3
@@ -0,0 +1,163 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.generateCatalogEntry = generateCatalogEntry;
37
+ exports.generateCatalogMarkdown = generateCatalogMarkdown;
38
+ exports.groupModulesByCategory = groupModulesByCategory;
39
+ exports.generateModulesCatalog = generateModulesCatalog;
40
+ exports.updateModulesCatalog = updateModulesCatalog;
41
+ const fs = __importStar(require("fs"));
42
+ const module_system_1 = require("./module-system");
43
+ /**
44
+ * Generate catalog entry for a module
45
+ */
46
+ function generateCatalogEntry(module) {
47
+ const displayName = module.metadata.displayName || module.fullName;
48
+ const version = module.metadata.version;
49
+ const characterCount = module.metadata.augment?.characterCount || 0;
50
+ const description = module.metadata.description;
51
+ // Extract contents from rules and examples
52
+ const contents = [];
53
+ // Add rule files
54
+ module.rules.forEach(rule => {
55
+ const ruleName = rule.replace('.md', '').replace(/-/g, ' ');
56
+ contents.push(ruleName.charAt(0).toUpperCase() + ruleName.slice(1));
57
+ });
58
+ return {
59
+ module,
60
+ displayName,
61
+ version,
62
+ characterCount,
63
+ description,
64
+ contents
65
+ };
66
+ }
67
+ /**
68
+ * Generate markdown for a catalog entry
69
+ */
70
+ function generateCatalogMarkdown(entry) {
71
+ let markdown = `### ${entry.displayName}\n`;
72
+ markdown += `- **Module**: \`${entry.module.fullName}\`\n`;
73
+ markdown += `- **Version**: ${entry.version}\n`;
74
+ markdown += `- **Character Count**: ~${entry.characterCount.toLocaleString()}\n`;
75
+ markdown += `- **Description**: ${entry.description}\n`;
76
+ if (entry.contents.length > 0) {
77
+ markdown += `- **Contents**:\n`;
78
+ entry.contents.forEach(content => {
79
+ markdown += ` - ${content}\n`;
80
+ });
81
+ }
82
+ markdown += `\n**Usage**:\n`;
83
+ markdown += `\`\`\`bash\n`;
84
+ markdown += `augx link ${entry.module.fullName}\n`;
85
+ markdown += `\`\`\`\n`;
86
+ return markdown;
87
+ }
88
+ /**
89
+ * Group modules by category
90
+ */
91
+ function groupModulesByCategory(modules) {
92
+ const grouped = new Map();
93
+ for (const module of modules) {
94
+ const category = module.metadata.type;
95
+ if (!grouped.has(category)) {
96
+ grouped.set(category, []);
97
+ }
98
+ grouped.get(category).push(module);
99
+ }
100
+ // Sort modules within each category by name
101
+ for (const [category, categoryModules] of grouped.entries()) {
102
+ categoryModules.sort((a, b) => a.fullName.localeCompare(b.fullName));
103
+ }
104
+ return grouped;
105
+ }
106
+ /**
107
+ * Generate complete MODULES.md content
108
+ */
109
+ function generateModulesCatalog() {
110
+ const modules = (0, module_system_1.discoverModules)();
111
+ const grouped = groupModulesByCategory(modules);
112
+ let catalog = `# Augment Extensions Module Catalog\n\n`;
113
+ catalog += `This catalog lists all available extension modules for Augment Code AI.\n\n`;
114
+ catalog += `## Quick Start\n\n`;
115
+ catalog += `\`\`\`bash\n`;
116
+ catalog += `# List all modules\n`;
117
+ catalog += `augx list\n\n`;
118
+ catalog += `# Show module details\n`;
119
+ catalog += `augx show <module-name>\n\n`;
120
+ catalog += `# Link a module to your project\n`;
121
+ catalog += `augx link <module-name>\n`;
122
+ catalog += `\`\`\`\n\n`;
123
+ // Category order
124
+ const categoryOrder = ['coding-standards', 'domain-rules', 'workflows', 'examples'];
125
+ const categoryTitles = {
126
+ 'coding-standards': 'Coding Standards',
127
+ 'domain-rules': 'Domain Rules',
128
+ 'workflows': 'Workflows',
129
+ 'examples': 'Examples'
130
+ };
131
+ for (const category of categoryOrder) {
132
+ const categoryModules = grouped.get(category);
133
+ if (!categoryModules || categoryModules.length === 0) {
134
+ continue;
135
+ }
136
+ catalog += `## ${categoryTitles[category]}\n\n`;
137
+ for (const module of categoryModules) {
138
+ const entry = generateCatalogEntry(module);
139
+ catalog += generateCatalogMarkdown(entry);
140
+ catalog += `\n`;
141
+ }
142
+ }
143
+ // Add statistics
144
+ catalog += `## Statistics\n\n`;
145
+ catalog += `- **Total Modules**: ${modules.length}\n`;
146
+ for (const category of categoryOrder) {
147
+ const count = grouped.get(category)?.length || 0;
148
+ if (count > 0) {
149
+ catalog += `- **${categoryTitles[category]}**: ${count}\n`;
150
+ }
151
+ }
152
+ const totalChars = modules.reduce((sum, m) => sum + (m.metadata.augment?.characterCount || 0), 0);
153
+ catalog += `- **Total Character Count**: ~${totalChars.toLocaleString()}\n`;
154
+ return catalog;
155
+ }
156
+ /**
157
+ * Update MODULES.md file
158
+ */
159
+ function updateModulesCatalog(catalogPath = 'MODULES.md') {
160
+ const content = generateModulesCatalog();
161
+ fs.writeFileSync(catalogPath, content, 'utf-8');
162
+ }
163
+ //# sourceMappingURL=modules-catalog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modules-catalog.js","sourceRoot":"","sources":["../../src/utils/modules-catalog.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Create a Git hook for automatic rule installation
3
+ * This ensures the character count rule is installed when cloning/pulling
4
+ */
5
+ export declare function createRuleInstallGitHook(hookType?: 'post-checkout' | 'post-merge', gitDir?: string): Promise<void>;
6
+ /**
7
+ * Remove rule installation from Git hook
8
+ */
9
+ export declare function removeRuleInstallGitHook(hookType?: 'post-checkout' | 'post-merge', gitDir?: string): Promise<void>;
10
+ /**
11
+ * Create NPM post-install hook for rule installation
12
+ * This ensures the rule is installed when running npm install
13
+ */
14
+ export declare function createNpmPostInstallHook(packageJsonPath?: string): Promise<void>;
15
+ /**
16
+ * Remove NPM post-install hook for rule installation
17
+ */
18
+ export declare function removeNpmPostInstallHook(packageJsonPath?: string): Promise<void>;
19
+ //# sourceMappingURL=rule-install-hooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rule-install-hooks.d.ts","sourceRoot":"","sources":["../../src/utils/rule-install-hooks.ts"],"names":[],"mappings":"AAqBA;;;GAGG;AACH,wBAAsB,wBAAwB,CAC5C,QAAQ,GAAE,eAAe,GAAG,YAA8B,EAC1D,MAAM,GAAE,MAAe,GACtB,OAAO,CAAC,IAAI,CAAC,CAmDf;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAC5C,QAAQ,GAAE,eAAe,GAAG,YAA8B,EAC1D,MAAM,GAAE,MAAe,GACtB,OAAO,CAAC,IAAI,CAAC,CA8Bf;AAED;;;GAGG;AACH,wBAAsB,wBAAwB,CAAC,eAAe,GAAE,MAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkCtG;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAAC,eAAe,GAAE,MAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAsCtG"}
@@ -0,0 +1,224 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.createRuleInstallGitHook = createRuleInstallGitHook;
40
+ exports.removeRuleInstallGitHook = removeRuleInstallGitHook;
41
+ exports.createNpmPostInstallHook = createNpmPostInstallHook;
42
+ exports.removeNpmPostInstallHook = removeNpmPostInstallHook;
43
+ const fs = __importStar(require("fs/promises"));
44
+ const fsSync = __importStar(require("fs"));
45
+ const path = __importStar(require("path"));
46
+ const chalk_1 = __importDefault(require("chalk"));
47
+ /**
48
+ * Set file permissions (cross-platform)
49
+ * On Unix: sets executable permissions
50
+ * On Windows: no-op (Windows doesn't use Unix permissions)
51
+ */
52
+ async function setExecutablePermissions(filePath) {
53
+ // Only set permissions on Unix-like systems
54
+ if (process.platform !== 'win32') {
55
+ try {
56
+ await fs.chmod(filePath, 0o755);
57
+ }
58
+ catch (error) {
59
+ console.warn(chalk_1.default.yellow(`Warning: Could not set executable permissions on ${filePath}`));
60
+ }
61
+ }
62
+ }
63
+ /**
64
+ * Create a Git hook for automatic rule installation
65
+ * This ensures the character count rule is installed when cloning/pulling
66
+ */
67
+ async function createRuleInstallGitHook(hookType = 'post-checkout', gitDir = '.git') {
68
+ try {
69
+ // Ensure .git/hooks directory exists
70
+ const hooksDir = path.join(gitDir, 'hooks');
71
+ if (!fsSync.existsSync(hooksDir)) {
72
+ await fs.mkdir(hooksDir, { recursive: true });
73
+ }
74
+ const hookPath = path.join(hooksDir, hookType);
75
+ // Check if hook already exists
76
+ let existingContent = '';
77
+ if (fsSync.existsSync(hookPath)) {
78
+ existingContent = await fs.readFile(hookPath, 'utf-8');
79
+ // Check if rule installation is already in the hook
80
+ if (existingContent.includes('augx install-rules')) {
81
+ console.log(chalk_1.default.gray(`Rule installation already configured in ${hookType} hook`));
82
+ return;
83
+ }
84
+ }
85
+ // Cross-platform hook content
86
+ // Use sh for Unix, but also works on Git Bash on Windows
87
+ const ruleInstallHookContent = `
88
+ # Auto-install character count management rule
89
+ if [ -d .augment ]; then
90
+ echo "Installing character count management rule..."
91
+ augx install-rules --quiet
92
+ fi
93
+ `;
94
+ // If hook exists, append to it; otherwise create new
95
+ if (existingContent) {
96
+ const updatedContent = existingContent.trimEnd() + '\n' + ruleInstallHookContent;
97
+ await fs.writeFile(hookPath, updatedContent, 'utf-8');
98
+ await setExecutablePermissions(hookPath);
99
+ console.log(chalk_1.default.green(`✓ Updated ${hookType} hook with rule installation`));
100
+ }
101
+ else {
102
+ const newHookContent = `#!/bin/sh
103
+ # Auto-install character count management rule
104
+ ${ruleInstallHookContent}`;
105
+ await fs.writeFile(hookPath, newHookContent, 'utf-8');
106
+ await setExecutablePermissions(hookPath);
107
+ console.log(chalk_1.default.green(`✓ Created ${hookType} hook with rule installation`));
108
+ }
109
+ }
110
+ catch (error) {
111
+ const errorMessage = error instanceof Error ? error.message : String(error);
112
+ console.error(chalk_1.default.red(`✗ Failed to create Git hook: ${errorMessage}`));
113
+ throw error;
114
+ }
115
+ }
116
+ /**
117
+ * Remove rule installation from Git hook
118
+ */
119
+ async function removeRuleInstallGitHook(hookType = 'post-checkout', gitDir = '.git') {
120
+ try {
121
+ const hookPath = path.join(gitDir, 'hooks', hookType);
122
+ if (!fsSync.existsSync(hookPath)) {
123
+ console.log(chalk_1.default.gray(`No ${hookType} hook found`));
124
+ return;
125
+ }
126
+ const content = await fs.readFile(hookPath, 'utf-8');
127
+ // Remove rule installation section
128
+ const updatedContent = content
129
+ .replace(/# Auto-install character count management rule[\s\S]*?fi\n/g, '')
130
+ .trim();
131
+ if (updatedContent.length === 0 || updatedContent === '#!/bin/sh') {
132
+ // Hook is now empty, remove it
133
+ await fs.unlink(hookPath);
134
+ console.log(chalk_1.default.green(`✓ Removed ${hookType} hook`));
135
+ }
136
+ else {
137
+ await fs.writeFile(hookPath, updatedContent, 'utf-8');
138
+ await setExecutablePermissions(hookPath);
139
+ console.log(chalk_1.default.green(`✓ Removed rule installation from ${hookType} hook`));
140
+ }
141
+ }
142
+ catch (error) {
143
+ const errorMessage = error instanceof Error ? error.message : String(error);
144
+ console.error(chalk_1.default.red(`✗ Failed to remove Git hook: ${errorMessage}`));
145
+ throw error;
146
+ }
147
+ }
148
+ /**
149
+ * Create NPM post-install hook for rule installation
150
+ * This ensures the rule is installed when running npm install
151
+ */
152
+ async function createNpmPostInstallHook(packageJsonPath = 'package.json') {
153
+ if (!fsSync.existsSync(packageJsonPath)) {
154
+ console.log(chalk_1.default.yellow('⚠ No package.json found, skipping NPM hook setup'));
155
+ return;
156
+ }
157
+ try {
158
+ const packageJsonContent = await fs.readFile(packageJsonPath, 'utf-8');
159
+ const packageJson = JSON.parse(packageJsonContent);
160
+ // Check if postinstall script already exists
161
+ if (packageJson.scripts && packageJson.scripts.postinstall) {
162
+ if (packageJson.scripts.postinstall.includes('augx install-rules')) {
163
+ console.log(chalk_1.default.gray('Rule installation already configured in package.json postinstall'));
164
+ return;
165
+ }
166
+ // Append to existing postinstall
167
+ packageJson.scripts.postinstall += ' && augx install-rules --quiet';
168
+ }
169
+ else {
170
+ // Create new postinstall script
171
+ if (!packageJson.scripts) {
172
+ packageJson.scripts = {};
173
+ }
174
+ packageJson.scripts.postinstall = 'augx install-rules --quiet';
175
+ }
176
+ await fs.writeFile(packageJsonPath, JSON.stringify(packageJson, null, 2) + '\n', 'utf-8');
177
+ console.log(chalk_1.default.green('✓ Added rule installation to package.json postinstall'));
178
+ }
179
+ catch (error) {
180
+ const errorMessage = error instanceof Error ? error.message : String(error);
181
+ console.error(chalk_1.default.red(`✗ Failed to update package.json: ${errorMessage}`));
182
+ throw error;
183
+ }
184
+ }
185
+ /**
186
+ * Remove NPM post-install hook for rule installation
187
+ */
188
+ async function removeNpmPostInstallHook(packageJsonPath = 'package.json') {
189
+ if (!fsSync.existsSync(packageJsonPath)) {
190
+ console.log(chalk_1.default.gray('No package.json found'));
191
+ return;
192
+ }
193
+ try {
194
+ const packageJsonContent = await fs.readFile(packageJsonPath, 'utf-8');
195
+ const packageJson = JSON.parse(packageJsonContent);
196
+ if (!packageJson.scripts || !packageJson.scripts.postinstall) {
197
+ console.log(chalk_1.default.gray('No postinstall script found in package.json'));
198
+ return;
199
+ }
200
+ // Remove augx install-rules from postinstall
201
+ const updatedPostinstall = packageJson.scripts.postinstall
202
+ .replace(/\s*&&\s*augx install-rules --quiet/g, '')
203
+ .replace(/augx install-rules --quiet\s*&&\s*/g, '')
204
+ .replace(/augx install-rules --quiet/g, '')
205
+ .trim();
206
+ if (updatedPostinstall.length === 0) {
207
+ delete packageJson.scripts.postinstall;
208
+ if (Object.keys(packageJson.scripts).length === 0) {
209
+ delete packageJson.scripts;
210
+ }
211
+ }
212
+ else {
213
+ packageJson.scripts.postinstall = updatedPostinstall;
214
+ }
215
+ await fs.writeFile(packageJsonPath, JSON.stringify(packageJson, null, 2) + '\n', 'utf-8');
216
+ console.log(chalk_1.default.green('✓ Removed rule installation from package.json postinstall'));
217
+ }
218
+ catch (error) {
219
+ const errorMessage = error instanceof Error ? error.message : String(error);
220
+ console.error(chalk_1.default.red(`✗ Failed to update package.json: ${errorMessage}`));
221
+ throw error;
222
+ }
223
+ }
224
+ //# sourceMappingURL=rule-install-hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rule-install-hooks.js","sourceRoot":"","sources":["../../src/utils/rule-install-hooks.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyBA,4DAsDC;AAKD,4DAiCC;AAMD,4DAkCC;AAKD,4DAsCC;AAxMD,gDAAkC;AAClC,2CAA6B;AAC7B,2CAA6B;AAC7B,kDAA0B;AAE1B;;;;GAIG;AACH,KAAK,UAAU,wBAAwB,CAAC,QAAgB;IACtD,4CAA4C;IAC5C,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACjC,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,eAAK,CAAC,MAAM,CAAC,oDAAoD,QAAQ,EAAE,CAAC,CAAC,CAAC;QAC7F,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,wBAAwB,CAC5C,WAA2C,eAAe,EAC1D,SAAiB,MAAM;IAEvB,IAAI,CAAC;QACH,qCAAqC;QACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjC,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAE/C,+BAA+B;QAC/B,IAAI,eAAe,GAAG,EAAE,CAAC;QACzB,IAAI,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAChC,eAAe,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAEvD,oDAAoD;YACpD,IAAI,eAAe,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;gBACnD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,2CAA2C,QAAQ,OAAO,CAAC,CAAC,CAAC;gBACpF,OAAO;YACT,CAAC;QACH,CAAC;QAED,8BAA8B;QAC9B,yDAAyD;QACzD,MAAM,sBAAsB,GAAG;;;;;;CAMlC,CAAC;QAEE,qDAAqD;QACrD,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,cAAc,GAAG,eAAe,CAAC,OAAO,EAAE,GAAG,IAAI,GAAG,sBAAsB,CAAC;YACjF,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;YACtD,MAAM,wBAAwB,CAAC,QAAQ,CAAC,CAAC;YACzC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,aAAa,QAAQ,8BAA8B,CAAC,CAAC,CAAC;QAChF,CAAC;aAAM,CAAC;YACN,MAAM,cAAc,GAAG;;EAE3B,sBAAsB,EAAE,CAAC;YACrB,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;YACtD,MAAM,wBAAwB,CAAC,QAAQ,CAAC,CAAC;YACzC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,aAAa,QAAQ,8BAA8B,CAAC,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5E,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,gCAAgC,YAAY,EAAE,CAAC,CAAC,CAAC;QACzE,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,wBAAwB,CAC5C,WAA2C,eAAe,EAC1D,SAAiB,MAAM;IAEvB,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QAEtD,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,MAAM,QAAQ,aAAa,CAAC,CAAC,CAAC;YACrD,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAErD,mCAAmC;QACnC,MAAM,cAAc,GAAG,OAAO;aAC3B,OAAO,CAAC,6DAA6D,EAAE,EAAE,CAAC;aAC1E,IAAI,EAAE,CAAC;QAEV,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,IAAI,cAAc,KAAK,WAAW,EAAE,CAAC;YAClE,+BAA+B;YAC/B,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,aAAa,QAAQ,OAAO,CAAC,CAAC,CAAC;QACzD,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;YACtD,MAAM,wBAAwB,CAAC,QAAQ,CAAC,CAAC;YACzC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,oCAAoC,QAAQ,OAAO,CAAC,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5E,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,gCAAgC,YAAY,EAAE,CAAC,CAAC,CAAC;QACzE,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,wBAAwB,CAAC,kBAA0B,cAAc;IACrF,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,kDAAkD,CAAC,CAAC,CAAC;QAC9E,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,kBAAkB,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QACvE,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAEnD,6CAA6C;QAC7C,IAAI,WAAW,CAAC,OAAO,IAAI,WAAW,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YAC3D,IAAI,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;gBACnE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC,CAAC;gBAC5F,OAAO;YACT,CAAC;YAED,iCAAiC;YACjC,WAAW,CAAC,OAAO,CAAC,WAAW,IAAI,gCAAgC,CAAC;QACtE,CAAC;aAAM,CAAC;YACN,gCAAgC;YAChC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;gBACzB,WAAW,CAAC,OAAO,GAAG,EAAE,CAAC;YAC3B,CAAC;YACD,WAAW,CAAC,OAAO,CAAC,WAAW,GAAG,4BAA4B,CAAC;QACjE,CAAC;QAED,MAAM,EAAE,CAAC,SAAS,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;QAC1F,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC,CAAC;IACpF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5E,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,oCAAoC,YAAY,EAAE,CAAC,CAAC,CAAC;QAC7E,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,wBAAwB,CAAC,kBAA0B,cAAc;IACrF,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC;QACjD,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,kBAAkB,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QACvE,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAEnD,IAAI,CAAC,WAAW,CAAC,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YAC7D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC,CAAC;YACvE,OAAO;QACT,CAAC;QAED,6CAA6C;QAC7C,MAAM,kBAAkB,GAAG,WAAW,CAAC,OAAO,CAAC,WAAW;aACvD,OAAO,CAAC,qCAAqC,EAAE,EAAE,CAAC;aAClD,OAAO,CAAC,qCAAqC,EAAE,EAAE,CAAC;aAClD,OAAO,CAAC,6BAA6B,EAAE,EAAE,CAAC;aAC1C,IAAI,EAAE,CAAC;QAEV,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpC,OAAO,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC;YACvC,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAClD,OAAO,WAAW,CAAC,OAAO,CAAC;YAC7B,CAAC;QACH,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,OAAO,CAAC,WAAW,GAAG,kBAAkB,CAAC;QACvD,CAAC;QAED,MAAM,EAAE,CAAC,SAAS,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;QAC1F,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,2DAA2D,CAAC,CAAC,CAAC;IACxF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5E,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,oCAAoC,YAAY,EAAE,CAAC,CAAC,CAAC;QAC7E,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -0,0 +1,95 @@
1
+ /**
2
+ * Skill System Utilities
3
+ *
4
+ * Manages skill file structure, storage, and validation.
5
+ */
6
+ export interface SkillMetadata {
7
+ id: string;
8
+ name: string;
9
+ version: string;
10
+ category: 'retrieval' | 'transformation' | 'analysis' | 'generation' | 'integration' | 'utility';
11
+ tags?: string[];
12
+ tokenBudget: number;
13
+ priority?: 'critical' | 'high' | 'medium' | 'low';
14
+ dependencies?: string[];
15
+ cliCommand?: string;
16
+ mcpServer?: string;
17
+ autoLoad?: boolean;
18
+ replaces?: string[];
19
+ }
20
+ export interface Skill {
21
+ metadata: SkillMetadata;
22
+ content: string;
23
+ filePath: string;
24
+ }
25
+ export declare const SKILL_CATEGORIES: readonly ["retrieval", "transformation", "analysis", "generation", "integration", "utility"];
26
+ /**
27
+ * Get the skills directory path
28
+ */
29
+ export declare function getSkillsDir(repoRoot?: string): string;
30
+ /**
31
+ * Get the path for a skill file
32
+ */
33
+ export declare function getSkillPath(skillId: string, category: string, repoRoot?: string): string;
34
+ /**
35
+ * Parse skill frontmatter and content
36
+ */
37
+ export declare function parseSkill(filePath: string): Skill;
38
+ /**
39
+ * Validate skill metadata
40
+ */
41
+ export declare function validateSkillMetadata(metadata: SkillMetadata): {
42
+ valid: boolean;
43
+ errors: string[];
44
+ };
45
+ /**
46
+ * Discover all skills in the skills directory
47
+ */
48
+ export declare function discoverSkills(repoRoot?: string): Skill[];
49
+ /**
50
+ * Find a skill by ID
51
+ */
52
+ export declare function findSkill(skillId: string, repoRoot?: string): Skill | null;
53
+ /**
54
+ * Register skill in coordination manifest
55
+ */
56
+ export declare function registerSkillInCoordination(skill: Skill, taskId?: string): void;
57
+ /**
58
+ * Dynamic Skill Loader
59
+ *
60
+ * Loads skills on-demand with dependency resolution and token budget management.
61
+ */
62
+ export interface LoadedSkill {
63
+ skill: Skill;
64
+ dependencies: LoadedSkill[];
65
+ totalTokens: number;
66
+ }
67
+ export interface SkillLoaderOptions {
68
+ maxTokens?: number;
69
+ resolveDependencies?: boolean;
70
+ cache?: boolean;
71
+ }
72
+ /**
73
+ * Load a skill with dependency resolution
74
+ */
75
+ export declare function loadSkillDynamic(skillId: string, options?: SkillLoaderOptions): LoadedSkill | null;
76
+ /**
77
+ * Load multiple skills with shared dependency resolution
78
+ */
79
+ export declare function loadSkillsBatch(skillIds: string[], options?: SkillLoaderOptions): LoadedSkill[];
80
+ /**
81
+ * Get skill content for injection (flattened with dependencies)
82
+ */
83
+ export declare function getSkillContentForInjection(loadedSkill: LoadedSkill): string;
84
+ /**
85
+ * Clear skill cache
86
+ */
87
+ export declare function clearSkillCache(): void;
88
+ /**
89
+ * Get cache statistics
90
+ */
91
+ export declare function getSkillCacheStats(): {
92
+ size: number;
93
+ skills: string[];
94
+ };
95
+ //# sourceMappingURL=skill-system.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill-system.d.ts","sourceRoot":"","sources":["../../src/utils/skill-system.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,WAAW,GAAG,gBAAgB,GAAG,UAAU,GAAG,YAAY,GAAG,aAAa,GAAG,SAAS,CAAC;IACjG,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IAClD,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,KAAK;IACpB,QAAQ,EAAE,aAAa,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,gBAAgB,8FAOnB,CAAC;AAEX;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAGtD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAGzF;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,KAAK,CAqBlD;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,aAAa,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAuCnG;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,KAAK,EAAE,CAgCzD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,IAAI,CAG1E;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CA6B/E;AAED;;;;GAIG;AAEH,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,KAAK,CAAC;IACb,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAKD;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,kBAAuB,GAC/B,WAAW,GAAG,IAAI,CA0DpB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,MAAM,EAAE,EAClB,OAAO,GAAE,kBAAuB,GAC/B,WAAW,EAAE,CA0Bf;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,WAAW,GAAG,MAAM,CAkB5E;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAEtC;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAKvE"}