@vodailoc/kilo-kit-mcp 1.1.0 → 1.1.1

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 (570) hide show
  1. package/.mcp/kilo-kit.codex-windows.toml +5 -0
  2. package/LICENSE +190 -190
  3. package/QUICKSTART.md +265 -255
  4. package/README.md +290 -266
  5. package/mcp/README.md +29 -5
  6. package/mcp/dist/server.js +1 -1
  7. package/mcp/package.json +1 -2
  8. package/package.json +3 -2
  9. package/skills/README.md +647 -647
  10. package/skills/SKILLS_INDEX.md +139 -139
  11. package/skills/ai-media/ai-multimodal/.env.example +97 -97
  12. package/skills/ai-media/ai-multimodal/SKILL.md +357 -357
  13. package/skills/ai-media/ai-multimodal/references/audio-processing.md +373 -373
  14. package/skills/ai-media/ai-multimodal/references/image-generation.md +558 -558
  15. package/skills/ai-media/ai-multimodal/references/video-analysis.md +502 -502
  16. package/skills/ai-media/ai-multimodal/references/vision-understanding.md +483 -483
  17. package/skills/ai-media/ai-multimodal/scripts/document_converter.py +395 -395
  18. package/skills/ai-media/ai-multimodal/scripts/gemini_batch_process.py +480 -480
  19. package/skills/ai-media/ai-multimodal/scripts/media_optimizer.py +506 -506
  20. package/skills/ai-media/ai-multimodal/scripts/requirements.txt +26 -26
  21. package/skills/ai-media/ai-multimodal/scripts/tests/requirements.txt +20 -20
  22. package/skills/ai-media/ai-multimodal/scripts/tests/test_document_converter.py +299 -299
  23. package/skills/ai-media/ai-multimodal/scripts/tests/test_gemini_batch_process.py +362 -362
  24. package/skills/ai-media/ai-multimodal/scripts/tests/test_media_optimizer.py +373 -373
  25. package/skills/ai-media/media-processing/SKILL.md +358 -358
  26. package/skills/ai-media/media-processing/references/ffmpeg-encoding.md +358 -358
  27. package/skills/ai-media/media-processing/references/ffmpeg-filters.md +503 -503
  28. package/skills/ai-media/media-processing/references/ffmpeg-streaming.md +403 -403
  29. package/skills/ai-media/media-processing/references/format-compatibility.md +375 -375
  30. package/skills/ai-media/media-processing/references/imagemagick-batch.md +612 -612
  31. package/skills/ai-media/media-processing/references/imagemagick-editing.md +623 -623
  32. package/skills/ai-media/media-processing/scripts/batch_resize.py +342 -342
  33. package/skills/ai-media/media-processing/scripts/media_convert.py +311 -311
  34. package/skills/ai-media/media-processing/scripts/requirements.txt +24 -24
  35. package/skills/ai-media/media-processing/scripts/tests/requirements.txt +2 -2
  36. package/skills/ai-media/media-processing/scripts/tests/test_batch_resize.py +372 -372
  37. package/skills/ai-media/media-processing/scripts/tests/test_media_convert.py +259 -259
  38. package/skills/ai-media/media-processing/scripts/tests/test_video_optimize.py +397 -397
  39. package/skills/ai-media/media-processing/scripts/video_optimize.py +414 -414
  40. package/skills/ai-media/screenshot/LICENSE.txt +201 -201
  41. package/skills/ai-media/screenshot/SKILL.md +267 -267
  42. package/skills/ai-media/screenshot/agents/openai.yaml +6 -6
  43. package/skills/ai-media/screenshot/assets/screenshot-small.svg +5 -5
  44. package/skills/ai-media/screenshot/scripts/ensure_macos_permissions.sh +54 -54
  45. package/skills/ai-media/screenshot/scripts/macos_display_info.swift +22 -22
  46. package/skills/ai-media/screenshot/scripts/macos_permissions.swift +40 -40
  47. package/skills/ai-media/screenshot/scripts/macos_window_info.swift +126 -126
  48. package/skills/ai-media/screenshot/scripts/take_screenshot.ps1 +163 -163
  49. package/skills/ai-media/screenshot/scripts/take_screenshot.py +585 -585
  50. package/skills/ai-media/sora/LICENSE.txt +201 -201
  51. package/skills/ai-media/sora/SKILL.md +153 -153
  52. package/skills/ai-media/sora/agents/openai.yaml +6 -6
  53. package/skills/ai-media/sora/assets/sora-small.svg +4 -4
  54. package/skills/ai-media/sora/references/cinematic-shots.md +53 -53
  55. package/skills/ai-media/sora/references/cli.md +248 -248
  56. package/skills/ai-media/sora/references/codex-network.md +28 -28
  57. package/skills/ai-media/sora/references/prompting.md +137 -137
  58. package/skills/ai-media/sora/references/sample-prompts.md +95 -95
  59. package/skills/ai-media/sora/references/social-ads.md +42 -42
  60. package/skills/ai-media/sora/references/troubleshooting.md +58 -58
  61. package/skills/ai-media/sora/references/video-api.md +45 -45
  62. package/skills/ai-media/sora/scripts/sora.py +970 -970
  63. package/skills/design/aesthetic/SKILL.md +121 -121
  64. package/skills/design/aesthetic/assets/design-guideline-template.md +163 -163
  65. package/skills/design/aesthetic/assets/design-story-template.md +135 -135
  66. package/skills/design/aesthetic/references/design-principles.md +62 -62
  67. package/skills/design/aesthetic/references/design-resources.md +75 -75
  68. package/skills/design/aesthetic/references/micro-interactions.md +53 -53
  69. package/skills/design/aesthetic/references/storytelling-design.md +50 -50
  70. package/skills/design/figma/LICENSE.txt +202 -202
  71. package/skills/design/figma/SKILL.md +42 -42
  72. package/skills/design/figma/agents/openai.yaml +14 -14
  73. package/skills/design/figma/assets/figma-small.svg +3 -3
  74. package/skills/design/figma/assets/icon.svg +28 -28
  75. package/skills/design/figma/references/figma-mcp-config.md +35 -35
  76. package/skills/design/figma/references/figma-tools-and-prompts.md +34 -34
  77. package/skills/design/figma-implement-design/LICENSE.txt +202 -202
  78. package/skills/design/figma-implement-design/SKILL.md +264 -264
  79. package/skills/design/figma-implement-design/agents/openai.yaml +14 -14
  80. package/skills/design/figma-implement-design/assets/figma-small.svg +3 -3
  81. package/skills/design/figma-implement-design/assets/icon.svg +28 -28
  82. package/skills/design/frontend-design/SKILL.md +41 -41
  83. package/skills/design/frontend-design/references/animejs.md +395 -395
  84. package/skills/design/ui-styling/LICENSE.txt +201 -201
  85. package/skills/design/ui-styling/SKILL.md +321 -321
  86. package/skills/design/ui-styling/canvas-fonts/ArsenalSC-OFL.txt +93 -93
  87. package/skills/design/ui-styling/canvas-fonts/BigShoulders-OFL.txt +93 -93
  88. package/skills/design/ui-styling/canvas-fonts/Boldonse-OFL.txt +93 -93
  89. package/skills/design/ui-styling/canvas-fonts/BricolageGrotesque-OFL.txt +93 -93
  90. package/skills/design/ui-styling/canvas-fonts/CrimsonPro-OFL.txt +93 -93
  91. package/skills/design/ui-styling/canvas-fonts/DMMono-OFL.txt +93 -93
  92. package/skills/design/ui-styling/canvas-fonts/EricaOne-OFL.txt +94 -94
  93. package/skills/design/ui-styling/canvas-fonts/GeistMono-OFL.txt +93 -93
  94. package/skills/design/ui-styling/canvas-fonts/Gloock-OFL.txt +93 -93
  95. package/skills/design/ui-styling/canvas-fonts/IBMPlexMono-OFL.txt +93 -93
  96. package/skills/design/ui-styling/canvas-fonts/InstrumentSans-OFL.txt +93 -93
  97. package/skills/design/ui-styling/canvas-fonts/Italiana-OFL.txt +93 -93
  98. package/skills/design/ui-styling/canvas-fonts/JetBrainsMono-OFL.txt +93 -93
  99. package/skills/design/ui-styling/canvas-fonts/Jura-OFL.txt +93 -93
  100. package/skills/design/ui-styling/canvas-fonts/LibreBaskerville-OFL.txt +93 -93
  101. package/skills/design/ui-styling/canvas-fonts/Lora-OFL.txt +93 -93
  102. package/skills/design/ui-styling/canvas-fonts/NationalPark-OFL.txt +93 -93
  103. package/skills/design/ui-styling/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -93
  104. package/skills/design/ui-styling/canvas-fonts/Outfit-OFL.txt +93 -93
  105. package/skills/design/ui-styling/canvas-fonts/PixelifySans-OFL.txt +93 -93
  106. package/skills/design/ui-styling/canvas-fonts/PoiretOne-OFL.txt +93 -93
  107. package/skills/design/ui-styling/canvas-fonts/RedHatMono-OFL.txt +93 -93
  108. package/skills/design/ui-styling/canvas-fonts/Silkscreen-OFL.txt +93 -93
  109. package/skills/design/ui-styling/canvas-fonts/SmoochSans-OFL.txt +93 -93
  110. package/skills/design/ui-styling/canvas-fonts/Tektur-OFL.txt +93 -93
  111. package/skills/design/ui-styling/canvas-fonts/WorkSans-OFL.txt +93 -93
  112. package/skills/design/ui-styling/canvas-fonts/YoungSerif-OFL.txt +93 -93
  113. package/skills/design/ui-styling/references/canvas-design-system.md +320 -320
  114. package/skills/design/ui-styling/references/shadcn-accessibility.md +471 -471
  115. package/skills/design/ui-styling/references/shadcn-components.md +424 -424
  116. package/skills/design/ui-styling/references/shadcn-theming.md +373 -373
  117. package/skills/design/ui-styling/references/tailwind-customization.md +483 -483
  118. package/skills/design/ui-styling/references/tailwind-responsive.md +382 -382
  119. package/skills/design/ui-styling/references/tailwind-utilities.md +455 -455
  120. package/skills/design/ui-styling/scripts/requirements.txt +17 -17
  121. package/skills/design/ui-styling/scripts/shadcn_add.py +292 -292
  122. package/skills/design/ui-styling/scripts/tailwind_config_gen.py +456 -456
  123. package/skills/design/ui-styling/scripts/tests/requirements.txt +3 -3
  124. package/skills/design/ui-styling/scripts/tests/test_shadcn_add.py +266 -266
  125. package/skills/design/ui-styling/scripts/tests/test_tailwind_config_gen.py +336 -336
  126. package/skills/engineering/aspnet-core/LICENSE.txt +201 -201
  127. package/skills/engineering/aspnet-core/SKILL.md +61 -61
  128. package/skills/engineering/aspnet-core/agents/openai.yaml +5 -5
  129. package/skills/engineering/aspnet-core/references/_sections.md +40 -40
  130. package/skills/engineering/aspnet-core/references/apis-minimal-and-controllers.md +81 -81
  131. package/skills/engineering/aspnet-core/references/data-state-and-services.md +69 -69
  132. package/skills/engineering/aspnet-core/references/program-and-pipeline.md +103 -103
  133. package/skills/engineering/aspnet-core/references/realtime-grpc-and-background-work.md +58 -58
  134. package/skills/engineering/aspnet-core/references/security-and-identity.md +75 -75
  135. package/skills/engineering/aspnet-core/references/source-map.md +43 -43
  136. package/skills/engineering/aspnet-core/references/stack-selection.md +63 -63
  137. package/skills/engineering/aspnet-core/references/testing-performance-and-operations.md +92 -92
  138. package/skills/engineering/aspnet-core/references/ui-blazor.md +53 -53
  139. package/skills/engineering/aspnet-core/references/ui-mvc.md +56 -56
  140. package/skills/engineering/aspnet-core/references/ui-razor-pages.md +55 -55
  141. package/skills/engineering/aspnet-core/references/versioning-and-upgrades.md +51 -51
  142. package/skills/engineering/backend-development/SKILL.md +95 -95
  143. package/skills/engineering/backend-development/references/backend-api-design.md +495 -495
  144. package/skills/engineering/backend-development/references/backend-architecture.md +454 -454
  145. package/skills/engineering/backend-development/references/backend-authentication.md +338 -338
  146. package/skills/engineering/backend-development/references/backend-code-quality.md +659 -659
  147. package/skills/engineering/backend-development/references/backend-debugging.md +904 -904
  148. package/skills/engineering/backend-development/references/backend-devops.md +494 -494
  149. package/skills/engineering/backend-development/references/backend-mindset.md +387 -387
  150. package/skills/engineering/backend-development/references/backend-performance.md +397 -397
  151. package/skills/engineering/backend-development/references/backend-security.md +290 -290
  152. package/skills/engineering/backend-development/references/backend-technologies.md +256 -256
  153. package/skills/engineering/backend-development/references/backend-testing.md +429 -429
  154. package/skills/engineering/better-auth/SKILL.md +204 -204
  155. package/skills/engineering/better-auth/references/advanced-features.md +553 -553
  156. package/skills/engineering/better-auth/references/database-integration.md +577 -577
  157. package/skills/engineering/better-auth/references/email-password-auth.md +416 -416
  158. package/skills/engineering/better-auth/references/oauth-providers.md +430 -430
  159. package/skills/engineering/better-auth/scripts/better_auth_init.py +521 -521
  160. package/skills/engineering/better-auth/scripts/requirements.txt +15 -15
  161. package/skills/engineering/better-auth/scripts/tests/test_better_auth_init.py +421 -421
  162. package/skills/engineering/code-review/SKILL.md +140 -140
  163. package/skills/engineering/code-review/references/code-review-reception.md +208 -208
  164. package/skills/engineering/code-review/references/requesting-code-review.md +104 -104
  165. package/skills/engineering/code-review/references/verification-before-completion.md +138 -138
  166. package/skills/engineering/context-engineering/SKILL.md +86 -86
  167. package/skills/engineering/context-engineering/references/context-compression.md +84 -84
  168. package/skills/engineering/context-engineering/references/context-degradation.md +93 -93
  169. package/skills/engineering/context-engineering/references/context-fundamentals.md +75 -75
  170. package/skills/engineering/context-engineering/references/context-optimization.md +82 -82
  171. package/skills/engineering/context-engineering/references/evaluation.md +89 -89
  172. package/skills/engineering/context-engineering/references/memory-systems.md +88 -88
  173. package/skills/engineering/context-engineering/references/multi-agent-patterns.md +90 -90
  174. package/skills/engineering/context-engineering/references/project-development.md +97 -97
  175. package/skills/engineering/context-engineering/references/tool-design.md +86 -86
  176. package/skills/engineering/context-engineering/scripts/compression_evaluator.py +329 -329
  177. package/skills/engineering/context-engineering/scripts/context_analyzer.py +294 -294
  178. package/skills/engineering/databases/SKILL.md +232 -232
  179. package/skills/engineering/databases/references/mongodb-aggregation.md +447 -447
  180. package/skills/engineering/databases/references/mongodb-atlas.md +465 -465
  181. package/skills/engineering/databases/references/mongodb-crud.md +408 -408
  182. package/skills/engineering/databases/references/mongodb-indexing.md +442 -442
  183. package/skills/engineering/databases/references/postgresql-administration.md +594 -594
  184. package/skills/engineering/databases/references/postgresql-performance.md +527 -527
  185. package/skills/engineering/databases/references/postgresql-psql-cli.md +467 -467
  186. package/skills/engineering/databases/references/postgresql-queries.md +475 -475
  187. package/skills/engineering/databases/scripts/db_backup.py +502 -502
  188. package/skills/engineering/databases/scripts/db_migrate.py +414 -414
  189. package/skills/engineering/databases/scripts/db_performance_check.py +444 -444
  190. package/skills/engineering/databases/scripts/requirements.txt +20 -20
  191. package/skills/engineering/databases/scripts/tests/requirements.txt +4 -4
  192. package/skills/engineering/databases/scripts/tests/test_db_backup.py +340 -340
  193. package/skills/engineering/databases/scripts/tests/test_db_migrate.py +277 -277
  194. package/skills/engineering/databases/scripts/tests/test_db_performance_check.py +370 -370
  195. package/skills/engineering/diagnose/SKILL.md +117 -117
  196. package/skills/engineering/diagnose/scripts/hitl-loop.template.sh +41 -41
  197. package/skills/engineering/docs-seeker/SKILL.md +207 -207
  198. package/skills/engineering/docs-seeker/WORKFLOWS.md +505 -505
  199. package/skills/engineering/docs-seeker/references/best-practices.md +632 -632
  200. package/skills/engineering/docs-seeker/references/documentation-sources.md +461 -461
  201. package/skills/engineering/docs-seeker/references/error-handling.md +621 -621
  202. package/skills/engineering/docs-seeker/references/limitations.md +821 -821
  203. package/skills/engineering/docs-seeker/references/performance.md +574 -574
  204. package/skills/engineering/docs-seeker/references/tool-selection.md +262 -262
  205. package/skills/engineering/frontend-development/SKILL.md +398 -398
  206. package/skills/engineering/frontend-development/resources/common-patterns.md +330 -330
  207. package/skills/engineering/frontend-development/resources/complete-examples.md +871 -871
  208. package/skills/engineering/frontend-development/resources/component-patterns.md +501 -501
  209. package/skills/engineering/frontend-development/resources/data-fetching.md +766 -766
  210. package/skills/engineering/frontend-development/resources/file-organization.md +501 -501
  211. package/skills/engineering/frontend-development/resources/loading-and-error-states.md +500 -500
  212. package/skills/engineering/frontend-development/resources/performance.md +405 -405
  213. package/skills/engineering/frontend-development/resources/routing-guide.md +363 -363
  214. package/skills/engineering/frontend-development/resources/styling-guide.md +427 -427
  215. package/skills/engineering/frontend-development/resources/typescript-standards.md +417 -417
  216. package/skills/engineering/improve-codebase-architecture/DEEPENING.md +37 -37
  217. package/skills/engineering/improve-codebase-architecture/INTERFACE-DESIGN.md +44 -44
  218. package/skills/engineering/improve-codebase-architecture/LANGUAGE.md +53 -53
  219. package/skills/engineering/improve-codebase-architecture/SKILL.md +71 -71
  220. package/skills/engineering/openai-docs/LICENSE.txt +201 -201
  221. package/skills/engineering/openai-docs/SKILL.md +69 -69
  222. package/skills/engineering/openai-docs/agents/openai.yaml +14 -14
  223. package/skills/engineering/openai-docs/assets/openai-small.svg +3 -3
  224. package/skills/engineering/openai-docs/references/gpt-5p4-prompting-guide.md +433 -433
  225. package/skills/engineering/openai-docs/references/latest-model.md +35 -35
  226. package/skills/engineering/openai-docs/references/upgrading-to-gpt-5p4.md +164 -164
  227. package/skills/engineering/playwright/LICENSE.txt +201 -201
  228. package/skills/engineering/playwright/NOTICE.txt +14 -14
  229. package/skills/engineering/playwright/SKILL.md +147 -147
  230. package/skills/engineering/playwright/agents/openai.yaml +6 -6
  231. package/skills/engineering/playwright/assets/playwright-small.svg +3 -3
  232. package/skills/engineering/playwright/references/cli.md +116 -116
  233. package/skills/engineering/playwright/references/workflows.md +95 -95
  234. package/skills/engineering/playwright/scripts/playwright_cli.sh +25 -25
  235. package/skills/engineering/playwright-interactive/LICENSE.txt +201 -201
  236. package/skills/engineering/playwright-interactive/NOTICE.txt +13 -13
  237. package/skills/engineering/playwright-interactive/SKILL.md +689 -689
  238. package/skills/engineering/playwright-interactive/agents/openai.yaml +6 -6
  239. package/skills/engineering/playwright-interactive/assets/playwright-small.svg +3 -3
  240. package/skills/engineering/render-deploy/LICENSE.txt +201 -201
  241. package/skills/engineering/render-deploy/SKILL.md +479 -479
  242. package/skills/engineering/render-deploy/agents/openai.yaml +14 -14
  243. package/skills/engineering/render-deploy/assets/docker.yaml +62 -62
  244. package/skills/engineering/render-deploy/assets/go-api.yaml +35 -35
  245. package/skills/engineering/render-deploy/assets/nextjs-postgres.yaml +35 -35
  246. package/skills/engineering/render-deploy/assets/node-express.yaml +25 -25
  247. package/skills/engineering/render-deploy/assets/python-django.yaml +89 -89
  248. package/skills/engineering/render-deploy/assets/render-small.svg +3 -3
  249. package/skills/engineering/render-deploy/assets/static-site.yaml +54 -54
  250. package/skills/engineering/render-deploy/references/blueprint-spec.md +718 -718
  251. package/skills/engineering/render-deploy/references/codebase-analysis.md +49 -49
  252. package/skills/engineering/render-deploy/references/configuration-guide.md +603 -603
  253. package/skills/engineering/render-deploy/references/deployment-details.md +224 -224
  254. package/skills/engineering/render-deploy/references/direct-creation.md +113 -113
  255. package/skills/engineering/render-deploy/references/error-patterns.md +13 -13
  256. package/skills/engineering/render-deploy/references/post-deploy-checks.md +36 -36
  257. package/skills/engineering/render-deploy/references/runtimes.md +473 -473
  258. package/skills/engineering/render-deploy/references/service-types.md +450 -450
  259. package/skills/engineering/render-deploy/references/troubleshooting-basics.md +36 -36
  260. package/skills/engineering/repomix/SKILL.md +215 -215
  261. package/skills/engineering/repomix/references/configuration.md +211 -211
  262. package/skills/engineering/repomix/references/usage-patterns.md +232 -232
  263. package/skills/engineering/repomix/scripts/README.md +179 -179
  264. package/skills/engineering/repomix/scripts/repomix_batch.py +455 -455
  265. package/skills/engineering/repomix/scripts/repos.example.json +15 -15
  266. package/skills/engineering/repomix/scripts/requirements.txt +15 -15
  267. package/skills/engineering/repomix/scripts/tests/test_repomix_batch.py +531 -531
  268. package/skills/engineering/setup-matt-pocock-skills/SKILL.md +121 -121
  269. package/skills/engineering/setup-matt-pocock-skills/domain.md +51 -51
  270. package/skills/engineering/setup-matt-pocock-skills/issue-tracker-github.md +22 -22
  271. package/skills/engineering/setup-matt-pocock-skills/issue-tracker-gitlab.md +23 -23
  272. package/skills/engineering/setup-matt-pocock-skills/issue-tracker-local.md +19 -19
  273. package/skills/engineering/setup-matt-pocock-skills/triage-labels.md +15 -15
  274. package/skills/engineering/shopify/README.md +66 -66
  275. package/skills/engineering/shopify/SKILL.md +319 -319
  276. package/skills/engineering/shopify/references/app-development.md +470 -470
  277. package/skills/engineering/shopify/references/extensions.md +493 -493
  278. package/skills/engineering/shopify/references/themes.md +498 -498
  279. package/skills/engineering/shopify/scripts/requirements.txt +19 -19
  280. package/skills/engineering/shopify/scripts/shopify_init.py +423 -423
  281. package/skills/engineering/shopify/scripts/tests/test_shopify_init.py +385 -385
  282. package/skills/engineering/tdd/SKILL.md +109 -109
  283. package/skills/engineering/tdd/deep-modules.md +33 -33
  284. package/skills/engineering/tdd/interface-design.md +31 -31
  285. package/skills/engineering/tdd/mocking.md +59 -59
  286. package/skills/engineering/tdd/refactoring.md +10 -10
  287. package/skills/engineering/tdd/tests.md +61 -61
  288. package/skills/engineering/to-issues/SKILL.md +81 -81
  289. package/skills/engineering/to-prd/SKILL.md +74 -74
  290. package/skills/engineering/triage/AGENT-BRIEF.md +168 -168
  291. package/skills/engineering/triage/OUT-OF-SCOPE.md +101 -101
  292. package/skills/engineering/triage/SKILL.md +103 -103
  293. package/skills/engineering/web-frameworks/SKILL.md +324 -324
  294. package/skills/engineering/web-frameworks/references/nextjs-app-router.md +465 -465
  295. package/skills/engineering/web-frameworks/references/nextjs-data-fetching.md +459 -459
  296. package/skills/engineering/web-frameworks/references/nextjs-optimization.md +511 -511
  297. package/skills/engineering/web-frameworks/references/nextjs-server-components.md +495 -495
  298. package/skills/engineering/web-frameworks/references/remix-icon-integration.md +603 -603
  299. package/skills/engineering/web-frameworks/references/turborepo-caching.md +551 -551
  300. package/skills/engineering/web-frameworks/references/turborepo-pipelines.md +517 -517
  301. package/skills/engineering/web-frameworks/references/turborepo-setup.md +542 -542
  302. package/skills/engineering/web-frameworks/scripts/nextjs_init.py +547 -547
  303. package/skills/engineering/web-frameworks/scripts/requirements.txt +16 -16
  304. package/skills/engineering/web-frameworks/scripts/tests/requirements.txt +3 -3
  305. package/skills/engineering/web-frameworks/scripts/tests/test_nextjs_init.py +319 -319
  306. package/skills/engineering/web-frameworks/scripts/tests/test_turborepo_migrate.py +374 -374
  307. package/skills/engineering/web-frameworks/scripts/turborepo_migrate.py +394 -394
  308. package/skills/engineering/write-a-skill/SKILL.md +117 -117
  309. package/skills/kilo-kit/SKILL.md +346 -346
  310. package/skills/kilo-kit/_template/SKILL.md +185 -185
  311. package/skills/kilo-kit/debugging/root-cause/SKILL.md +360 -360
  312. package/skills/kilo-kit/debugging/systematic/SKILL.md +339 -339
  313. package/skills/kilo-kit/debugging/verification/SKILL.md +424 -424
  314. package/skills/kilo-kit/development/backend/SKILL.md +540 -540
  315. package/skills/kilo-kit/development/security/SKILL.md +529 -529
  316. package/skills/kilo-kit/quality/code-review/SKILL.md +297 -297
  317. package/skills/kilo-kit/quality/testing/SKILL.md +540 -540
  318. package/skills/kilo-kit/references/output-formats.md +204 -204
  319. package/skills/kilo-kit/references/patterns.md +156 -156
  320. package/skills/kilo-kit/references/performance-benchmarks.md +90 -90
  321. package/skills/operations/chrome-devtools/SKILL.md +392 -392
  322. package/skills/operations/chrome-devtools/references/cdp-domains.md +694 -694
  323. package/skills/operations/chrome-devtools/references/performance-guide.md +940 -940
  324. package/skills/operations/chrome-devtools/references/puppeteer-reference.md +953 -953
  325. package/skills/operations/chrome-devtools/scripts/PERSISTENT-BROWSER.md +107 -107
  326. package/skills/operations/chrome-devtools/scripts/README.md +213 -213
  327. package/skills/operations/chrome-devtools/scripts/__tests__/selector.test.js +210 -210
  328. package/skills/operations/chrome-devtools/scripts/click.js +79 -79
  329. package/skills/operations/chrome-devtools/scripts/close-persistent.js +36 -36
  330. package/skills/operations/chrome-devtools/scripts/console.js +75 -75
  331. package/skills/operations/chrome-devtools/scripts/evaluate.js +49 -49
  332. package/skills/operations/chrome-devtools/scripts/fill.js +72 -72
  333. package/skills/operations/chrome-devtools/scripts/install-deps.sh +181 -181
  334. package/skills/operations/chrome-devtools/scripts/install.sh +83 -83
  335. package/skills/operations/chrome-devtools/scripts/launch-persistent.js +71 -71
  336. package/skills/operations/chrome-devtools/scripts/lib/browser.js +144 -144
  337. package/skills/operations/chrome-devtools/scripts/lib/selector.js +178 -178
  338. package/skills/operations/chrome-devtools/scripts/navigate.js +46 -46
  339. package/skills/operations/chrome-devtools/scripts/network.js +102 -102
  340. package/skills/operations/chrome-devtools/scripts/package-lock.json +1206 -1206
  341. package/skills/operations/chrome-devtools/scripts/package.json +15 -15
  342. package/skills/operations/chrome-devtools/scripts/performance.js +145 -145
  343. package/skills/operations/chrome-devtools/scripts/screenshot.js +180 -180
  344. package/skills/operations/chrome-devtools/scripts/snapshot.js +131 -131
  345. package/skills/operations/devops/.env.example +76 -76
  346. package/skills/operations/devops/SKILL.md +285 -285
  347. package/skills/operations/devops/references/browser-rendering.md +305 -305
  348. package/skills/operations/devops/references/cloudflare-d1-kv.md +123 -123
  349. package/skills/operations/devops/references/cloudflare-platform.md +271 -271
  350. package/skills/operations/devops/references/cloudflare-r2-storage.md +280 -280
  351. package/skills/operations/devops/references/cloudflare-workers-advanced.md +312 -312
  352. package/skills/operations/devops/references/cloudflare-workers-apis.md +309 -309
  353. package/skills/operations/devops/references/cloudflare-workers-basics.md +418 -418
  354. package/skills/operations/devops/references/docker-basics.md +297 -297
  355. package/skills/operations/devops/references/docker-compose.md +292 -292
  356. package/skills/operations/devops/references/gcloud-platform.md +297 -297
  357. package/skills/operations/devops/references/gcloud-services.md +304 -304
  358. package/skills/operations/devops/scripts/cloudflare_deploy.py +269 -269
  359. package/skills/operations/devops/scripts/docker_optimize.py +320 -320
  360. package/skills/operations/devops/scripts/requirements.txt +20 -20
  361. package/skills/operations/devops/scripts/tests/requirements.txt +3 -3
  362. package/skills/operations/devops/scripts/tests/test_cloudflare_deploy.py +285 -285
  363. package/skills/operations/devops/scripts/tests/test_docker_optimize.py +436 -436
  364. package/skills/operations/mcp-builder/LICENSE.txt +201 -201
  365. package/skills/operations/mcp-builder/SKILL.md +328 -328
  366. package/skills/operations/mcp-builder/reference/evaluation.md +601 -601
  367. package/skills/operations/mcp-builder/reference/mcp_best_practices.md +915 -915
  368. package/skills/operations/mcp-builder/reference/node_mcp_server.md +915 -915
  369. package/skills/operations/mcp-builder/reference/python_mcp_server.md +751 -751
  370. package/skills/operations/mcp-builder/scripts/connections.py +151 -151
  371. package/skills/operations/mcp-builder/scripts/evaluation.py +373 -373
  372. package/skills/operations/mcp-builder/scripts/example_evaluation.xml +22 -22
  373. package/skills/operations/mcp-builder/scripts/requirements.txt +2 -2
  374. package/skills/operations/mcp-management/README.md +219 -219
  375. package/skills/operations/mcp-management/SKILL.md +175 -175
  376. package/skills/operations/mcp-management/assets/tools.json +3043 -3043
  377. package/skills/operations/mcp-management/references/configuration.md +114 -114
  378. package/skills/operations/mcp-management/references/gemini-cli-integration.md +201 -201
  379. package/skills/operations/mcp-management/references/mcp-protocol.md +116 -116
  380. package/skills/operations/mcp-management/scripts/.env.example +10 -10
  381. package/skills/operations/mcp-management/scripts/cli.ts +155 -155
  382. package/skills/operations/mcp-management/scripts/dist/analyze-tools.js +70 -70
  383. package/skills/operations/mcp-management/scripts/dist/cli.js +131 -131
  384. package/skills/operations/mcp-management/scripts/dist/mcp-client.js +115 -115
  385. package/skills/operations/mcp-management/scripts/mcp-client.ts +163 -163
  386. package/skills/operations/mcp-management/scripts/package.json +18 -18
  387. package/skills/operations/mcp-management/scripts/tsconfig.json +15 -15
  388. package/skills/problem-solving/collision-zone-thinking/SKILL.md +62 -62
  389. package/skills/problem-solving/defense-in-depth/SKILL.md +130 -130
  390. package/skills/problem-solving/inversion-exercise/SKILL.md +58 -58
  391. package/skills/problem-solving/meta-pattern-recognition/SKILL.md +54 -54
  392. package/skills/problem-solving/root-cause-tracing/SKILL.md +177 -177
  393. package/skills/problem-solving/root-cause-tracing/find-polluter.sh +63 -63
  394. package/skills/problem-solving/scale-game/SKILL.md +63 -63
  395. package/skills/problem-solving/sequential-thinking/README.md +118 -118
  396. package/skills/problem-solving/sequential-thinking/SKILL.md +93 -93
  397. package/skills/problem-solving/sequential-thinking/references/advanced.md +122 -122
  398. package/skills/problem-solving/sequential-thinking/references/examples.md +274 -274
  399. package/skills/problem-solving/simplification-cascades/SKILL.md +76 -76
  400. package/skills/problem-solving/when-stuck/SKILL.md +88 -88
  401. package/skills/productivity/caveman/SKILL.md +49 -49
  402. package/skills/productivity/grill-me/SKILL.md +10 -10
  403. package/skills/productivity/grill-with-docs/ADR-FORMAT.md +47 -47
  404. package/skills/productivity/grill-with-docs/CONTEXT-FORMAT.md +77 -77
  405. package/skills/productivity/grill-with-docs/SKILL.md +88 -88
  406. package/skills/productivity/writing-skills/graphviz-conventions.dot +171 -171
  407. package/skills/productivity/zoom-out/SKILL.md +7 -7
  408. package/skills/writing-docs/doc/LICENSE.txt +201 -201
  409. package/skills/writing-docs/doc/SKILL.md +80 -80
  410. package/skills/writing-docs/doc/agents/openai.yaml +6 -6
  411. package/skills/writing-docs/doc/assets/doc-small.svg +3 -3
  412. package/skills/writing-docs/doc/scripts/render_docx.py +296 -296
  413. package/skills/writing-docs/docx/LICENSE.txt +30 -30
  414. package/skills/writing-docs/docx/SKILL.md +196 -196
  415. package/skills/writing-docs/docx/docx-js.md +349 -349
  416. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -1499
  417. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -146
  418. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -1085
  419. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -11
  420. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -3081
  421. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -23
  422. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -185
  423. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -287
  424. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -1676
  425. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -28
  426. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -144
  427. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -174
  428. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -25
  429. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -18
  430. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -59
  431. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -56
  432. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -195
  433. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -582
  434. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -25
  435. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -4439
  436. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -570
  437. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -509
  438. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -12
  439. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -108
  440. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -96
  441. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -3646
  442. package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -116
  443. package/skills/writing-docs/docx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -42
  444. package/skills/writing-docs/docx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -50
  445. package/skills/writing-docs/docx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -49
  446. package/skills/writing-docs/docx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -33
  447. package/skills/writing-docs/docx/ooxml/schemas/mce/mc.xsd +75 -75
  448. package/skills/writing-docs/docx/ooxml/schemas/microsoft/wml-2010.xsd +560 -560
  449. package/skills/writing-docs/docx/ooxml/schemas/microsoft/wml-2012.xsd +67 -67
  450. package/skills/writing-docs/docx/ooxml/schemas/microsoft/wml-2018.xsd +14 -14
  451. package/skills/writing-docs/docx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -20
  452. package/skills/writing-docs/docx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -13
  453. package/skills/writing-docs/docx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -4
  454. package/skills/writing-docs/docx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -8
  455. package/skills/writing-docs/docx/ooxml/scripts/pack.py +159 -159
  456. package/skills/writing-docs/docx/ooxml/scripts/unpack.py +29 -29
  457. package/skills/writing-docs/docx/ooxml/scripts/validate.py +69 -69
  458. package/skills/writing-docs/docx/ooxml/scripts/validation/__init__.py +15 -15
  459. package/skills/writing-docs/docx/ooxml/scripts/validation/base.py +951 -951
  460. package/skills/writing-docs/docx/ooxml/scripts/validation/docx.py +274 -274
  461. package/skills/writing-docs/docx/ooxml/scripts/validation/pptx.py +315 -315
  462. package/skills/writing-docs/docx/ooxml/scripts/validation/redlining.py +279 -279
  463. package/skills/writing-docs/docx/ooxml.md +609 -609
  464. package/skills/writing-docs/docx/scripts/__init__.py +1 -1
  465. package/skills/writing-docs/docx/scripts/document.py +1276 -1276
  466. package/skills/writing-docs/docx/scripts/templates/comments.xml +2 -2
  467. package/skills/writing-docs/docx/scripts/templates/commentsExtended.xml +2 -2
  468. package/skills/writing-docs/docx/scripts/templates/commentsExtensible.xml +2 -2
  469. package/skills/writing-docs/docx/scripts/templates/commentsIds.xml +2 -2
  470. package/skills/writing-docs/docx/scripts/templates/people.xml +2 -2
  471. package/skills/writing-docs/docx/scripts/utilities.py +374 -374
  472. package/skills/writing-docs/mermaidjs-v11/SKILL.md +115 -115
  473. package/skills/writing-docs/mermaidjs-v11/references/cli-usage.md +228 -228
  474. package/skills/writing-docs/mermaidjs-v11/references/configuration.md +232 -232
  475. package/skills/writing-docs/mermaidjs-v11/references/diagram-types.md +315 -315
  476. package/skills/writing-docs/mermaidjs-v11/references/examples.md +344 -344
  477. package/skills/writing-docs/mermaidjs-v11/references/integration.md +310 -310
  478. package/skills/writing-docs/pdf/LICENSE.txt +30 -30
  479. package/skills/writing-docs/pdf/SKILL.md +294 -294
  480. package/skills/writing-docs/pdf/forms.md +205 -205
  481. package/skills/writing-docs/pdf/reference.md +611 -611
  482. package/skills/writing-docs/pdf/scripts/check_bounding_boxes.py +70 -70
  483. package/skills/writing-docs/pdf/scripts/check_bounding_boxes_test.py +226 -226
  484. package/skills/writing-docs/pdf/scripts/check_fillable_fields.py +12 -12
  485. package/skills/writing-docs/pdf/scripts/convert_pdf_to_images.py +35 -35
  486. package/skills/writing-docs/pdf/scripts/create_validation_image.py +41 -41
  487. package/skills/writing-docs/pdf/scripts/extract_form_field_info.py +152 -152
  488. package/skills/writing-docs/pdf/scripts/fill_fillable_fields.py +114 -114
  489. package/skills/writing-docs/pdf/scripts/fill_pdf_form_with_annotations.py +107 -107
  490. package/skills/writing-docs/pptx/LICENSE.txt +30 -30
  491. package/skills/writing-docs/pptx/SKILL.md +483 -483
  492. package/skills/writing-docs/pptx/html2pptx.md +624 -624
  493. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -1499
  494. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -146
  495. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -1085
  496. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -11
  497. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -3081
  498. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -23
  499. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -185
  500. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -287
  501. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -1676
  502. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -28
  503. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -144
  504. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -174
  505. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -25
  506. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -18
  507. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -59
  508. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -56
  509. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -195
  510. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -582
  511. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -25
  512. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -4439
  513. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -570
  514. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -509
  515. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -12
  516. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -108
  517. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -96
  518. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -3646
  519. package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -116
  520. package/skills/writing-docs/pptx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -42
  521. package/skills/writing-docs/pptx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -50
  522. package/skills/writing-docs/pptx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -49
  523. package/skills/writing-docs/pptx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -33
  524. package/skills/writing-docs/pptx/ooxml/schemas/mce/mc.xsd +75 -75
  525. package/skills/writing-docs/pptx/ooxml/schemas/microsoft/wml-2010.xsd +560 -560
  526. package/skills/writing-docs/pptx/ooxml/schemas/microsoft/wml-2012.xsd +67 -67
  527. package/skills/writing-docs/pptx/ooxml/schemas/microsoft/wml-2018.xsd +14 -14
  528. package/skills/writing-docs/pptx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -20
  529. package/skills/writing-docs/pptx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -13
  530. package/skills/writing-docs/pptx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -4
  531. package/skills/writing-docs/pptx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -8
  532. package/skills/writing-docs/pptx/ooxml/scripts/pack.py +159 -159
  533. package/skills/writing-docs/pptx/ooxml/scripts/unpack.py +29 -29
  534. package/skills/writing-docs/pptx/ooxml/scripts/validate.py +69 -69
  535. package/skills/writing-docs/pptx/ooxml/scripts/validation/__init__.py +15 -15
  536. package/skills/writing-docs/pptx/ooxml/scripts/validation/base.py +951 -951
  537. package/skills/writing-docs/pptx/ooxml/scripts/validation/docx.py +274 -274
  538. package/skills/writing-docs/pptx/ooxml/scripts/validation/pptx.py +315 -315
  539. package/skills/writing-docs/pptx/ooxml/scripts/validation/redlining.py +279 -279
  540. package/skills/writing-docs/pptx/ooxml.md +426 -426
  541. package/skills/writing-docs/pptx/scripts/html2pptx.js +978 -978
  542. package/skills/writing-docs/pptx/scripts/inventory.py +1020 -1020
  543. package/skills/writing-docs/pptx/scripts/rearrange.py +231 -231
  544. package/skills/writing-docs/pptx/scripts/replace.py +385 -385
  545. package/skills/writing-docs/pptx/scripts/thumbnail.py +450 -450
  546. package/skills/writing-docs/slides/LICENSE.txt +201 -201
  547. package/skills/writing-docs/slides/SKILL.md +71 -71
  548. package/skills/writing-docs/slides/agents/openai.yaml +6 -6
  549. package/skills/writing-docs/slides/assets/pptxgenjs_helpers/code.js +104 -104
  550. package/skills/writing-docs/slides/assets/pptxgenjs_helpers/image.js +333 -333
  551. package/skills/writing-docs/slides/assets/pptxgenjs_helpers/index.js +33 -33
  552. package/skills/writing-docs/slides/assets/pptxgenjs_helpers/latex.js +51 -51
  553. package/skills/writing-docs/slides/assets/pptxgenjs_helpers/layout.js +643 -643
  554. package/skills/writing-docs/slides/assets/pptxgenjs_helpers/layout_builders.js +358 -358
  555. package/skills/writing-docs/slides/assets/pptxgenjs_helpers/svg.js +36 -36
  556. package/skills/writing-docs/slides/assets/pptxgenjs_helpers/text.js +789 -789
  557. package/skills/writing-docs/slides/assets/pptxgenjs_helpers/util.js +24 -24
  558. package/skills/writing-docs/slides/assets/slides-small.svg +3 -3
  559. package/skills/writing-docs/slides/references/pptxgenjs-helpers.md +61 -61
  560. package/skills/writing-docs/slides/scripts/create_montage.py +300 -300
  561. package/skills/writing-docs/slides/scripts/detect_font.py +873 -873
  562. package/skills/writing-docs/slides/scripts/ensure_raster_image.py +202 -202
  563. package/skills/writing-docs/slides/scripts/render_slides.py +273 -273
  564. package/skills/writing-docs/slides/scripts/slides_test.py +201 -201
  565. package/skills/writing-docs/template-skill/SKILL.md +26 -26
  566. package/skills/writing-docs/xlsx/LICENSE.txt +30 -30
  567. package/skills/writing-docs/xlsx/SKILL.md +288 -288
  568. package/skills/writing-docs/xlsx/recalc.py +177 -177
  569. package/src/core/KILO_MASTER.md +448 -448
  570. package/src/tools/validate-skill.js +421 -421
