codehava-agent-kit 1.0.1 → 2.0.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 (1125) hide show
  1. package/README.md +33 -40
  2. package/bin/cli.js +2 -6
  3. package/package.json +1 -1
  4. package/templates/.agent/AGENTS_INDEX.md +11 -24
  5. package/templates/.agent/SKILLS_INDEX.md +12 -54
  6. package/templates/.agent/mcp_config.json +32 -15
  7. package/templates/.agent/rules/GEMINI.md +52 -21
  8. package/templates/.agent/skills/3d-web-experience/SKILL.md +259 -0
  9. package/templates/.agent/skills/acceptance-orchestrator/SKILL.md +106 -0
  10. package/templates/.agent/skills/address-github-comments/SKILL.md +61 -0
  11. package/templates/.agent/skills/advogado-especialista/SKILL.md +1109 -0
  12. package/templates/.agent/skills/advogado-especialista/references/fontes.md +139 -0
  13. package/templates/.agent/skills/agent-evaluation/SKILL.md +69 -0
  14. package/templates/.agent/skills/agent-framework-azure-ai-py/SKILL.md +338 -0
  15. package/templates/.agent/skills/agent-manager-skill/SKILL.md +42 -0
  16. package/templates/.agent/skills/agent-memory-mcp/SKILL.md +87 -0
  17. package/templates/.agent/skills/agent-memory-systems/SKILL.md +72 -0
  18. package/templates/.agent/skills/agent-orchestration-improve-agent/SKILL.md +352 -0
  19. package/templates/.agent/skills/agent-orchestration-multi-agent-optimize/SKILL.md +242 -0
  20. package/templates/.agent/skills/agent-orchestrator/SKILL.md +316 -0
  21. package/templates/.agent/skills/agent-orchestrator/references/capability-taxonomy.md +85 -0
  22. package/templates/.agent/skills/agent-orchestrator/references/orchestration-patterns.md +129 -0
  23. package/templates/.agent/skills/agent-orchestrator/scripts/match_skills.py +329 -0
  24. package/templates/.agent/skills/agent-orchestrator/scripts/orchestrate.py +304 -0
  25. package/templates/.agent/skills/agent-orchestrator/scripts/requirements.txt +1 -0
  26. package/templates/.agent/skills/agent-orchestrator/scripts/scan_registry.py +508 -0
  27. package/templates/.agent/skills/agent-tool-builder/SKILL.md +58 -0
  28. package/templates/.agent/skills/agentfolio/SKILL.md +96 -0
  29. package/templates/.agent/skills/agentic-actions-auditor/SKILL.md +332 -0
  30. package/templates/.agent/skills/agentmail/SKILL.md +247 -0
  31. package/templates/.agent/skills/agents-md/SKILL.md +120 -0
  32. package/templates/.agent/skills/agents-v2-py/SKILL.md +326 -0
  33. package/templates/.agent/skills/ai-agent-development/SKILL.md +173 -0
  34. package/templates/.agent/skills/ai-agents-architect/SKILL.md +96 -0
  35. package/templates/.agent/skills/ai-seo/SKILL.md +407 -0
  36. package/templates/.agent/skills/ai-seo/evals/evals.json +90 -0
  37. package/templates/.agent/skills/ai-seo/references/content-patterns.md +285 -0
  38. package/templates/.agent/skills/ai-seo/references/platform-ranking-factors.md +152 -0
  39. package/templates/.agent/skills/airflow-dag-patterns/SKILL.md +44 -0
  40. package/templates/.agent/skills/airflow-dag-patterns/resources/implementation-playbook.md +509 -0
  41. package/templates/.agent/skills/akf-trust-metadata/SKILL.md +69 -0
  42. package/templates/.agent/skills/algolia-search/SKILL.md +68 -0
  43. package/templates/.agent/skills/algorithmic-art/LICENSE.txt +202 -0
  44. package/templates/.agent/skills/algorithmic-art/SKILL.md +410 -0
  45. package/templates/.agent/skills/algorithmic-art/templates/generator_template.js +223 -0
  46. package/templates/.agent/skills/algorithmic-art/templates/viewer.html +599 -0
  47. package/templates/.agent/skills/angular-ui-patterns/README.md +55 -0
  48. package/templates/.agent/skills/angular-ui-patterns/SKILL.md +512 -0
  49. package/templates/.agent/skills/angular-ui-patterns/metadata.json +12 -0
  50. package/templates/.agent/skills/antigravity-design-expert/SKILL.md +42 -0
  51. package/templates/.agent/skills/antigravity-skill-orchestrator/README.md +32 -0
  52. package/templates/.agent/skills/antigravity-skill-orchestrator/SKILL.md +123 -0
  53. package/templates/.agent/skills/api-design-principles/SKILL.md +40 -0
  54. package/templates/.agent/skills/api-design-principles/assets/api-design-checklist.md +155 -0
  55. package/templates/.agent/skills/api-design-principles/assets/rest-api-template.py +182 -0
  56. package/templates/.agent/skills/api-design-principles/references/graphql-schema-design.md +583 -0
  57. package/templates/.agent/skills/api-design-principles/references/rest-best-practices.md +408 -0
  58. package/templates/.agent/skills/api-design-principles/resources/implementation-playbook.md +513 -0
  59. package/templates/.agent/skills/api-documentation/SKILL.md +163 -0
  60. package/templates/.agent/skills/api-documentation-generator/SKILL.md +487 -0
  61. package/templates/.agent/skills/api-documenter/SKILL.md +182 -0
  62. package/templates/.agent/skills/api-endpoint-builder/README.md +15 -0
  63. package/templates/.agent/skills/api-endpoint-builder/SKILL.md +324 -0
  64. package/templates/.agent/skills/api-fuzzing-bug-bounty/SKILL.md +437 -0
  65. package/templates/.agent/skills/api-security-best-practices/SKILL.md +910 -0
  66. package/templates/.agent/skills/api-security-testing/SKILL.md +171 -0
  67. package/templates/.agent/skills/api-testing-observability-api-mock/SKILL.md +49 -0
  68. package/templates/.agent/skills/api-testing-observability-api-mock/resources/implementation-playbook.md +1327 -0
  69. package/templates/.agent/skills/apify-actor-development/SKILL.md +221 -0
  70. package/templates/.agent/skills/apify-actor-development/references/actor-json.md +66 -0
  71. package/templates/.agent/skills/apify-actor-development/references/dataset-schema.md +209 -0
  72. package/templates/.agent/skills/apify-actor-development/references/input-schema.md +66 -0
  73. package/templates/.agent/skills/apify-actor-development/references/key-value-store-schema.md +129 -0
  74. package/templates/.agent/skills/apify-actor-development/references/logging.md +50 -0
  75. package/templates/.agent/skills/apify-actor-development/references/output-schema.md +49 -0
  76. package/templates/.agent/skills/apify-actor-development/references/standby-mode.md +61 -0
  77. package/templates/.agent/skills/apify-actorization/SKILL.md +185 -0
  78. package/templates/.agent/skills/apify-actorization/references/cli-actorization.md +81 -0
  79. package/templates/.agent/skills/apify-actorization/references/js-ts-actorization.md +111 -0
  80. package/templates/.agent/skills/apify-actorization/references/python-actorization.md +95 -0
  81. package/templates/.agent/skills/apify-actorization/references/schemas-and-output.md +140 -0
  82. package/templates/.agent/skills/apify-audience-analysis/SKILL.md +122 -0
  83. package/templates/.agent/skills/apify-audience-analysis/reference/scripts/run_actor.js +363 -0
  84. package/templates/.agent/skills/apify-brand-reputation-monitoring/SKILL.md +122 -0
  85. package/templates/.agent/skills/apify-brand-reputation-monitoring/reference/scripts/run_actor.js +363 -0
  86. package/templates/.agent/skills/apify-competitor-intelligence/SKILL.md +132 -0
  87. package/templates/.agent/skills/apify-competitor-intelligence/reference/scripts/run_actor.js +363 -0
  88. package/templates/.agent/skills/apify-content-analytics/SKILL.md +121 -0
  89. package/templates/.agent/skills/apify-content-analytics/reference/scripts/run_actor.js +363 -0
  90. package/templates/.agent/skills/apify-ecommerce/SKILL.md +265 -0
  91. package/templates/.agent/skills/apify-ecommerce/reference/scripts/package.json +3 -0
  92. package/templates/.agent/skills/apify-ecommerce/reference/scripts/run_actor.js +369 -0
  93. package/templates/.agent/skills/apify-influencer-discovery/SKILL.md +119 -0
  94. package/templates/.agent/skills/apify-influencer-discovery/reference/scripts/run_actor.js +363 -0
  95. package/templates/.agent/skills/apify-lead-generation/SKILL.md +121 -0
  96. package/templates/.agent/skills/apify-lead-generation/reference/scripts/run_actor.js +363 -0
  97. package/templates/.agent/skills/apify-market-research/SKILL.md +120 -0
  98. package/templates/.agent/skills/apify-market-research/reference/scripts/run_actor.js +363 -0
  99. package/templates/.agent/skills/apify-trend-analysis/SKILL.md +128 -0
  100. package/templates/.agent/skills/apify-trend-analysis/reference/scripts/run_actor.js +363 -0
  101. package/templates/.agent/skills/apify-ultimate-scraper/SKILL.md +231 -0
  102. package/templates/.agent/skills/apify-ultimate-scraper/reference/scripts/run_actor.js +363 -0
  103. package/templates/.agent/skills/app-store-optimization/HOW_TO_USE.md +281 -0
  104. package/templates/.agent/skills/app-store-optimization/README.md +430 -0
  105. package/templates/.agent/skills/app-store-optimization/SKILL.md +409 -0
  106. package/templates/.agent/skills/app-store-optimization/ab_test_planner.py +662 -0
  107. package/templates/.agent/skills/app-store-optimization/aso_scorer.py +482 -0
  108. package/templates/.agent/skills/app-store-optimization/competitor_analyzer.py +577 -0
  109. package/templates/.agent/skills/app-store-optimization/expected_output.json +170 -0
  110. package/templates/.agent/skills/app-store-optimization/keyword_analyzer.py +406 -0
  111. package/templates/.agent/skills/app-store-optimization/launch_checklist.py +739 -0
  112. package/templates/.agent/skills/app-store-optimization/localization_helper.py +588 -0
  113. package/templates/.agent/skills/app-store-optimization/metadata_optimizer.py +581 -0
  114. package/templates/.agent/skills/app-store-optimization/review_analyzer.py +714 -0
  115. package/templates/.agent/skills/app-store-optimization/sample_input.json +30 -0
  116. package/templates/.agent/skills/application-performance-performance-optimization/SKILL.md +157 -0
  117. package/templates/.agent/skills/architect-review/SKILL.md +172 -0
  118. package/templates/.agent/skills/architecture-decision-records/SKILL.md +444 -0
  119. package/templates/.agent/skills/architecture-patterns/SKILL.md +45 -0
  120. package/templates/.agent/skills/architecture-patterns/resources/implementation-playbook.md +479 -0
  121. package/templates/.agent/skills/ask-questions-if-underspecified/SKILL.md +86 -0
  122. package/templates/.agent/skills/async-python-patterns/SKILL.md +42 -0
  123. package/templates/.agent/skills/async-python-patterns/resources/implementation-playbook.md +678 -0
  124. package/templates/.agent/skills/auth-implementation-patterns/SKILL.md +42 -0
  125. package/templates/.agent/skills/auth-implementation-patterns/resources/implementation-playbook.md +618 -0
  126. package/templates/.agent/skills/autonomous-agent-patterns/SKILL.md +764 -0
  127. package/templates/.agent/skills/autonomous-agents/SKILL.md +73 -0
  128. package/templates/.agent/skills/aws-cost-cleanup/SKILL.md +310 -0
  129. package/templates/.agent/skills/aws-cost-optimizer/SKILL.md +193 -0
  130. package/templates/.agent/skills/aws-penetration-testing/SKILL.md +409 -0
  131. package/templates/.agent/skills/aws-penetration-testing/references/advanced-aws-pentesting.md +469 -0
  132. package/templates/.agent/skills/aws-serverless/SKILL.md +328 -0
  133. package/templates/.agent/skills/aws-skills/SKILL.md +23 -0
  134. package/templates/.agent/skills/awt-e2e-testing/SKILL.md +30 -0
  135. package/templates/.agent/skills/azure-ai-agents-persistent-dotnet/SKILL.md +353 -0
  136. package/templates/.agent/skills/azure-ai-agents-persistent-java/SKILL.md +140 -0
  137. package/templates/.agent/skills/azure-cosmos-rust/SKILL.md +138 -0
  138. package/templates/.agent/skills/azure-eventhub-rust/SKILL.md +130 -0
  139. package/templates/.agent/skills/azure-identity-rust/SKILL.md +118 -0
  140. package/templates/.agent/skills/azure-keyvault-certificates-rust/SKILL.md +180 -0
  141. package/templates/.agent/skills/azure-keyvault-keys-rust/SKILL.md +170 -0
  142. package/templates/.agent/skills/azure-keyvault-secrets-rust/SKILL.md +145 -0
  143. package/templates/.agent/skills/azure-messaging-webpubsub-java/SKILL.md +307 -0
  144. package/templates/.agent/skills/azure-messaging-webpubsubservice-py/SKILL.md +248 -0
  145. package/templates/.agent/skills/azure-mgmt-apicenter-dotnet/SKILL.md +415 -0
  146. package/templates/.agent/skills/azure-mgmt-apicenter-py/SKILL.md +245 -0
  147. package/templates/.agent/skills/azure-mgmt-apimanagement-dotnet/SKILL.md +314 -0
  148. package/templates/.agent/skills/azure-mgmt-apimanagement-py/SKILL.md +281 -0
  149. package/templates/.agent/skills/azure-mgmt-mongodbatlas-dotnet/SKILL.md +359 -0
  150. package/templates/.agent/skills/azure-microsoft-playwright-testing-ts/SKILL.md +307 -0
  151. package/templates/.agent/skills/azure-security-keyvault-keys-dotnet/SKILL.md +410 -0
  152. package/templates/.agent/skills/azure-security-keyvault-keys-java/SKILL.md +367 -0
  153. package/templates/.agent/skills/azure-security-keyvault-secrets-java/SKILL.md +361 -0
  154. package/templates/.agent/skills/azure-storage-blob-rust/SKILL.md +135 -0
  155. package/templates/.agent/skills/azure-web-pubsub-ts/SKILL.md +315 -0
  156. package/templates/.agent/skills/backend-architect/SKILL.md +329 -0
  157. package/templates/.agent/skills/backend-dev-guidelines/SKILL.md +347 -0
  158. package/templates/.agent/skills/backend-dev-guidelines/resources/architecture-overview.md +451 -0
  159. package/templates/.agent/skills/backend-dev-guidelines/resources/async-and-errors.md +307 -0
  160. package/templates/.agent/skills/backend-dev-guidelines/resources/complete-examples.md +638 -0
  161. package/templates/.agent/skills/backend-dev-guidelines/resources/configuration.md +275 -0
  162. package/templates/.agent/skills/backend-dev-guidelines/resources/database-patterns.md +224 -0
  163. package/templates/.agent/skills/backend-dev-guidelines/resources/middleware-guide.md +213 -0
  164. package/templates/.agent/skills/backend-dev-guidelines/resources/routing-and-controllers.md +756 -0
  165. package/templates/.agent/skills/backend-dev-guidelines/resources/sentry-and-monitoring.md +336 -0
  166. package/templates/.agent/skills/backend-dev-guidelines/resources/services-and-repositories.md +789 -0
  167. package/templates/.agent/skills/backend-dev-guidelines/resources/testing-guide.md +235 -0
  168. package/templates/.agent/skills/backend-dev-guidelines/resources/validation-patterns.md +754 -0
  169. package/templates/.agent/skills/backend-development-feature-development/SKILL.md +183 -0
  170. package/templates/.agent/skills/backend-security-coder/SKILL.md +155 -0
  171. package/templates/.agent/skills/backtesting-frameworks/SKILL.md +42 -0
  172. package/templates/.agent/skills/backtesting-frameworks/resources/implementation-playbook.md +647 -0
  173. package/templates/.agent/skills/bash-defensive-patterns/SKILL.md +46 -0
  174. package/templates/.agent/skills/bash-defensive-patterns/resources/implementation-playbook.md +517 -0
  175. package/templates/.agent/skills/bats-testing-patterns/SKILL.md +37 -0
  176. package/templates/.agent/skills/bats-testing-patterns/resources/implementation-playbook.md +614 -0
  177. package/templates/.agent/skills/bazel-build-optimization/SKILL.md +400 -0
  178. package/templates/.agent/skills/binary-analysis-patterns/SKILL.md +453 -0
  179. package/templates/.agent/skills/biopython/SKILL.md +442 -0
  180. package/templates/.agent/skills/broken-authentication/SKILL.md +480 -0
  181. package/templates/.agent/skills/bullmq-specialist/SKILL.md +62 -0
  182. package/templates/.agent/skills/burp-suite-testing/SKILL.md +384 -0
  183. package/templates/.agent/skills/c4-architecture-c4-architecture/SKILL.md +392 -0
  184. package/templates/.agent/skills/canvas-design/LICENSE.txt +202 -0
  185. package/templates/.agent/skills/canvas-design/SKILL.md +135 -0
  186. package/templates/.agent/skills/canvas-design/canvas-fonts/ArsenalSC-OFL.txt +93 -0
  187. package/templates/.agent/skills/canvas-design/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
  188. package/templates/.agent/skills/canvas-design/canvas-fonts/BigShoulders-Bold.ttf +0 -0
  189. package/templates/.agent/skills/canvas-design/canvas-fonts/BigShoulders-OFL.txt +93 -0
  190. package/templates/.agent/skills/canvas-design/canvas-fonts/BigShoulders-Regular.ttf +0 -0
  191. package/templates/.agent/skills/canvas-design/canvas-fonts/Boldonse-OFL.txt +93 -0
  192. package/templates/.agent/skills/canvas-design/canvas-fonts/Boldonse-Regular.ttf +0 -0
  193. package/templates/.agent/skills/canvas-design/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
  194. package/templates/.agent/skills/canvas-design/canvas-fonts/BricolageGrotesque-OFL.txt +93 -0
  195. package/templates/.agent/skills/canvas-design/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
  196. package/templates/.agent/skills/canvas-design/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
  197. package/templates/.agent/skills/canvas-design/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
  198. package/templates/.agent/skills/canvas-design/canvas-fonts/CrimsonPro-OFL.txt +93 -0
  199. package/templates/.agent/skills/canvas-design/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
  200. package/templates/.agent/skills/canvas-design/canvas-fonts/DMMono-OFL.txt +93 -0
  201. package/templates/.agent/skills/canvas-design/canvas-fonts/DMMono-Regular.ttf +0 -0
  202. package/templates/.agent/skills/canvas-design/canvas-fonts/EricaOne-OFL.txt +94 -0
  203. package/templates/.agent/skills/canvas-design/canvas-fonts/EricaOne-Regular.ttf +0 -0
  204. package/templates/.agent/skills/canvas-design/canvas-fonts/GeistMono-Bold.ttf +0 -0
  205. package/templates/.agent/skills/canvas-design/canvas-fonts/GeistMono-OFL.txt +93 -0
  206. package/templates/.agent/skills/canvas-design/canvas-fonts/GeistMono-Regular.ttf +0 -0
  207. package/templates/.agent/skills/canvas-design/canvas-fonts/Gloock-OFL.txt +93 -0
  208. package/templates/.agent/skills/canvas-design/canvas-fonts/Gloock-Regular.ttf +0 -0
  209. package/templates/.agent/skills/canvas-design/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
  210. package/templates/.agent/skills/canvas-design/canvas-fonts/IBMPlexMono-OFL.txt +93 -0
  211. package/templates/.agent/skills/canvas-design/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
  212. package/templates/.agent/skills/canvas-design/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
  213. package/templates/.agent/skills/canvas-design/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
  214. package/templates/.agent/skills/canvas-design/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
  215. package/templates/.agent/skills/canvas-design/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
  216. package/templates/.agent/skills/canvas-design/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
  217. package/templates/.agent/skills/canvas-design/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
  218. package/templates/.agent/skills/canvas-design/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
  219. package/templates/.agent/skills/canvas-design/canvas-fonts/InstrumentSans-OFL.txt +93 -0
  220. package/templates/.agent/skills/canvas-design/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
  221. package/templates/.agent/skills/canvas-design/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
  222. package/templates/.agent/skills/canvas-design/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
  223. package/templates/.agent/skills/canvas-design/canvas-fonts/Italiana-OFL.txt +93 -0
  224. package/templates/.agent/skills/canvas-design/canvas-fonts/Italiana-Regular.ttf +0 -0
  225. package/templates/.agent/skills/canvas-design/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
  226. package/templates/.agent/skills/canvas-design/canvas-fonts/JetBrainsMono-OFL.txt +93 -0
  227. package/templates/.agent/skills/canvas-design/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
  228. package/templates/.agent/skills/canvas-design/canvas-fonts/Jura-Light.ttf +0 -0
  229. package/templates/.agent/skills/canvas-design/canvas-fonts/Jura-Medium.ttf +0 -0
  230. package/templates/.agent/skills/canvas-design/canvas-fonts/Jura-OFL.txt +93 -0
  231. package/templates/.agent/skills/canvas-design/canvas-fonts/LibreBaskerville-OFL.txt +93 -0
  232. package/templates/.agent/skills/canvas-design/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
  233. package/templates/.agent/skills/canvas-design/canvas-fonts/Lora-Bold.ttf +0 -0
  234. package/templates/.agent/skills/canvas-design/canvas-fonts/Lora-BoldItalic.ttf +0 -0
  235. package/templates/.agent/skills/canvas-design/canvas-fonts/Lora-Italic.ttf +0 -0
  236. package/templates/.agent/skills/canvas-design/canvas-fonts/Lora-OFL.txt +93 -0
  237. package/templates/.agent/skills/canvas-design/canvas-fonts/Lora-Regular.ttf +0 -0
  238. package/templates/.agent/skills/canvas-design/canvas-fonts/NationalPark-Bold.ttf +0 -0
  239. package/templates/.agent/skills/canvas-design/canvas-fonts/NationalPark-OFL.txt +93 -0
  240. package/templates/.agent/skills/canvas-design/canvas-fonts/NationalPark-Regular.ttf +0 -0
  241. package/templates/.agent/skills/canvas-design/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -0
  242. package/templates/.agent/skills/canvas-design/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
  243. package/templates/.agent/skills/canvas-design/canvas-fonts/Outfit-Bold.ttf +0 -0
  244. package/templates/.agent/skills/canvas-design/canvas-fonts/Outfit-OFL.txt +93 -0
  245. package/templates/.agent/skills/canvas-design/canvas-fonts/Outfit-Regular.ttf +0 -0
  246. package/templates/.agent/skills/canvas-design/canvas-fonts/PixelifySans-Medium.ttf +0 -0
  247. package/templates/.agent/skills/canvas-design/canvas-fonts/PixelifySans-OFL.txt +93 -0
  248. package/templates/.agent/skills/canvas-design/canvas-fonts/PoiretOne-OFL.txt +93 -0
  249. package/templates/.agent/skills/canvas-design/canvas-fonts/PoiretOne-Regular.ttf +0 -0
  250. package/templates/.agent/skills/canvas-design/canvas-fonts/RedHatMono-Bold.ttf +0 -0
  251. package/templates/.agent/skills/canvas-design/canvas-fonts/RedHatMono-OFL.txt +93 -0
  252. package/templates/.agent/skills/canvas-design/canvas-fonts/RedHatMono-Regular.ttf +0 -0
  253. package/templates/.agent/skills/canvas-design/canvas-fonts/Silkscreen-OFL.txt +93 -0
  254. package/templates/.agent/skills/canvas-design/canvas-fonts/Silkscreen-Regular.ttf +0 -0
  255. package/templates/.agent/skills/canvas-design/canvas-fonts/SmoochSans-Medium.ttf +0 -0
  256. package/templates/.agent/skills/canvas-design/canvas-fonts/SmoochSans-OFL.txt +93 -0
  257. package/templates/.agent/skills/canvas-design/canvas-fonts/Tektur-Medium.ttf +0 -0
  258. package/templates/.agent/skills/canvas-design/canvas-fonts/Tektur-OFL.txt +93 -0
  259. package/templates/.agent/skills/canvas-design/canvas-fonts/Tektur-Regular.ttf +0 -0
  260. package/templates/.agent/skills/canvas-design/canvas-fonts/WorkSans-Bold.ttf +0 -0
  261. package/templates/.agent/skills/canvas-design/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
  262. package/templates/.agent/skills/canvas-design/canvas-fonts/WorkSans-Italic.ttf +0 -0
  263. package/templates/.agent/skills/canvas-design/canvas-fonts/WorkSans-OFL.txt +93 -0
  264. package/templates/.agent/skills/canvas-design/canvas-fonts/WorkSans-Regular.ttf +0 -0
  265. package/templates/.agent/skills/canvas-design/canvas-fonts/YoungSerif-OFL.txt +93 -0
  266. package/templates/.agent/skills/canvas-design/canvas-fonts/YoungSerif-Regular.ttf +0 -0
  267. package/templates/.agent/skills/cc-skill-backend-patterns/SKILL.md +588 -0
  268. package/templates/.agent/skills/cc-skill-frontend-patterns/SKILL.md +637 -0
  269. package/templates/.agent/skills/cc-skill-security-review/SKILL.md +499 -0
  270. package/templates/.agent/skills/cdk-patterns/SKILL.md +78 -0
  271. package/templates/.agent/skills/claude-api/LICENSE.txt +202 -0
  272. package/templates/.agent/skills/claude-api/SKILL.md +252 -0
  273. package/templates/.agent/skills/claude-api/csharp/claude-api.md +70 -0
  274. package/templates/.agent/skills/claude-api/curl/examples.md +164 -0
  275. package/templates/.agent/skills/claude-api/go/claude-api.md +146 -0
  276. package/templates/.agent/skills/claude-api/java/claude-api.md +128 -0
  277. package/templates/.agent/skills/claude-api/php/claude-api.md +88 -0
  278. package/templates/.agent/skills/claude-api/python/agent-sdk/README.md +269 -0
  279. package/templates/.agent/skills/claude-api/python/agent-sdk/patterns.md +319 -0
  280. package/templates/.agent/skills/claude-api/python/claude-api/README.md +404 -0
  281. package/templates/.agent/skills/claude-api/python/claude-api/batches.md +182 -0
  282. package/templates/.agent/skills/claude-api/python/claude-api/files-api.md +162 -0
  283. package/templates/.agent/skills/claude-api/python/claude-api/streaming.md +162 -0
  284. package/templates/.agent/skills/claude-api/python/claude-api/tool-use.md +587 -0
  285. package/templates/.agent/skills/claude-api/ruby/claude-api.md +87 -0
  286. package/templates/.agent/skills/claude-api/shared/error-codes.md +205 -0
  287. package/templates/.agent/skills/claude-api/shared/live-sources.md +121 -0
  288. package/templates/.agent/skills/claude-api/shared/models.md +68 -0
  289. package/templates/.agent/skills/claude-api/shared/tool-use-concepts.md +305 -0
  290. package/templates/.agent/skills/claude-api/typescript/agent-sdk/README.md +220 -0
  291. package/templates/.agent/skills/claude-api/typescript/agent-sdk/patterns.md +150 -0
  292. package/templates/.agent/skills/claude-api/typescript/claude-api/README.md +313 -0
  293. package/templates/.agent/skills/claude-api/typescript/claude-api/batches.md +106 -0
  294. package/templates/.agent/skills/claude-api/typescript/claude-api/files-api.md +98 -0
  295. package/templates/.agent/skills/claude-api/typescript/claude-api/streaming.md +178 -0
  296. package/templates/.agent/skills/claude-api/typescript/claude-api/tool-use.md +477 -0
  297. package/templates/.agent/skills/claude-win11-speckit-update-skill/SKILL.md +23 -0
  298. package/templates/.agent/skills/clerk-auth/SKILL.md +58 -0
  299. package/templates/.agent/skills/cloud-architect/SKILL.md +131 -0
  300. package/templates/.agent/skills/cloud-devops/SKILL.md +235 -0
  301. package/templates/.agent/skills/cloud-penetration-testing/SKILL.md +507 -0
  302. package/templates/.agent/skills/cloud-penetration-testing/references/advanced-cloud-scripts.md +318 -0
  303. package/templates/.agent/skills/cloudflare-workers-expert/SKILL.md +89 -0
  304. package/templates/.agent/skills/code-refactoring-refactor-clean/SKILL.md +54 -0
  305. package/templates/.agent/skills/code-refactoring-refactor-clean/resources/implementation-playbook.md +879 -0
  306. package/templates/.agent/skills/codebase-cleanup-deps-audit/SKILL.md +54 -0
  307. package/templates/.agent/skills/codebase-cleanup-deps-audit/resources/implementation-playbook.md +766 -0
  308. package/templates/.agent/skills/codebase-cleanup-refactor-clean/SKILL.md +54 -0
  309. package/templates/.agent/skills/codebase-cleanup-refactor-clean/resources/implementation-playbook.md +879 -0
  310. package/templates/.agent/skills/codebase-cleanup-tech-debt/SKILL.md +389 -0
  311. package/templates/.agent/skills/computer-use-agents/SKILL.md +320 -0
  312. package/templates/.agent/skills/context-agent/SKILL.md +188 -0
  313. package/templates/.agent/skills/context-agent/references/compression-rules.md +64 -0
  314. package/templates/.agent/skills/context-agent/references/context-format.md +116 -0
  315. package/templates/.agent/skills/context-agent/scripts/active_context.py +227 -0
  316. package/templates/.agent/skills/context-agent/scripts/compressor.py +149 -0
  317. package/templates/.agent/skills/context-agent/scripts/config.py +69 -0
  318. package/templates/.agent/skills/context-agent/scripts/context_loader.py +155 -0
  319. package/templates/.agent/skills/context-agent/scripts/context_manager.py +302 -0
  320. package/templates/.agent/skills/context-agent/scripts/models.py +103 -0
  321. package/templates/.agent/skills/context-agent/scripts/project_registry.py +132 -0
  322. package/templates/.agent/skills/context-agent/scripts/requirements.txt +6 -0
  323. package/templates/.agent/skills/context-agent/scripts/search.py +115 -0
  324. package/templates/.agent/skills/context-agent/scripts/session_parser.py +206 -0
  325. package/templates/.agent/skills/context-agent/scripts/session_summary.py +319 -0
  326. package/templates/.agent/skills/context-optimization/SKILL.md +180 -0
  327. package/templates/.agent/skills/cost-optimization/SKILL.md +289 -0
  328. package/templates/.agent/skills/crypto-bd-agent/SKILL.md +235 -0
  329. package/templates/.agent/skills/database/SKILL.md +212 -0
  330. package/templates/.agent/skills/database-admin/SKILL.md +161 -0
  331. package/templates/.agent/skills/database-architect/SKILL.md +263 -0
  332. package/templates/.agent/skills/database-cloud-optimization-cost-optimize/SKILL.md +47 -0
  333. package/templates/.agent/skills/database-cloud-optimization-cost-optimize/resources/implementation-playbook.md +1441 -0
  334. package/templates/.agent/skills/database-migration/SKILL.md +439 -0
  335. package/templates/.agent/skills/database-migrations-migration-observability/SKILL.md +420 -0
  336. package/templates/.agent/skills/database-migrations-sql-migrations/SKILL.md +49 -0
  337. package/templates/.agent/skills/database-migrations-sql-migrations/resources/implementation-playbook.md +499 -0
  338. package/templates/.agent/skills/database-optimizer/SKILL.md +163 -0
  339. package/templates/.agent/skills/dbos-golang/AGENTS.md +92 -0
  340. package/templates/.agent/skills/dbos-golang/SKILL.md +126 -0
  341. package/templates/.agent/skills/dbos-golang/references/_sections.md +41 -0
  342. package/templates/.agent/skills/dbos-golang/references/advanced-patching.md +86 -0
  343. package/templates/.agent/skills/dbos-golang/references/advanced-versioning.md +58 -0
  344. package/templates/.agent/skills/dbos-golang/references/client-enqueue.md +65 -0
  345. package/templates/.agent/skills/dbos-golang/references/client-setup.md +65 -0
  346. package/templates/.agent/skills/dbos-golang/references/comm-events.md +69 -0
  347. package/templates/.agent/skills/dbos-golang/references/comm-messages.md +57 -0
  348. package/templates/.agent/skills/dbos-golang/references/comm-streaming.md +75 -0
  349. package/templates/.agent/skills/dbos-golang/references/lifecycle-config.md +70 -0
  350. package/templates/.agent/skills/dbos-golang/references/pattern-debouncing.md +47 -0
  351. package/templates/.agent/skills/dbos-golang/references/pattern-idempotency.md +63 -0
  352. package/templates/.agent/skills/dbos-golang/references/pattern-scheduled.md +69 -0
  353. package/templates/.agent/skills/dbos-golang/references/pattern-sleep.md +52 -0
  354. package/templates/.agent/skills/dbos-golang/references/queue-basics.md +53 -0
  355. package/templates/.agent/skills/dbos-golang/references/queue-concurrency.md +49 -0
  356. package/templates/.agent/skills/dbos-golang/references/queue-deduplication.md +52 -0
  357. package/templates/.agent/skills/dbos-golang/references/queue-listening.md +49 -0
  358. package/templates/.agent/skills/dbos-golang/references/queue-partitioning.md +42 -0
  359. package/templates/.agent/skills/dbos-golang/references/queue-priority.md +45 -0
  360. package/templates/.agent/skills/dbos-golang/references/queue-rate-limiting.md +50 -0
  361. package/templates/.agent/skills/dbos-golang/references/step-basics.md +81 -0
  362. package/templates/.agent/skills/dbos-golang/references/step-concurrency.md +79 -0
  363. package/templates/.agent/skills/dbos-golang/references/step-retries.md +66 -0
  364. package/templates/.agent/skills/dbos-golang/references/test-setup.md +90 -0
  365. package/templates/.agent/skills/dbos-golang/references/workflow-background.md +64 -0
  366. package/templates/.agent/skills/dbos-golang/references/workflow-constraints.md +68 -0
  367. package/templates/.agent/skills/dbos-golang/references/workflow-control.md +48 -0
  368. package/templates/.agent/skills/dbos-golang/references/workflow-determinism.md +51 -0
  369. package/templates/.agent/skills/dbos-golang/references/workflow-introspection.md +64 -0
  370. package/templates/.agent/skills/dbos-golang/references/workflow-timeout.md +38 -0
  371. package/templates/.agent/skills/dbos-python/AGENTS.md +95 -0
  372. package/templates/.agent/skills/dbos-python/SKILL.md +95 -0
  373. package/templates/.agent/skills/dbos-python/references/_sections.md +41 -0
  374. package/templates/.agent/skills/dbos-python/references/advanced-async.md +101 -0
  375. package/templates/.agent/skills/dbos-python/references/advanced-patching.md +68 -0
  376. package/templates/.agent/skills/dbos-python/references/advanced-versioning.md +66 -0
  377. package/templates/.agent/skills/dbos-python/references/client-enqueue.md +54 -0
  378. package/templates/.agent/skills/dbos-python/references/client-setup.md +57 -0
  379. package/templates/.agent/skills/dbos-python/references/comm-events.md +61 -0
  380. package/templates/.agent/skills/dbos-python/references/comm-messages.md +56 -0
  381. package/templates/.agent/skills/dbos-python/references/comm-streaming.md +57 -0
  382. package/templates/.agent/skills/dbos-python/references/lifecycle-config.md +74 -0
  383. package/templates/.agent/skills/dbos-python/references/lifecycle-fastapi.md +66 -0
  384. package/templates/.agent/skills/dbos-python/references/pattern-classes.md +61 -0
  385. package/templates/.agent/skills/dbos-python/references/pattern-debouncing.md +59 -0
  386. package/templates/.agent/skills/dbos-python/references/pattern-idempotency.md +52 -0
  387. package/templates/.agent/skills/dbos-python/references/pattern-scheduled.md +56 -0
  388. package/templates/.agent/skills/dbos-python/references/pattern-sleep.md +58 -0
  389. package/templates/.agent/skills/dbos-python/references/queue-basics.md +60 -0
  390. package/templates/.agent/skills/dbos-python/references/queue-concurrency.md +57 -0
  391. package/templates/.agent/skills/dbos-python/references/queue-deduplication.md +51 -0
  392. package/templates/.agent/skills/dbos-python/references/queue-listening.md +64 -0
  393. package/templates/.agent/skills/dbos-python/references/queue-partitioning.md +62 -0
  394. package/templates/.agent/skills/dbos-python/references/queue-priority.md +62 -0
  395. package/templates/.agent/skills/dbos-python/references/queue-rate-limiting.md +55 -0
  396. package/templates/.agent/skills/dbos-python/references/step-basics.md +53 -0
  397. package/templates/.agent/skills/dbos-python/references/step-retries.md +44 -0
  398. package/templates/.agent/skills/dbos-python/references/step-transactions.md +58 -0
  399. package/templates/.agent/skills/dbos-python/references/test-fixtures.md +63 -0
  400. package/templates/.agent/skills/dbos-python/references/workflow-background.md +58 -0
  401. package/templates/.agent/skills/dbos-python/references/workflow-constraints.md +70 -0
  402. package/templates/.agent/skills/dbos-python/references/workflow-control.md +77 -0
  403. package/templates/.agent/skills/dbos-python/references/workflow-determinism.md +53 -0
  404. package/templates/.agent/skills/dbos-python/references/workflow-introspection.md +68 -0
  405. package/templates/.agent/skills/dbos-python/references/workflow-timeout.md +59 -0
  406. package/templates/.agent/skills/dbos-typescript/AGENTS.md +94 -0
  407. package/templates/.agent/skills/dbos-typescript/SKILL.md +104 -0
  408. package/templates/.agent/skills/dbos-typescript/references/_sections.md +41 -0
  409. package/templates/.agent/skills/dbos-typescript/references/advanced-patching.md +72 -0
  410. package/templates/.agent/skills/dbos-typescript/references/advanced-versioning.md +61 -0
  411. package/templates/.agent/skills/dbos-typescript/references/client-enqueue.md +75 -0
  412. package/templates/.agent/skills/dbos-typescript/references/client-setup.md +60 -0
  413. package/templates/.agent/skills/dbos-typescript/references/comm-events.md +57 -0
  414. package/templates/.agent/skills/dbos-typescript/references/comm-messages.md +55 -0
  415. package/templates/.agent/skills/dbos-typescript/references/comm-streaming.md +53 -0
  416. package/templates/.agent/skills/dbos-typescript/references/lifecycle-config.md +47 -0
  417. package/templates/.agent/skills/dbos-typescript/references/lifecycle-express.md +61 -0
  418. package/templates/.agent/skills/dbos-typescript/references/pattern-classes.md +67 -0
  419. package/templates/.agent/skills/dbos-typescript/references/pattern-debouncing.md +56 -0
  420. package/templates/.agent/skills/dbos-typescript/references/pattern-idempotency.md +53 -0
  421. package/templates/.agent/skills/dbos-typescript/references/pattern-scheduled.md +69 -0
  422. package/templates/.agent/skills/dbos-typescript/references/pattern-sleep.md +59 -0
  423. package/templates/.agent/skills/dbos-typescript/references/queue-basics.md +59 -0
  424. package/templates/.agent/skills/dbos-typescript/references/queue-concurrency.md +53 -0
  425. package/templates/.agent/skills/dbos-typescript/references/queue-deduplication.md +51 -0
  426. package/templates/.agent/skills/dbos-typescript/references/queue-listening.md +63 -0
  427. package/templates/.agent/skills/dbos-typescript/references/queue-partitioning.md +63 -0
  428. package/templates/.agent/skills/dbos-typescript/references/queue-priority.md +48 -0
  429. package/templates/.agent/skills/dbos-typescript/references/queue-rate-limiting.md +44 -0
  430. package/templates/.agent/skills/dbos-typescript/references/step-basics.md +63 -0
  431. package/templates/.agent/skills/dbos-typescript/references/step-retries.md +67 -0
  432. package/templates/.agent/skills/dbos-typescript/references/step-transactions.md +68 -0
  433. package/templates/.agent/skills/dbos-typescript/references/test-setup.md +104 -0
  434. package/templates/.agent/skills/dbos-typescript/references/workflow-background.md +54 -0
  435. package/templates/.agent/skills/dbos-typescript/references/workflow-constraints.md +65 -0
  436. package/templates/.agent/skills/dbos-typescript/references/workflow-control.md +57 -0
  437. package/templates/.agent/skills/dbos-typescript/references/workflow-determinism.md +54 -0
  438. package/templates/.agent/skills/dbos-typescript/references/workflow-introspection.md +70 -0
  439. package/templates/.agent/skills/dbos-typescript/references/workflow-timeout.md +39 -0
  440. package/templates/.agent/skills/dbt-transformation-patterns/SKILL.md +37 -0
  441. package/templates/.agent/skills/dbt-transformation-patterns/resources/implementation-playbook.md +547 -0
  442. package/templates/.agent/skills/ddd-strategic-design/SKILL.md +52 -0
  443. package/templates/.agent/skills/ddd-strategic-design/references/strategic-design-template.md +22 -0
  444. package/templates/.agent/skills/ddd-tactical-patterns/SKILL.md +53 -0
  445. package/templates/.agent/skills/ddd-tactical-patterns/references/tactical-checklist.md +25 -0
  446. package/templates/.agent/skills/debugger/SKILL.md +53 -0
  447. package/templates/.agent/skills/deployment-pipeline-design/SKILL.md +374 -0
  448. package/templates/.agent/skills/design-md/SKILL.md +179 -0
  449. package/templates/.agent/skills/design-orchestration/SKILL.md +169 -0
  450. package/templates/.agent/skills/design-spells/SKILL.md +36 -0
  451. package/templates/.agent/skills/devops-deploy/SKILL.md +294 -0
  452. package/templates/.agent/skills/devops-troubleshooter/SKILL.md +157 -0
  453. package/templates/.agent/skills/discord-bot-architect/SKILL.md +282 -0
  454. package/templates/.agent/skills/dispatching-parallel-agents/SKILL.md +182 -0
  455. package/templates/.agent/skills/django-access-review/SKILL.md +346 -0
  456. package/templates/.agent/skills/django-perf-review/SKILL.md +398 -0
  457. package/templates/.agent/skills/django-pro/SKILL.md +178 -0
  458. package/templates/.agent/skills/doc-coauthoring/SKILL.md +381 -0
  459. package/templates/.agent/skills/docker-expert/SKILL.md +413 -0
  460. package/templates/.agent/skills/docs-architect/SKILL.md +96 -0
  461. package/templates/.agent/skills/domain-driven-design/SKILL.md +74 -0
  462. package/templates/.agent/skills/domain-driven-design/references/ddd-deliverables.md +24 -0
  463. package/templates/.agent/skills/dotnet-architect/SKILL.md +194 -0
  464. package/templates/.agent/skills/dotnet-backend/SKILL.md +264 -0
  465. package/templates/.agent/skills/dotnet-backend-patterns/SKILL.md +40 -0
  466. package/templates/.agent/skills/dotnet-backend-patterns/assets/repository-template.cs.template +523 -0
  467. package/templates/.agent/skills/dotnet-backend-patterns/assets/service-template.cs.template +336 -0
  468. package/templates/.agent/skills/dotnet-backend-patterns/references/dapper-patterns.md +544 -0
  469. package/templates/.agent/skills/dotnet-backend-patterns/references/ef-core-best-practices.md +355 -0
  470. package/templates/.agent/skills/dotnet-backend-patterns/resources/implementation-playbook.md +799 -0
  471. package/templates/.agent/skills/e2e-testing/SKILL.md +165 -0
  472. package/templates/.agent/skills/e2e-testing-patterns/SKILL.md +44 -0
  473. package/templates/.agent/skills/e2e-testing-patterns/resources/implementation-playbook.md +531 -0
  474. package/templates/.agent/skills/enhance-prompt/SKILL.md +206 -0
  475. package/templates/.agent/skills/error-debugging-multi-agent-review/SKILL.md +219 -0
  476. package/templates/.agent/skills/error-handling-patterns/SKILL.md +38 -0
  477. package/templates/.agent/skills/error-handling-patterns/resources/implementation-playbook.md +635 -0
  478. package/templates/.agent/skills/event-sourcing-architect/SKILL.md +66 -0
  479. package/templates/.agent/skills/event-store-design/SKILL.md +452 -0
  480. package/templates/.agent/skills/event-store-design/resources/implementation-playbook.md +25 -0
  481. package/templates/.agent/skills/expo-api-routes/SKILL.md +370 -0
  482. package/templates/.agent/skills/expo-tailwind-setup/SKILL.md +482 -0
  483. package/templates/.agent/skills/expo-ui-swift-ui/SKILL.md +46 -0
  484. package/templates/.agent/skills/fastapi-pro/SKILL.md +190 -0
  485. package/templates/.agent/skills/fastapi-router-py/SKILL.md +58 -0
  486. package/templates/.agent/skills/fastapi-templates/SKILL.md +35 -0
  487. package/templates/.agent/skills/fastapi-templates/resources/implementation-playbook.md +566 -0
  488. package/templates/.agent/skills/ffuf-web-fuzzing/SKILL.md +500 -0
  489. package/templates/.agent/skills/figma-automation/SKILL.md +185 -0
  490. package/templates/.agent/skills/firebase/SKILL.md +61 -0
  491. package/templates/.agent/skills/fixing-motion-performance/SKILL.md +152 -0
  492. package/templates/.agent/skills/flutter-expert/SKILL.md +197 -0
  493. package/templates/.agent/skills/food-database-query/SKILL.md +787 -0
  494. package/templates/.agent/skills/fp-backend/SKILL.md +1334 -0
  495. package/templates/.agent/skills/fp-react/SKILL.md +792 -0
  496. package/templates/.agent/skills/fp-ts-react/SKILL.md +797 -0
  497. package/templates/.agent/skills/frontend-design/LICENSE.txt +177 -0
  498. package/templates/.agent/skills/frontend-dev-guidelines/SKILL.md +364 -0
  499. package/templates/.agent/skills/frontend-dev-guidelines/resources/common-patterns.md +331 -0
  500. package/templates/.agent/skills/frontend-dev-guidelines/resources/complete-examples.md +872 -0
  501. package/templates/.agent/skills/frontend-dev-guidelines/resources/component-patterns.md +502 -0
  502. package/templates/.agent/skills/frontend-dev-guidelines/resources/data-fetching.md +767 -0
  503. package/templates/.agent/skills/frontend-dev-guidelines/resources/file-organization.md +502 -0
  504. package/templates/.agent/skills/frontend-dev-guidelines/resources/loading-and-error-states.md +501 -0
  505. package/templates/.agent/skills/frontend-dev-guidelines/resources/performance.md +406 -0
  506. package/templates/.agent/skills/frontend-dev-guidelines/resources/routing-guide.md +364 -0
  507. package/templates/.agent/skills/frontend-dev-guidelines/resources/styling-guide.md +428 -0
  508. package/templates/.agent/skills/frontend-dev-guidelines/resources/typescript-standards.md +418 -0
  509. package/templates/.agent/skills/frontend-developer/SKILL.md +169 -0
  510. package/templates/.agent/skills/frontend-mobile-development-component-scaffold/SKILL.md +406 -0
  511. package/templates/.agent/skills/frontend-mobile-security-xss-scan/SKILL.md +325 -0
  512. package/templates/.agent/skills/frontend-security-coder/SKILL.md +168 -0
  513. package/templates/.agent/skills/frontend-slides/SKILL.md +236 -0
  514. package/templates/.agent/skills/frontend-slides/STYLE_PRESETS.md +347 -0
  515. package/templates/.agent/skills/frontend-slides/animation-patterns.md +110 -0
  516. package/templates/.agent/skills/frontend-slides/html-template.md +347 -0
  517. package/templates/.agent/skills/frontend-slides/scripts/extract-pptx.py +96 -0
  518. package/templates/.agent/skills/frontend-slides/viewport-base.css +153 -0
  519. package/templates/.agent/skills/frontend-ui-dark-ts/SKILL.md +594 -0
  520. package/templates/.agent/skills/gemini-api-dev/SKILL.md +133 -0
  521. package/templates/.agent/skills/gemini-api-integration/SKILL.md +188 -0
  522. package/templates/.agent/skills/gha-security-review/SKILL.md +188 -0
  523. package/templates/.agent/skills/git-advanced-workflows/SKILL.md +415 -0
  524. package/templates/.agent/skills/git-hooks-automation/SKILL.md +416 -0
  525. package/templates/.agent/skills/git-pr-workflows-git-workflow/SKILL.md +143 -0
  526. package/templates/.agent/skills/git-pr-workflows-onboard/SKILL.md +419 -0
  527. package/templates/.agent/skills/git-pr-workflows-pr-enhance/SKILL.md +51 -0
  528. package/templates/.agent/skills/git-pr-workflows-pr-enhance/resources/implementation-playbook.md +701 -0
  529. package/templates/.agent/skills/git-pushing/SKILL.md +35 -0
  530. package/templates/.agent/skills/git-pushing/scripts/smart_commit.sh +19 -0
  531. package/templates/.agent/skills/github/SKILL.md +76 -0
  532. package/templates/.agent/skills/github/agents/openai.yaml +4 -0
  533. package/templates/.agent/skills/github-actions-templates/SKILL.md +348 -0
  534. package/templates/.agent/skills/github-automation/SKILL.md +230 -0
  535. package/templates/.agent/skills/github-issue-creator/SKILL.md +143 -0
  536. package/templates/.agent/skills/github-workflow-automation/SKILL.md +849 -0
  537. package/templates/.agent/skills/gitlab-automation/SKILL.md +257 -0
  538. package/templates/.agent/skills/gitlab-ci-patterns/SKILL.md +286 -0
  539. package/templates/.agent/skills/gitops-workflow/SKILL.md +306 -0
  540. package/templates/.agent/skills/gitops-workflow/references/argocd-setup.md +134 -0
  541. package/templates/.agent/skills/gitops-workflow/references/sync-policies.md +131 -0
  542. package/templates/.agent/skills/go-concurrency-patterns/SKILL.md +36 -0
  543. package/templates/.agent/skills/go-concurrency-patterns/resources/implementation-playbook.md +654 -0
  544. package/templates/.agent/skills/go-playwright/SKILL.md +76 -0
  545. package/templates/.agent/skills/go-playwright/resources/implementation-playbook.md +110 -0
  546. package/templates/.agent/skills/go-rod-master/SKILL.md +545 -0
  547. package/templates/.agent/skills/go-rod-master/examples/basic_scrape.go +41 -0
  548. package/templates/.agent/skills/go-rod-master/examples/concurrent_pages.go +81 -0
  549. package/templates/.agent/skills/go-rod-master/examples/request_hijacking.go +85 -0
  550. package/templates/.agent/skills/go-rod-master/examples/stealth_page.go +91 -0
  551. package/templates/.agent/skills/go-rod-master/references/api-reference.md +148 -0
  552. package/templates/.agent/skills/goal-analyzer/SKILL.md +607 -0
  553. package/templates/.agent/skills/godot-4-migration/SKILL.md +127 -0
  554. package/templates/.agent/skills/godot-gdscript-patterns/SKILL.md +36 -0
  555. package/templates/.agent/skills/godot-gdscript-patterns/resources/implementation-playbook.md +804 -0
  556. package/templates/.agent/skills/golang-pro/SKILL.md +176 -0
  557. package/templates/.agent/skills/google-analytics-automation/SKILL.md +231 -0
  558. package/templates/.agent/skills/google-calendar-automation/SKILL.md +158 -0
  559. package/templates/.agent/skills/google-docs-automation/SKILL.md +81 -0
  560. package/templates/.agent/skills/google-drive-automation/SKILL.md +135 -0
  561. package/templates/.agent/skills/google-sheets-automation/SKILL.md +144 -0
  562. package/templates/.agent/skills/google-slides-automation/SKILL.md +140 -0
  563. package/templates/.agent/skills/googlesheets-automation/SKILL.md +200 -0
  564. package/templates/.agent/skills/graphql-architect/SKILL.md +180 -0
  565. package/templates/.agent/skills/grpc-golang/SKILL.md +104 -0
  566. package/templates/.agent/skills/grpc-golang/resources/implementation-playbook.md +548 -0
  567. package/templates/.agent/skills/hierarchical-agent-memory/SKILL.md +133 -0
  568. package/templates/.agent/skills/hig-patterns/SKILL.md +99 -0
  569. package/templates/.agent/skills/hig-patterns/references/charting-data.md +81 -0
  570. package/templates/.agent/skills/hig-patterns/references/collaboration-and-sharing.md +86 -0
  571. package/templates/.agent/skills/hig-patterns/references/drag-and-drop.md +134 -0
  572. package/templates/.agent/skills/hig-patterns/references/entering-data.md +69 -0
  573. package/templates/.agent/skills/hig-patterns/references/feedback.md +67 -0
  574. package/templates/.agent/skills/hig-patterns/references/file-management.md +135 -0
  575. package/templates/.agent/skills/hig-patterns/references/going-full-screen.md +79 -0
  576. package/templates/.agent/skills/hig-patterns/references/launching.md +81 -0
  577. package/templates/.agent/skills/hig-patterns/references/live-viewing-apps.md +79 -0
  578. package/templates/.agent/skills/hig-patterns/references/loading.md +59 -0
  579. package/templates/.agent/skills/hig-patterns/references/managing-accounts.md +107 -0
  580. package/templates/.agent/skills/hig-patterns/references/managing-notifications.md +99 -0
  581. package/templates/.agent/skills/hig-patterns/references/modality.md +82 -0
  582. package/templates/.agent/skills/hig-patterns/references/multitasking.md +131 -0
  583. package/templates/.agent/skills/hig-patterns/references/offering-help.md +117 -0
  584. package/templates/.agent/skills/hig-patterns/references/onboarding.md +69 -0
  585. package/templates/.agent/skills/hig-patterns/references/playing-audio.md +124 -0
  586. package/templates/.agent/skills/hig-patterns/references/playing-haptics.md +280 -0
  587. package/templates/.agent/skills/hig-patterns/references/playing-video.md +180 -0
  588. package/templates/.agent/skills/hig-patterns/references/printing.md +50 -0
  589. package/templates/.agent/skills/hig-patterns/references/ratings-and-reviews.md +48 -0
  590. package/templates/.agent/skills/hig-patterns/references/searching.md +70 -0
  591. package/templates/.agent/skills/hig-patterns/references/settings.md +84 -0
  592. package/templates/.agent/skills/hig-patterns/references/undo-and-redo.md +58 -0
  593. package/templates/.agent/skills/hig-patterns/references/workouts.md +76 -0
  594. package/templates/.agent/skills/hosted-agents/SKILL.md +283 -0
  595. package/templates/.agent/skills/hosted-agents-v2-py/SKILL.md +326 -0
  596. package/templates/.agent/skills/html-injection-testing/SKILL.md +502 -0
  597. package/templates/.agent/skills/hybrid-cloud-architect/SKILL.md +164 -0
  598. package/templates/.agent/skills/idor-testing/SKILL.md +446 -0
  599. package/templates/.agent/skills/intelligent-routing/SKILL.md +41 -44
  600. package/templates/.agent/skills/ios-debugger-agent/SKILL.md +59 -0
  601. package/templates/.agent/skills/ios-debugger-agent/agents/openai.yaml +4 -0
  602. package/templates/.agent/skills/javascript-mastery/SKILL.md +648 -0
  603. package/templates/.agent/skills/javascript-pro/SKILL.md +55 -0
  604. package/templates/.agent/skills/javascript-testing-patterns/SKILL.md +38 -0
  605. package/templates/.agent/skills/javascript-testing-patterns/resources/implementation-playbook.md +1024 -0
  606. package/templates/.agent/skills/javascript-typescript-typescript-scaffold/SKILL.md +364 -0
  607. package/templates/.agent/skills/k6-load-testing/SKILL.md +627 -0
  608. package/templates/.agent/skills/k8s-security-policies/SKILL.md +349 -0
  609. package/templates/.agent/skills/k8s-security-policies/assets/network-policy-template.yaml +177 -0
  610. package/templates/.agent/skills/k8s-security-policies/references/rbac-patterns.md +187 -0
  611. package/templates/.agent/skills/kpi-dashboard-design/SKILL.md +443 -0
  612. package/templates/.agent/skills/kubernetes-architect/SKILL.md +165 -0
  613. package/templates/.agent/skills/kubernetes-deployment/SKILL.md +166 -0
  614. package/templates/.agent/skills/langchain-architecture/SKILL.md +353 -0
  615. package/templates/.agent/skills/laravel-security-audit/SKILL.md +224 -0
  616. package/templates/.agent/skills/lightning-architecture-review/SKILL.md +52 -0
  617. package/templates/.agent/skills/linkerd-patterns/SKILL.md +326 -0
  618. package/templates/.agent/skills/linux-privilege-escalation/SKILL.md +510 -0
  619. package/templates/.agent/skills/linux-shell-scripting/SKILL.md +508 -0
  620. package/templates/.agent/skills/linux-troubleshooting/SKILL.md +220 -0
  621. package/templates/.agent/skills/llm-app-patterns/SKILL.md +763 -0
  622. package/templates/.agent/skills/llm-application-dev-langchain-agent/SKILL.md +249 -0
  623. package/templates/.agent/skills/llm-application-dev-prompt-optimize/SKILL.md +40 -0
  624. package/templates/.agent/skills/llm-application-dev-prompt-optimize/resources/implementation-playbook.md +591 -0
  625. package/templates/.agent/skills/llm-prompt-optimizer/SKILL.md +182 -0
  626. package/templates/.agent/skills/local-legal-seo-audit/SKILL.md +347 -0
  627. package/templates/.agent/skills/m365-agents-dotnet/SKILL.md +294 -0
  628. package/templates/.agent/skills/m365-agents-py/SKILL.md +345 -0
  629. package/templates/.agent/skills/m365-agents-ts/SKILL.md +186 -0
  630. package/templates/.agent/skills/memory-safety-patterns/SKILL.md +36 -0
  631. package/templates/.agent/skills/memory-safety-patterns/resources/implementation-playbook.md +603 -0
  632. package/templates/.agent/skills/microservices-patterns/SKILL.md +38 -0
  633. package/templates/.agent/skills/microservices-patterns/resources/implementation-playbook.md +607 -0
  634. package/templates/.agent/skills/microsoft-azure-webjobs-extensions-authentication-events-dotnet/SKILL.md +445 -0
  635. package/templates/.agent/skills/mobile-developer/SKILL.md +203 -0
  636. package/templates/.agent/skills/mobile-security-coder/SKILL.md +182 -0
  637. package/templates/.agent/skills/modern-javascript-patterns/SKILL.md +38 -0
  638. package/templates/.agent/skills/modern-javascript-patterns/resources/implementation-playbook.md +910 -0
  639. package/templates/.agent/skills/monorepo-architect/SKILL.md +64 -0
  640. package/templates/.agent/skills/moodle-external-api-development/SKILL.md +600 -0
  641. package/templates/.agent/skills/multi-agent-brainstorming/SKILL.md +256 -0
  642. package/templates/.agent/skills/multi-agent-patterns/SKILL.md +256 -0
  643. package/templates/.agent/skills/multi-cloud-architecture/SKILL.md +192 -0
  644. package/templates/.agent/skills/n8n-code-javascript/SKILL.md +701 -0
  645. package/templates/.agent/skills/n8n-code-python/SKILL.md +750 -0
  646. package/templates/.agent/skills/n8n-node-configuration/SKILL.md +787 -0
  647. package/templates/.agent/skills/n8n-workflow-patterns/SKILL.md +413 -0
  648. package/templates/.agent/skills/nextjs-app-router-patterns/SKILL.md +36 -0
  649. package/templates/.agent/skills/nextjs-app-router-patterns/resources/implementation-playbook.md +543 -0
  650. package/templates/.agent/skills/nextjs-best-practices/SKILL.md +208 -0
  651. package/templates/.agent/skills/nextjs-supabase-auth/SKILL.md +61 -0
  652. package/templates/.agent/skills/nodejs-backend-patterns/SKILL.md +38 -0
  653. package/templates/.agent/skills/nodejs-backend-patterns/resources/implementation-playbook.md +1019 -0
  654. package/templates/.agent/skills/nx-workspace-patterns/SKILL.md +467 -0
  655. package/templates/.agent/skills/odoo-docker-deployment/SKILL.md +139 -0
  656. package/templates/.agent/skills/odoo-performance-tuner/SKILL.md +105 -0
  657. package/templates/.agent/skills/odoo-qweb-templates/SKILL.md +95 -0
  658. package/templates/.agent/skills/odoo-rpc-api/SKILL.md +103 -0
  659. package/templates/.agent/skills/odoo-security-rules/SKILL.md +92 -0
  660. package/templates/.agent/skills/on-call-handoff-patterns/SKILL.md +456 -0
  661. package/templates/.agent/skills/openapi-spec-generation/SKILL.md +36 -0
  662. package/templates/.agent/skills/openapi-spec-generation/resources/implementation-playbook.md +1027 -0
  663. package/templates/.agent/skills/openclaw-github-repo-commander/SKILL.md +95 -0
  664. package/templates/.agent/skills/performance-engineer/SKILL.md +176 -0
  665. package/templates/.agent/skills/performance-optimizer/README.md +20 -0
  666. package/templates/.agent/skills/performance-optimizer/SKILL.md +389 -0
  667. package/templates/.agent/skills/performance-testing-review-ai-review/SKILL.md +453 -0
  668. package/templates/.agent/skills/performance-testing-review-multi-agent-review/SKILL.md +219 -0
  669. package/templates/.agent/skills/pipecat-friday-agent/SKILL.md +79 -0
  670. package/templates/.agent/skills/pipecat-friday-agent/scripts/friday_agent.py +146 -0
  671. package/templates/.agent/skills/postgresql-optimization/SKILL.md +174 -0
  672. package/templates/.agent/skills/prisma-expert/SKILL.md +361 -0
  673. package/templates/.agent/skills/privacy-by-design/README.md +25 -0
  674. package/templates/.agent/skills/privacy-by-design/SKILL.md +208 -0
  675. package/templates/.agent/skills/product-design/SKILL.md +358 -0
  676. package/templates/.agent/skills/programmatic-seo/SKILL.md +351 -0
  677. package/templates/.agent/skills/progressive-web-app/SKILL.md +352 -0
  678. package/templates/.agent/skills/projection-patterns/SKILL.md +36 -0
  679. package/templates/.agent/skills/projection-patterns/resources/implementation-playbook.md +501 -0
  680. package/templates/.agent/skills/prompt-caching/SKILL.md +66 -0
  681. package/templates/.agent/skills/prompt-engineer/README.md +659 -0
  682. package/templates/.agent/skills/prompt-engineer/SKILL.md +248 -0
  683. package/templates/.agent/skills/prompt-engineering/SKILL.md +177 -0
  684. package/templates/.agent/skills/prompt-engineering-patterns/SKILL.md +216 -0
  685. package/templates/.agent/skills/prompt-engineering-patterns/assets/few-shot-examples.json +106 -0
  686. package/templates/.agent/skills/prompt-engineering-patterns/assets/prompt-template-library.md +246 -0
  687. package/templates/.agent/skills/prompt-engineering-patterns/references/chain-of-thought.md +399 -0
  688. package/templates/.agent/skills/prompt-engineering-patterns/references/few-shot-learning.md +369 -0
  689. package/templates/.agent/skills/prompt-engineering-patterns/references/prompt-optimization.md +414 -0
  690. package/templates/.agent/skills/prompt-engineering-patterns/references/prompt-templates.md +470 -0
  691. package/templates/.agent/skills/prompt-engineering-patterns/references/system-prompts.md +189 -0
  692. package/templates/.agent/skills/prompt-engineering-patterns/scripts/optimize-prompt.py +279 -0
  693. package/templates/.agent/skills/prompt-library/SKILL.md +325 -0
  694. package/templates/.agent/skills/pubmed-database/SKILL.md +460 -0
  695. package/templates/.agent/skills/python-development-python-scaffold/SKILL.md +334 -0
  696. package/templates/.agent/skills/python-fastapi-development/SKILL.md +215 -0
  697. package/templates/.agent/skills/python-packaging/SKILL.md +39 -0
  698. package/templates/.agent/skills/python-packaging/resources/implementation-playbook.md +869 -0
  699. package/templates/.agent/skills/python-performance-optimization/SKILL.md +39 -0
  700. package/templates/.agent/skills/python-performance-optimization/resources/implementation-playbook.md +868 -0
  701. package/templates/.agent/skills/python-pro/SKILL.md +156 -0
  702. package/templates/.agent/skills/python-testing-patterns/SKILL.md +40 -0
  703. package/templates/.agent/skills/python-testing-patterns/resources/implementation-playbook.md +906 -0
  704. package/templates/.agent/skills/radix-ui-design-system/SKILL.md +848 -0
  705. package/templates/.agent/skills/radix-ui-design-system/examples/README.md +63 -0
  706. package/templates/.agent/skills/radix-ui-design-system/examples/dialog-example.tsx +128 -0
  707. package/templates/.agent/skills/radix-ui-design-system/examples/dropdown-example.tsx +162 -0
  708. package/templates/.agent/skills/radix-ui-design-system/templates/component-template.tsx.template +148 -0
  709. package/templates/.agent/skills/react-best-practices/AGENTS.md +2249 -0
  710. package/templates/.agent/skills/react-best-practices/README.md +123 -0
  711. package/templates/.agent/skills/react-best-practices/SKILL.md +126 -0
  712. package/templates/.agent/skills/react-best-practices/metadata.json +15 -0
  713. package/templates/.agent/skills/react-best-practices/rules/_sections.md +46 -0
  714. package/templates/.agent/skills/react-best-practices/rules/_template.md +28 -0
  715. package/templates/.agent/skills/react-best-practices/rules/advanced-event-handler-refs.md +55 -0
  716. package/templates/.agent/skills/react-best-practices/rules/advanced-use-latest.md +49 -0
  717. package/templates/.agent/skills/react-best-practices/rules/async-api-routes.md +38 -0
  718. package/templates/.agent/skills/react-best-practices/rules/async-defer-await.md +80 -0
  719. package/templates/.agent/skills/react-best-practices/rules/async-dependencies.md +36 -0
  720. package/templates/.agent/skills/react-best-practices/rules/async-parallel.md +28 -0
  721. package/templates/.agent/skills/react-best-practices/rules/async-suspense-boundaries.md +99 -0
  722. package/templates/.agent/skills/react-best-practices/rules/bundle-barrel-imports.md +59 -0
  723. package/templates/.agent/skills/react-best-practices/rules/bundle-conditional.md +31 -0
  724. package/templates/.agent/skills/react-best-practices/rules/bundle-defer-third-party.md +49 -0
  725. package/templates/.agent/skills/react-best-practices/rules/bundle-dynamic-imports.md +35 -0
  726. package/templates/.agent/skills/react-best-practices/rules/bundle-preload.md +50 -0
  727. package/templates/.agent/skills/react-best-practices/rules/client-event-listeners.md +74 -0
  728. package/templates/.agent/skills/react-best-practices/rules/client-swr-dedup.md +56 -0
  729. package/templates/.agent/skills/react-best-practices/rules/js-batch-dom-css.md +82 -0
  730. package/templates/.agent/skills/react-best-practices/rules/js-cache-function-results.md +80 -0
  731. package/templates/.agent/skills/react-best-practices/rules/js-cache-property-access.md +28 -0
  732. package/templates/.agent/skills/react-best-practices/rules/js-cache-storage.md +70 -0
  733. package/templates/.agent/skills/react-best-practices/rules/js-combine-iterations.md +32 -0
  734. package/templates/.agent/skills/react-best-practices/rules/js-early-exit.md +50 -0
  735. package/templates/.agent/skills/react-best-practices/rules/js-hoist-regexp.md +45 -0
  736. package/templates/.agent/skills/react-best-practices/rules/js-index-maps.md +37 -0
  737. package/templates/.agent/skills/react-best-practices/rules/js-length-check-first.md +49 -0
  738. package/templates/.agent/skills/react-best-practices/rules/js-min-max-loop.md +82 -0
  739. package/templates/.agent/skills/react-best-practices/rules/js-set-map-lookups.md +24 -0
  740. package/templates/.agent/skills/react-best-practices/rules/js-tosorted-immutable.md +57 -0
  741. package/templates/.agent/skills/react-best-practices/rules/rendering-activity.md +26 -0
  742. package/templates/.agent/skills/react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
  743. package/templates/.agent/skills/react-best-practices/rules/rendering-conditional-render.md +40 -0
  744. package/templates/.agent/skills/react-best-practices/rules/rendering-content-visibility.md +38 -0
  745. package/templates/.agent/skills/react-best-practices/rules/rendering-hoist-jsx.md +46 -0
  746. package/templates/.agent/skills/react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
  747. package/templates/.agent/skills/react-best-practices/rules/rendering-svg-precision.md +28 -0
  748. package/templates/.agent/skills/react-best-practices/rules/rerender-defer-reads.md +39 -0
  749. package/templates/.agent/skills/react-best-practices/rules/rerender-dependencies.md +45 -0
  750. package/templates/.agent/skills/react-best-practices/rules/rerender-derived-state.md +29 -0
  751. package/templates/.agent/skills/react-best-practices/rules/rerender-functional-setstate.md +74 -0
  752. package/templates/.agent/skills/react-best-practices/rules/rerender-lazy-state-init.md +58 -0
  753. package/templates/.agent/skills/react-best-practices/rules/rerender-memo.md +44 -0
  754. package/templates/.agent/skills/react-best-practices/rules/rerender-transitions.md +40 -0
  755. package/templates/.agent/skills/react-best-practices/rules/server-after-nonblocking.md +73 -0
  756. package/templates/.agent/skills/react-best-practices/rules/server-cache-lru.md +41 -0
  757. package/templates/.agent/skills/react-best-practices/rules/server-cache-react.md +26 -0
  758. package/templates/.agent/skills/react-best-practices/rules/server-parallel-fetching.md +79 -0
  759. package/templates/.agent/skills/react-best-practices/rules/server-serialization.md +38 -0
  760. package/templates/.agent/skills/react-component-performance/SKILL.md +135 -0
  761. package/templates/.agent/skills/react-component-performance/agents/openai.yaml +4 -0
  762. package/templates/.agent/skills/react-component-performance/references/examples.md +88 -0
  763. package/templates/.agent/skills/react-flow-architect/SKILL.md +619 -0
  764. package/templates/.agent/skills/react-flow-node-ts/SKILL.md +72 -0
  765. package/templates/.agent/skills/react-modernization/SKILL.md +37 -0
  766. package/templates/.agent/skills/react-modernization/resources/implementation-playbook.md +512 -0
  767. package/templates/.agent/skills/react-native-architecture/SKILL.md +36 -0
  768. package/templates/.agent/skills/react-native-architecture/resources/implementation-playbook.md +670 -0
  769. package/templates/.agent/skills/react-nextjs-development/SKILL.md +228 -0
  770. package/templates/.agent/skills/react-patterns/SKILL.md +203 -0
  771. package/templates/.agent/skills/react-state-management/SKILL.md +444 -0
  772. package/templates/.agent/skills/react-ui-patterns/SKILL.md +295 -0
  773. package/templates/.agent/skills/robius-app-architecture/SKILL.md +330 -0
  774. package/templates/.agent/skills/robius-widget-patterns/SKILL.md +428 -0
  775. package/templates/.agent/skills/rust-async-patterns/SKILL.md +36 -0
  776. package/templates/.agent/skills/rust-async-patterns/resources/implementation-playbook.md +516 -0
  777. package/templates/.agent/skills/screen-reader-testing/SKILL.md +36 -0
  778. package/templates/.agent/skills/screen-reader-testing/resources/implementation-playbook.md +544 -0
  779. package/templates/.agent/skills/search-specialist/SKILL.md +78 -0
  780. package/templates/.agent/skills/security/aws-compliance-checker/SKILL.md +516 -0
  781. package/templates/.agent/skills/security/aws-iam-best-practices/SKILL.md +397 -0
  782. package/templates/.agent/skills/security/aws-secrets-rotation/SKILL.md +465 -0
  783. package/templates/.agent/skills/security/aws-security-audit/SKILL.md +369 -0
  784. package/templates/.agent/skills/security-audit/SKILL.md +217 -0
  785. package/templates/.agent/skills/security-auditor/SKILL.md +165 -0
  786. package/templates/.agent/skills/security-bluebook-builder/SKILL.md +48 -0
  787. package/templates/.agent/skills/security-compliance-compliance-check/SKILL.md +58 -0
  788. package/templates/.agent/skills/security-compliance-compliance-check/resources/implementation-playbook.md +963 -0
  789. package/templates/.agent/skills/security-requirement-extraction/SKILL.md +36 -0
  790. package/templates/.agent/skills/security-requirement-extraction/resources/implementation-playbook.md +676 -0
  791. package/templates/.agent/skills/security-scanning-security-dependencies/SKILL.md +46 -0
  792. package/templates/.agent/skills/security-scanning-security-dependencies/resources/implementation-playbook.md +544 -0
  793. package/templates/.agent/skills/security-scanning-security-hardening/SKILL.md +150 -0
  794. package/templates/.agent/skills/security-scanning-security-sast/SKILL.md +496 -0
  795. package/templates/.agent/skills/senior-architect/SKILL.md +215 -0
  796. package/templates/.agent/skills/senior-architect/references/architecture_patterns.md +103 -0
  797. package/templates/.agent/skills/senior-architect/references/system_design_workflows.md +103 -0
  798. package/templates/.agent/skills/senior-architect/references/tech_decision_guide.md +103 -0
  799. package/templates/.agent/skills/senior-architect/scripts/architecture_diagram_generator.py +114 -0
  800. package/templates/.agent/skills/senior-architect/scripts/dependency_analyzer.py +114 -0
  801. package/templates/.agent/skills/senior-architect/scripts/project_architect.py +114 -0
  802. package/templates/.agent/skills/senior-frontend/SKILL.md +490 -0
  803. package/templates/.agent/skills/senior-frontend/references/frontend_best_practices.md +806 -0
  804. package/templates/.agent/skills/senior-frontend/references/nextjs_optimization_guide.md +724 -0
  805. package/templates/.agent/skills/senior-frontend/references/react_patterns.md +746 -0
  806. package/templates/.agent/skills/senior-frontend/scripts/bundle_analyzer.py +407 -0
  807. package/templates/.agent/skills/senior-frontend/scripts/component_generator.py +329 -0
  808. package/templates/.agent/skills/senior-frontend/scripts/frontend_scaffolder.py +1005 -0
  809. package/templates/.agent/skills/seo/SKILL.md +139 -0
  810. package/templates/.agent/skills/seo/references/cwv-thresholds.md +108 -0
  811. package/templates/.agent/skills/seo/references/eeat-framework.md +214 -0
  812. package/templates/.agent/skills/seo/references/quality-gates.md +155 -0
  813. package/templates/.agent/skills/seo/references/schema-types.md +118 -0
  814. package/templates/.agent/skills/seo-audit/SKILL.md +487 -0
  815. package/templates/.agent/skills/seo-authority-builder/SKILL.md +141 -0
  816. package/templates/.agent/skills/seo-cannibalization-detector/SKILL.md +122 -0
  817. package/templates/.agent/skills/seo-competitor-pages/SKILL.md +229 -0
  818. package/templates/.agent/skills/seo-content/SKILL.md +186 -0
  819. package/templates/.agent/skills/seo-content-auditor/SKILL.md +82 -0
  820. package/templates/.agent/skills/seo-content-planner/SKILL.md +113 -0
  821. package/templates/.agent/skills/seo-content-refresher/SKILL.md +117 -0
  822. package/templates/.agent/skills/seo-content-writer/SKILL.md +95 -0
  823. package/templates/.agent/skills/seo-dataforseo/SKILL.md +395 -0
  824. package/templates/.agent/skills/seo-forensic-incident-response/SKILL.md +261 -0
  825. package/templates/.agent/skills/seo-geo/SKILL.md +254 -0
  826. package/templates/.agent/skills/seo-hreflang/SKILL.md +209 -0
  827. package/templates/.agent/skills/seo-image-gen/SKILL.md +183 -0
  828. package/templates/.agent/skills/seo-images/SKILL.md +193 -0
  829. package/templates/.agent/skills/seo-keyword-strategist/SKILL.md +94 -0
  830. package/templates/.agent/skills/seo-meta-optimizer/SKILL.md +91 -0
  831. package/templates/.agent/skills/seo-page/SKILL.md +103 -0
  832. package/templates/.agent/skills/seo-plan/SKILL.md +136 -0
  833. package/templates/.agent/skills/seo-plan/assets/agency.md +175 -0
  834. package/templates/.agent/skills/seo-plan/assets/ecommerce.md +167 -0
  835. package/templates/.agent/skills/seo-plan/assets/generic.md +144 -0
  836. package/templates/.agent/skills/seo-plan/assets/local-service.md +160 -0
  837. package/templates/.agent/skills/seo-plan/assets/publisher.md +153 -0
  838. package/templates/.agent/skills/seo-plan/assets/saas.md +135 -0
  839. package/templates/.agent/skills/seo-programmatic/SKILL.md +184 -0
  840. package/templates/.agent/skills/seo-schema/SKILL.md +178 -0
  841. package/templates/.agent/skills/seo-sitemap/SKILL.md +129 -0
  842. package/templates/.agent/skills/seo-snippet-hunter/SKILL.md +113 -0
  843. package/templates/.agent/skills/seo-structure-architect/SKILL.md +107 -0
  844. package/templates/.agent/skills/seo-technical/SKILL.md +175 -0
  845. package/templates/.agent/skills/shadcn/SKILL.md +249 -0
  846. package/templates/.agent/skills/shadcn/agents/openai.yml +5 -0
  847. package/templates/.agent/skills/shadcn/assets/shadcn-small.png +0 -0
  848. package/templates/.agent/skills/shadcn/assets/shadcn.png +0 -0
  849. package/templates/.agent/skills/shadcn/cli.md +255 -0
  850. package/templates/.agent/skills/shadcn/customization.md +202 -0
  851. package/templates/.agent/skills/shadcn/evals/evals.json +47 -0
  852. package/templates/.agent/skills/shadcn/mcp.md +94 -0
  853. package/templates/.agent/skills/shadcn/rules/base-vs-radix.md +306 -0
  854. package/templates/.agent/skills/shadcn/rules/composition.md +195 -0
  855. package/templates/.agent/skills/shadcn/rules/forms.md +192 -0
  856. package/templates/.agent/skills/shadcn/rules/icons.md +101 -0
  857. package/templates/.agent/skills/shadcn/rules/styling.md +162 -0
  858. package/templates/.agent/skills/similarity-search-patterns/SKILL.md +36 -0
  859. package/templates/.agent/skills/similarity-search-patterns/resources/implementation-playbook.md +557 -0
  860. package/templates/.agent/skills/site-architecture/SKILL.md +366 -0
  861. package/templates/.agent/skills/site-architecture/evals/evals.json +88 -0
  862. package/templates/.agent/skills/site-architecture/references/mermaid-templates.md +216 -0
  863. package/templates/.agent/skills/site-architecture/references/navigation-patterns.md +305 -0
  864. package/templates/.agent/skills/site-architecture/references/site-type-templates.md +293 -0
  865. package/templates/.agent/skills/smtp-penetration-testing/SKILL.md +504 -0
  866. package/templates/.agent/skills/social-orchestrator/SKILL.md +299 -0
  867. package/templates/.agent/skills/software-architecture/SKILL.md +81 -0
  868. package/templates/.agent/skills/solidity-security/SKILL.md +37 -0
  869. package/templates/.agent/skills/solidity-security/resources/implementation-playbook.md +524 -0
  870. package/templates/.agent/skills/spark-optimization/SKILL.md +430 -0
  871. package/templates/.agent/skills/spec-to-code-compliance/SKILL.md +358 -0
  872. package/templates/.agent/skills/speckit-updater/SKILL.md +167 -0
  873. package/templates/.agent/skills/sql-injection-testing/SKILL.md +452 -0
  874. package/templates/.agent/skills/sql-optimization-patterns/SKILL.md +38 -0
  875. package/templates/.agent/skills/sql-optimization-patterns/resources/implementation-playbook.md +504 -0
  876. package/templates/.agent/skills/sqlmap-database-pentesting/SKILL.md +404 -0
  877. package/templates/.agent/skills/ssh-penetration-testing/SKILL.md +492 -0
  878. package/templates/.agent/skills/stitch-ui-design/README.md +165 -0
  879. package/templates/.agent/skills/stitch-ui-design/SKILL.md +382 -0
  880. package/templates/.agent/skills/stitch-ui-design/references/advanced-techniques.md +541 -0
  881. package/templates/.agent/skills/stitch-ui-design/references/prompt-examples.md +601 -0
  882. package/templates/.agent/skills/stride-analysis-patterns/SKILL.md +36 -0
  883. package/templates/.agent/skills/stride-analysis-patterns/resources/implementation-playbook.md +655 -0
  884. package/templates/.agent/skills/stripe-automation/SKILL.md +201 -0
  885. package/templates/.agent/skills/stripe-integration/SKILL.md +457 -0
  886. package/templates/.agent/skills/subagent-driven-development/SKILL.md +242 -0
  887. package/templates/.agent/skills/subagent-driven-development/code-quality-reviewer-prompt.md +20 -0
  888. package/templates/.agent/skills/subagent-driven-development/implementer-prompt.md +78 -0
  889. package/templates/.agent/skills/subagent-driven-development/spec-reviewer-prompt.md +61 -0
  890. package/templates/.agent/skills/supabase-automation/SKILL.md +239 -0
  891. package/templates/.agent/skills/swift-concurrency-expert/SKILL.md +113 -0
  892. package/templates/.agent/skills/swift-concurrency-expert/agents/openai.yaml +4 -0
  893. package/templates/.agent/skills/swift-concurrency-expert/references/approachable-concurrency.md +63 -0
  894. package/templates/.agent/skills/swift-concurrency-expert/references/swift-6-2-concurrency.md +272 -0
  895. package/templates/.agent/skills/swift-concurrency-expert/references/swiftui-concurrency-tour-wwdc.md +33 -0
  896. package/templates/.agent/skills/swiftui-expert-skill/SKILL.md +244 -0
  897. package/templates/.agent/skills/swiftui-liquid-glass/SKILL.md +98 -0
  898. package/templates/.agent/skills/swiftui-liquid-glass/agents/openai.yaml +4 -0
  899. package/templates/.agent/skills/swiftui-liquid-glass/references/liquid-glass.md +280 -0
  900. package/templates/.agent/skills/swiftui-performance-audit/SKILL.md +114 -0
  901. package/templates/.agent/skills/swiftui-performance-audit/agents/openai.yaml +4 -0
  902. package/templates/.agent/skills/swiftui-performance-audit/references/code-smells.md +150 -0
  903. package/templates/.agent/skills/swiftui-performance-audit/references/demystify-swiftui-performance-wwdc23.md +46 -0
  904. package/templates/.agent/skills/swiftui-performance-audit/references/optimizing-swiftui-performance-instruments.md +29 -0
  905. package/templates/.agent/skills/swiftui-performance-audit/references/profiling-intake.md +44 -0
  906. package/templates/.agent/skills/swiftui-performance-audit/references/report-template.md +47 -0
  907. package/templates/.agent/skills/swiftui-performance-audit/references/understanding-hangs-in-your-app.md +33 -0
  908. package/templates/.agent/skills/swiftui-performance-audit/references/understanding-improving-swiftui-performance.md +52 -0
  909. package/templates/.agent/skills/swiftui-ui-patterns/SKILL.md +103 -0
  910. package/templates/.agent/skills/swiftui-ui-patterns/agents/openai.yaml +4 -0
  911. package/templates/.agent/skills/swiftui-ui-patterns/references/app-wiring.md +201 -0
  912. package/templates/.agent/skills/swiftui-ui-patterns/references/async-state.md +96 -0
  913. package/templates/.agent/skills/swiftui-ui-patterns/references/components-index.md +50 -0
  914. package/templates/.agent/skills/swiftui-ui-patterns/references/controls.md +57 -0
  915. package/templates/.agent/skills/swiftui-ui-patterns/references/deeplinks.md +66 -0
  916. package/templates/.agent/skills/swiftui-ui-patterns/references/focus.md +90 -0
  917. package/templates/.agent/skills/swiftui-ui-patterns/references/form.md +97 -0
  918. package/templates/.agent/skills/swiftui-ui-patterns/references/grids.md +71 -0
  919. package/templates/.agent/skills/swiftui-ui-patterns/references/haptics.md +71 -0
  920. package/templates/.agent/skills/swiftui-ui-patterns/references/input-toolbar.md +51 -0
  921. package/templates/.agent/skills/swiftui-ui-patterns/references/lightweight-clients.md +93 -0
  922. package/templates/.agent/skills/swiftui-ui-patterns/references/list.md +86 -0
  923. package/templates/.agent/skills/swiftui-ui-patterns/references/loading-placeholders.md +38 -0
  924. package/templates/.agent/skills/swiftui-ui-patterns/references/macos-settings.md +71 -0
  925. package/templates/.agent/skills/swiftui-ui-patterns/references/matched-transitions.md +59 -0
  926. package/templates/.agent/skills/swiftui-ui-patterns/references/media.md +73 -0
  927. package/templates/.agent/skills/swiftui-ui-patterns/references/menu-bar.md +101 -0
  928. package/templates/.agent/skills/swiftui-ui-patterns/references/navigationstack.md +159 -0
  929. package/templates/.agent/skills/swiftui-ui-patterns/references/overlay.md +45 -0
  930. package/templates/.agent/skills/swiftui-ui-patterns/references/performance.md +62 -0
  931. package/templates/.agent/skills/swiftui-ui-patterns/references/previews.md +48 -0
  932. package/templates/.agent/skills/swiftui-ui-patterns/references/scroll-reveal.md +133 -0
  933. package/templates/.agent/skills/swiftui-ui-patterns/references/scrollview.md +87 -0
  934. package/templates/.agent/skills/swiftui-ui-patterns/references/searchable.md +71 -0
  935. package/templates/.agent/skills/swiftui-ui-patterns/references/sheets.md +155 -0
  936. package/templates/.agent/skills/swiftui-ui-patterns/references/split-views.md +72 -0
  937. package/templates/.agent/skills/swiftui-ui-patterns/references/tabview.md +114 -0
  938. package/templates/.agent/skills/swiftui-ui-patterns/references/theming.md +71 -0
  939. package/templates/.agent/skills/swiftui-ui-patterns/references/title-menus.md +93 -0
  940. package/templates/.agent/skills/swiftui-ui-patterns/references/top-bar.md +49 -0
  941. package/templates/.agent/skills/swiftui-view-refactor/SKILL.md +210 -0
  942. package/templates/.agent/skills/swiftui-view-refactor/agents/openai.yaml +4 -0
  943. package/templates/.agent/skills/swiftui-view-refactor/references/mv-patterns.md +161 -0
  944. package/templates/.agent/skills/systems-programming-rust-project/SKILL.md +443 -0
  945. package/templates/.agent/skills/tailwind-design-system/SKILL.md +36 -0
  946. package/templates/.agent/skills/tailwind-design-system/resources/implementation-playbook.md +665 -0
  947. package/templates/.agent/skills/tavily-web/SKILL.md +39 -0
  948. package/templates/.agent/skills/tdd-orchestrator/SKILL.md +202 -0
  949. package/templates/.agent/skills/temporal-golang-pro/SKILL.md +216 -0
  950. package/templates/.agent/skills/temporal-golang-pro/resources/implementation-playbook.md +242 -0
  951. package/templates/.agent/skills/temporal-golang-pro/resources/testing-strategies.md +145 -0
  952. package/templates/.agent/skills/temporal-python-pro/SKILL.md +368 -0
  953. package/templates/.agent/skills/temporal-python-testing/SKILL.md +173 -0
  954. package/templates/.agent/skills/temporal-python-testing/resources/integration-testing.md +455 -0
  955. package/templates/.agent/skills/temporal-python-testing/resources/local-setup.md +553 -0
  956. package/templates/.agent/skills/temporal-python-testing/resources/replay-testing.md +462 -0
  957. package/templates/.agent/skills/temporal-python-testing/resources/unit-testing.md +328 -0
  958. package/templates/.agent/skills/terraform-aws-modules/SKILL.md +78 -0
  959. package/templates/.agent/skills/terraform-specialist/SKILL.md +162 -0
  960. package/templates/.agent/skills/test-fixing/SKILL.md +121 -0
  961. package/templates/.agent/skills/testing-qa/SKILL.md +230 -0
  962. package/templates/.agent/skills/tool-design/SKILL.md +318 -0
  963. package/templates/.agent/skills/top-web-vulnerabilities/SKILL.md +547 -0
  964. package/templates/.agent/skills/typescript-advanced-types/SKILL.md +38 -0
  965. package/templates/.agent/skills/typescript-advanced-types/resources/implementation-playbook.md +716 -0
  966. package/templates/.agent/skills/typescript-expert/SKILL.md +426 -0
  967. package/templates/.agent/skills/typescript-expert/references/tsconfig-strict.json +92 -0
  968. package/templates/.agent/skills/typescript-expert/references/typescript-cheatsheet.md +383 -0
  969. package/templates/.agent/skills/typescript-expert/references/utility-types.ts +335 -0
  970. package/templates/.agent/skills/typescript-expert/scripts/ts_diagnostic.py +203 -0
  971. package/templates/.agent/skills/typescript-pro/SKILL.md +53 -0
  972. package/templates/.agent/skills/ui-ux-designer/SKILL.md +207 -0
  973. package/templates/.agent/skills/ui-ux-pro-max/SKILL.md +356 -0
  974. package/templates/.agent/skills/ui-ux-pro-max/data/charts.csv +26 -0
  975. package/templates/.agent/skills/ui-ux-pro-max/data/colors.csv +97 -0
  976. package/templates/.agent/skills/ui-ux-pro-max/data/icons.csv +101 -0
  977. package/templates/.agent/skills/ui-ux-pro-max/data/landing.csv +31 -0
  978. package/templates/.agent/skills/ui-ux-pro-max/data/products.csv +97 -0
  979. package/templates/.agent/skills/ui-ux-pro-max/data/prompts.csv +24 -0
  980. package/templates/.agent/skills/ui-ux-pro-max/data/react-performance.csv +45 -0
  981. package/templates/.agent/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
  982. package/templates/.agent/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
  983. package/templates/.agent/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
  984. package/templates/.agent/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
  985. package/templates/.agent/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
  986. package/templates/.agent/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
  987. package/templates/.agent/skills/ui-ux-pro-max/data/stacks/react.csv +54 -0
  988. package/templates/.agent/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
  989. package/templates/.agent/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
  990. package/templates/.agent/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
  991. package/templates/.agent/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -0
  992. package/templates/.agent/skills/ui-ux-pro-max/data/styles.csv +59 -0
  993. package/templates/.agent/skills/ui-ux-pro-max/data/typography.csv +58 -0
  994. package/templates/.agent/skills/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
  995. package/templates/.agent/skills/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
  996. package/templates/.agent/skills/ui-ux-pro-max/data/web-interface.csv +31 -0
  997. package/templates/.agent/skills/ui-ux-pro-max/scripts/core.py +257 -0
  998. package/templates/.agent/skills/ui-ux-pro-max/scripts/design_system.py +487 -0
  999. package/templates/.agent/skills/ui-ux-pro-max/scripts/search.py +76 -0
  1000. package/templates/.agent/skills/uniprot-database/SKILL.md +195 -0
  1001. package/templates/.agent/skills/unit-testing-test-generate/SKILL.md +322 -0
  1002. package/templates/.agent/skills/unity-ecs-patterns/SKILL.md +36 -0
  1003. package/templates/.agent/skills/unity-ecs-patterns/resources/implementation-playbook.md +625 -0
  1004. package/templates/.agent/skills/using-git-worktrees/SKILL.md +223 -0
  1005. package/templates/.agent/skills/vector-database-engineer/SKILL.md +63 -0
  1006. package/templates/.agent/skills/vercel-ai-sdk-expert/SKILL.md +222 -0
  1007. package/templates/.agent/skills/vercel-automation/SKILL.md +230 -0
  1008. package/templates/.agent/skills/vercel-deployment/SKILL.md +80 -0
  1009. package/templates/.agent/skills/vibe-code-auditor/SKILL.md +334 -0
  1010. package/templates/.agent/skills/vibers-code-review/SKILL.md +140 -0
  1011. package/templates/.agent/skills/voice-agents/SKILL.md +73 -0
  1012. package/templates/.agent/skills/wcag-audit-patterns/SKILL.md +44 -0
  1013. package/templates/.agent/skills/wcag-audit-patterns/resources/implementation-playbook.md +541 -0
  1014. package/templates/.agent/skills/web-artifacts-builder/LICENSE.txt +202 -0
  1015. package/templates/.agent/skills/web-artifacts-builder/SKILL.md +79 -0
  1016. package/templates/.agent/skills/web-artifacts-builder/scripts/bundle-artifact.sh +54 -0
  1017. package/templates/.agent/skills/web-artifacts-builder/scripts/init-artifact.sh +322 -0
  1018. package/templates/.agent/skills/web-artifacts-builder/scripts/shadcn-components.tar.gz +0 -0
  1019. package/templates/.agent/skills/web-performance-optimization/SKILL.md +649 -0
  1020. package/templates/.agent/skills/web-scraper/SKILL.md +752 -0
  1021. package/templates/.agent/skills/web-scraper/references/data-transforms.md +397 -0
  1022. package/templates/.agent/skills/web-scraper/references/extraction-patterns.md +475 -0
  1023. package/templates/.agent/skills/web-scraper/references/output-templates.md +481 -0
  1024. package/templates/.agent/skills/web-security-testing/SKILL.md +183 -0
  1025. package/templates/.agent/skills/web3-testing/SKILL.md +430 -0
  1026. package/templates/.agent/skills/webapp-testing/LICENSE.txt +202 -0
  1027. package/templates/.agent/skills/webapp-testing/scripts/with_server.py +106 -0
  1028. package/templates/.agent/skills/webflow-automation/SKILL.md +239 -0
  1029. package/templates/.agent/skills/whatsapp-cloud-api/SKILL.md +488 -0
  1030. package/templates/.agent/skills/whatsapp-cloud-api/assets/boilerplate/nodejs/.env.example +20 -0
  1031. package/templates/.agent/skills/whatsapp-cloud-api/assets/boilerplate/nodejs/package.json +22 -0
  1032. package/templates/.agent/skills/whatsapp-cloud-api/assets/boilerplate/nodejs/src/index.ts +125 -0
  1033. package/templates/.agent/skills/whatsapp-cloud-api/assets/boilerplate/nodejs/src/template-manager.ts +67 -0
  1034. package/templates/.agent/skills/whatsapp-cloud-api/assets/boilerplate/nodejs/src/types.ts +216 -0
  1035. package/templates/.agent/skills/whatsapp-cloud-api/assets/boilerplate/nodejs/src/webhook-handler.ts +175 -0
  1036. package/templates/.agent/skills/whatsapp-cloud-api/assets/boilerplate/nodejs/src/whatsapp-client.ts +193 -0
  1037. package/templates/.agent/skills/whatsapp-cloud-api/assets/boilerplate/nodejs/tsconfig.json +17 -0
  1038. package/templates/.agent/skills/whatsapp-cloud-api/assets/boilerplate/python/.env.example +20 -0
  1039. package/templates/.agent/skills/whatsapp-cloud-api/assets/boilerplate/python/app.py +123 -0
  1040. package/templates/.agent/skills/whatsapp-cloud-api/assets/boilerplate/python/requirements.txt +4 -0
  1041. package/templates/.agent/skills/whatsapp-cloud-api/assets/boilerplate/python/template_manager.py +100 -0
  1042. package/templates/.agent/skills/whatsapp-cloud-api/assets/boilerplate/python/webhook_handler.py +139 -0
  1043. package/templates/.agent/skills/whatsapp-cloud-api/assets/boilerplate/python/whatsapp_client.py +219 -0
  1044. package/templates/.agent/skills/whatsapp-cloud-api/assets/examples/flow-example.json +170 -0
  1045. package/templates/.agent/skills/whatsapp-cloud-api/assets/examples/interactive-menu.json +186 -0
  1046. package/templates/.agent/skills/whatsapp-cloud-api/assets/examples/template-messages.json +173 -0
  1047. package/templates/.agent/skills/whatsapp-cloud-api/assets/examples/webhook-payloads.json +240 -0
  1048. package/templates/.agent/skills/whatsapp-cloud-api/references/advanced-features.md +546 -0
  1049. package/templates/.agent/skills/whatsapp-cloud-api/references/api-reference.md +566 -0
  1050. package/templates/.agent/skills/whatsapp-cloud-api/references/automation-patterns.md +690 -0
  1051. package/templates/.agent/skills/whatsapp-cloud-api/references/compliance.md +404 -0
  1052. package/templates/.agent/skills/whatsapp-cloud-api/references/message-types.md +1639 -0
  1053. package/templates/.agent/skills/whatsapp-cloud-api/references/setup-guide.md +692 -0
  1054. package/templates/.agent/skills/whatsapp-cloud-api/references/template-management.md +570 -0
  1055. package/templates/.agent/skills/whatsapp-cloud-api/references/webhook-setup.md +603 -0
  1056. package/templates/.agent/skills/whatsapp-cloud-api/scripts/send_test_message.py +137 -0
  1057. package/templates/.agent/skills/whatsapp-cloud-api/scripts/setup_project.py +118 -0
  1058. package/templates/.agent/skills/whatsapp-cloud-api/scripts/validate_config.py +190 -0
  1059. package/templates/.agent/skills/wiki-architect/SKILL.md +65 -0
  1060. package/templates/.agent/skills/wordpress-penetration-testing/SKILL.md +594 -0
  1061. package/templates/.agent/skills/workflow-orchestration-patterns/SKILL.md +336 -0
  1062. package/templates/.agent/skills/workflow-patterns/SKILL.md +37 -0
  1063. package/templates/.agent/skills/workflow-patterns/resources/implementation-playbook.md +621 -0
  1064. package/templates/.agent/skills/writing-plans/SKILL.md +122 -0
  1065. package/templates/.agent/skills/writing-skills/SKILL.md +121 -0
  1066. package/templates/.agent/skills/writing-skills/anthropic-best-practices.md +1150 -0
  1067. package/templates/.agent/skills/writing-skills/examples.md +282 -0
  1068. package/templates/.agent/skills/writing-skills/gotchas.md +197 -0
  1069. package/templates/.agent/skills/writing-skills/graphviz-conventions.dot +172 -0
  1070. package/templates/.agent/skills/writing-skills/persuasion-principles.md +187 -0
  1071. package/templates/.agent/skills/writing-skills/references/anti-rationalization/README.md +255 -0
  1072. package/templates/.agent/skills/writing-skills/references/cso/README.md +268 -0
  1073. package/templates/.agent/skills/writing-skills/references/standards/README.md +152 -0
  1074. package/templates/.agent/skills/writing-skills/references/standards/metadata-standard.md +65 -0
  1075. package/templates/.agent/skills/writing-skills/references/templates/discipline.md +54 -0
  1076. package/templates/.agent/skills/writing-skills/references/templates/pattern.md +48 -0
  1077. package/templates/.agent/skills/writing-skills/references/templates/reference.md +35 -0
  1078. package/templates/.agent/skills/writing-skills/references/templates/technique.md +59 -0
  1079. package/templates/.agent/skills/writing-skills/references/templates/tier-3-platform.md +19 -0
  1080. package/templates/.agent/skills/writing-skills/references/testing/README.md +204 -0
  1081. package/templates/.agent/skills/writing-skills/references/tier-1-simple/README.md +75 -0
  1082. package/templates/.agent/skills/writing-skills/references/tier-2-expanded/README.md +69 -0
  1083. package/templates/.agent/skills/writing-skills/references/tier-3-platform/README.md +98 -0
  1084. package/templates/.agent/skills/writing-skills/render-graphs.js +168 -0
  1085. package/templates/.agent/skills/writing-skills/testing-skills-with-subagents.md +384 -0
  1086. package/templates/.agent/skills/zapier-make-patterns/SKILL.md +72 -0
  1087. package/templates/.antigravity/rules.md +12 -7
  1088. package/templates/AGENTS.md +7 -3
  1089. package/templates/.agent/skills/bullmq-worker/SKILL.md +0 -124
  1090. package/templates/.agent/skills/code-review-checklist/SKILL.md +0 -109
  1091. package/templates/.agent/skills/deployment-procedures/SKILL.md +0 -241
  1092. package/templates/.agent/skills/doc.md +0 -177
  1093. package/templates/.agent/skills/documentation-templates/SKILL.md +0 -194
  1094. package/templates/.agent/skills/game-development/2d-games/SKILL.md +0 -119
  1095. package/templates/.agent/skills/game-development/3d-games/SKILL.md +0 -135
  1096. package/templates/.agent/skills/game-development/SKILL.md +0 -167
  1097. package/templates/.agent/skills/game-development/game-art/SKILL.md +0 -185
  1098. package/templates/.agent/skills/game-development/game-audio/SKILL.md +0 -190
  1099. package/templates/.agent/skills/game-development/game-design/SKILL.md +0 -129
  1100. package/templates/.agent/skills/game-development/mobile-games/SKILL.md +0 -108
  1101. package/templates/.agent/skills/game-development/multiplayer/SKILL.md +0 -132
  1102. package/templates/.agent/skills/game-development/pc-games/SKILL.md +0 -144
  1103. package/templates/.agent/skills/game-development/vr-ar/SKILL.md +0 -123
  1104. package/templates/.agent/skills/game-development/web-games/SKILL.md +0 -150
  1105. package/templates/.agent/skills/geo-fundamentals/SKILL.md +0 -156
  1106. package/templates/.agent/skills/geo-fundamentals/scripts/geo_checker.py +0 -289
  1107. package/templates/.agent/skills/i18n-localization/SKILL.md +0 -154
  1108. package/templates/.agent/skills/i18n-localization/scripts/i18n_checker.py +0 -241
  1109. package/templates/.agent/skills/lint-and-validate/SKILL.md +0 -45
  1110. package/templates/.agent/skills/lint-and-validate/scripts/lint_runner.py +0 -184
  1111. package/templates/.agent/skills/lint-and-validate/scripts/type_coverage.py +0 -173
  1112. package/templates/.agent/skills/mcp-builder/SKILL.md +0 -176
  1113. package/templates/.agent/skills/neo-storage/SKILL.md +0 -115
  1114. package/templates/.agent/skills/plan-writing/SKILL.md +0 -152
  1115. package/templates/.agent/skills/powershell-windows/SKILL.md +0 -167
  1116. package/templates/.agent/skills/rag-vector-db/SKILL.md +0 -67
  1117. package/templates/.agent/skills/red-team-tactics/SKILL.md +0 -199
  1118. package/templates/.agent/skills/server-management/SKILL.md +0 -161
  1119. package/templates/.agent/skills/systematic-debugging/SKILL.md +0 -109
  1120. package/templates/.agent/skills/tdd-workflow/SKILL.md +0 -149
  1121. package/templates/.agent/skills/uu-pdp-feature-check/SKILL.md +0 -116
  1122. package/templates/.agent/skills/vulnerability-scanner/SKILL.md +0 -276
  1123. package/templates/.agent/skills/vulnerability-scanner/checklists.md +0 -121
  1124. package/templates/.agent/skills/vulnerability-scanner/scripts/security_scan.py +0 -458
  1125. package/templates/.agent/skills/xendit-integration/SKILL.md +0 -100
