@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,165 @@
1
+ {
2
+ "name": "powershell-standards",
3
+ "version": "1.0.0",
4
+ "displayName": "PowerShell Coding Standards",
5
+ "description": "Comprehensive PowerShell coding standards for professional, maintainable, and secure PowerShell code across automation, modules, DSC, cloud orchestration, administrative tools, cross-platform scripts, and legacy migrations.",
6
+ "type": "coding-standards",
7
+ "author": "Augment Extensions",
8
+ "license": "MIT",
9
+ "keywords": [
10
+ "powershell",
11
+ "coding-standards",
12
+ "automation",
13
+ "modules",
14
+ "dsc",
15
+ "cloud",
16
+ "azure",
17
+ "aws",
18
+ "admin",
19
+ "cross-platform",
20
+ "legacy",
21
+ "pester",
22
+ "security",
23
+ "performance"
24
+ ],
25
+ "augment": {
26
+ "characterCount": 162000,
27
+ "priority": "high",
28
+ "category": "coding-standards",
29
+ "appliesTo": {
30
+ "languages": ["powershell"],
31
+ "filePatterns": ["**/*.ps1", "**/*.psm1", "**/*.psd1"],
32
+ "frameworks": [
33
+ "pester",
34
+ "dsc",
35
+ "azure-powershell",
36
+ "aws-powershell"
37
+ ]
38
+ },
39
+ "categories": {
40
+ "automation": {
41
+ "description": "Task automation and scheduled tasks",
42
+ "rules": ["automation-scripts.md"],
43
+ "examples": ["automation-example.ps1"]
44
+ },
45
+ "modules": {
46
+ "description": "PowerShell modules and advanced functions",
47
+ "rules": ["modules-functions.md"],
48
+ "examples": ["module-example.psm1"]
49
+ },
50
+ "dsc": {
51
+ "description": "Desired State Configuration",
52
+ "rules": ["dsc-configurations.md"],
53
+ "examples": ["dsc-example.ps1"]
54
+ },
55
+ "cloud": {
56
+ "description": "Cloud orchestration (Azure, AWS)",
57
+ "rules": ["cloud-orchestration.md"],
58
+ "examples": ["cloud-example.ps1"]
59
+ },
60
+ "admin": {
61
+ "description": "Administrative tools (AD, Exchange, SQL)",
62
+ "rules": ["administrative-tools.md"],
63
+ "examples": ["admin-example.ps1"]
64
+ },
65
+ "cross-platform": {
66
+ "description": "Cross-platform PowerShell scripts",
67
+ "rules": ["cross-platform-scripts.md"],
68
+ "examples": ["cross-platform-example.ps1"]
69
+ },
70
+ "legacy": {
71
+ "description": "Legacy Windows PowerShell to PowerShell Core migration",
72
+ "rules": ["legacy-migrations.md"],
73
+ "examples": ["legacy-migration-example.ps1"]
74
+ }
75
+ },
76
+ "universalRules": [
77
+ "universal-standards.md",
78
+ "naming-conventions.md",
79
+ "error-handling.md",
80
+ "security-practices.md",
81
+ "performance-optimization.md",
82
+ "testing-guidelines.md"
83
+ ]
84
+ },
85
+ "installation": {
86
+ "required": false,
87
+ "instructions": "This module is automatically loaded when working with PowerShell files. Configure categories in .augment/powershell-config.json"
88
+ },
89
+ "configuration": {
90
+ "file": ".augment/powershell-config.json",
91
+ "schema": {
92
+ "powershell_categories": {
93
+ "type": "array",
94
+ "items": {
95
+ "type": "string",
96
+ "enum": ["automation", "modules", "dsc", "cloud", "admin", "cross-platform", "legacy"]
97
+ },
98
+ "description": "Project categories to apply"
99
+ },
100
+ "powershell_version": {
101
+ "type": "string",
102
+ "description": "Minimum PowerShell version",
103
+ "default": "7.4"
104
+ },
105
+ "strict_mode": {
106
+ "type": "boolean",
107
+ "description": "Enforce Set-StrictMode",
108
+ "default": true
109
+ },
110
+ "static_analysis": {
111
+ "type": "object",
112
+ "properties": {
113
+ "tool": {
114
+ "type": "string",
115
+ "enum": ["PSScriptAnalyzer"]
116
+ },
117
+ "severity": {
118
+ "type": "string",
119
+ "enum": ["Error", "Warning", "Information"]
120
+ }
121
+ }
122
+ },
123
+ "testing": {
124
+ "type": "object",
125
+ "properties": {
126
+ "framework": {
127
+ "type": "string",
128
+ "enum": ["Pester"]
129
+ },
130
+ "version": {
131
+ "type": "string",
132
+ "default": "5.x"
133
+ }
134
+ }
135
+ },
136
+ "code_style": {
137
+ "type": "object",
138
+ "properties": {
139
+ "indentation": {
140
+ "type": "integer",
141
+ "default": 4
142
+ },
143
+ "brace_style": {
144
+ "type": "string",
145
+ "enum": ["Allman", "K&R"]
146
+ }
147
+ }
148
+ }
149
+ }
150
+ },
151
+ "dependencies": {
152
+ "powershell": {
153
+ "PSScriptAnalyzer": ">=1.21.0",
154
+ "Pester": ">=5.0.0"
155
+ }
156
+ },
157
+ "links": {
158
+ "homepage": "https://github.com/augment-code/augment-extensions",
159
+ "documentation": "https://github.com/augment-code/augment-extensions/tree/main/augment-extensions/coding-standards/powershell",
160
+ "powershell": "https://docs.microsoft.com/en-us/powershell/",
161
+ "pester": "https://pester.dev/",
162
+ "psscriptanalyzer": "https://github.com/PowerShell/PSScriptAnalyzer"
163
+ }
164
+ }
165
+
@@ -0,0 +1,439 @@
1
+ # PowerShell Administrative Tools
2
+
3
+ Best practices for AD, Exchange, SQL management, filtering, and bulk operations.
4
+
5
+ ## Active Directory Management
6
+
7
+ ### Efficient User Queries
8
+
9
+ ```powershell
10
+ #Requires -Modules ActiveDirectory
11
+
12
+ # ✅ GOOD: Server-side filtering with -Filter
13
+ function Get-InactiveADUsers
14
+ {
15
+ [CmdletBinding()]
16
+ param(
17
+ [Parameter()]
18
+ [int]$DaysInactive = 90,
19
+
20
+ [Parameter()]
21
+ [string]$SearchBase
22
+ )
23
+
24
+ $cutoffDate = (Get-Date).AddDays(-$DaysInactive)
25
+
26
+ $params = @{
27
+ Filter = "LastLogonDate -lt '$cutoffDate' -and Enabled -eq 'True'"
28
+ Properties = 'LastLogonDate', 'EmailAddress', 'Department'
29
+ ErrorAction = 'Stop'
30
+ }
31
+
32
+ if ($SearchBase)
33
+ {
34
+ $params['SearchBase'] = $SearchBase
35
+ }
36
+
37
+ Get-ADUser @params | Select-Object Name, SamAccountName, LastLogonDate, EmailAddress, Department
38
+ }
39
+
40
+ # ❌ BAD: Client-side filtering with Where-Object
41
+ # Get-ADUser -Filter * | Where-Object { $_.LastLogonDate -lt $cutoffDate }
42
+ ```
43
+
44
+ ### Bulk User Operations
45
+
46
+ ```powershell
47
+ function Update-ADUsersBulk
48
+ {
49
+ [CmdletBinding(SupportsShouldProcess)]
50
+ param(
51
+ [Parameter(Mandatory, ValueFromPipeline)]
52
+ [Microsoft.ActiveDirectory.Management.ADUser[]]$Users,
53
+
54
+ [Parameter(Mandatory)]
55
+ [hashtable]$Properties
56
+ )
57
+
58
+ begin
59
+ {
60
+ $successCount = 0
61
+ $failureCount = 0
62
+ $errors = @()
63
+ }
64
+
65
+ process
66
+ {
67
+ foreach ($user in $Users)
68
+ {
69
+ if ($PSCmdlet.ShouldProcess($user.SamAccountName, 'Update AD User'))
70
+ {
71
+ try
72
+ {
73
+ Set-ADUser -Identity $user.SamAccountName @Properties -ErrorAction Stop
74
+ $successCount++
75
+ Write-Verbose "Updated user: $($user.SamAccountName)"
76
+ }
77
+ catch
78
+ {
79
+ $failureCount++
80
+ $errors += [PSCustomObject]@{
81
+ User = $user.SamAccountName
82
+ Error = $_.Exception.Message
83
+ }
84
+ Write-Warning "Failed to update $($user.SamAccountName): $_"
85
+ }
86
+ }
87
+ }
88
+ }
89
+
90
+ end
91
+ {
92
+ Write-Output "Bulk update complete: $successCount succeeded, $failureCount failed"
93
+ if ($errors.Count -gt 0)
94
+ {
95
+ Write-Output "Errors:"
96
+ $errors | Format-Table -AutoSize
97
+ }
98
+ }
99
+ }
100
+
101
+ # Usage
102
+ Get-InactiveADUsers -DaysInactive 90 | Update-ADUsersBulk -Properties @{ Department = 'Inactive' }
103
+ ```
104
+
105
+ ### Group Membership Management
106
+
107
+ ```powershell
108
+ function Add-ADUserToGroupsBulk
109
+ {
110
+ [CmdletBinding(SupportsShouldProcess)]
111
+ param(
112
+ [Parameter(Mandatory)]
113
+ [string]$UserName,
114
+
115
+ [Parameter(Mandatory)]
116
+ [string[]]$GroupNames
117
+ )
118
+
119
+ try
120
+ {
121
+ $user = Get-ADUser -Identity $UserName -ErrorAction Stop
122
+
123
+ foreach ($groupName in $GroupNames)
124
+ {
125
+ if ($PSCmdlet.ShouldProcess($groupName, "Add $UserName to group"))
126
+ {
127
+ try
128
+ {
129
+ Add-ADGroupMember -Identity $groupName -Members $user -ErrorAction Stop
130
+ Write-Verbose "Added $UserName to $groupName"
131
+ }
132
+ catch
133
+ {
134
+ Write-Warning "Failed to add to $groupName: $_"
135
+ }
136
+ }
137
+ }
138
+ }
139
+ catch
140
+ {
141
+ Write-Error "User not found: $UserName"
142
+ throw
143
+ }
144
+ }
145
+ ```
146
+
147
+ ## Exchange Management
148
+
149
+ ### Mailbox Operations
150
+
151
+ ```powershell
152
+ #Requires -Modules ExchangeOnlineManagement
153
+
154
+ function Get-LargeMailboxes
155
+ {
156
+ [CmdletBinding()]
157
+ param(
158
+ [Parameter()]
159
+ [int]$SizeThresholdGB = 50
160
+ )
161
+
162
+ $thresholdBytes = $SizeThresholdGB * 1GB
163
+
164
+ Get-Mailbox -ResultSize Unlimited | ForEach-Object {
165
+ $stats = Get-MailboxStatistics -Identity $_.Identity
166
+
167
+ if ($stats.TotalItemSize.Value.ToBytes() -gt $thresholdBytes)
168
+ {
169
+ [PSCustomObject]@{
170
+ DisplayName = $_.DisplayName
171
+ PrimarySmtpAddress = $_.PrimarySmtpAddress
172
+ SizeGB = [math]::Round($stats.TotalItemSize.Value.ToBytes() / 1GB, 2)
173
+ ItemCount = $stats.ItemCount
174
+ LastLogonTime = $stats.LastLogonTime
175
+ }
176
+ }
177
+ }
178
+ }
179
+ ```
180
+
181
+ ### Distribution List Management
182
+
183
+ ```powershell
184
+ function Export-DistributionListMembers
185
+ {
186
+ [CmdletBinding()]
187
+ param(
188
+ [Parameter(Mandatory)]
189
+ [string]$GroupName,
190
+
191
+ [Parameter(Mandatory)]
192
+ [string]$OutputPath
193
+ )
194
+
195
+ try
196
+ {
197
+ $members = Get-DistributionGroupMember -Identity $GroupName -ResultSize Unlimited
198
+
199
+ $members | Select-Object DisplayName, PrimarySmtpAddress, RecipientType |
200
+ Export-Csv -Path $OutputPath -NoTypeInformation
201
+
202
+ Write-Output "Exported $($members.Count) members to $OutputPath"
203
+ }
204
+ catch
205
+ {
206
+ Write-Error "Failed to export distribution list: $_"
207
+ throw
208
+ }
209
+ }
210
+ ```
211
+
212
+ ## SQL Server Management
213
+
214
+ ### Database Queries
215
+
216
+ ```powershell
217
+ #Requires -Modules SqlServer
218
+
219
+ function Invoke-SQLQueryWithRetry
220
+ {
221
+ [CmdletBinding()]
222
+ param(
223
+ [Parameter(Mandatory)]
224
+ [string]$ServerInstance,
225
+
226
+ [Parameter(Mandatory)]
227
+ [string]$Database,
228
+
229
+ [Parameter(Mandatory)]
230
+ [string]$Query,
231
+
232
+ [Parameter()]
233
+ [int]$QueryTimeout = 30,
234
+
235
+ [Parameter()]
236
+ [int]$MaxRetries = 3
237
+ )
238
+
239
+ $attempt = 0
240
+
241
+ while ($attempt -lt $MaxRetries)
242
+ {
243
+ $attempt++
244
+
245
+ try
246
+ {
247
+ $params = @{
248
+ ServerInstance = $ServerInstance
249
+ Database = $Database
250
+ Query = $Query
251
+ QueryTimeout = $QueryTimeout
252
+ ErrorAction = 'Stop'
253
+ }
254
+
255
+ $result = Invoke-Sqlcmd @params
256
+ return $result
257
+ }
258
+ catch
259
+ {
260
+ Write-Warning "Query attempt $attempt failed: $_"
261
+
262
+ if ($attempt -lt $MaxRetries)
263
+ {
264
+ Start-Sleep -Seconds 2
265
+ }
266
+ else
267
+ {
268
+ throw
269
+ }
270
+ }
271
+ }
272
+ }
273
+ ```
274
+
275
+ ### Database Backup
276
+
277
+ ```powershell
278
+ function Backup-SQLDatabaseWithValidation
279
+ {
280
+ [CmdletBinding()]
281
+ param(
282
+ [Parameter(Mandatory)]
283
+ [string]$ServerInstance,
284
+
285
+ [Parameter(Mandatory)]
286
+ [string]$Database,
287
+
288
+ [Parameter(Mandatory)]
289
+ [string]$BackupPath
290
+ )
291
+
292
+ try
293
+ {
294
+ $timestamp = Get-Date -Format 'yyyyMMdd_HHmmss'
295
+ $backupFile = Join-Path $BackupPath "$Database`_$timestamp.bak"
296
+
297
+ # Perform backup
298
+ Backup-SqlDatabase -ServerInstance $ServerInstance `
299
+ -Database $Database `
300
+ -BackupFile $backupFile `
301
+ -CompressionOption On `
302
+ -ErrorAction Stop
303
+
304
+ Write-Verbose "Backup created: $backupFile"
305
+
306
+ # Verify backup
307
+ $verifyQuery = "RESTORE VERIFYONLY FROM DISK = '$backupFile'"
308
+ Invoke-Sqlcmd -ServerInstance $ServerInstance -Query $verifyQuery -ErrorAction Stop
309
+
310
+ Write-Output "Backup verified successfully: $backupFile"
311
+
312
+ return $backupFile
313
+ }
314
+ catch
315
+ {
316
+ Write-Error "Backup failed: $_"
317
+ throw
318
+ }
319
+ }
320
+ ```
321
+
322
+ ## Auditing and Logging
323
+
324
+ ### Comprehensive Audit Logging
325
+
326
+ ```powershell
327
+ function Write-AuditLog
328
+ {
329
+ [CmdletBinding()]
330
+ param(
331
+ [Parameter(Mandatory)]
332
+ [ValidateSet('Info', 'Warning', 'Error', 'Success')]
333
+ [string]$Level,
334
+
335
+ [Parameter(Mandatory)]
336
+ [string]$Message,
337
+
338
+ [Parameter()]
339
+ [string]$LogPath = 'C:\Logs\AdminTools.log',
340
+
341
+ [Parameter()]
342
+ [hashtable]$AdditionalData = @{}
343
+ )
344
+
345
+ $timestamp = Get-Date -Format 'yyyy-MM-dd HH:mm:ss'
346
+ $user = [System.Security.Principal.WindowsIdentity]::GetCurrent().Name
347
+ $computer = $env:COMPUTERNAME
348
+
349
+ $logEntry = [PSCustomObject]@{
350
+ Timestamp = $timestamp
351
+ Level = $Level
352
+ User = $user
353
+ Computer = $computer
354
+ Message = $Message
355
+ AdditionalData = ($AdditionalData | ConvertTo-Json -Compress)
356
+ }
357
+
358
+ # Ensure log directory exists
359
+ $logDir = Split-Path $LogPath
360
+ if (-not (Test-Path $logDir))
361
+ {
362
+ New-Item -Path $logDir -ItemType Directory -Force | Out-Null
363
+ }
364
+
365
+ # Write to log file
366
+ $logEntry | Export-Csv -Path $LogPath -Append -NoTypeInformation
367
+
368
+ # Also write to appropriate stream
369
+ switch ($Level)
370
+ {
371
+ 'Info' { Write-Verbose $Message }
372
+ 'Warning' { Write-Warning $Message }
373
+ 'Error' { Write-Error $Message }
374
+ 'Success' { Write-Output $Message }
375
+ }
376
+ }
377
+ ```
378
+
379
+ ### Change Tracking
380
+
381
+ ```powershell
382
+ function Invoke-AdminTaskWithAudit
383
+ {
384
+ [CmdletBinding()]
385
+ param(
386
+ [Parameter(Mandatory)]
387
+ [string]$TaskName,
388
+
389
+ [Parameter(Mandatory)]
390
+ [scriptblock]$ScriptBlock,
391
+
392
+ [Parameter()]
393
+ [hashtable]$Parameters = @{}
394
+ )
395
+
396
+ $startTime = Get-Date
397
+
398
+ Write-AuditLog -Level Info -Message "Starting task: $TaskName" -AdditionalData $Parameters
399
+
400
+ try
401
+ {
402
+ $result = & $ScriptBlock
403
+ $duration = (Get-Date) - $startTime
404
+
405
+ Write-AuditLog -Level Success -Message "Task completed: $TaskName" -AdditionalData @{
406
+ Duration = $duration.TotalSeconds
407
+ Result = ($result | ConvertTo-Json -Compress -Depth 2)
408
+ }
409
+
410
+ return $result
411
+ }
412
+ catch
413
+ {
414
+ $duration = (Get-Date) - $startTime
415
+
416
+ Write-AuditLog -Level Error -Message "Task failed: $TaskName" -AdditionalData @{
417
+ Duration = $duration.TotalSeconds
418
+ Error = $_.Exception.Message
419
+ }
420
+
421
+ throw
422
+ }
423
+ }
424
+ ```
425
+
426
+ ## Best Practices
427
+
428
+ 1. **Use server-side filtering** - Filter with -Filter parameter, not Where-Object
429
+ 2. **Implement bulk operations** - Process multiple items efficiently
430
+ 3. **Add comprehensive logging** - Track all administrative actions
431
+ 4. **Use ShouldProcess** - For all destructive operations
432
+ 5. **Implement retry logic** - Handle transient failures
433
+ 6. **Validate before execution** - Check prerequisites
434
+ 7. **Export results** - Save operation results for auditing
435
+ 8. **Use specific properties** - Don't retrieve all properties unnecessarily
436
+ 9. **Handle errors gracefully** - Continue processing on individual failures
437
+ 10. **Document changes** - Maintain audit trail of all modifications
438
+
439
+