@@ -1,479 +1,479 @@
1
- ---
2
- name: render-deploy
3
- description: Deploy applications to Render by analyzing codebases, generating render.yaml Blueprints, and providing Dashboard deeplinks. Use when the user wants to deploy, host, publish, or set up their application on Render's cloud platform.
4
- ---
5
-
6
- # Deploy to Render
7
-
8
- Render supports **Git-backed** services and **prebuilt Docker image** services.
9
-
10
- This skill covers **Git-backed** flows:
11
- 1. **Blueprint Method** - Generate render.yaml for Infrastructure-as-Code deployments
12
- 2. **Direct Creation** - Create services instantly via MCP tools
13
-
14
- Blueprints can also run a **prebuilt Docker image** by using `runtime: image`, but the `render.yaml` still must live in a Git repo.
15
-
16
- If there is no Git remote, stop and ask the user to either:
17
- - Create/push a Git remote (can be minimal if only the Blueprint is needed), or
18
- - Use the Render Dashboard/API to deploy a prebuilt Docker image (MCP cannot create image-backed services).
19
-
20
- ## Prerequisites
21
-
22
- - When sandboxing blocks the deployment network calls, rerun with `sandbox_permissions=require_escalated`.
23
- - The deployment might take a few minutes. Use appropriate timeout values.
24
-
25
- ## When to Use This Skill
26
-
27
- Activate this skill when users want to:
28
- - Deploy an application to Render
29
- - Create a render.yaml Blueprint file
30
- - Set up Render deployment for their project
31
- - Host or publish their application on Render's cloud platform
32
- - Create databases, cron jobs, or other Render resources
33
-
34
- ## Happy Path (New Users)
35
-
36
- Use this short prompt sequence before deep analysis to reduce friction:
37
- 1. Ask whether they want to deploy from a Git repo or a prebuilt Docker image.
38
- 2. Ask whether Render should provision everything the app needs (based on what seems likely from the user's description) or only the app while they bring their own infra. If dependencies are unclear, ask a short follow-up to confirm whether they need a database, workers, cron, or other services.
39
-
40
- Then proceed with the appropriate method below.
41
-
42
- ## Choose Your Source Path
43
-
44
- **Git Repo Path:** Required for both Blueprint and Direct Creation. The repo must be pushed to GitHub, GitLab, or Bitbucket.
45
-
46
- **Prebuilt Docker Image Path:** Supported by Render via image-backed services. This is **not** supported by MCP; use the Dashboard/API. Ask for:
47
- - Image URL (registry + tag)
48
- - Registry auth (if private)
49
- - Service type (web/worker) and port
50
-
51
- If the user chooses a Docker image, guide them to the Render Dashboard image deploy flow or ask them to add a Git remote (so you can use a Blueprint with `runtime: image`).
52
-
53
- ## Choose Your Deployment Method (Git Repo)
54
-
55
- Both methods require a Git repository pushed to GitHub, GitLab, or Bitbucket. (If using `runtime: image`, the repo can be minimal and only contain `render.yaml`.)
56
-
57
- | Method | Best For | Pros |
58
- |--------|----------|------|
59
- | **Blueprint** | Multi-service apps, IaC workflows | Version controlled, reproducible, supports complex setups |
60
- | **Direct Creation** | Single services, quick deployments | Instant creation, no render.yaml file needed |
61
-
62
- ### Method Selection Heuristic
63
-
64
- Use this decision rule by default unless the user requests a specific method. Analyze the codebase first; only ask if deployment intent is unclear (e.g., DB, workers, cron).
65
-
66
- **Use Direct Creation (MCP) when ALL are true:**
67
- - Single service (one web app or one static site)
68
- - No separate worker/cron services
69
- - No attached databases or Key Value
70
- - Simple env vars only (no shared env groups)
71
- If this path fits and MCP isn't configured yet, stop and guide MCP setup before proceeding.
72
-
73
- **Use Blueprint when ANY are true:**
74
- - Multiple services (web + worker, API + frontend, etc.)
75
- - Databases, Redis/Key Value, or other datastores are required
76
- - Cron jobs, background workers, or private services
77
- - You want reproducible IaC or a render.yaml committed to the repo
78
- - Monorepo or multi-env setup that needs consistent configuration
79
-
80
- If unsure, ask a quick clarifying question, but default to Blueprint for safety. For a single service, strongly prefer Direct Creation via MCP and guide MCP setup if needed.
81
-
82
- ## Prerequisites Check
83
-
84
- When starting a deployment, verify these requirements in order:
85
-
86
- **1. Confirm Source Path (Git vs Docker)**
87
-
88
- If using Git-based methods (Blueprint or Direct Creation), the repo must be pushed to GitHub/GitLab/Bitbucket. Blueprints that reference a prebuilt image still require a Git repo with `render.yaml`.
89
-
90
- ```bash
91
- git remote -v
92
- ```
93
-
94
- - If no remote exists, stop and ask the user to create/push a remote **or** switch to Docker image deploy.
95
-
96
- **2. Check MCP Tools Availability (Preferred for Single-Service)**
97
-
98
- MCP tools provide the best experience. Check if available by attempting:
99
- ```
100
- list_services()
101
- ```
102
-
103
- If MCP tools are available, you can skip CLI installation for most operations.
104
-
105
- **3. Check Render CLI Installation (for Blueprint validation)**
106
- ```bash
107
- render --version
108
- ```
109
- If not installed, offer to install:
110
- - macOS: `brew install render`
111
- - Linux/macOS: `curl -fsSL https://raw.githubusercontent.com/render-oss/cli/main/bin/install.sh | sh`
112
-
113
- **4. MCP Setup (if MCP isn't configured)**
114
-
115
- If `list_services()` fails because MCP isn't configured, ask whether they want to set up MCP (preferred) or continue with the CLI fallback. If they choose MCP, ask which AI tool they're using, then provide the matching instructions below. Always use their API key.
116
-
117
- ### Cursor
118
-
119
- Walk the user through these steps:
120
-
121
- 1) Get a Render API key:
122
- ```
123
- https://dashboard.render.com/u/*/settings#api-keys
124
- ```
125
-
126
- 2) Add this to `~/.cursor/mcp.json` (replace `<YOUR_API_KEY>`):
127
- ```json
128
- {
129
- "mcpServers": {
130
- "render": {
131
- "url": "https://mcp.render.com/mcp",
132
- "headers": {
133
- "Authorization": "Bearer <YOUR_API_KEY>"
134
- }
135
- }
136
- }
137
- }
138
- ```
139
-
140
- 3) Restart Cursor, then retry `list_services()`.
141
-
142
- ### Claude Code
143
-
144
- Walk the user through these steps:
145
-
146
- 1) Get a Render API key:
147
- ```
148
- https://dashboard.render.com/u/*/settings#api-keys
149
- ```
150
-
151
- 2) Add the MCP server with Claude Code (replace `<YOUR_API_KEY>`):
152
- ```bash
153
- claude mcp add --transport http render https://mcp.render.com/mcp --header "Authorization: Bearer <YOUR_API_KEY>"
154
- ```
155
-
156
- 3) Restart Claude Code, then retry `list_services()`.
157
-
158
- ### Codex
159
-
160
- Walk the user through these steps:
161
-
162
- 1) Get a Render API key:
163
- ```
164
- https://dashboard.render.com/u/*/settings#api-keys
165
- ```
166
-
167
- 2) Set it in their shell:
168
- ```bash
169
- export RENDER_API_KEY="<YOUR_API_KEY>"
170
- ```
171
-
172
- 3) Add the MCP server with the Codex CLI:
173
- ```bash
174
- codex mcp add render --url https://mcp.render.com/mcp --bearer-token-env-var RENDER_API_KEY
175
- ```
176
-
177
- 4) Restart Codex, then retry `list_services()`.
178
-
179
- ### Other Tools
180
-
181
- If the user is on another AI app, direct them to the Render MCP docs for that tool's setup steps and install method.
182
-
183
- ### Workspace Selection
184
-
185
- After MCP is configured, have the user set the active Render workspace with a prompt like:
186
-
187
- ```
188
- Set my Render workspace to [WORKSPACE_NAME]
189
- ```
190
-
191
- **5. Check Authentication (CLI fallback only)**
192
-
193
- If MCP isn't available, use the CLI instead and verify you can access your account:
194
- ```bash
195
- # Check if user is logged in (use -o json for non-interactive mode)
196
- render whoami -o json
197
- ```
198
-
199
- If `render whoami` fails or returns empty data, the CLI is not authenticated. The CLI won't always prompt automatically, so explicitly prompt the user to authenticate:
200
-
201
- If neither is configured, ask user which method they prefer:
202
- - **API Key (CLI)**: `export RENDER_API_KEY="rnd_xxxxx"` (Get from https://dashboard.render.com/u/*/settings#api-keys)
203
- - **Login**: `render login` (Opens browser for OAuth)
204
-
205
- **6. Check Workspace Context**
206
-
207
- Verify the active workspace:
208
- ```
209
- get_selected_workspace()
210
- ```
211
-
212
- Or via CLI:
213
- ```bash
214
- render workspace current -o json
215
- ```
216
-
217
- To list available workspaces:
218
- ```
219
- list_workspaces()
220
- ```
221
-
222
- If user needs to switch workspaces, they must do so via Dashboard or CLI (`render workspace set`).
223
-
224
- Once prerequisites are met, proceed with deployment workflow.
225
-
226
- ---
227
-
228
- # Method 1: Blueprint Deployment (Recommended for Complex Apps)
229
-
230
- ## Blueprint Workflow
231
-
232
- ### Step 1: Analyze Codebase
233
-
234
- Analyze the codebase to determine framework/runtime, build and start commands, required env vars, datastores, and port binding. Use the detailed checklists in [references/codebase-analysis.md](references/codebase-analysis.md).
235
-
236
- ### Step 2: Generate render.yaml
237
-
238
- Create a `render.yaml` Blueprint file following the Blueprint specification.
239
-
240
- Complete specification: [references/blueprint-spec.md](references/blueprint-spec.md)
241
-
242
- **Key Points:**
243
- - Always use `plan: free` unless user specifies otherwise
244
- - Include ALL environment variables the app needs
245
- - Mark secrets with `sync: false` (user fills these in Dashboard)
246
- - Use appropriate service type: `web`, `worker`, `cron`, `static`, or `pserv`
247
- - Use appropriate runtime: [references/runtimes.md](references/runtimes.md)
248
-
249
- **Basic Structure:**
250
- ```yaml
251
- services:
252
- - type: web
253
- name: my-app
254
- runtime: node
255
- plan: free
256
- buildCommand: npm ci
257
- startCommand: npm start
258
- envVars:
259
- - key: DATABASE_URL
260
- fromDatabase:
261
- name: postgres
262
- property: connectionString
263
- - key: JWT_SECRET
264
- sync: false # User fills in Dashboard
265
-
266
- databases:
267
- - name: postgres
268
- databaseName: myapp_db
269
- plan: free
270
- ```
271
-
272
- **Service Types:**
273
- - `web`: HTTP services, APIs, web applications (publicly accessible)
274
- - `worker`: Background job processors (not publicly accessible)
275
- - `cron`: Scheduled tasks that run on a cron schedule
276
- - `static`: Static sites (HTML/CSS/JS served via CDN)
277
- - `pserv`: Private services (internal only, within same account)
278
-
279
- Service type details: [references/service-types.md](references/service-types.md)
280
- Runtime options: [references/runtimes.md](references/runtimes.md)
281
- Template examples: [assets/](assets/)
282
-
283
- ### Step 2.5: Immediate Next Steps (Always Provide)
284
-
285
- After creating `render.yaml`, always give the user a short, explicit checklist and run validation immediately when the CLI is available:
286
- 1. **Authenticate (CLI)**: run `render whoami -o json` (if not logged in, run `render login` or set `RENDER_API_KEY`)
287
- 2. **Validate (recommended)**: run `render blueprints validate`
288
- - If the CLI isn't installed, offer to install it and provide the command.
289
- 3. **Commit + push**: `git add render.yaml && git commit -m "Add Render deployment configuration" && git push origin main`
290
- 4. **Open Dashboard**: Use the Blueprint deeplink and complete Git OAuth if prompted
291
- 5. **Fill secrets**: Set env vars marked `sync: false`
292
- 6. **Deploy**: Click "Apply" and monitor the deploy
293
-
294
- ### Step 3: Validate Configuration
295
-
296
- Validate the render.yaml file to catch errors before deployment. If the CLI is installed, run the commands directly; only prompt the user if the CLI is missing:
297
-
298
- ```bash
299
- render whoami -o json # Ensure CLI is authenticated (won't always prompt)
300
- render blueprints validate
301
- ```
302
-
303
- Fix any validation errors before proceeding. Common issues:
304
- - Missing required fields (`name`, `type`, `runtime`)
305
- - Invalid runtime values
306
- - Incorrect YAML syntax
307
- - Invalid environment variable references
308
-
309
- Configuration guide: [references/configuration-guide.md](references/configuration-guide.md)
310
-
311
- ### Step 4: Commit and Push
312
-
313
- **IMPORTANT:** You must merge the `render.yaml` file into your repository before deploying.
314
-
315
- Ensure the `render.yaml` file is committed and pushed to your Git remote:
316
-
317
- ```bash
318
- git add render.yaml
319
- git commit -m "Add Render deployment configuration"
320
- git push origin main
321
- ```
322
-
323
- If there is no Git remote yet, stop here and guide the user to create a GitHub/GitLab/Bitbucket repo, add it as `origin`, and push before continuing.
324
-
325
- **Why this matters:** The Dashboard deeplink will read the render.yaml from your repository. If the file isn't merged and pushed, Render won't find the configuration and deployment will fail.
326
-
327
- Verify the file is in your remote repository before proceeding to the next step.
328
-
329
- ### Step 5: Generate Deeplink
330
-
331
- Get the Git repository URL:
332
-
333
- ```bash
334
- git remote get-url origin
335
- ```
336
-
337
- This will return a URL from your Git provider. **If the URL is SSH format, convert it to HTTPS:**
338
-
339
- | SSH Format | HTTPS Format |
340
- |------------|--------------|
341
- | `git@github.com:user/repo.git` | `https://github.com/user/repo` |
342
- | `git@gitlab.com:user/repo.git` | `https://gitlab.com/user/repo` |
343
- | `git@bitbucket.org:user/repo.git` | `https://bitbucket.org/user/repo` |
344
-
345
- **Conversion pattern:** Replace `git@<host>:` with `https://<host>/` and remove `.git` suffix.
346
-
347
- Format the Dashboard deeplink using the HTTPS repository URL:
348
- ```
349
- https://dashboard.render.com/blueprint/new?repo=<REPOSITORY_URL>
350
- ```
351
-
352
- Example:
353
- ```
354
- https://dashboard.render.com/blueprint/new?repo=https://github.com/username/repo-name
355
- ```
356
-
357
- ### Step 6: Guide User
358
-
359
- **CRITICAL:** Ensure the user has merged and pushed the render.yaml file to their repository before clicking the deeplink. If the file isn't in the repository, Render cannot read the Blueprint configuration and deployment will fail.
360
-
361
- Provide the deeplink to the user with these instructions:
362
-
363
- 1. **Verify render.yaml is merged** - Confirm the file exists in your repository on GitHub/GitLab/Bitbucket
364
- 2. Click the deeplink to open Render Dashboard
365
- 3. Complete Git provider OAuth if prompted
366
- 4. Name the Blueprint (or use default from render.yaml)
367
- 5. Fill in secret environment variables (marked with `sync: false`)
368
- 6. Review services and databases configuration
369
- 7. Click "Apply" to deploy
370
-
371
- The deployment will begin automatically. Users can monitor progress in the Render Dashboard.
372
-
373
- ### Step 7: Verify Deployment
374
-
375
- After the user deploys via Dashboard, verify everything is working.
376
-
377
- **Check deployment status via MCP:**
378
- ```
379
- list_deploys(serviceId: "<service-id>", limit: 1)
380
- ```
381
- Look for `status: "live"` to confirm successful deployment.
382
-
383
- **Check for runtime errors (wait 2-3 minutes after deploy):**
384
- ```
385
- list_logs(resource: ["<service-id>"], level: ["error"], limit: 20)
386
- ```
387
-
388
- **Check service health metrics:**
389
- ```
390
- get_metrics(
391
- resourceId: "<service-id>",
392
- metricTypes: ["http_request_count", "cpu_usage", "memory_usage"]
393
- )
394
- ```
395
-
396
- If errors are found, proceed to the **Post-deploy verification and basic triage** section below.
397
-
398
- ---
399
-
400
- # Method 2: Direct Service Creation (Quick Single-Service Deployments)
401
-
402
- For simple deployments without Infrastructure-as-Code, create services directly via MCP tools.
403
-
404
- ## When to Use Direct Creation
405
-
406
- - Single web service or static site
407
- - Quick prototypes or demos
408
- - When you don't need a render.yaml file in your repo
409
- - Adding databases or cron jobs to existing projects
410
-
411
- ## Prerequisites for Direct Creation
412
-
413
- **Repository must be pushed to a Git provider.** Render clones your repository to build and deploy services.
414
-
415
- ```bash
416
- git remote -v # Verify remote exists
417
- git push origin main # Ensure code is pushed
418
- ```
419
-
420
- Supported providers: GitHub, GitLab, Bitbucket
421
-
422
- If no remote exists, stop and ask the user to create/push a remote or switch to Docker image deploy.
423
-
424
- **Note:** MCP does not support creating image-backed services. Use the Dashboard/API for prebuilt Docker image deploys.
425
-
426
- ## Direct Creation Workflow
427
-
428
- Use the concise steps below, and refer to [references/direct-creation.md](references/direct-creation.md) for full MCP command examples and follow-on configuration.
429
-
430
- ### Step 1: Analyze Codebase
431
- Use [references/codebase-analysis.md](references/codebase-analysis.md) to determine runtime, build/start commands, env vars, and datastores.
432
-
433
- ### Step 2: Create Resources via MCP
434
- Create the service (web or static) and any required databases or key-value stores. See [references/direct-creation.md](references/direct-creation.md).
435
-
436
- If MCP returns an error about missing Git credentials or repo access, stop and guide the user to connect their Git provider in the Render Dashboard, then retry.
437
-
438
- ### Step 3: Configure Environment Variables
439
- Add required env vars via MCP after creation. See [references/direct-creation.md](references/direct-creation.md).
440
-
441
- Remind the user that secrets can be set in the Dashboard if they prefer not to pass them via MCP.
442
-
443
- ### Step 4: Verify Deployment
444
- Check deploy status, logs, and metrics. See [references/direct-creation.md](references/direct-creation.md).
445
-
446
- ---
447
-
448
- For service discovery, configuration details, quick commands, and common issues, see [references/deployment-details.md](references/deployment-details.md).
449
-
450
- ---
451
-
452
- # Post-deploy verification and basic triage (All Methods)
453
-
454
- Keep this short and repeatable. If any check fails, fix it before redeploying.
455
-
456
- 1. Confirm the latest deploy is `live` and serving traffic
457
- 2. Hit the health endpoint (or root) and verify a 200 response
458
- 3. Scan recent error logs for a clear failure signature
459
- 4. Verify required env vars and port binding (`0.0.0.0:$PORT`)
460
-
461
- Detailed checklist and commands: [references/post-deploy-checks.md](references/post-deploy-checks.md)
462
-
463
- If the service fails to start or health checks time out, use the basic triage guide:
464
- [references/troubleshooting-basics.md](references/troubleshooting-basics.md)
465
-
466
- ## Troubleshooting
467
-
468
- ### Escalated Network Access
469
-
470
- If deployment fails due to network issues (timeouts, DNS errors, connection resets), rerun the deploy with escalated permissions (use `sandbox_permissions=require_escalated`). The deploy requires escalated network access when sandbox networking blocks outbound requests.
471
-
472
- Example guidance to the user:
473
-
474
- ```
475
- The deploy needs escalated network access to deploy to Render. I can rerun the command with escalated permissions—want me to proceed?
476
- ```
477
-
478
- Optional: If you need deeper diagnostics (metrics/DB checks/error catalog), suggest installing the
479
- `render-debug` skill. It is not required for the core deploy flow.
1
+ ---
2
+ name: render-deploy
3
+ description: Deploy applications to Render by analyzing codebases, generating render.yaml Blueprints, and providing Dashboard deeplinks. Use when the user wants to deploy, host, publish, or set up their application on Render's cloud platform.
4
+ ---
5
+
6
+ # Deploy to Render
7
+
8
+ Render supports **Git-backed** services and **prebuilt Docker image** services.
9
+
10
+ This skill covers **Git-backed** flows:
11
+ 1. **Blueprint Method** - Generate render.yaml for Infrastructure-as-Code deployments
12
+ 2. **Direct Creation** - Create services instantly via MCP tools
13
+
14
+ Blueprints can also run a **prebuilt Docker image** by using `runtime: image`, but the `render.yaml` still must live in a Git repo.
15
+
16
+ If there is no Git remote, stop and ask the user to either:
17
+ - Create/push a Git remote (can be minimal if only the Blueprint is needed), or
18
+ - Use the Render Dashboard/API to deploy a prebuilt Docker image (MCP cannot create image-backed services).
19
+
20
+ ## Prerequisites
21
+
22
+ - When sandboxing blocks the deployment network calls, rerun with `sandbox_permissions=require_escalated`.
23
+ - The deployment might take a few minutes. Use appropriate timeout values.
24
+
25
+ ## When to Use This Skill
26
+
27
+ Activate this skill when users want to:
28
+ - Deploy an application to Render
29
+ - Create a render.yaml Blueprint file
30
+ - Set up Render deployment for their project
31
+ - Host or publish their application on Render's cloud platform
32
+ - Create databases, cron jobs, or other Render resources
33
+
34
+ ## Happy Path (New Users)
35
+
36
+ Use this short prompt sequence before deep analysis to reduce friction:
37
+ 1. Ask whether they want to deploy from a Git repo or a prebuilt Docker image.
38
+ 2. Ask whether Render should provision everything the app needs (based on what seems likely from the user's description) or only the app while they bring their own infra. If dependencies are unclear, ask a short follow-up to confirm whether they need a database, workers, cron, or other services.
39
+
40
+ Then proceed with the appropriate method below.
41
+
42
+ ## Choose Your Source Path
43
+
44
+ **Git Repo Path:** Required for both Blueprint and Direct Creation. The repo must be pushed to GitHub, GitLab, or Bitbucket.
45
+
46
+ **Prebuilt Docker Image Path:** Supported by Render via image-backed services. This is **not** supported by MCP; use the Dashboard/API. Ask for:
47
+ - Image URL (registry + tag)
48
+ - Registry auth (if private)
49
+ - Service type (web/worker) and port
50
+
51
+ If the user chooses a Docker image, guide them to the Render Dashboard image deploy flow or ask them to add a Git remote (so you can use a Blueprint with `runtime: image`).
52
+
53
+ ## Choose Your Deployment Method (Git Repo)
54
+
55
+ Both methods require a Git repository pushed to GitHub, GitLab, or Bitbucket. (If using `runtime: image`, the repo can be minimal and only contain `render.yaml`.)
56
+
57
+ | Method | Best For | Pros |
58
+ |--------|----------|------|
59
+ | **Blueprint** | Multi-service apps, IaC workflows | Version controlled, reproducible, supports complex setups |
60
+ | **Direct Creation** | Single services, quick deployments | Instant creation, no render.yaml file needed |
61
+
62
+ ### Method Selection Heuristic
63
+
64
+ Use this decision rule by default unless the user requests a specific method. Analyze the codebase first; only ask if deployment intent is unclear (e.g., DB, workers, cron).
65
+
66
+ **Use Direct Creation (MCP) when ALL are true:**
67
+ - Single service (one web app or one static site)
68
+ - No separate worker/cron services
69
+ - No attached databases or Key Value
70
+ - Simple env vars only (no shared env groups)
71
+ If this path fits and MCP isn't configured yet, stop and guide MCP setup before proceeding.
72
+
73
+ **Use Blueprint when ANY are true:**
74
+ - Multiple services (web + worker, API + frontend, etc.)
75
+ - Databases, Redis/Key Value, or other datastores are required
76
+ - Cron jobs, background workers, or private services
77
+ - You want reproducible IaC or a render.yaml committed to the repo
78
+ - Monorepo or multi-env setup that needs consistent configuration
79
+
80
+ If unsure, ask a quick clarifying question, but default to Blueprint for safety. For a single service, strongly prefer Direct Creation via MCP and guide MCP setup if needed.
81
+
82
+ ## Prerequisites Check
83
+
84
+ When starting a deployment, verify these requirements in order:
85
+
86
+ **1. Confirm Source Path (Git vs Docker)**
87
+
88
+ If using Git-based methods (Blueprint or Direct Creation), the repo must be pushed to GitHub/GitLab/Bitbucket. Blueprints that reference a prebuilt image still require a Git repo with `render.yaml`.
89
+
90
+ ```bash
91
+ git remote -v
92
+ ```
93
+
94
+ - If no remote exists, stop and ask the user to create/push a remote **or** switch to Docker image deploy.
95
+
96
+ **2. Check MCP Tools Availability (Preferred for Single-Service)**
97
+
98
+ MCP tools provide the best experience. Check if available by attempting:
99
+ ```
100
+ list_services()
101
+ ```
102
+
103
+ If MCP tools are available, you can skip CLI installation for most operations.
104
+
105
+ **3. Check Render CLI Installation (for Blueprint validation)**
106
+ ```bash
107
+ render --version
108
+ ```
109
+ If not installed, offer to install:
110
+ - macOS: `brew install render`
111
+ - Linux/macOS: `curl -fsSL https://raw.githubusercontent.com/render-oss/cli/main/bin/install.sh | sh`
112
+
113
+ **4. MCP Setup (if MCP isn't configured)**
114
+
115
+ If `list_services()` fails because MCP isn't configured, ask whether they want to set up MCP (preferred) or continue with the CLI fallback. If they choose MCP, ask which AI tool they're using, then provide the matching instructions below. Always use their API key.
116
+
117
+ ### Cursor
118
+
119
+ Walk the user through these steps:
120
+
121
+ 1) Get a Render API key:
122
+ ```
123
+ https://dashboard.render.com/u/*/settings#api-keys
124
+ ```
125
+
126
+ 2) Add this to `~/.cursor/mcp.json` (replace `<YOUR_API_KEY>`):
127
+ ```json
128
+ {
129
+ "mcpServers": {
130
+ "render": {
131
+ "url": "https://mcp.render.com/mcp",
132
+ "headers": {
133
+ "Authorization": "Bearer <YOUR_API_KEY>"
134
+ }
135
+ }
136
+ }
137
+ }
138
+ ```
139
+
140
+ 3) Restart Cursor, then retry `list_services()`.
141
+
142
+ ### Claude Code
143
+
144
+ Walk the user through these steps:
145
+
146
+ 1) Get a Render API key:
147
+ ```
148
+ https://dashboard.render.com/u/*/settings#api-keys
149
+ ```
150
+
151
+ 2) Add the MCP server with Claude Code (replace `<YOUR_API_KEY>`):
152
+ ```bash
153
+ claude mcp add --transport http render https://mcp.render.com/mcp --header "Authorization: Bearer <YOUR_API_KEY>"
154
+ ```
155
+
156
+ 3) Restart Claude Code, then retry `list_services()`.
157
+
158
+ ### Codex
159
+
160
+ Walk the user through these steps:
161
+
162
+ 1) Get a Render API key:
163
+ ```
164
+ https://dashboard.render.com/u/*/settings#api-keys
165
+ ```
166
+
167
+ 2) Set it in their shell:
168
+ ```bash
169
+ export RENDER_API_KEY="<YOUR_API_KEY>"
170
+ ```
171
+
172
+ 3) Add the MCP server with the Codex CLI:
173
+ ```bash
174
+ codex mcp add render --url https://mcp.render.com/mcp --bearer-token-env-var RENDER_API_KEY
175
+ ```
176
+
177
+ 4) Restart Codex, then retry `list_services()`.
178
+
179
+ ### Other Tools
180
+
181
+ If the user is on another AI app, direct them to the Render MCP docs for that tool's setup steps and install method.
182
+
183
+ ### Workspace Selection
184
+
185
+ After MCP is configured, have the user set the active Render workspace with a prompt like:
186
+
187
+ ```
188
+ Set my Render workspace to [WORKSPACE_NAME]
189
+ ```
190
+
191
+ **5. Check Authentication (CLI fallback only)**
192
+
193
+ If MCP isn't available, use the CLI instead and verify you can access your account:
194
+ ```bash
195
+ # Check if user is logged in (use -o json for non-interactive mode)
196
+ render whoami -o json
197
+ ```
198
+
199
+ If `render whoami` fails or returns empty data, the CLI is not authenticated. The CLI won't always prompt automatically, so explicitly prompt the user to authenticate:
200
+
201
+ If neither is configured, ask user which method they prefer:
202
+ - **API Key (CLI)**: `export RENDER_API_KEY="rnd_xxxxx"` (Get from https://dashboard.render.com/u/*/settings#api-keys)
203
+ - **Login**: `render login` (Opens browser for OAuth)
204
+
205
+ **6. Check Workspace Context**
206
+
207
+ Verify the active workspace:
208
+ ```
209
+ get_selected_workspace()
210
+ ```
211
+
212
+ Or via CLI:
213
+ ```bash
214
+ render workspace current -o json
215
+ ```
216
+
217
+ To list available workspaces:
218
+ ```
219
+ list_workspaces()
220
+ ```
221
+
222
+ If user needs to switch workspaces, they must do so via Dashboard or CLI (`render workspace set`).
223
+
224
+ Once prerequisites are met, proceed with deployment workflow.
225
+
226
+ ---
227
+
228
+ # Method 1: Blueprint Deployment (Recommended for Complex Apps)
229
+
230
+ ## Blueprint Workflow
231
+
232
+ ### Step 1: Analyze Codebase
233
+
234
+ Analyze the codebase to determine framework/runtime, build and start commands, required env vars, datastores, and port binding. Use the detailed checklists in [references/codebase-analysis.md](references/codebase-analysis.md).
235
+
236
+ ### Step 2: Generate render.yaml
237
+
238
+ Create a `render.yaml` Blueprint file following the Blueprint specification.
239
+
240
+ Complete specification: [references/blueprint-spec.md](references/blueprint-spec.md)
241
+
242
+ **Key Points:**
243
+ - Always use `plan: free` unless user specifies otherwise
244
+ - Include ALL environment variables the app needs
245
+ - Mark secrets with `sync: false` (user fills these in Dashboard)
246
+ - Use appropriate service type: `web`, `worker`, `cron`, `static`, or `pserv`
247
+ - Use appropriate runtime: [references/runtimes.md](references/runtimes.md)
248
+
249
+ **Basic Structure:**
250
+ ```yaml
251
+ services:
252
+ - type: web
253
+ name: my-app
254
+ runtime: node
255
+ plan: free
256
+ buildCommand: npm ci
257
+ startCommand: npm start
258
+ envVars:
259
+ - key: DATABASE_URL
260
+ fromDatabase:
261
+ name: postgres
262
+ property: connectionString
263
+ - key: JWT_SECRET
264
+ sync: false # User fills in Dashboard
265
+
266
+ databases:
267
+ - name: postgres
268
+ databaseName: myapp_db
269
+ plan: free
270
+ ```
271
+
272
+ **Service Types:**
273
+ - `web`: HTTP services, APIs, web applications (publicly accessible)
274
+ - `worker`: Background job processors (not publicly accessible)
275
+ - `cron`: Scheduled tasks that run on a cron schedule
276
+ - `static`: Static sites (HTML/CSS/JS served via CDN)
277
+ - `pserv`: Private services (internal only, within same account)
278
+
279
+ Service type details: [references/service-types.md](references/service-types.md)
280
+ Runtime options: [references/runtimes.md](references/runtimes.md)
281
+ Template examples: [assets/](assets/)
282
+
283
+ ### Step 2.5: Immediate Next Steps (Always Provide)
284
+
285
+ After creating `render.yaml`, always give the user a short, explicit checklist and run validation immediately when the CLI is available:
286
+ 1. **Authenticate (CLI)**: run `render whoami -o json` (if not logged in, run `render login` or set `RENDER_API_KEY`)
287
+ 2. **Validate (recommended)**: run `render blueprints validate`
288
+ - If the CLI isn't installed, offer to install it and provide the command.
289
+ 3. **Commit + push**: `git add render.yaml && git commit -m "Add Render deployment configuration" && git push origin main`
290
+ 4. **Open Dashboard**: Use the Blueprint deeplink and complete Git OAuth if prompted
291
+ 5. **Fill secrets**: Set env vars marked `sync: false`
292
+ 6. **Deploy**: Click "Apply" and monitor the deploy
293
+
294
+ ### Step 3: Validate Configuration
295
+
296
+ Validate the render.yaml file to catch errors before deployment. If the CLI is installed, run the commands directly; only prompt the user if the CLI is missing:
297
+
298
+ ```bash
299
+ render whoami -o json # Ensure CLI is authenticated (won't always prompt)
300
+ render blueprints validate
301
+ ```
302
+
303
+ Fix any validation errors before proceeding. Common issues:
304
+ - Missing required fields (`name`, `type`, `runtime`)
305
+ - Invalid runtime values
306
+ - Incorrect YAML syntax
307
+ - Invalid environment variable references
308
+
309
+ Configuration guide: [references/configuration-guide.md](references/configuration-guide.md)
310
+
311
+ ### Step 4: Commit and Push
312
+
313
+ **IMPORTANT:** You must merge the `render.yaml` file into your repository before deploying.
314
+
315
+ Ensure the `render.yaml` file is committed and pushed to your Git remote:
316
+
317
+ ```bash
318
+ git add render.yaml
319
+ git commit -m "Add Render deployment configuration"
320
+ git push origin main
321
+ ```
322
+
323
+ If there is no Git remote yet, stop here and guide the user to create a GitHub/GitLab/Bitbucket repo, add it as `origin`, and push before continuing.
324
+
325
+ **Why this matters:** The Dashboard deeplink will read the render.yaml from your repository. If the file isn't merged and pushed, Render won't find the configuration and deployment will fail.
326
+
327
+ Verify the file is in your remote repository before proceeding to the next step.
328
+
329
+ ### Step 5: Generate Deeplink
330
+
331
+ Get the Git repository URL:
332
+
333
+ ```bash
334
+ git remote get-url origin
335
+ ```
336
+
337
+ This will return a URL from your Git provider. **If the URL is SSH format, convert it to HTTPS:**
338
+
339
+ | SSH Format | HTTPS Format |
340
+ |------------|--------------|
341
+ | `git@github.com:user/repo.git` | `https://github.com/user/repo` |
342
+ | `git@gitlab.com:user/repo.git` | `https://gitlab.com/user/repo` |
343
+ | `git@bitbucket.org:user/repo.git` | `https://bitbucket.org/user/repo` |
344
+
345
+ **Conversion pattern:** Replace `git@<host>:` with `https://<host>/` and remove `.git` suffix.
346
+
347
+ Format the Dashboard deeplink using the HTTPS repository URL:
348
+ ```
349
+ https://dashboard.render.com/blueprint/new?repo=<REPOSITORY_URL>
350
+ ```
351
+
352
+ Example:
353
+ ```
354
+ https://dashboard.render.com/blueprint/new?repo=https://github.com/username/repo-name
355
+ ```
356
+
357
+ ### Step 6: Guide User
358
+
359
+ **CRITICAL:** Ensure the user has merged and pushed the render.yaml file to their repository before clicking the deeplink. If the file isn't in the repository, Render cannot read the Blueprint configuration and deployment will fail.
360
+
361
+ Provide the deeplink to the user with these instructions:
362
+
363
+ 1. **Verify render.yaml is merged** - Confirm the file exists in your repository on GitHub/GitLab/Bitbucket
364
+ 2. Click the deeplink to open Render Dashboard
365
+ 3. Complete Git provider OAuth if prompted
366
+ 4. Name the Blueprint (or use default from render.yaml)
367
+ 5. Fill in secret environment variables (marked with `sync: false`)
368
+ 6. Review services and databases configuration
369
+ 7. Click "Apply" to deploy
370
+
371
+ The deployment will begin automatically. Users can monitor progress in the Render Dashboard.
372
+
373
+ ### Step 7: Verify Deployment
374
+
375
+ After the user deploys via Dashboard, verify everything is working.
376
+
377
+ **Check deployment status via MCP:**
378
+ ```
379
+ list_deploys(serviceId: "<service-id>", limit: 1)
380
+ ```
381
+ Look for `status: "live"` to confirm successful deployment.
382
+
383
+ **Check for runtime errors (wait 2-3 minutes after deploy):**
384
+ ```
385
+ list_logs(resource: ["<service-id>"], level: ["error"], limit: 20)
386
+ ```
387
+
388
+ **Check service health metrics:**
389
+ ```
390
+ get_metrics(
391
+ resourceId: "<service-id>",
392
+ metricTypes: ["http_request_count", "cpu_usage", "memory_usage"]
393
+ )
394
+ ```
395
+
396
+ If errors are found, proceed to the **Post-deploy verification and basic triage** section below.
397
+
398
+ ---
399
+
400
+ # Method 2: Direct Service Creation (Quick Single-Service Deployments)
401
+
402
+ For simple deployments without Infrastructure-as-Code, create services directly via MCP tools.
403
+
404
+ ## When to Use Direct Creation
405
+
406
+ - Single web service or static site
407
+ - Quick prototypes or demos
408
+ - When you don't need a render.yaml file in your repo
409
+ - Adding databases or cron jobs to existing projects
410
+
411
+ ## Prerequisites for Direct Creation
412
+
413
+ **Repository must be pushed to a Git provider.** Render clones your repository to build and deploy services.
414
+
415
+ ```bash
416
+ git remote -v # Verify remote exists
417
+ git push origin main # Ensure code is pushed
418
+ ```
419
+
420
+ Supported providers: GitHub, GitLab, Bitbucket
421
+
422
+ If no remote exists, stop and ask the user to create/push a remote or switch to Docker image deploy.
423
+
424
+ **Note:** MCP does not support creating image-backed services. Use the Dashboard/API for prebuilt Docker image deploys.
425
+
426
+ ## Direct Creation Workflow
427
+
428
+ Use the concise steps below, and refer to [references/direct-creation.md](references/direct-creation.md) for full MCP command examples and follow-on configuration.
429
+
430
+ ### Step 1: Analyze Codebase
431
+ Use [references/codebase-analysis.md](references/codebase-analysis.md) to determine runtime, build/start commands, env vars, and datastores.
432
+
433
+ ### Step 2: Create Resources via MCP
434
+ Create the service (web or static) and any required databases or key-value stores. See [references/direct-creation.md](references/direct-creation.md).
435
+
436
+ If MCP returns an error about missing Git credentials or repo access, stop and guide the user to connect their Git provider in the Render Dashboard, then retry.
437
+
438
+ ### Step 3: Configure Environment Variables
439
+ Add required env vars via MCP after creation. See [references/direct-creation.md](references/direct-creation.md).
440
+
441
+ Remind the user that secrets can be set in the Dashboard if they prefer not to pass them via MCP.
442
+
443
+ ### Step 4: Verify Deployment
444
+ Check deploy status, logs, and metrics. See [references/direct-creation.md](references/direct-creation.md).
445
+
446
+ ---
447
+
448
+ For service discovery, configuration details, quick commands, and common issues, see [references/deployment-details.md](references/deployment-details.md).
449
+
450
+ ---
451
+
452
+ # Post-deploy verification and basic triage (All Methods)
453
+
454
+ Keep this short and repeatable. If any check fails, fix it before redeploying.
455
+
456
+ 1. Confirm the latest deploy is `live` and serving traffic
457
+ 2. Hit the health endpoint (or root) and verify a 200 response
458
+ 3. Scan recent error logs for a clear failure signature
459
+ 4. Verify required env vars and port binding (`0.0.0.0:$PORT`)
460
+
461
+ Detailed checklist and commands: [references/post-deploy-checks.md](references/post-deploy-checks.md)
462
+
463
+ If the service fails to start or health checks time out, use the basic triage guide:
464
+ [references/troubleshooting-basics.md](references/troubleshooting-basics.md)
465
+
466
+ ## Troubleshooting
467
+
468
+ ### Escalated Network Access
469
+
470
+ If deployment fails due to network issues (timeouts, DNS errors, connection resets), rerun the deploy with escalated permissions (use `sandbox_permissions=require_escalated`). The deploy requires escalated network access when sandbox networking blocks outbound requests.
471
+
472
+ Example guidance to the user:
473
+
474
+ ```
475
+ The deploy needs escalated network access to deploy to Render. I can rerun the command with escalated permissions—want me to proceed?
476
+ ```
477
+
478
+ Optional: If you need deeper diagnostics (metrics/DB checks/error catalog), suggest installing the
479
+ `render-debug` skill. It is not required for the core deploy flow.