@@ -0,0 +1,1441 @@
1
+ # Cloud Cost Optimization Implementation Playbook
2
+
3
+ This file contains detailed patterns, checklists, and code samples referenced by the skill.
4
+
5
+ ## Instructions
6
+
7
+ ### 1. Cost Analysis and Visibility
8
+
9
+ Implement comprehensive cost analysis:
10
+
11
+ **Cost Analysis Framework**
12
+ ```python
13
+ import boto3
14
+ import pandas as pd
15
+ from datetime import datetime, timedelta
16
+ from typing import Dict, List, Any
17
+ import json
18
+
19
+ class CloudCostAnalyzer:
20
+ def __init__(self, cloud_provider: str):
21
+ self.provider = cloud_provider
22
+ self.client = self._initialize_client()
23
+ self.cost_data = None
24
+
25
+ def analyze_costs(self, time_period: int = 30):
26
+ """Comprehensive cost analysis"""
27
+ analysis = {
28
+ 'total_cost': self._get_total_cost(time_period),
29
+ 'cost_by_service': self._analyze_by_service(time_period),
30
+ 'cost_by_resource': self._analyze_by_resource(time_period),
31
+ 'cost_trends': self._analyze_trends(time_period),
32
+ 'anomalies': self._detect_anomalies(time_period),
33
+ 'waste_analysis': self._identify_waste(),
34
+ 'optimization_opportunities': self._find_opportunities()
35
+ }
36
+
37
+ return self._generate_report(analysis)
38
+
39
+ def _analyze_by_service(self, days: int):
40
+ """Analyze costs by service"""
41
+ if self.provider == 'aws':
42
+ ce = boto3.client('ce')
43
+
44
+ response = ce.get_cost_and_usage(
45
+ TimePeriod={
46
+ 'Start': (datetime.now() - timedelta(days=days)).strftime('%Y-%m-%d'),
47
+ 'End': datetime.now().strftime('%Y-%m-%d')
48
+ },
49
+ Granularity='DAILY',
50
+ Metrics=['UnblendedCost'],
51
+ GroupBy=[
52
+ {'Type': 'DIMENSION', 'Key': 'SERVICE'}
53
+ ]
54
+ )
55
+
56
+ # Process response
57
+ service_costs = {}
58
+ for result in response['ResultsByTime']:
59
+ for group in result['Groups']:
60
+ service = group['Keys'][0]
61
+ cost = float(group['Metrics']['UnblendedCost']['Amount'])
62
+
63
+ if service not in service_costs:
64
+ service_costs[service] = []
65
+ service_costs[service].append(cost)
66
+
67
+ # Calculate totals and trends
68
+ analysis = {}
69
+ for service, costs in service_costs.items():
70
+ analysis[service] = {
71
+ 'total': sum(costs),
72
+ 'average_daily': sum(costs) / len(costs),
73
+ 'trend': self._calculate_trend(costs),
74
+ 'percentage': (sum(costs) / self._get_total_cost(days)) * 100
75
+ }
76
+
77
+ return analysis
78
+
79
+ def _identify_waste(self):
80
+ """Identify wasted resources"""
81
+ waste_analysis = {
82
+ 'unused_resources': self._find_unused_resources(),
83
+ 'oversized_resources': self._find_oversized_resources(),
84
+ 'unattached_storage': self._find_unattached_storage(),
85
+ 'idle_load_balancers': self._find_idle_load_balancers(),
86
+ 'old_snapshots': self._find_old_snapshots(),
87
+ 'untagged_resources': self._find_untagged_resources()
88
+ }
89
+
90
+ total_waste = sum(item['estimated_savings']
91
+ for category in waste_analysis.values()
92
+ for item in category)
93
+
94
+ waste_analysis['total_potential_savings'] = total_waste
95
+
96
+ return waste_analysis
97
+
98
+ def _find_unused_resources(self):
99
+ """Find resources with no usage"""
100
+ unused = []
101
+
102
+ if self.provider == 'aws':
103
+ # Check EC2 instances
104
+ ec2 = boto3.client('ec2')
105
+ cloudwatch = boto3.client('cloudwatch')
106
+
107
+ instances = ec2.describe_instances(
108
+ Filters=[{'Name': 'instance-state-name', 'Values': ['running']}]
109
+ )
110
+
111
+ for reservation in instances['Reservations']:
112
+ for instance in reservation['Instances']:
113
+ # Check CPU utilization
114
+ metrics = cloudwatch.get_metric_statistics(
115
+ Namespace='AWS/EC2',
116
+ MetricName='CPUUtilization',
117
+ Dimensions=[
118
+ {'Name': 'InstanceId', 'Value': instance['InstanceId']}
119
+ ],
120
+ StartTime=datetime.now() - timedelta(days=7),
121
+ EndTime=datetime.now(),
122
+ Period=3600,
123
+ Statistics=['Average']
124
+ )
125
+
126
+ if metrics['Datapoints']:
127
+ avg_cpu = sum(d['Average'] for d in metrics['Datapoints']) / len(metrics['Datapoints'])
128
+
129
+ if avg_cpu < 5: # Less than 5% CPU usage
130
+ unused.append({
131
+ 'resource_type': 'EC2 Instance',
132
+ 'resource_id': instance['InstanceId'],
133
+ 'reason': f'Average CPU: {avg_cpu:.2f}%',
134
+ 'estimated_savings': self._calculate_instance_cost(instance)
135
+ })
136
+
137
+ return unused
138
+ ```
139
+
140
+ ### 2. Resource Rightsizing
141
+
142
+ Implement intelligent rightsizing:
143
+
144
+ **Rightsizing Engine**
145
+ ```python
146
+ class ResourceRightsizer:
147
+ def __init__(self):
148
+ self.utilization_thresholds = {
149
+ 'cpu_low': 20,
150
+ 'cpu_high': 80,
151
+ 'memory_low': 30,
152
+ 'memory_high': 85,
153
+ 'network_low': 10,
154
+ 'network_high': 70
155
+ }
156
+
157
+ def analyze_rightsizing_opportunities(self):
158
+ """Find rightsizing opportunities"""
159
+ opportunities = {
160
+ 'ec2_instances': self._rightsize_ec2(),
161
+ 'rds_instances': self._rightsize_rds(),
162
+ 'containers': self._rightsize_containers(),
163
+ 'lambda_functions': self._rightsize_lambda(),
164
+ 'storage_volumes': self._rightsize_storage()
165
+ }
166
+
167
+ return self._prioritize_opportunities(opportunities)
168
+
169
+ def _rightsize_ec2(self):
170
+ """Rightsize EC2 instances"""
171
+ recommendations = []
172
+
173
+ instances = self._get_running_instances()
174
+
175
+ for instance in instances:
176
+ # Get utilization metrics
177
+ utilization = self._get_instance_utilization(instance['InstanceId'])
178
+
179
+ # Determine if oversized or undersized
180
+ current_type = instance['InstanceType']
181
+ recommended_type = self._recommend_instance_type(
182
+ current_type,
183
+ utilization
184
+ )
185
+
186
+ if recommended_type != current_type:
187
+ current_cost = self._get_instance_cost(current_type)
188
+ new_cost = self._get_instance_cost(recommended_type)
189
+
190
+ recommendations.append({
191
+ 'resource_id': instance['InstanceId'],
192
+ 'current_type': current_type,
193
+ 'recommended_type': recommended_type,
194
+ 'reason': self._generate_reason(utilization),
195
+ 'current_cost': current_cost,
196
+ 'new_cost': new_cost,
197
+ 'monthly_savings': (current_cost - new_cost) * 730,
198
+ 'effort': 'medium',
199
+ 'risk': 'low' if 'downsize' in self._generate_reason(utilization) else 'medium'
200
+ })
201
+
202
+ return recommendations
203
+
204
+ def _recommend_instance_type(self, current_type: str, utilization: Dict):
205
+ """Recommend optimal instance type"""
206
+ # Parse current instance family and size
207
+ family, size = self._parse_instance_type(current_type)
208
+
209
+ # Calculate required resources
210
+ required_cpu = self._calculate_required_cpu(utilization['cpu'])
211
+ required_memory = self._calculate_required_memory(utilization['memory'])
212
+
213
+ # Find best matching instance
214
+ instance_catalog = self._get_instance_catalog()
215
+
216
+ candidates = []
217
+ for instance_type, specs in instance_catalog.items():
218
+ if (specs['vcpu'] >= required_cpu and
219
+ specs['memory'] >= required_memory):
220
+ candidates.append({
221
+ 'type': instance_type,
222
+ 'cost': specs['cost'],
223
+ 'vcpu': specs['vcpu'],
224
+ 'memory': specs['memory'],
225
+ 'efficiency_score': self._calculate_efficiency_score(
226
+ specs, required_cpu, required_memory
227
+ )
228
+ })
229
+
230
+ # Select best candidate
231
+ if candidates:
232
+ best = sorted(candidates,
233
+ key=lambda x: (x['efficiency_score'], x['cost']))[0]
234
+ return best['type']
235
+
236
+ return current_type
237
+
238
+ def create_rightsizing_automation(self):
239
+ """Automated rightsizing implementation"""
240
+ return '''
241
+ import boto3
242
+ from datetime import datetime
243
+ import logging
244
+
245
+ class AutomatedRightsizer:
246
+ def __init__(self):
247
+ self.ec2 = boto3.client('ec2')
248
+ self.cloudwatch = boto3.client('cloudwatch')
249
+ self.logger = logging.getLogger(__name__)
250
+
251
+ def execute_rightsizing(self, recommendations: List[Dict], dry_run: bool = True):
252
+ """Execute rightsizing recommendations"""
253
+ results = []
254
+
255
+ for recommendation in recommendations:
256
+ try:
257
+ if recommendation['risk'] == 'low' or self._get_approval(recommendation):
258
+ result = self._resize_instance(
259
+ recommendation['resource_id'],
260
+ recommendation['recommended_type'],
261
+ dry_run=dry_run
262
+ )
263
+ results.append(result)
264
+ except Exception as e:
265
+ self.logger.error(f"Failed to resize {recommendation['resource_id']}: {e}")
266
+
267
+ return results
268
+
269
+ def _resize_instance(self, instance_id: str, new_type: str, dry_run: bool):
270
+ """Resize an EC2 instance"""
271
+ # Create snapshot for rollback
272
+ snapshot_id = self._create_snapshot(instance_id)
273
+
274
+ try:
275
+ # Stop instance
276
+ if not dry_run:
277
+ self.ec2.stop_instances(InstanceIds=[instance_id])
278
+ self._wait_for_state(instance_id, 'stopped')
279
+
280
+ # Change instance type
281
+ self.ec2.modify_instance_attribute(
282
+ InstanceId=instance_id,
283
+ InstanceType={'Value': new_type},
284
+ DryRun=dry_run
285
+ )
286
+
287
+ # Start instance
288
+ if not dry_run:
289
+ self.ec2.start_instances(InstanceIds=[instance_id])
290
+ self._wait_for_state(instance_id, 'running')
291
+
292
+ return {
293
+ 'instance_id': instance_id,
294
+ 'status': 'success',
295
+ 'new_type': new_type,
296
+ 'snapshot_id': snapshot_id
297
+ }
298
+
299
+ except Exception as e:
300
+ # Rollback on failure
301
+ if not dry_run:
302
+ self._rollback_instance(instance_id, snapshot_id)
303
+ raise
304
+ '''
305
+ ```
306
+
307
+ ### 3. Reserved Instances and Savings Plans
308
+
309
+ Optimize commitment-based discounts:
310
+
311
+ **Reservation Optimizer**
312
+ ```python
313
+ class ReservationOptimizer:
314
+ def __init__(self):
315
+ self.usage_history = None
316
+ self.existing_reservations = None
317
+
318
+ def analyze_reservation_opportunities(self):
319
+ """Analyze opportunities for reservations"""
320
+ analysis = {
321
+ 'current_coverage': self._analyze_current_coverage(),
322
+ 'usage_patterns': self._analyze_usage_patterns(),
323
+ 'recommendations': self._generate_recommendations(),
324
+ 'roi_analysis': self._calculate_roi(),
325
+ 'risk_assessment': self._assess_commitment_risk()
326
+ }
327
+
328
+ return analysis
329
+
330
+ def _analyze_usage_patterns(self):
331
+ """Analyze historical usage patterns"""
332
+ # Get 12 months of usage data
333
+ usage_data = self._get_historical_usage(months=12)
334
+
335
+ patterns = {
336
+ 'stable_workloads': [],
337
+ 'variable_workloads': [],
338
+ 'seasonal_patterns': [],
339
+ 'growth_trends': []
340
+ }
341
+
342
+ # Analyze each instance family
343
+ for family in self._get_instance_families(usage_data):
344
+ family_usage = self._filter_by_family(usage_data, family)
345
+
346
+ # Calculate stability metrics
347
+ stability = self._calculate_stability(family_usage)
348
+
349
+ if stability['coefficient_of_variation'] < 0.1:
350
+ patterns['stable_workloads'].append({
351
+ 'family': family,
352
+ 'average_usage': stability['mean'],
353
+ 'min_usage': stability['min'],
354
+ 'recommendation': 'reserved_instance',
355
+ 'term': '3_year',
356
+ 'payment': 'all_upfront'
357
+ })
358
+ elif stability['coefficient_of_variation'] < 0.3:
359
+ patterns['variable_workloads'].append({
360
+ 'family': family,
361
+ 'average_usage': stability['mean'],
362
+ 'baseline': stability['percentile_25'],
363
+ 'recommendation': 'savings_plan',
364
+ 'commitment': stability['percentile_25']
365
+ })
366
+
367
+ # Check for seasonal patterns
368
+ if self._has_seasonal_pattern(family_usage):
369
+ patterns['seasonal_patterns'].append({
370
+ 'family': family,
371
+ 'pattern': self._identify_seasonal_pattern(family_usage),
372
+ 'recommendation': 'spot_with_savings_plan_baseline'
373
+ })
374
+
375
+ return patterns
376
+
377
+ def _generate_recommendations(self):
378
+ """Generate reservation recommendations"""
379
+ recommendations = []
380
+
381
+ patterns = self._analyze_usage_patterns()
382
+ current_costs = self._calculate_current_costs()
383
+
384
+ # Reserved Instance recommendations
385
+ for workload in patterns['stable_workloads']:
386
+ ri_options = self._calculate_ri_options(workload)
387
+
388
+ for option in ri_options:
389
+ savings = current_costs[workload['family']] - option['total_cost']
390
+
391
+ if savings > 0:
392
+ recommendations.append({
393
+ 'type': 'reserved_instance',
394
+ 'family': workload['family'],
395
+ 'quantity': option['quantity'],
396
+ 'term': option['term'],
397
+ 'payment': option['payment_option'],
398
+ 'upfront_cost': option['upfront_cost'],
399
+ 'monthly_cost': option['monthly_cost'],
400
+ 'total_savings': savings,
401
+ 'break_even_months': option['upfront_cost'] / (savings / 36),
402
+ 'confidence': 'high'
403
+ })
404
+
405
+ # Savings Plan recommendations
406
+ for workload in patterns['variable_workloads']:
407
+ sp_options = self._calculate_savings_plan_options(workload)
408
+
409
+ for option in sp_options:
410
+ recommendations.append({
411
+ 'type': 'savings_plan',
412
+ 'commitment_type': option['type'],
413
+ 'hourly_commitment': option['commitment'],
414
+ 'term': option['term'],
415
+ 'estimated_savings': option['savings'],
416
+ 'flexibility': option['flexibility_score'],
417
+ 'confidence': 'medium'
418
+ })
419
+
420
+ return sorted(recommendations, key=lambda x: x.get('total_savings', 0), reverse=True)
421
+
422
+ def create_reservation_dashboard(self):
423
+ """Create reservation tracking dashboard"""
424
+ return '''
425
+ <!DOCTYPE html>
426
+ <html>
427
+ <head>
428
+ <title>Reservation & Savings Dashboard</title>
429
+ <script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
430
+ </head>
431
+ <body>
432
+ <div class="dashboard">
433
+ <div class="summary-cards">
434
+ <div class="card">
435
+ <h3>Current Coverage</h3>
436
+ <div class="metric">{coverage_percentage}%</div>
437
+ <div class="sub-metric">On-Demand: ${on_demand_cost}</div>
438
+ <div class="sub-metric">Reserved: ${reserved_cost}</div>
439
+ </div>
440
+
441
+ <div class="card">
442
+ <h3>Potential Savings</h3>
443
+ <div class="metric">${potential_savings}/month</div>
444
+ <div class="sub-metric">{recommendations_count} opportunities</div>
445
+ </div>
446
+
447
+ <div class="card">
448
+ <h3>Expiring Soon</h3>
449
+ <div class="metric">{expiring_count} RIs</div>
450
+ <div class="sub-metric">Next 30 days</div>
451
+ </div>
452
+ </div>
453
+
454
+ <div class="charts">
455
+ <canvas id="coverageChart"></canvas>
456
+ <canvas id="savingsChart"></canvas>
457
+ </div>
458
+
459
+ <div class="recommendations-table">
460
+ <h3>Top Recommendations</h3>
461
+ <table>
462
+ <tr>
463
+ <th>Type</th>
464
+ <th>Resource</th>
465
+ <th>Term</th>
466
+ <th>Upfront</th>
467
+ <th>Monthly Savings</th>
468
+ <th>ROI</th>
469
+ <th>Action</th>
470
+ </tr>
471
+ {recommendation_rows}
472
+ </table>
473
+ </div>
474
+ </div>
475
+ </body>
476
+ </html>
477
+ '''
478
+ ```
479
+
480
+ ### 4. Spot Instance Optimization
481
+
482
+ Leverage spot instances effectively:
483
+
484
+ **Spot Instance Manager**
485
+ ```python
486
+ class SpotInstanceOptimizer:
487
+ def __init__(self):
488
+ self.spot_advisor = self._init_spot_advisor()
489
+ self.interruption_handler = None
490
+
491
+ def identify_spot_opportunities(self):
492
+ """Identify workloads suitable for spot"""
493
+ workloads = self._analyze_workloads()
494
+
495
+ spot_candidates = {
496
+ 'batch_processing': [],
497
+ 'dev_test': [],
498
+ 'stateless_apps': [],
499
+ 'ci_cd': [],
500
+ 'data_processing': []
501
+ }
502
+
503
+ for workload in workloads:
504
+ suitability = self._assess_spot_suitability(workload)
505
+
506
+ if suitability['score'] > 0.7:
507
+ spot_candidates[workload['type']].append({
508
+ 'workload': workload['name'],
509
+ 'current_cost': workload['cost'],
510
+ 'spot_savings': workload['cost'] * 0.7, # ~70% savings
511
+ 'interruption_tolerance': suitability['interruption_tolerance'],
512
+ 'recommended_strategy': self._recommend_spot_strategy(workload)
513
+ })
514
+
515
+ return spot_candidates
516
+
517
+ def _recommend_spot_strategy(self, workload):
518
+ """Recommend spot instance strategy"""
519
+ if workload['interruption_tolerance'] == 'high':
520
+ return {
521
+ 'strategy': 'spot_fleet_diverse',
522
+ 'instance_pools': 10,
523
+ 'allocation_strategy': 'capacity-optimized',
524
+ 'on_demand_base': 0,
525
+ 'spot_percentage': 100
526
+ }
527
+ elif workload['interruption_tolerance'] == 'medium':
528
+ return {
529
+ 'strategy': 'mixed_instances',
530
+ 'on_demand_base': 25,
531
+ 'spot_percentage': 75,
532
+ 'spot_allocation': 'lowest-price'
533
+ }
534
+ else:
535
+ return {
536
+ 'strategy': 'spot_with_fallback',
537
+ 'primary': 'spot',
538
+ 'fallback': 'on-demand',
539
+ 'checkpointing': True
540
+ }
541
+
542
+ def create_spot_configuration(self):
543
+ """Create spot instance configuration"""
544
+ return '''
545
+ # Terraform configuration for Spot instances
546
+ resource "aws_spot_fleet_request" "processing_fleet" {
547
+ iam_fleet_role = aws_iam_role.spot_fleet.arn
548
+
549
+ allocation_strategy = "diversified"
550
+ target_capacity = 100
551
+ valid_until = timeadd(timestamp(), "168h")
552
+
553
+ # Define multiple launch specifications for diversity
554
+ dynamic "launch_specification" {
555
+ for_each = var.spot_instance_types
556
+
557
+ content {
558
+ instance_type = launch_specification.value
559
+ ami = var.ami_id
560
+ key_name = var.key_name
561
+ subnet_id = var.subnet_ids[launch_specification.key % length(var.subnet_ids)]
562
+
563
+ weighted_capacity = var.instance_weights[launch_specification.value]
564
+ spot_price = var.max_spot_prices[launch_specification.value]
565
+
566
+ user_data = base64encode(templatefile("${path.module}/spot-init.sh", {
567
+ interruption_handler = true
568
+ checkpoint_s3_bucket = var.checkpoint_bucket
569
+ }))
570
+
571
+ tags = {
572
+ Name = "spot-processing-${launch_specification.key}"
573
+ Type = "spot"
574
+ }
575
+ }
576
+ }
577
+
578
+ # Interruption handling
579
+ lifecycle {
580
+ create_before_destroy = true
581
+ }
582
+ }
583
+
584
+ # Spot interruption handler
585
+ resource "aws_lambda_function" "spot_interruption_handler" {
586
+ filename = "spot-handler.zip"
587
+ function_name = "spot-interruption-handler"
588
+ role = aws_iam_role.lambda_role.arn
589
+ handler = "handler.main"
590
+ runtime = "python3.9"
591
+
592
+ environment {
593
+ variables = {
594
+ CHECKPOINT_BUCKET = var.checkpoint_bucket
595
+ SNS_TOPIC_ARN = aws_sns_topic.spot_interruptions.arn
596
+ }
597
+ }
598
+ }
599
+ '''
600
+ ```
601
+
602
+ ### 5. Storage Optimization
603
+
604
+ Optimize storage costs:
605
+
606
+ **Storage Optimizer**
607
+ ```python
608
+ class StorageOptimizer:
609
+ def analyze_storage_costs(self):
610
+ """Comprehensive storage analysis"""
611
+ analysis = {
612
+ 'ebs_volumes': self._analyze_ebs_volumes(),
613
+ 's3_buckets': self._analyze_s3_buckets(),
614
+ 'snapshots': self._analyze_snapshots(),
615
+ 'lifecycle_opportunities': self._find_lifecycle_opportunities(),
616
+ 'compression_opportunities': self._find_compression_opportunities()
617
+ }
618
+
619
+ return analysis
620
+
621
+ def _analyze_s3_buckets(self):
622
+ """Analyze S3 bucket costs and optimization"""
623
+ s3 = boto3.client('s3')
624
+ cloudwatch = boto3.client('cloudwatch')
625
+
626
+ buckets = s3.list_buckets()['Buckets']
627
+ bucket_analysis = []
628
+
629
+ for bucket in buckets:
630
+ bucket_name = bucket['Name']
631
+
632
+ # Get storage metrics
633
+ metrics = self._get_s3_metrics(bucket_name)
634
+
635
+ # Analyze storage classes
636
+ storage_class_distribution = self._get_storage_class_distribution(bucket_name)
637
+
638
+ # Calculate optimization potential
639
+ optimization = self._calculate_s3_optimization(
640
+ bucket_name,
641
+ metrics,
642
+ storage_class_distribution
643
+ )
644
+
645
+ bucket_analysis.append({
646
+ 'bucket_name': bucket_name,
647
+ 'total_size_gb': metrics['size_gb'],
648
+ 'total_objects': metrics['object_count'],
649
+ 'current_cost': metrics['monthly_cost'],
650
+ 'storage_classes': storage_class_distribution,
651
+ 'optimization_recommendations': optimization['recommendations'],
652
+ 'potential_savings': optimization['savings']
653
+ })
654
+
655
+ return bucket_analysis
656
+
657
+ def create_lifecycle_policies(self):
658
+ """Create S3 lifecycle policies"""
659
+ return '''
660
+ import boto3
661
+ from datetime import datetime
662
+
663
+ class S3LifecycleManager:
664
+ def __init__(self):
665
+ self.s3 = boto3.client('s3')
666
+
667
+ def create_intelligent_lifecycle(self, bucket_name: str, access_patterns: Dict):
668
+ """Create lifecycle policy based on access patterns"""
669
+
670
+ rules = []
671
+
672
+ # Intelligent tiering for unknown access patterns
673
+ if access_patterns.get('unpredictable'):
674
+ rules.append({
675
+ 'ID': 'intelligent-tiering',
676
+ 'Status': 'Enabled',
677
+ 'Transitions': [{
678
+ 'Days': 1,
679
+ 'StorageClass': 'INTELLIGENT_TIERING'
680
+ }]
681
+ })
682
+
683
+ # Standard lifecycle for predictable patterns
684
+ if access_patterns.get('predictable'):
685
+ rules.append({
686
+ 'ID': 'standard-lifecycle',
687
+ 'Status': 'Enabled',
688
+ 'Transitions': [
689
+ {
690
+ 'Days': 30,
691
+ 'StorageClass': 'STANDARD_IA'
692
+ },
693
+ {
694
+ 'Days': 90,
695
+ 'StorageClass': 'GLACIER'
696
+ },
697
+ {
698
+ 'Days': 180,
699
+ 'StorageClass': 'DEEP_ARCHIVE'
700
+ }
701
+ ]
702
+ })
703
+
704
+ # Delete old versions
705
+ rules.append({
706
+ 'ID': 'delete-old-versions',
707
+ 'Status': 'Enabled',
708
+ 'NoncurrentVersionTransitions': [
709
+ {
710
+ 'NoncurrentDays': 30,
711
+ 'StorageClass': 'GLACIER'
712
+ }
713
+ ],
714
+ 'NoncurrentVersionExpiration': {
715
+ 'NoncurrentDays': 90
716
+ }
717
+ })
718
+
719
+ # Apply lifecycle configuration
720
+ self.s3.put_bucket_lifecycle_configuration(
721
+ Bucket=bucket_name,
722
+ LifecycleConfiguration={'Rules': rules}
723
+ )
724
+
725
+ return rules
726
+
727
+ def optimize_ebs_volumes(self):
728
+ """Optimize EBS volume types and sizes"""
729
+ ec2 = boto3.client('ec2')
730
+
731
+ volumes = ec2.describe_volumes()['Volumes']
732
+ optimizations = []
733
+
734
+ for volume in volumes:
735
+ # Analyze volume metrics
736
+ iops_usage = self._get_volume_iops_usage(volume['VolumeId'])
737
+ throughput_usage = self._get_volume_throughput_usage(volume['VolumeId'])
738
+
739
+ current_type = volume['VolumeType']
740
+ recommended_type = self._recommend_volume_type(
741
+ iops_usage,
742
+ throughput_usage,
743
+ volume['Size']
744
+ )
745
+
746
+ if recommended_type != current_type:
747
+ optimizations.append({
748
+ 'volume_id': volume['VolumeId'],
749
+ 'current_type': current_type,
750
+ 'recommended_type': recommended_type,
751
+ 'reason': self._get_optimization_reason(
752
+ current_type,
753
+ recommended_type,
754
+ iops_usage,
755
+ throughput_usage
756
+ ),
757
+ 'monthly_savings': self._calculate_volume_savings(
758
+ volume,
759
+ recommended_type
760
+ )
761
+ })
762
+
763
+ return optimizations
764
+ '''
765
+ ```
766
+
767
+ ### 6. Network Cost Optimization
768
+
769
+ Reduce network transfer costs:
770
+
771
+ **Network Cost Optimizer**
772
+ ```python
773
+ class NetworkCostOptimizer:
774
+ def analyze_network_costs(self):
775
+ """Analyze network transfer costs"""
776
+ analysis = {
777
+ 'data_transfer_costs': self._analyze_data_transfer(),
778
+ 'nat_gateway_costs': self._analyze_nat_gateways(),
779
+ 'load_balancer_costs': self._analyze_load_balancers(),
780
+ 'vpc_endpoint_opportunities': self._find_vpc_endpoint_opportunities(),
781
+ 'cdn_optimization': self._analyze_cdn_usage()
782
+ }
783
+
784
+ return analysis
785
+
786
+ def _analyze_data_transfer(self):
787
+ """Analyze data transfer patterns and costs"""
788
+ transfers = {
789
+ 'inter_region': self._get_inter_region_transfers(),
790
+ 'internet_egress': self._get_internet_egress(),
791
+ 'inter_az': self._get_inter_az_transfers(),
792
+ 'vpc_peering': self._get_vpc_peering_transfers()
793
+ }
794
+
795
+ recommendations = []
796
+
797
+ # Analyze inter-region transfers
798
+ if transfers['inter_region']['monthly_gb'] > 1000:
799
+ recommendations.append({
800
+ 'type': 'region_consolidation',
801
+ 'description': 'Consider consolidating resources in fewer regions',
802
+ 'current_cost': transfers['inter_region']['monthly_cost'],
803
+ 'potential_savings': transfers['inter_region']['monthly_cost'] * 0.8
804
+ })
805
+
806
+ # Analyze internet egress
807
+ if transfers['internet_egress']['monthly_gb'] > 10000:
808
+ recommendations.append({
809
+ 'type': 'cdn_implementation',
810
+ 'description': 'Implement CDN to reduce origin egress',
811
+ 'current_cost': transfers['internet_egress']['monthly_cost'],
812
+ 'potential_savings': transfers['internet_egress']['monthly_cost'] * 0.6
813
+ })
814
+
815
+ return {
816
+ 'current_costs': transfers,
817
+ 'recommendations': recommendations
818
+ }
819
+
820
+ def create_network_optimization_script(self):
821
+ """Script to implement network optimizations"""
822
+ return '''
823
+ #!/usr/bin/env python3
824
+ import boto3
825
+ from collections import defaultdict
826
+
827
+ class NetworkOptimizer:
828
+ def __init__(self):
829
+ self.ec2 = boto3.client('ec2')
830
+ self.cloudwatch = boto3.client('cloudwatch')
831
+
832
+ def optimize_nat_gateways(self):
833
+ """Consolidate and optimize NAT gateways"""
834
+ # Get all NAT gateways
835
+ nat_gateways = self.ec2.describe_nat_gateways()['NatGateways']
836
+
837
+ # Group by VPC
838
+ vpc_nat_gateways = defaultdict(list)
839
+ for nat in nat_gateways:
840
+ if nat['State'] == 'available':
841
+ vpc_nat_gateways[nat['VpcId']].append(nat)
842
+
843
+ optimizations = []
844
+
845
+ for vpc_id, nats in vpc_nat_gateways.items():
846
+ if len(nats) > 1:
847
+ # Check if consolidation is possible
848
+ traffic_analysis = self._analyze_nat_traffic(nats)
849
+
850
+ if traffic_analysis['can_consolidate']:
851
+ optimizations.append({
852
+ 'vpc_id': vpc_id,
853
+ 'action': 'consolidate_nat',
854
+ 'current_count': len(nats),
855
+ 'recommended_count': traffic_analysis['recommended_count'],
856
+ 'monthly_savings': (len(nats) - traffic_analysis['recommended_count']) * 45
857
+ })
858
+
859
+ return optimizations
860
+
861
+ def implement_vpc_endpoints(self):
862
+ """Implement VPC endpoints for AWS services"""
863
+ services_to_check = ['s3', 'dynamodb', 'ec2', 'sns', 'sqs']
864
+ vpc_list = self.ec2.describe_vpcs()['Vpcs']
865
+
866
+ implementations = []
867
+
868
+ for vpc in vpc_list:
869
+ vpc_id = vpc['VpcId']
870
+
871
+ # Check existing endpoints
872
+ existing = self._get_existing_endpoints(vpc_id)
873
+
874
+ for service in services_to_check:
875
+ if service not in existing:
876
+ # Check if service is being used
877
+ if self._is_service_used(vpc_id, service):
878
+ # Create VPC endpoint
879
+ endpoint = self._create_vpc_endpoint(vpc_id, service)
880
+
881
+ implementations.append({
882
+ 'vpc_id': vpc_id,
883
+ 'service': service,
884
+ 'endpoint_id': endpoint['VpcEndpointId'],
885
+ 'estimated_savings': self._estimate_endpoint_savings(vpc_id, service)
886
+ })
887
+
888
+ return implementations
889
+
890
+ def optimize_cloudfront_distribution(self):
891
+ """Optimize CloudFront for cost reduction"""
892
+ cloudfront = boto3.client('cloudfront')
893
+
894
+ distributions = cloudfront.list_distributions()
895
+ optimizations = []
896
+
897
+ for dist in distributions.get('DistributionList', {}).get('Items', []):
898
+ # Analyze distribution patterns
899
+ analysis = self._analyze_distribution(dist['Id'])
900
+
901
+ if analysis['optimization_potential']:
902
+ optimizations.append({
903
+ 'distribution_id': dist['Id'],
904
+ 'recommendations': [
905
+ {
906
+ 'action': 'adjust_price_class',
907
+ 'current': dist['PriceClass'],
908
+ 'recommended': analysis['recommended_price_class'],
909
+ 'savings': analysis['price_class_savings']
910
+ },
911
+ {
912
+ 'action': 'optimize_cache_behaviors',
913
+ 'cache_improvements': analysis['cache_improvements'],
914
+ 'savings': analysis['cache_savings']
915
+ }
916
+ ]
917
+ })
918
+
919
+ return optimizations
920
+ '''
921
+ ```
922
+
923
+ ### 7. Container Cost Optimization
924
+
925
+ Optimize container workloads:
926
+
927
+ **Container Cost Optimizer**
928
+ ```python
929
+ class ContainerCostOptimizer:
930
+ def optimize_ecs_costs(self):
931
+ """Optimize ECS/Fargate costs"""
932
+ return {
933
+ 'cluster_optimization': self._optimize_clusters(),
934
+ 'task_rightsizing': self._rightsize_tasks(),
935
+ 'scheduling_optimization': self._optimize_scheduling(),
936
+ 'fargate_spot': self._implement_fargate_spot()
937
+ }
938
+
939
+ def _rightsize_tasks(self):
940
+ """Rightsize ECS tasks"""
941
+ ecs = boto3.client('ecs')
942
+ cloudwatch = boto3.client('cloudwatch')
943
+
944
+ clusters = ecs.list_clusters()['clusterArns']
945
+ recommendations = []
946
+
947
+ for cluster in clusters:
948
+ # Get services
949
+ services = ecs.list_services(cluster=cluster)['serviceArns']
950
+
951
+ for service in services:
952
+ # Get task definition
953
+ service_detail = ecs.describe_services(
954
+ cluster=cluster,
955
+ services=[service]
956
+ )['services'][0]
957
+
958
+ task_def = service_detail['taskDefinition']
959
+
960
+ # Analyze resource utilization
961
+ utilization = self._analyze_task_utilization(cluster, service)
962
+
963
+ # Generate recommendations
964
+ if utilization['cpu']['average'] < 30 or utilization['memory']['average'] < 40:
965
+ recommendations.append({
966
+ 'cluster': cluster,
967
+ 'service': service,
968
+ 'current_cpu': service_detail['cpu'],
969
+ 'current_memory': service_detail['memory'],
970
+ 'recommended_cpu': int(service_detail['cpu'] * 0.7),
971
+ 'recommended_memory': int(service_detail['memory'] * 0.8),
972
+ 'monthly_savings': self._calculate_task_savings(
973
+ service_detail,
974
+ utilization
975
+ )
976
+ })
977
+
978
+ return recommendations
979
+
980
+ def create_k8s_cost_optimization(self):
981
+ """Kubernetes cost optimization"""
982
+ return '''
983
+ apiVersion: v1
984
+ kind: ConfigMap
985
+ metadata:
986
+ name: cost-optimization-config
987
+ data:
988
+ vertical-pod-autoscaler.yaml: |
989
+ apiVersion: autoscaling.k8s.io/v1
990
+ kind: VerticalPodAutoscaler
991
+ metadata:
992
+ name: app-vpa
993
+ spec:
994
+ targetRef:
995
+ apiVersion: apps/v1
996
+ kind: Deployment
997
+ name: app-deployment
998
+ updatePolicy:
999
+ updateMode: "Auto"
1000
+ resourcePolicy:
1001
+ containerPolicies:
1002
+ - containerName: app
1003
+ minAllowed:
1004
+ cpu: 100m
1005
+ memory: 128Mi
1006
+ maxAllowed:
1007
+ cpu: 2
1008
+ memory: 2Gi
1009
+
1010
+ cluster-autoscaler-config.yaml: |
1011
+ apiVersion: apps/v1
1012
+ kind: Deployment
1013
+ metadata:
1014
+ name: cluster-autoscaler
1015
+ spec:
1016
+ template:
1017
+ spec:
1018
+ containers:
1019
+ - image: k8s.gcr.io/autoscaling/cluster-autoscaler:v1.21.0
1020
+ name: cluster-autoscaler
1021
+ command:
1022
+ - ./cluster-autoscaler
1023
+ - --v=4
1024
+ - --stderrthreshold=info
1025
+ - --cloud-provider=aws
1026
+ - --skip-nodes-with-local-storage=false
1027
+ - --expander=priority
1028
+ - --node-group-auto-discovery=asg:tag=k8s.io/cluster-autoscaler/enabled,k8s.io/cluster-autoscaler/cluster-name
1029
+ - --scale-down-enabled=true
1030
+ - --scale-down-unneeded-time=10m
1031
+ - --scale-down-utilization-threshold=0.5
1032
+
1033
+ spot-instance-handler.yaml: |
1034
+ apiVersion: apps/v1
1035
+ kind: DaemonSet
1036
+ metadata:
1037
+ name: aws-node-termination-handler
1038
+ spec:
1039
+ selector:
1040
+ matchLabels:
1041
+ app: aws-node-termination-handler
1042
+ template:
1043
+ spec:
1044
+ containers:
1045
+ - name: aws-node-termination-handler
1046
+ image: amazon/aws-node-termination-handler:v1.13.0
1047
+ env:
1048
+ - name: NODE_NAME
1049
+ valueFrom:
1050
+ fieldRef:
1051
+ fieldPath: spec.nodeName
1052
+ - name: ENABLE_SPOT_INTERRUPTION_DRAINING
1053
+ value: "true"
1054
+ - name: ENABLE_SCHEDULED_EVENT_DRAINING
1055
+ value: "true"
1056
+ '''
1057
+ ```
1058
+
1059
+ ### 8. Serverless Cost Optimization
1060
+
1061
+ Optimize serverless workloads:
1062
+
1063
+ **Serverless Optimizer**
1064
+ ```python
1065
+ class ServerlessOptimizer:
1066
+ def optimize_lambda_costs(self):
1067
+ """Optimize Lambda function costs"""
1068
+ lambda_client = boto3.client('lambda')
1069
+ cloudwatch = boto3.client('cloudwatch')
1070
+
1071
+ functions = lambda_client.list_functions()['Functions']
1072
+ optimizations = []
1073
+
1074
+ for function in functions:
1075
+ # Analyze function performance
1076
+ analysis = self._analyze_lambda_function(function)
1077
+
1078
+ # Memory optimization
1079
+ if analysis['memory_optimization_possible']:
1080
+ optimizations.append({
1081
+ 'function_name': function['FunctionName'],
1082
+ 'type': 'memory_optimization',
1083
+ 'current_memory': function['MemorySize'],
1084
+ 'recommended_memory': analysis['optimal_memory'],
1085
+ 'estimated_savings': analysis['memory_savings']
1086
+ })
1087
+
1088
+ # Timeout optimization
1089
+ if analysis['timeout_optimization_possible']:
1090
+ optimizations.append({
1091
+ 'function_name': function['FunctionName'],
1092
+ 'type': 'timeout_optimization',
1093
+ 'current_timeout': function['Timeout'],
1094
+ 'recommended_timeout': analysis['optimal_timeout'],
1095
+ 'risk_reduction': 'prevents unnecessary charges from hanging functions'
1096
+ })
1097
+
1098
+ return optimizations
1099
+
1100
+ def implement_lambda_cost_controls(self):
1101
+ """Implement Lambda cost controls"""
1102
+ return '''
1103
+ import json
1104
+ import boto3
1105
+ from datetime import datetime
1106
+
1107
+ def lambda_cost_controller(event, context):
1108
+ """Lambda function to monitor and control Lambda costs"""
1109
+
1110
+ cloudwatch = boto3.client('cloudwatch')
1111
+ lambda_client = boto3.client('lambda')
1112
+
1113
+ # Get current month costs
1114
+ costs = get_current_month_lambda_costs()
1115
+
1116
+ # Check against budget
1117
+ budget_limit = float(os.environ.get('MONTHLY_BUDGET', '1000'))
1118
+
1119
+ if costs > budget_limit * 0.8: # 80% of budget
1120
+ # Implement cost controls
1121
+ high_cost_functions = identify_high_cost_functions()
1122
+
1123
+ for func in high_cost_functions:
1124
+ # Reduce concurrency
1125
+ lambda_client.put_function_concurrency(
1126
+ FunctionName=func['FunctionName'],
1127
+ ReservedConcurrentExecutions=max(
1128
+ 1,
1129
+ int(func['CurrentConcurrency'] * 0.5)
1130
+ )
1131
+ )
1132
+
1133
+ # Alert
1134
+ send_cost_alert(func, costs, budget_limit)
1135
+
1136
+ # Implement provisioned concurrency optimization
1137
+ optimize_provisioned_concurrency()
1138
+
1139
+ return {
1140
+ 'statusCode': 200,
1141
+ 'body': json.dumps({
1142
+ 'current_costs': costs,
1143
+ 'budget_limit': budget_limit,
1144
+ 'actions_taken': len(high_cost_functions)
1145
+ })
1146
+ }
1147
+
1148
+ def optimize_provisioned_concurrency():
1149
+ """Optimize provisioned concurrency based on usage patterns"""
1150
+ functions = get_functions_with_provisioned_concurrency()
1151
+
1152
+ for func in functions:
1153
+ # Analyze invocation patterns
1154
+ patterns = analyze_invocation_patterns(func['FunctionName'])
1155
+
1156
+ if patterns['predictable']:
1157
+ # Schedule provisioned concurrency
1158
+ create_scheduled_scaling(
1159
+ func['FunctionName'],
1160
+ patterns['peak_hours'],
1161
+ patterns['peak_concurrency']
1162
+ )
1163
+ else:
1164
+ # Consider removing provisioned concurrency
1165
+ if patterns['avg_cold_starts'] < 10: # per minute
1166
+ remove_provisioned_concurrency(func['FunctionName'])
1167
+ '''
1168
+ ```
1169
+
1170
+ ### 9. Cost Allocation and Tagging
1171
+
1172
+ Implement cost allocation strategies:
1173
+
1174
+ **Cost Allocation Manager**
1175
+ ```python
1176
+ class CostAllocationManager:
1177
+ def implement_tagging_strategy(self):
1178
+ """Implement comprehensive tagging strategy"""
1179
+ return {
1180
+ 'required_tags': [
1181
+ {'key': 'Environment', 'values': ['prod', 'staging', 'dev', 'test']},
1182
+ {'key': 'CostCenter', 'values': 'dynamic'},
1183
+ {'key': 'Project', 'values': 'dynamic'},
1184
+ {'key': 'Owner', 'values': 'dynamic'},
1185
+ {'key': 'Department', 'values': 'dynamic'}
1186
+ ],
1187
+ 'automation': self._create_tagging_automation(),
1188
+ 'enforcement': self._create_tag_enforcement(),
1189
+ 'reporting': self._create_cost_allocation_reports()
1190
+ }
1191
+
1192
+ def _create_tagging_automation(self):
1193
+ """Automate resource tagging"""
1194
+ return '''
1195
+ import boto3
1196
+ from datetime import datetime
1197
+
1198
+ class AutoTagger:
1199
+ def __init__(self):
1200
+ self.tag_policies = self.load_tag_policies()
1201
+
1202
+ def auto_tag_resources(self, event, context):
1203
+ """Auto-tag resources on creation"""
1204
+
1205
+ # Parse CloudTrail event
1206
+ detail = event['detail']
1207
+ event_name = detail['eventName']
1208
+
1209
+ # Map events to resource types
1210
+ if event_name.startswith('Create'):
1211
+ resource_arn = self.extract_resource_arn(detail)
1212
+
1213
+ if resource_arn:
1214
+ # Determine tags
1215
+ tags = self.determine_tags(detail)
1216
+
1217
+ # Apply tags
1218
+ self.apply_tags(resource_arn, tags)
1219
+
1220
+ # Log tagging action
1221
+ self.log_tagging(resource_arn, tags)
1222
+
1223
+ def determine_tags(self, event_detail):
1224
+ """Determine tags based on context"""
1225
+ tags = []
1226
+
1227
+ # User-based tags
1228
+ user_identity = event_detail.get('userIdentity', {})
1229
+ if 'userName' in user_identity:
1230
+ tags.append({
1231
+ 'Key': 'Creator',
1232
+ 'Value': user_identity['userName']
1233
+ })
1234
+
1235
+ # Time-based tags
1236
+ tags.append({
1237
+ 'Key': 'CreatedDate',
1238
+ 'Value': datetime.now().strftime('%Y-%m-%d')
1239
+ })
1240
+
1241
+ # Environment inference
1242
+ if 'prod' in event_detail.get('sourceIPAddress', ''):
1243
+ env = 'prod'
1244
+ elif 'dev' in event_detail.get('sourceIPAddress', ''):
1245
+ env = 'dev'
1246
+ else:
1247
+ env = 'unknown'
1248
+
1249
+ tags.append({
1250
+ 'Key': 'Environment',
1251
+ 'Value': env
1252
+ })
1253
+
1254
+ return tags
1255
+
1256
+ def create_cost_allocation_dashboard(self):
1257
+ """Create cost allocation dashboard"""
1258
+ return """
1259
+ SELECT
1260
+ tags.environment,
1261
+ tags.department,
1262
+ tags.project,
1263
+ SUM(costs.amount) as total_cost,
1264
+ SUM(costs.amount) / SUM(SUM(costs.amount)) OVER () * 100 as percentage
1265
+ FROM
1266
+ aws_costs costs
1267
+ JOIN
1268
+ resource_tags tags ON costs.resource_id = tags.resource_id
1269
+ WHERE
1270
+ costs.date >= DATE_TRUNC('month', CURRENT_DATE)
1271
+ GROUP BY
1272
+ tags.environment,
1273
+ tags.department,
1274
+ tags.project
1275
+ ORDER BY
1276
+ total_cost DESC
1277
+ """
1278
+ '''
1279
+ ```
1280
+
1281
+ ### 10. Cost Monitoring and Alerts
1282
+
1283
+ Implement proactive cost monitoring:
1284
+
1285
+ **Cost Monitoring System**
1286
+ ```python
1287
+ class CostMonitoringSystem:
1288
+ def setup_cost_alerts(self):
1289
+ """Setup comprehensive cost alerting"""
1290
+ alerts = []
1291
+
1292
+ # Budget alerts
1293
+ alerts.extend(self._create_budget_alerts())
1294
+
1295
+ # Anomaly detection
1296
+ alerts.extend(self._create_anomaly_alerts())
1297
+
1298
+ # Threshold alerts
1299
+ alerts.extend(self._create_threshold_alerts())
1300
+
1301
+ # Forecast alerts
1302
+ alerts.extend(self._create_forecast_alerts())
1303
+
1304
+ return alerts
1305
+
1306
+ def _create_anomaly_alerts(self):
1307
+ """Create anomaly detection alerts"""
1308
+ ce = boto3.client('ce')
1309
+
1310
+ # Create anomaly monitor
1311
+ monitor = ce.create_anomaly_monitor(
1312
+ AnomalyMonitor={
1313
+ 'MonitorName': 'ServiceCostMonitor',
1314
+ 'MonitorType': 'DIMENSIONAL',
1315
+ 'MonitorDimension': 'SERVICE'
1316
+ }
1317
+ )
1318
+
1319
+ # Create anomaly subscription
1320
+ subscription = ce.create_anomaly_subscription(
1321
+ AnomalySubscription={
1322
+ 'SubscriptionName': 'CostAnomalyAlerts',
1323
+ 'Threshold': 100.0, # Alert on anomalies > $100
1324
+ 'Frequency': 'DAILY',
1325
+ 'MonitorArnList': [monitor['MonitorArn']],
1326
+ 'Subscribers': [
1327
+ {
1328
+ 'Type': 'EMAIL',
1329
+ 'Address': 'team@company.com'
1330
+ },
1331
+ {
1332
+ 'Type': 'SNS',
1333
+ 'Address': 'arn:aws:sns:us-east-1:123456789012:cost-alerts'
1334
+ }
1335
+ ]
1336
+ }
1337
+ )
1338
+
1339
+ return [monitor, subscription]
1340
+
1341
+ def create_cost_dashboard(self):
1342
+ """Create executive cost dashboard"""
1343
+ return '''
1344
+ <!DOCTYPE html>
1345
+ <html>
1346
+ <head>
1347
+ <title>Cloud Cost Dashboard</title>
1348
+ <script src="https://d3js.org/d3.v7.min.js"></script>
1349
+ <style>
1350
+ .metric-card {
1351
+ background: #f5f5f5;
1352
+ padding: 20px;
1353
+ margin: 10px;
1354
+ border-radius: 8px;
1355
+ box-shadow: 0 2px 4px rgba(0,0,0,0.1);
1356
+ }
1357
+ .alert { color: #d32f2f; }
1358
+ .warning { color: #f57c00; }
1359
+ .success { color: #388e3c; }
1360
+ </style>
1361
+ </head>
1362
+ <body>
1363
+ <div id="dashboard">
1364
+ <h1>Cloud Cost Optimization Dashboard</h1>
1365
+
1366
+ <div class="summary-row">
1367
+ <div class="metric-card">
1368
+ <h3>Current Month Spend</h3>
1369
+ <div class="metric">${current_spend}</div>
1370
+ <div class="trend ${spend_trend_class}">${spend_trend}% vs last month</div>
1371
+ </div>
1372
+
1373
+ <div class="metric-card">
1374
+ <h3>Projected Month End</h3>
1375
+ <div class="metric">${projected_spend}</div>
1376
+ <div class="budget-status">Budget: ${budget}</div>
1377
+ </div>
1378
+
1379
+ <div class="metric-card">
1380
+ <h3>Optimization Opportunities</h3>
1381
+ <div class="metric">${total_savings_identified}</div>
1382
+ <div class="count">{opportunity_count} recommendations</div>
1383
+ </div>
1384
+
1385
+ <div class="metric-card">
1386
+ <h3>Realized Savings</h3>
1387
+ <div class="metric">${realized_savings_mtd}</div>
1388
+ <div class="count">YTD: ${realized_savings_ytd}</div>
1389
+ </div>
1390
+ </div>
1391
+
1392
+ <div class="charts-row">
1393
+ <div id="spend-trend-chart"></div>
1394
+ <div id="service-breakdown-chart"></div>
1395
+ <div id="optimization-progress-chart"></div>
1396
+ </div>
1397
+
1398
+ <div class="recommendations-section">
1399
+ <h2>Top Optimization Recommendations</h2>
1400
+ <table id="recommendations-table">
1401
+ <thead>
1402
+ <tr>
1403
+ <th>Priority</th>
1404
+ <th>Service</th>
1405
+ <th>Recommendation</th>
1406
+ <th>Monthly Savings</th>
1407
+ <th>Effort</th>
1408
+ <th>Action</th>
1409
+ </tr>
1410
+ </thead>
1411
+ <tbody>
1412
+ ${recommendation_rows}
1413
+ </tbody>
1414
+ </table>
1415
+ </div>
1416
+ </div>
1417
+
1418
+ <script>
1419
+ // Real-time updates
1420
+ setInterval(updateDashboard, 60000);
1421
+
1422
+ // Initialize charts
1423
+ initializeCharts();
1424
+ </script>
1425
+ </body>
1426
+ </html>
1427
+ '''
1428
+ ```
1429
+
1430
+ ## Output Format
1431
+
1432
+ 1. **Cost Analysis Report**: Comprehensive breakdown of current cloud costs
1433
+ 2. **Optimization Recommendations**: Prioritized list of cost-saving opportunities
1434
+ 3. **Implementation Scripts**: Automated scripts for implementing optimizations
1435
+ 4. **Monitoring Dashboards**: Real-time cost tracking and alerting
1436
+ 5. **ROI Calculations**: Detailed savings projections and payback periods
1437
+ 6. **Risk Assessment**: Analysis of risks associated with each optimization
1438
+ 7. **Implementation Roadmap**: Phased approach to cost optimization
1439
+ 8. **Best Practices Guide**: Long-term cost management strategies
1440
+
1441
+ Focus on delivering immediate cost savings while establishing sustainable cost optimization practices that maintain performance and reliability standards.