@thierrynakoa/fire-flow 12.2.1 → 13.0.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 (500) hide show
  1. package/CREDITS.md +25 -0
  2. package/DOMINION-FLOW-OVERVIEW.md +182 -38
  3. package/README.md +399 -455
  4. package/TROUBLESHOOTING.md +264 -264
  5. package/agents/fire-debugger.md +54 -0
  6. package/agents/fire-executor.md +1610 -1033
  7. package/agents/fire-fact-checker.md +1 -1
  8. package/agents/fire-planner.md +85 -17
  9. package/agents/fire-project-researcher.md +1 -1
  10. package/agents/fire-researcher.md +4 -22
  11. package/agents/{fire-phoenix-analyst.md → fire-resurrection-analyst.md} +394 -394
  12. package/agents/fire-reviewer.md +552 -499
  13. package/agents/fire-verifier.md +114 -19
  14. package/bin/cli.js +18 -101
  15. package/commands/fire-0-orient.md +2 -2
  16. package/commands/fire-1a-new.md +50 -15
  17. package/commands/fire-1c-setup.md +33 -5
  18. package/commands/fire-1d-discuss.md +87 -1
  19. package/commands/fire-2-plan.md +556 -527
  20. package/commands/fire-3-execute.md +2046 -1356
  21. package/commands/fire-4-verify.md +975 -906
  22. package/commands/fire-5-handoff.md +46 -5
  23. package/commands/fire-6-resume.md +2 -31
  24. package/commands/fire-add-new-skill.md +138 -19
  25. package/commands/fire-autonomous.md +14 -2
  26. package/commands/fire-complete-milestone.md +1 -1
  27. package/commands/fire-cost.md +179 -183
  28. package/commands/fire-debug.md +1 -6
  29. package/commands/fire-loop-resume.md +2 -2
  30. package/commands/fire-loop-stop.md +1 -1
  31. package/commands/fire-loop.md +2 -15
  32. package/commands/fire-map-codebase.md +1 -1
  33. package/commands/fire-migrate-database.md +548 -0
  34. package/commands/fire-new-milestone.md +1 -1
  35. package/commands/fire-reflect.md +1 -2
  36. package/commands/fire-research.md +142 -21
  37. package/commands/{fire-phoenix.md → fire-resurrect.md} +859 -603
  38. package/commands/fire-scaffold.md +297 -0
  39. package/commands/fire-search.md +1 -2
  40. package/commands/fire-security-scan.md +483 -484
  41. package/commands/fire-setup.md +359 -0
  42. package/commands/fire-skill.md +770 -0
  43. package/commands/fire-skills-diff.md +506 -506
  44. package/commands/fire-skills-history.md +388 -388
  45. package/commands/fire-skills-rollback.md +7 -7
  46. package/commands/fire-skills-sync.md +470 -470
  47. package/commands/fire-test.md +5 -5
  48. package/commands/fire-todos.md +1 -1
  49. package/commands/fire-update.md +5 -5
  50. package/commands/fire-validate-skills.md +282 -0
  51. package/commands/fire-vuln-scan.md +492 -493
  52. package/hooks/run-hook.sh +8 -8
  53. package/hooks/run-session-end.sh +7 -7
  54. package/hooks/session-end.sh +90 -90
  55. package/hooks/session-start.sh +1 -1
  56. package/package.json +4 -24
  57. package/plugin.json +7 -7
  58. package/references/autonomy-levels.md +235 -0
  59. package/references/behavioral-directives.md +95 -3
  60. package/references/blocker-tracking.md +1 -1
  61. package/references/circuit-breaker.md +93 -2
  62. package/references/context-engineering.md +227 -9
  63. package/references/honesty-protocols.md +70 -1
  64. package/references/issue-to-pr-pipeline.md +149 -150
  65. package/references/metrics-and-trends.md +1 -2
  66. package/references/research-improvements.md +4 -108
  67. package/references/sdlc-mapping.md +73 -0
  68. package/references/state-machine.md +151 -0
  69. package/skills-library/AVAILABLE_TOOLS_REFERENCE.md +333 -0
  70. package/skills-library/SKILLS-INDEX.md +57 -558
  71. package/skills-library/SKILLS_LIBRARY_INDEX.md +532 -0
  72. package/skills-library/_general/api-patterns/api-field-name-mismatch.md +107 -0
  73. package/skills-library/_general/api-patterns/streaming-command-timeout.md +122 -0
  74. package/skills-library/_general/api-patterns/streaming-proxy-cors-bypass.md +102 -0
  75. package/skills-library/_general/automation/settings-gui-generator.md +172 -0
  76. package/skills-library/_general/database-solutions/data-type-mapping-reference.md +181 -0
  77. package/skills-library/_general/database-solutions/mysql-limit-offset-string-coercion.md +102 -0
  78. package/skills-library/_general/database-solutions/mysql-to-pg-migration.md +195 -0
  79. package/skills-library/_general/database-solutions/orm-schema-portability.md +193 -0
  80. package/skills-library/_general/database-solutions/persistent-analysis-storage.md +207 -0
  81. package/skills-library/_general/database-solutions/pg-to-mysql-schema-migration-methodology.md +190 -0
  82. package/skills-library/_general/database-solutions/sql-dialect-compatibility-matrix.md +306 -0
  83. package/skills-library/_general/database-solutions/sqlite-to-pg-migration.md +219 -0
  84. package/skills-library/_general/frontend/canvas-bubble-animation-grouping.md +270 -0
  85. package/skills-library/_general/frontend/color-token-migration.md +112 -0
  86. package/skills-library/_general/frontend/framer-motion-layoutid-grouping.md +150 -0
  87. package/skills-library/_general/frontend/pyqt6-settings-dialog.md +191 -0
  88. package/skills-library/_general/frontend/react-flow-animated-layout-switching.md +101 -0
  89. package/skills-library/_general/frontend/react-hooks-order-debugging.md +141 -0
  90. package/skills-library/_general/frontend/redux-localstorage-auth-desync.md +126 -0
  91. package/skills-library/_general/frontend/safari-csp-theme-color-debugging.md +124 -0
  92. package/skills-library/_general/frontend/safari-sw-cache-poisoning.md +138 -0
  93. package/skills-library/_general/frontend/svg-sparkline-no-charting-library.md +131 -0
  94. package/skills-library/_general/growth-marketing/oss-daily-growth-intelligence.md +224 -0
  95. package/skills-library/_general/integrations/claude-code-local-mcp-integration.md +250 -0
  96. package/skills-library/_general/integrations/mcp-composite-tool-orchestration.md +200 -0
  97. package/skills-library/_general/methodology/AGENT_SDK_STANDALONE_TOOLING.md +181 -0
  98. package/skills-library/_general/methodology/AGENT_TEAMS_GUIDE.md +169 -0
  99. package/skills-library/_general/methodology/ALAS_STATEFUL_EXECUTION.md +207 -0
  100. package/skills-library/_general/methodology/AUTO_REVIEWER_SUBAGENT.md +211 -0
  101. package/skills-library/_general/methodology/CONSISTENCY_CHECK_AMBIGUITY_GATE.md +96 -0
  102. package/skills-library/_general/methodology/DEAD_ENDS_SHELF.md +4 -4
  103. package/skills-library/_general/methodology/DISTILL_NOT_DUMP.md +108 -0
  104. package/skills-library/_general/methodology/EXECUTION_PROGRESS_MONITOR.md +157 -0
  105. package/skills-library/_general/methodology/HIERARCHICAL_REVIEW_MARS.md +122 -0
  106. package/skills-library/_general/methodology/MCP_INTER_AGENT_BRIDGE.md +207 -0
  107. package/skills-library/_general/methodology/MERMAID_WIZARD_DIAGRAMS.md +77 -0
  108. package/skills-library/_general/methodology/MISSING_DIMENSION_DETECTOR.md +89 -0
  109. package/skills-library/_general/methodology/MULTI_AGENT_COORDINATION.md +397 -0
  110. package/skills-library/_general/methodology/OBSERVATION_MASKING.md +100 -0
  111. package/skills-library/_general/methodology/PHOENIX_REBUILD_METHODOLOGY.md +82 -11
  112. package/skills-library/_general/methodology/REVIEW_BACKTRACK_PANEL.md +140 -0
  113. package/skills-library/_general/methodology/REVIEW_FIX_LOOP.md +117 -0
  114. package/skills-library/_general/methodology/VOTING_VERDICT_ARBITRATION.md +155 -0
  115. package/skills-library/_general/methodology/ZERO_FRICTION_CLI_SETUP.md +2 -2
  116. package/skills-library/_general/methodology/dead-code-activation.md +123 -0
  117. package/skills-library/_general/methodology/debug-swarm-researcher-escape-hatch.md +240 -240
  118. package/skills-library/_general/methodology/shell-autonomous-loop-fixplan.md +1 -1
  119. package/skills-library/_general/patterns-standards/GOF_DESIGN_PATTERNS_FOR_AI_AGENTS.md +5 -5
  120. package/skills-library/_general/patterns-standards/cascading-failure-diagnosis.md +119 -0
  121. package/skills-library/_general/patterns-standards/domain-specific-layout-algorithms.md +209 -0
  122. package/skills-library/_general/patterns-standards/python-desktop-app-architecture.md +399 -0
  123. package/skills-library/_general/patterns-standards/realtime-monitoring-dashboard.md +457 -0
  124. package/skills-library/_general/patterns-standards/togglable-processing-pipeline.md +169 -0
  125. package/skills-library/_general/performance/liveclock-extraction.md +112 -0
  126. package/skills-library/_general/performance/ref-based-canvas-animation.md +117 -0
  127. package/skills-library/_general/performance/use-visible-interval.md +131 -0
  128. package/skills-library/_general/testing/playwright-firefox-withcredentials-auth-issue.md +104 -0
  129. package/skills-library/_quarantine/README.md +30 -0
  130. package/skills-library/api-patterns/BROADCAST_SCHEDULER_SHARED_EXECUTE_FUNCTION.md +150 -0
  131. package/skills-library/api-patterns/ERROR_RESPONSE_STANDARDS.md +145 -0
  132. package/skills-library/api-patterns/EXPRESS_ROUTE_ORDERING_MIDDLEWARE_INTERCEPTION.md +326 -0
  133. package/skills-library/api-patterns/PAGINATION_PATTERNS.md +137 -0
  134. package/skills-library/api-patterns/PODCAST_PROGRESS_TRACKING_THREE_ROOT_CAUSES.md +277 -0
  135. package/skills-library/api-patterns/RATE_LIMITING_TOGGLE.md +155 -0
  136. package/skills-library/api-patterns/graphql-content-queries.md +708 -0
  137. package/skills-library/appointment-scheduler-design.md +423 -0
  138. package/skills-library/automation/AUTO_POPULATE_COMPLETE_GUIDE.md +631 -0
  139. package/skills-library/automation/CC_WORKFLOW_STUDIO.md +83 -0
  140. package/skills-library/automation/CLAUDE_CODE_SWARM_MODE.md +95 -0
  141. package/skills-library/automation/DAEMON_TRIGGER_FILE_IPC.md +195 -0
  142. package/skills-library/automation/scheduled-content-publishing.md +608 -0
  143. package/skills-library/awesome-workflows/Blogging-Platform-Instructions/view_commands.md +25 -0
  144. package/skills-library/awesome-workflows/CREDENTIAL-SECURITY-WORKFLOW.md +109 -0
  145. package/skills-library/awesome-workflows/DEBUGGING-WORKFLOW.md +124 -0
  146. package/skills-library/awesome-workflows/Design-Review-Workflow/README.md +31 -0
  147. package/skills-library/awesome-workflows/Design-Review-Workflow/design-principles-example.md +129 -0
  148. package/skills-library/awesome-workflows/Design-Review-Workflow/design-review-agent.md +107 -0
  149. package/skills-library/awesome-workflows/Design-Review-Workflow/design-review-claude-md-snippet.md +24 -0
  150. package/skills-library/awesome-workflows/Design-Review-Workflow/design-review-slash-command.md +38 -0
  151. package/skills-library/awesome-workflows/PARALLEL-RESEARCH-WORKFLOW.md +89 -0
  152. package/skills-library/awesome-workflows/PHASE-EXECUTION-WORKFLOW.md +97 -0
  153. package/skills-library/awesome-workflows/SESSION-HANDOFF-WORKFLOW.md +116 -0
  154. package/skills-library/cms-patterns/content-branch-preview.md +515 -0
  155. package/skills-library/cms-patterns/inline-visual-editing.md +666 -0
  156. package/skills-library/cms-patterns/mdx-component-content.md +649 -0
  157. package/skills-library/cms-patterns/media-manager-abstraction.md +827 -0
  158. package/skills-library/cms-patterns/schema-driven-form-generator.md +838 -0
  159. package/skills-library/complexity-metrics/complexity-divider.md +707 -0
  160. package/skills-library/complexity-metrics/work-with-complexity.md +193 -0
  161. package/skills-library/creative-multimedia/animation-stack-guide.md +577 -0
  162. package/skills-library/creative-multimedia/audio-enhancement-pipeline.md +625 -0
  163. package/skills-library/creative-multimedia/content-repurposing-pipeline.md +1146 -0
  164. package/skills-library/creative-multimedia/data-visualization-generator.md +862 -0
  165. package/skills-library/creative-multimedia/doc-to-podcast-pipeline.md +2184 -0
  166. package/skills-library/creative-multimedia/ffmpeg-command-generator.md +405 -0
  167. package/skills-library/creative-multimedia/image-optimization-pipeline.md +605 -0
  168. package/skills-library/creative-multimedia/multi-format-content-generator.md +1759 -0
  169. package/skills-library/creative-multimedia/og-image-generator.md +635 -0
  170. package/skills-library/creative-multimedia/podcast-audio-composition.md +1355 -0
  171. package/skills-library/creative-multimedia/podcast-quality-evaluation.md +1452 -0
  172. package/skills-library/creative-multimedia/podcast-script-generation.md +1841 -0
  173. package/skills-library/creative-multimedia/svg-generation.md +750 -0
  174. package/skills-library/creative-multimedia/text-to-speech-provider-selector.md +1414 -0
  175. package/skills-library/creative-multimedia/transcription-pipeline-selector.md +677 -0
  176. package/skills-library/creative-multimedia/video-streaming-setup.md +559 -0
  177. package/skills-library/database-solutions/AI_RESPONSE_DATABASE_CACHING.md +520 -0
  178. package/skills-library/database-solutions/CONDITIONAL_SQL_MIGRATION_PATTERN.md +119 -0
  179. package/skills-library/database-solutions/DATABASE_COLUMN_NAME_MISMATCH.md +393 -0
  180. package/skills-library/database-solutions/DATABASE_SCHEMA.md +394 -0
  181. package/skills-library/database-solutions/DATABASE_SCHEMA_VERIFICATION_GUIDE.md +348 -0
  182. package/skills-library/database-solutions/DATABASE_STRATEGY.md +71 -0
  183. package/skills-library/database-solutions/ES_MODULE_SEED_SCRIPT_PATTERN.md +52 -0
  184. package/skills-library/database-solutions/MIGRATION_GUIDE.md +3 -0
  185. package/skills-library/database-solutions/PLPGSQL_VARIABLE_CONFLICT_FIX.md +208 -0
  186. package/skills-library/database-solutions/POSTGRESQL_JSONB_DOUBLE_STRINGIFY_FIX.md +245 -0
  187. package/skills-library/database-solutions/POSTGRESQL_LICENSE_TABLE_DESIGN.md +393 -0
  188. package/skills-library/database-solutions/POSTGRESQL_UUID_DOCUMENT_RAG_DUAL_SCOPE.md +732 -0
  189. package/skills-library/database-solutions/POSTGRES_SQL_TEMPLATE_BINDING_ERROR.md +240 -0
  190. package/skills-library/database-solutions/PRISMA_DB_PUSH_DATA_LOSS_PREVENTION.md +141 -0
  191. package/skills-library/database-solutions/PRODUCTION_QUERY_OPTIMIZATION_RESTART_FIX.md +389 -0
  192. package/skills-library/database-solutions/RLS_SECURITY_GUIDE.md +107 -0
  193. package/skills-library/database-solutions/SCHEMA_ENHANCEMENTS_GUIDE.md +373 -0
  194. package/skills-library/database-solutions/SCHEMA_MIGRATION_GUIDE.md +368 -0
  195. package/skills-library/database-solutions/SCHEMA_VERIFICATION_QUICK_REFERENCE.md +104 -0
  196. package/skills-library/database-solutions/ai-erd-generator.md +1213 -0
  197. package/skills-library/database-solutions/content-publishing-states.md +631 -0
  198. package/skills-library/database-solutions/database-schema-designer.md +522 -0
  199. package/skills-library/database-solutions/er-diagram-components.md +569 -0
  200. package/skills-library/database-solutions/er-to-ddl-mapping.md +1405 -0
  201. package/skills-library/database-solutions/erd-creator-textbook-research.md +433 -0
  202. package/skills-library/database-solutions/erd-react-flow-architecture.md +1965 -0
  203. package/skills-library/database-solutions/mariadb-aggregate-function-replacement.md +145 -0
  204. package/skills-library/database-solutions/normalization-validator.md +778 -0
  205. package/skills-library/database-solutions/postgres-full-text-search-content.md +494 -0
  206. package/skills-library/database-solutions/postgresql-to-mysql-runtime-translation.md +286 -0
  207. package/skills-library/database-solutions/regex-alternation-ordering-sql-types.md +92 -0
  208. package/skills-library/database-solutions/reserved-word-context-aware-quoting.md +142 -0
  209. package/skills-library/database-solutions/sql-ddl-generator.md +756 -0
  210. package/skills-library/database-solutions/supabase-connection-pooler-fix.md +102 -0
  211. package/skills-library/deployment-security/CPANEL_NODE_DEPLOYMENT.md +166 -0
  212. package/skills-library/deployment-security/DEPLOYMENT.md +275 -0
  213. package/skills-library/deployment-security/DEPLOYMENT_CHECKLIST.md +363 -0
  214. package/skills-library/deployment-security/DEPLOYMENT_PLAN.md +669 -0
  215. package/skills-library/deployment-security/KNEX_DATABASE_ABSTRACTION.md +444 -0
  216. package/skills-library/deployment-security/LICENSE_KEY_SYSTEM.md +206 -0
  217. package/skills-library/deployment-security/NODE18_DEPENDENCY_COMPATIBILITY.md +284 -0
  218. package/skills-library/deployment-security/PHP_INSTALLER_WIZARD_GUIDE.md +315 -0
  219. package/skills-library/deployment-security/PM2_ENVIRONMENT_VARIABLE_CACHING.md +256 -0
  220. package/skills-library/deployment-security/PM2_MEMORY_EXHAUSTION_FIX.md +370 -0
  221. package/skills-library/deployment-security/PRODUCTION_DEPLOYMENT_GUIDE.md +592 -0
  222. package/skills-library/deployment-security/PRODUCTION_HARDENING_DOCUMENTATION.md +307 -0
  223. package/skills-library/deployment-security/PRODUCTION_RECOVERY_CHERRY_PICK_PATTERN.md +202 -0
  224. package/skills-library/deployment-security/PYINSTALLER_CUDA_WHISPER_BUNDLING.md +236 -0
  225. package/skills-library/deployment-security/SECURITY.md +41 -0
  226. package/skills-library/deployment-security/SMTP_SSL_HOSTNAME_MISMATCH_SHARED_HOSTING.md +220 -0
  227. package/skills-library/deployment-security/SPA_SEO_OPTIMIZATION_CPANEL.md +200 -0
  228. package/skills-library/deployment-security/SUPABASE_EDGE_FUNCTIONS.md +338 -0
  229. package/skills-library/deployment-security/VERCEL_GITHUB_DEPLOYMENT_GUIDE.md +858 -0
  230. package/skills-library/deployment-security/VPS_DEPLOYMENT_READINESS.md +356 -0
  231. package/skills-library/deployment-security/deployment-changes-not-applying.md +241 -0
  232. package/skills-library/deployment-security/env-file-management-production-local.md +203 -0
  233. package/skills-library/deployment-security/express-secure-file-downloads.md +413 -0
  234. package/skills-library/deployment-security/react-production-deployment-desktop-guide.md +2011 -0
  235. package/skills-library/deployment-security/self-hosted-supabase-coolify-guide.md +1684 -0
  236. package/skills-library/deployment-security/unique-features-ai-strategy-plaid-security.md +1613 -0
  237. package/skills-library/deployment-security/vps-deployment.md +135 -0
  238. package/skills-library/document-processing/WORD_EXPORT_MARKDOWN_FORMATTING.md +482 -0
  239. package/skills-library/document-processing/document-ai-landingai-integration.md +677 -0
  240. package/skills-library/document-processing/express-secure-file-downloads-mern.md +413 -0
  241. package/skills-library/document-processing/express-secure-file-downloads.md +413 -0
  242. package/skills-library/document-processing/md-to-word-converter.md +318 -0
  243. package/skills-library/document-processing/pdf-forms-integration/README.md +101 -0
  244. package/skills-library/document-processing/pdf-forms-integration/SKILL.md +662 -0
  245. package/skills-library/ecommerce/ADMIN_PRODUCTS_GUIDE.md +428 -0
  246. package/skills-library/ecommerce/ECOMMERCE_API_REFERENCE.md +776 -0
  247. package/skills-library/ecommerce/ECOMMERCE_COMPLETION_SUMMARY.md +673 -0
  248. package/skills-library/ecommerce/ECOMMERCE_IMPLEMENTATION_GUIDE.md +729 -0
  249. package/skills-library/ecommerce/ECOMMERCE_QUICK_REFERENCE.md +521 -0
  250. package/skills-library/ecommerce/ECOMMERCE_TESTING_CHECKLIST.md +565 -0
  251. package/skills-library/ecommerce/ECOMMERCE_WORKFLOW_GUIDE.md +1059 -0
  252. package/skills-library/ecommerce/PRODUCT_CREATION_EXPANDED.md +522 -0
  253. package/skills-library/ecommerce/agentic-commerce-protocol.md +203 -0
  254. package/skills-library/ecommerce/cart-abandonment-recovery.md +236 -0
  255. package/skills-library/ecommerce/cart-architecture-patterns.md +300 -0
  256. package/skills-library/ecommerce/cart-item-count-indicator.md +264 -0
  257. package/skills-library/ecommerce/checkout-ux-conversion.md +227 -0
  258. package/skills-library/ecommerce/composable-commerce-selection.md +166 -0
  259. package/skills-library/ecommerce/ecommerce-analytics-patterns.md +167 -0
  260. package/skills-library/ecommerce/fraud-detection-patterns.md +179 -0
  261. package/skills-library/ecommerce/inventory-stock-management.md +270 -0
  262. package/skills-library/ecommerce/order-saga-state-machine.md +336 -0
  263. package/skills-library/ecommerce/payment-provider-abstraction.md +245 -0
  264. package/skills-library/ecommerce/pci-compliance-checklist.md +192 -0
  265. package/skills-library/ecommerce/refund-chargeback-handling.md +177 -0
  266. package/skills-library/ecommerce/shipping-carrier-integration.md +218 -0
  267. package/skills-library/ecommerce/webhook-idempotency-patterns.md +253 -0
  268. package/skills-library/excalidraw-diagrams/.github/workflows/ci.yml +558 -0
  269. package/skills-library/excalidraw-diagrams/.github/workflows/prompt-gallery.yml +448 -0
  270. package/skills-library/excalidraw-diagrams/.github/workflows/release.yml +42 -0
  271. package/skills-library/excalidraw-diagrams/.github/workflows/test-reusable-ci.yml +25 -0
  272. package/skills-library/excalidraw-diagrams/CLAUDE.md +57 -0
  273. package/skills-library/excalidraw-diagrams/LICENSE +21 -0
  274. package/skills-library/excalidraw-diagrams/README.md +178 -0
  275. package/skills-library/excalidraw-diagrams/SKILL.md +715 -0
  276. package/skills-library/form-solutions/BUTTON_TYPE_FORM_SUBMISSION.md +336 -0
  277. package/skills-library/form-solutions/FILLABLE_PDF_IMPLEMENTATION.md +226 -0
  278. package/skills-library/form-solutions/SURVEYJS_QUESTIONNAIRE_SYSTEM.md +367 -0
  279. package/skills-library/form-solutions/tiptap-minimal-setup.md +690 -0
  280. package/skills-library/frontend/scholarly-classification-bubble-map.md +149 -0
  281. package/skills-library/infrastructure/ci-cd-pipeline-builder.md +517 -0
  282. package/skills-library/infrastructure/observability-designer.md +264 -0
  283. package/skills-library/infrastructure/performance-profiler.md +621 -0
  284. package/skills-library/installer-wizard-patterns.md +249 -0
  285. package/skills-library/integrations/CLAUDE_CODE_TOKEN_ANALYTICS.md +160 -0
  286. package/skills-library/integrations/CONFIGURABLE_AI_PROVIDER_SELECTION.md +728 -0
  287. package/skills-library/integrations/SOCKET_IO_BROADCAST_ALL_VS_ROOM.md +141 -0
  288. package/skills-library/integrations/VIRTUAL_MEETINGS_IMPLEMENTATION.md +374 -0
  289. package/skills-library/integrations/WORDPRESS_LEARNDASH_DATA_RECOVERY.md +53 -0
  290. package/skills-library/integrations/YOUTUBE_API_SETUP.md +141 -0
  291. package/skills-library/integrations/YOUTUBE_BOOKMARKING_EXPLANATION.md +252 -0
  292. package/skills-library/integrations/YOUTUBE_BOOKMARKING_SOLUTION.md +268 -0
  293. package/skills-library/integrations/YOUTUBE_OAUTH_SETUP_GUIDE.md +200 -0
  294. package/skills-library/integrations/YOUTUBE_VIDEO_FIX_COMPLETE.md +192 -0
  295. package/skills-library/integrations/ai-ml/GEMINI_AI_RAG_PIPELINE_COMPLETE_GUIDE.md +195 -0
  296. package/skills-library/integrations/ai-ml/GEMINI_IMAGE_GENERATION_SETUP.md +64 -0
  297. package/skills-library/integrations/cloudflare/cloudflare-turnstile-debugging.md +202 -0
  298. package/skills-library/integrations/cloudflare/cloudflare-turnstile-implementation.md +476 -0
  299. package/skills-library/integrations/cloudflare-turnstile-debugging.md +202 -0
  300. package/skills-library/integrations/cloudflare-turnstile-implementation.md +476 -0
  301. package/skills-library/integrations/ghost-creator-monetization-pattern.md +454 -0
  302. package/skills-library/integrations/headless-cms-architecture.md +484 -0
  303. package/skills-library/integrations/headless-cms-stack-selection.md +183 -0
  304. package/skills-library/integrations/payload-cms-patterns.md +674 -0
  305. package/skills-library/integrations/realtimestt-openwakeword-cuda-windows.md +229 -0
  306. package/skills-library/integrations/rss-podcast-integration.md +300 -0
  307. package/skills-library/integrations/wordpress/WORDPRESS_LEARNDASH_DATA_RECOVERY.md +53 -0
  308. package/skills-library/integrations/youtube/YOUTUBE_API_SETUP.md +141 -0
  309. package/skills-library/integrations/youtube/YOUTUBE_BOOKMARKING_EXPLANATION.md +252 -0
  310. package/skills-library/integrations/youtube/YOUTUBE_BOOKMARKING_SOLUTION.md +268 -0
  311. package/skills-library/integrations/youtube/YOUTUBE_OAUTH_SETUP_GUIDE.md +200 -0
  312. package/skills-library/integrations/youtube/YOUTUBE_VIDEO_FIX_COMPLETE.md +192 -0
  313. package/skills-library/marketing/campaign-analytics.md +97 -0
  314. package/skills-library/marketing/content-creator.md +105 -0
  315. package/skills-library/marketing/marketing-strategy-pmm.md +94 -0
  316. package/skills-library/marketing/social-media-analyzer.md +81 -0
  317. package/skills-library/methodology/ADVANCED_ORCHESTRATION_PATTERNS.md +401 -0
  318. package/skills-library/methodology/AGENT_SELF_IMPROVEMENT_LOOP.md +179 -0
  319. package/skills-library/methodology/BREATH_BASED_PARALLEL_EXECUTION.md +1 -1
  320. package/skills-library/methodology/CLEANSING_CYCLE.md +358 -0
  321. package/skills-library/methodology/CONFIDENCE_ANNOTATION_PATTERN.md +143 -0
  322. package/skills-library/methodology/CRITICAL_PATTERNS_DOCUMENTATION_COMPLETE.md +204 -0
  323. package/skills-library/methodology/DELIVERABLES_SUMMARY.md +341 -0
  324. package/skills-library/methodology/DIFFICULTY_AWARE_AGENT_ROUTING.md +252 -0
  325. package/skills-library/methodology/EVOLUTIONARY_SKILL_SYNTHESIS.md +219 -0
  326. package/skills-library/methodology/GLOMERULUS_DECISION_GATE.md +223 -0
  327. package/skills-library/methodology/HIBERNATION_SYSTEM.md +231 -0
  328. package/skills-library/methodology/INSTRUMENTATION_OVER_RESTRICTION.md +192 -0
  329. package/skills-library/methodology/MASTER_COMPLETION_SUMMARY.md +444 -0
  330. package/skills-library/methodology/MASTER_SESSION_COMPLETION.md +743 -0
  331. package/skills-library/methodology/MERN_QUICK_REFERENCE.md +358 -0
  332. package/skills-library/methodology/ORGAN_AGENT_MAPPING.md +177 -0
  333. package/skills-library/methodology/PARALLEL_WAVE_BASED_REFACTORING.md +440 -0
  334. package/skills-library/methodology/QUICK_REFERENCE.md +358 -0
  335. package/skills-library/methodology/SDFT_ONPOLICY_SELF_DISTILLATION.md +186 -0
  336. package/skills-library/methodology/SELF_QUESTIONING_TASK_GENERATION.md +270 -0
  337. package/skills-library/methodology/SESSION_COMPLETION_SUMMARY.md +304 -0
  338. package/skills-library/methodology/SESSION_SUMMARY.md +432 -0
  339. package/skills-library/methodology/WARRIOR_WORKFLOW_DEBUGGING_PROTOCOL.md +252 -0
  340. package/skills-library/methodology/tech-debt-tracker.md +570 -0
  341. package/skills-library/parallel-debug/SKILL.md +60 -0
  342. package/skills-library/patterns-standards/API_PATTERN_FIX_SUMMARY.md +236 -0
  343. package/skills-library/patterns-standards/BATCH_OPERATIONS_WITH_PROGRESS_MODAL.md +362 -0
  344. package/skills-library/patterns-standards/CRITICAL_CODING_PATTERNS.md +639 -0
  345. package/skills-library/patterns-standards/DARK_MODE_MODAL_VISIBILITY.md +258 -0
  346. package/skills-library/patterns-standards/ERROR_RESILIENCE_IMPLEMENTATION.md +375 -0
  347. package/skills-library/patterns-standards/ES_MODULE_IMPORT_HOISTING_DOTENV.md +298 -0
  348. package/skills-library/patterns-standards/NESTED_BACKDROP_FILTER_CSS_ARTIFACT_FIX.md +76 -0
  349. package/skills-library/patterns-standards/ORDERED_DETECTOR_PIPELINE_GRACEFUL_FALLBACK.md +333 -0
  350. package/skills-library/patterns-standards/PHASE_IMPORT_ERROR_DEBUGGING.md +271 -0
  351. package/skills-library/patterns-standards/PYNPUT_GLOBAL_HOTKEY_VK_MATCHING.md +252 -0
  352. package/skills-library/patterns-standards/REACT_USEEFFECT_CASCADE_RESET_FIX.md +132 -0
  353. package/skills-library/patterns-standards/SUBMENU_HOVER_DROPDOWN_PATTERN.md +225 -0
  354. package/skills-library/patterns-standards/TAILWIND_TEXT_VISIBILITY_OVERRIDE.md +322 -0
  355. package/skills-library/patterns-standards/THEME_AWARE_CSS_VARIABLES_PATTERN.md +209 -0
  356. package/skills-library/patterns-standards/THEME_USER_OBJECT_PROPERTY_NAMING.md +194 -0
  357. package/skills-library/patterns-standards/TOOLTIP_BLOCKING_CLICKS_FIX.md +267 -0
  358. package/skills-library/patterns-standards/claude-code-plugin-structure.md +235 -0
  359. package/skills-library/patterns-standards/react-i18next-setup.md +429 -0
  360. package/skills-library/patterns-standards/thesys-c1-generative-ui-integration.md +967 -0
  361. package/skills-library/plugin-development/CLAUDE_CODE_COMMAND_REGISTRATION_SILENT_FAILURE.md +315 -0
  362. package/skills-library/plugin-development/plugin-command-namespace-vs-global.md +390 -0
  363. package/skills-library/plugin-development/plugin-doc-auto-generation.md +172 -0
  364. package/skills-library/security/GITHUB_REPO_SECURITY_AUDIT.md +115 -0
  365. package/skills-library/security/admin-deletion-safety.md +396 -0
  366. package/skills-library/security/application-vuln-patterns.md +477 -0
  367. package/skills-library/security/env-secrets-manager.md +686 -0
  368. package/skills-library/security/secure-ai-application-templates.md +347 -0
  369. package/skills-library/security/sql-injection-prevention-postgresjs.md +151 -0
  370. package/skills-library/supabase-connection-pooler-fix.md +102 -0
  371. package/skills-library/system-context/POWERSHELL_BASH_INTEROP.md +82 -0
  372. package/skills-library/system-context/SERVICE_LIFECYCLE_MANAGEMENT.md +119 -0
  373. package/skills-library/system-context/SKILL.md +40 -0
  374. package/skills-library/system-context/WINDOWS_DEV_ENVIRONMENT.md +73 -0
  375. package/skills-library/testing/E2E_PLAYWRIGHT_PATTERNS.md +99 -0
  376. package/skills-library/testing/INTEGRATION_TEST_STRATEGY.md +82 -0
  377. package/skills-library/testing/RED_GREEN_BUGFIX_GATE.md +203 -0
  378. package/skills-library/testing/TEST_DATA_MANAGEMENT.md +69 -0
  379. package/skills-library/testing/VITEST_UNIT_TEST_PATTERNS.md +75 -0
  380. package/skills-library/testing/playwright-api-security-tests.md +202 -0
  381. package/skills-library/toolbox/SKILL.md +84 -0
  382. package/skills-library/toolbox/code-graph-and-web-scraping-mcps.md +237 -0
  383. package/skills-library/ui-ux-pro-max/ACCESSIBILITY_ESSENTIALS.md +115 -0
  384. package/skills-library/ui-ux-pro-max/DESIGN_SYSTEM_SCAFFOLDING.md +133 -0
  385. package/skills-library/ui-ux-pro-max/RESPONSIVE_LAYOUT_PATTERNS.md +119 -0
  386. package/skills-library/ui-ux-pro-max/SKILL.md +386 -0
  387. package/skills-library/ui-ux-pro-max/data/charts.csv +26 -0
  388. package/skills-library/ui-ux-pro-max/data/colors.csv +97 -0
  389. package/skills-library/ui-ux-pro-max/data/icons.csv +101 -0
  390. package/skills-library/ui-ux-pro-max/data/landing.csv +31 -0
  391. package/skills-library/ui-ux-pro-max/data/products.csv +97 -0
  392. package/skills-library/ui-ux-pro-max/data/react-performance.csv +45 -0
  393. package/skills-library/ui-ux-pro-max/data/stacks/astro.csv +54 -0
  394. package/skills-library/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
  395. package/skills-library/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
  396. package/skills-library/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -0
  397. package/skills-library/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
  398. package/skills-library/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
  399. package/skills-library/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
  400. package/skills-library/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
  401. package/skills-library/ui-ux-pro-max/data/stacks/react.csv +54 -0
  402. package/skills-library/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
  403. package/skills-library/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
  404. package/skills-library/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
  405. package/skills-library/ui-ux-pro-max/data/stacks/vue.csv +50 -0
  406. package/skills-library/ui-ux-pro-max/data/styles.csv +68 -0
  407. package/skills-library/ui-ux-pro-max/data/typography.csv +58 -0
  408. package/skills-library/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
  409. package/skills-library/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
  410. package/skills-library/ui-ux-pro-max/data/web-interface.csv +31 -0
  411. package/skills-library/wordpress-style-theme-components.md +1526 -0
  412. package/templates/ASSUMPTIONS.md +1 -1
  413. package/templates/DECISION_LOG.md +0 -1
  414. package/templates/phase-prompt.md +1 -1
  415. package/templates/phoenix-comparison.md +6 -6
  416. package/templates/skill-api-integration.md +106 -0
  417. package/templates/skill-architecture-pattern.md +92 -0
  418. package/templates/skill-debug-pattern.md +98 -0
  419. package/templates/skill-devops-recipe.md +107 -0
  420. package/templates/skill-general.md +65 -0
  421. package/templates/skill-ui-component.md +113 -0
  422. package/tools/uat-runner.py +179 -0
  423. package/version.json +7 -3
  424. package/workflows/handoff-session.md +2 -2
  425. package/workflows/new-project.md +2 -2
  426. package/workflows/plan-phase.md +1 -1
  427. package/.claude-plugin/plugin.json +0 -64
  428. package/skills-library/_general/methodology/LIVE_BREADCRUMB_PROTOCOL.md +0 -242
  429. package/skills-library/_general/methodology/llm-judge-memory-crud.md +0 -241
  430. package/skills-library/methodology/REFLEXION_MEMORY_PATTERN.md +0 -183
  431. package/skills-library/methodology/RESEARCH_BACKED_WORKFLOW_UPGRADE.md +0 -263
  432. package/skills-library/methodology/SABBATH_REST_PATTERN.md +0 -267
  433. package/skills-library/methodology/STONE_AND_SCAFFOLD.md +0 -220
  434. package/skills-library/specialists/api-architecture/api-designer.md +0 -49
  435. package/skills-library/specialists/api-architecture/graphql-architect.md +0 -49
  436. package/skills-library/specialists/api-architecture/mcp-developer.md +0 -51
  437. package/skills-library/specialists/api-architecture/microservices-architect.md +0 -50
  438. package/skills-library/specialists/api-architecture/websocket-engineer.md +0 -48
  439. package/skills-library/specialists/backend/django-expert.md +0 -52
  440. package/skills-library/specialists/backend/fastapi-expert.md +0 -52
  441. package/skills-library/specialists/backend/laravel-specialist.md +0 -52
  442. package/skills-library/specialists/backend/nestjs-expert.md +0 -51
  443. package/skills-library/specialists/backend/rails-expert.md +0 -53
  444. package/skills-library/specialists/backend/spring-boot-engineer.md +0 -56
  445. package/skills-library/specialists/data-ml/fine-tuning-expert.md +0 -48
  446. package/skills-library/specialists/data-ml/ml-pipeline.md +0 -47
  447. package/skills-library/specialists/data-ml/pandas-pro.md +0 -47
  448. package/skills-library/specialists/data-ml/rag-architect.md +0 -51
  449. package/skills-library/specialists/data-ml/spark-engineer.md +0 -47
  450. package/skills-library/specialists/frontend/angular-architect.md +0 -52
  451. package/skills-library/specialists/frontend/flutter-expert.md +0 -51
  452. package/skills-library/specialists/frontend/nextjs-developer.md +0 -54
  453. package/skills-library/specialists/frontend/react-native-expert.md +0 -50
  454. package/skills-library/specialists/frontend/vue-expert.md +0 -51
  455. package/skills-library/specialists/infrastructure/chaos-engineer.md +0 -74
  456. package/skills-library/specialists/infrastructure/cloud-architect.md +0 -70
  457. package/skills-library/specialists/infrastructure/database-optimizer.md +0 -64
  458. package/skills-library/specialists/infrastructure/devops-engineer.md +0 -70
  459. package/skills-library/specialists/infrastructure/kubernetes-specialist.md +0 -52
  460. package/skills-library/specialists/infrastructure/monitoring-expert.md +0 -70
  461. package/skills-library/specialists/infrastructure/sre-engineer.md +0 -70
  462. package/skills-library/specialists/infrastructure/terraform-engineer.md +0 -51
  463. package/skills-library/specialists/languages/cpp-pro.md +0 -74
  464. package/skills-library/specialists/languages/csharp-developer.md +0 -69
  465. package/skills-library/specialists/languages/dotnet-core-expert.md +0 -54
  466. package/skills-library/specialists/languages/golang-pro.md +0 -51
  467. package/skills-library/specialists/languages/java-architect.md +0 -49
  468. package/skills-library/specialists/languages/javascript-pro.md +0 -68
  469. package/skills-library/specialists/languages/kotlin-specialist.md +0 -68
  470. package/skills-library/specialists/languages/php-pro.md +0 -49
  471. package/skills-library/specialists/languages/python-pro.md +0 -52
  472. package/skills-library/specialists/languages/react-expert.md +0 -51
  473. package/skills-library/specialists/languages/rust-engineer.md +0 -50
  474. package/skills-library/specialists/languages/sql-pro.md +0 -56
  475. package/skills-library/specialists/languages/swift-expert.md +0 -69
  476. package/skills-library/specialists/languages/typescript-pro.md +0 -51
  477. package/skills-library/specialists/platform/atlassian-mcp.md +0 -52
  478. package/skills-library/specialists/platform/embedded-systems.md +0 -53
  479. package/skills-library/specialists/platform/game-developer.md +0 -53
  480. package/skills-library/specialists/platform/salesforce-developer.md +0 -53
  481. package/skills-library/specialists/platform/shopify-expert.md +0 -49
  482. package/skills-library/specialists/platform/wordpress-pro.md +0 -49
  483. package/skills-library/specialists/quality/code-documenter.md +0 -51
  484. package/skills-library/specialists/quality/code-reviewer.md +0 -67
  485. package/skills-library/specialists/quality/debugging-wizard.md +0 -51
  486. package/skills-library/specialists/quality/fullstack-guardian.md +0 -51
  487. package/skills-library/specialists/quality/legacy-modernizer.md +0 -50
  488. package/skills-library/specialists/quality/playwright-expert.md +0 -65
  489. package/skills-library/specialists/quality/spec-miner.md +0 -56
  490. package/skills-library/specialists/quality/test-master.md +0 -65
  491. package/skills-library/specialists/security/secure-code-guardian.md +0 -55
  492. package/skills-library/specialists/security/security-reviewer.md +0 -53
  493. package/skills-library/specialists/workflow/architecture-designer.md +0 -53
  494. package/skills-library/specialists/workflow/cli-developer.md +0 -70
  495. package/skills-library/specialists/workflow/feature-forge.md +0 -65
  496. package/skills-library/specialists/workflow/prompt-engineer.md +0 -54
  497. package/skills-library/specialists/workflow/the-fool.md +0 -62
  498. /package/skills-library/{performance → _general/performance}/cache-augmented-generation.md +0 -0
  499. /package/skills-library/{debugging → parallel-debug}/FAILURE_TAXONOMY_CLASSIFICATION.md +0 -0
  500. /package/skills-library/{debugging → parallel-debug}/THREE_AGENT_HYPOTHESIS_DEBUGGING.md +0 -0
@@ -0,0 +1,621 @@
1
+ # Performance Profiler
2
+
3
+ **Tier:** POWERFUL
4
+ **Category:** Engineering
5
+ **Domain:** Performance Engineering
6
+
7
+ ---
8
+
9
+ ## Overview
10
+
11
+ Systematic performance profiling for Node.js, Python, and Go applications. Identifies CPU, memory, and I/O bottlenecks; generates flamegraphs; analyzes bundle sizes; optimizes database queries; detects memory leaks; and runs load tests with k6 and Artillery. Always measures before and after.
12
+
13
+ ## Core Capabilities
14
+
15
+ - **CPU profiling** — flamegraphs for Node.js, py-spy for Python, pprof for Go
16
+ - **Memory profiling** — heap snapshots, leak detection, GC pressure
17
+ - **Bundle analysis** — webpack-bundle-analyzer, Next.js bundle analyzer
18
+ - **Database optimization** — EXPLAIN ANALYZE, slow query log, N+1 detection
19
+ - **Load testing** — k6 scripts, Artillery scenarios, ramp-up patterns
20
+ - **Before/after measurement** — establish baseline, profile, optimize, verify
21
+
22
+ ---
23
+
24
+ ## When to Use
25
+
26
+ - App is slow and you don't know where the bottleneck is
27
+ - P99 latency exceeds SLA before a release
28
+ - Memory usage grows over time (suspected leak)
29
+ - Bundle size increased after adding dependencies
30
+ - Preparing for a traffic spike (load test before launch)
31
+ - Database queries taking >100ms
32
+
33
+ ---
34
+
35
+ ## Golden Rule: Measure First
36
+
37
+ ```bash
38
+ # Establish baseline BEFORE any optimization
39
+ # Record: P50, P95, P99 latency | RPS | error rate | memory usage
40
+
41
+ # Wrong: "I think the N+1 query is slow, let me fix it"
42
+ # Right: Profile → confirm bottleneck → fix → measure again → verify improvement
43
+ ```
44
+
45
+ ---
46
+
47
+ ## Node.js Profiling
48
+
49
+ ### CPU Flamegraph
50
+
51
+ ```bash
52
+ # Method 1: clinic.js (best for development)
53
+ npm install -g clinic
54
+
55
+ # CPU flamegraph
56
+ clinic flame -- node dist/server.js
57
+
58
+ # Heap profiler
59
+ clinic heapprofiler -- node dist/server.js
60
+
61
+ # Bubble chart (event loop blocking)
62
+ clinic bubbles -- node dist/server.js
63
+
64
+ # Load with autocannon while profiling
65
+ autocannon -c 50 -d 30 http://localhost:3000/api/tasks &
66
+ clinic flame -- node dist/server.js
67
+ ```
68
+
69
+ ```bash
70
+ # Method 2: Node.js built-in profiler
71
+ node --prof dist/server.js
72
+ # After running some load:
73
+ node --prof-process isolate-*.log | head -100
74
+ ```
75
+
76
+ ```bash
77
+ # Method 3: V8 CPU profiler via inspector
78
+ node --inspect dist/server.js
79
+ # Open Chrome DevTools → Performance → Record
80
+ ```
81
+
82
+ ### Heap Snapshot / Memory Leak Detection
83
+
84
+ ```javascript
85
+ // Add to your server for on-demand heap snapshots
86
+ import v8 from 'v8'
87
+ import fs from 'fs'
88
+
89
+ // Endpoint: POST /debug/heap-snapshot (protect with auth!)
90
+ app.post('/debug/heap-snapshot', (req, res) => {
91
+ const filename = `heap-${Date.now()}.heapsnapshot`
92
+ const snapshot = v8.writeHeapSnapshot(filename)
93
+ res.json({ snapshot })
94
+ })
95
+ ```
96
+
97
+ ```bash
98
+ # Take snapshots over time and compare in Chrome DevTools
99
+ curl -X POST http://localhost:3000/debug/heap-snapshot
100
+ # Wait 5 minutes of load
101
+ curl -X POST http://localhost:3000/debug/heap-snapshot
102
+ # Open both snapshots in Chrome → Memory → Compare
103
+ ```
104
+
105
+ ### Detect Event Loop Blocking
106
+
107
+ ```javascript
108
+ // Add blocked-at to detect synchronous blocking
109
+ import blocked from 'blocked-at'
110
+
111
+ blocked((time, stack) => {
112
+ console.warn(`Event loop blocked for ${time}ms`)
113
+ console.warn(stack.join('\n'))
114
+ }, { threshold: 100 }) // Alert if blocked > 100ms
115
+ ```
116
+
117
+ ### Node.js Memory Profiling Script
118
+
119
+ ```javascript
120
+ // scripts/memory-profile.mjs
121
+ // Run: node --experimental-vm-modules scripts/memory-profile.mjs
122
+
123
+ import { createRequire } from 'module'
124
+ const require = createRequire(import.meta.url)
125
+
126
+ function formatBytes(bytes) {
127
+ return (bytes / 1024 / 1024).toFixed(2) + ' MB'
128
+ }
129
+
130
+ function measureMemory(label) {
131
+ const mem = process.memoryUsage()
132
+ console.log(`\n[${label}]`)
133
+ console.log(` RSS: ${formatBytes(mem.rss)}`)
134
+ console.log(` Heap Used: ${formatBytes(mem.heapUsed)}`)
135
+ console.log(` Heap Total:${formatBytes(mem.heapTotal)}`)
136
+ console.log(` External: ${formatBytes(mem.external)}`)
137
+ return mem
138
+ }
139
+
140
+ const baseline = measureMemory('Baseline')
141
+
142
+ // Simulate your operation
143
+ for (let i = 0; i < 1000; i++) {
144
+ // Replace with your actual operation
145
+ const result = await someOperation()
146
+ }
147
+
148
+ const after = measureMemory('After 1000 operations')
149
+
150
+ console.log(`\n[Delta]`)
151
+ console.log(` Heap Used: +${formatBytes(after.heapUsed - baseline.heapUsed)}`)
152
+
153
+ // If heap keeps growing across GC cycles, you have a leak
154
+ global.gc?.() // Run with --expose-gc flag
155
+ const afterGC = measureMemory('After GC')
156
+ if (afterGC.heapUsed > baseline.heapUsed * 1.1) {
157
+ console.warn('⚠️ Possible memory leak detected (>10% growth after GC)')
158
+ }
159
+ ```
160
+
161
+ ---
162
+
163
+ ## Python Profiling
164
+
165
+ ### CPU Profiling with py-spy
166
+
167
+ ```bash
168
+ # Install
169
+ pip install py-spy
170
+
171
+ # Profile a running process (no code changes needed)
172
+ py-spy top --pid $(pgrep -f "uvicorn")
173
+
174
+ # Generate flamegraph SVG
175
+ py-spy record -o flamegraph.svg --pid $(pgrep -f "uvicorn") --duration 30
176
+
177
+ # Profile from the start
178
+ py-spy record -o flamegraph.svg -- python -m uvicorn app.main:app
179
+
180
+ # Open flamegraph.svg in browser — look for wide bars = hot code paths
181
+ ```
182
+
183
+ ### cProfile for function-level profiling
184
+
185
+ ```python
186
+ # scripts/profile_endpoint.py
187
+ import cProfile
188
+ import pstats
189
+ import io
190
+ from app.services.task_service import TaskService
191
+
192
+ def run():
193
+ service = TaskService()
194
+ for _ in range(100):
195
+ service.list_tasks(user_id="user_1", page=1, limit=20)
196
+
197
+ profiler = cProfile.Profile()
198
+ profiler.enable()
199
+ run()
200
+ profiler.disable()
201
+
202
+ # Print top 20 functions by cumulative time
203
+ stream = io.StringIO()
204
+ stats = pstats.Stats(profiler, stream=stream)
205
+ stats.sort_stats('cumulative')
206
+ stats.print_stats(20)
207
+ print(stream.getvalue())
208
+ ```
209
+
210
+ ### Memory profiling with memory_profiler
211
+
212
+ ```python
213
+ # pip install memory-profiler
214
+ from memory_profiler import profile
215
+
216
+ @profile
217
+ def my_function():
218
+ # Function to profile
219
+ data = load_large_dataset()
220
+ result = process(data)
221
+ return result
222
+ ```
223
+
224
+ ```bash
225
+ # Run with line-by-line memory tracking
226
+ python -m memory_profiler scripts/profile_function.py
227
+
228
+ # Output:
229
+ # Line # Mem usage Increment Line Contents
230
+ # ================================================
231
+ # 10 45.3 MiB 45.3 MiB def my_function():
232
+ # 11 78.1 MiB 32.8 MiB data = load_large_dataset()
233
+ # 12 156.2 MiB 78.1 MiB result = process(data)
234
+ ```
235
+
236
+ ---
237
+
238
+ ## Go Profiling with pprof
239
+
240
+ ```go
241
+ // main.go — add pprof endpoints
242
+ import _ "net/http/pprof"
243
+ import "net/http"
244
+
245
+ func main() {
246
+ // pprof endpoints at /debug/pprof/
247
+ go func() {
248
+ log.Println(http.ListenAndServe(":6060", nil))
249
+ }()
250
+ // ... rest of your app
251
+ }
252
+ ```
253
+
254
+ ```bash
255
+ # CPU profile (30s)
256
+ go tool pprof -http=:8080 http://localhost:6060/debug/pprof/profile?seconds=30
257
+
258
+ # Memory profile
259
+ go tool pprof -http=:8080 http://localhost:6060/debug/pprof/heap
260
+
261
+ # Goroutine leak detection
262
+ curl http://localhost:6060/debug/pprof/goroutine?debug=1
263
+
264
+ # In pprof UI: "Flame Graph" view → find the tallest bars
265
+ ```
266
+
267
+ ---
268
+
269
+ ## Bundle Size Analysis
270
+
271
+ ### Next.js Bundle Analyzer
272
+
273
+ ```bash
274
+ # Install
275
+ pnpm add -D @next/bundle-analyzer
276
+
277
+ # next.config.js
278
+ const withBundleAnalyzer = require('@next/bundle-analyzer')({
279
+ enabled: process.env.ANALYZE === 'true',
280
+ })
281
+ module.exports = withBundleAnalyzer({})
282
+
283
+ # Run analyzer
284
+ ANALYZE=true pnpm build
285
+ # Opens browser with treemap of bundle
286
+ ```
287
+
288
+ ### What to look for
289
+
290
+ ```bash
291
+ # Find the largest chunks
292
+ pnpm build 2>&1 | grep -E "^\s+(λ|○|●)" | sort -k4 -rh | head -20
293
+
294
+ # Check if a specific package is too large
295
+ # Visit: https://bundlephobia.com/package/moment@2.29.4
296
+ # moment: 67.9kB gzipped → replace with date-fns (13.8kB) or dayjs (6.9kB)
297
+
298
+ # Find duplicate packages
299
+ pnpm dedupe --check
300
+
301
+ # Visualize what's in a chunk
302
+ npx source-map-explorer .next/static/chunks/*.js
303
+ ```
304
+
305
+ ### Common bundle wins
306
+
307
+ ```typescript
308
+ // Before: import entire lodash
309
+ import _ from 'lodash' // 71kB
310
+
311
+ // After: import only what you need
312
+ import debounce from 'lodash/debounce' // 2kB
313
+
314
+ // Before: moment.js
315
+ import moment from 'moment' // 67kB
316
+
317
+ // After: dayjs
318
+ import dayjs from 'dayjs' // 7kB
319
+
320
+ // Before: static import (always in bundle)
321
+ import HeavyChart from '@/components/HeavyChart'
322
+
323
+ // After: dynamic import (loaded on demand)
324
+ const HeavyChart = dynamic(() => import('@/components/HeavyChart'), {
325
+ loading: () => <Skeleton />,
326
+ })
327
+ ```
328
+
329
+ ---
330
+
331
+ ## Database Query Optimization
332
+
333
+ ### Find slow queries
334
+
335
+ ```sql
336
+ -- PostgreSQL: enable pg_stat_statements
337
+ CREATE EXTENSION IF NOT EXISTS pg_stat_statements;
338
+
339
+ -- Top 20 slowest queries
340
+ SELECT
341
+ round(mean_exec_time::numeric, 2) AS mean_ms,
342
+ calls,
343
+ round(total_exec_time::numeric, 2) AS total_ms,
344
+ round(stddev_exec_time::numeric, 2) AS stddev_ms,
345
+ left(query, 80) AS query
346
+ FROM pg_stat_statements
347
+ WHERE calls > 10
348
+ ORDER BY mean_exec_time DESC
349
+ LIMIT 20;
350
+
351
+ -- Reset stats
352
+ SELECT pg_stat_statements_reset();
353
+ ```
354
+
355
+ ```bash
356
+ # MySQL slow query log
357
+ mysql -e "SET GLOBAL slow_query_log = 'ON'; SET GLOBAL long_query_time = 0.1;"
358
+ tail -f /var/log/mysql/slow-query.log
359
+ ```
360
+
361
+ ### EXPLAIN ANALYZE
362
+
363
+ ```sql
364
+ -- Always use EXPLAIN (ANALYZE, BUFFERS) for real timing
365
+ EXPLAIN (ANALYZE, BUFFERS, FORMAT TEXT)
366
+ SELECT t.*, u.name as assignee_name
367
+ FROM tasks t
368
+ LEFT JOIN users u ON u.id = t.assignee_id
369
+ WHERE t.project_id = 'proj_123'
370
+ AND t.deleted_at IS NULL
371
+ ORDER BY t.created_at DESC
372
+ LIMIT 20;
373
+
374
+ -- Look for:
375
+ -- Seq Scan on large table → needs index
376
+ -- Nested Loop with high rows → N+1, consider JOIN or batch
377
+ -- Sort → can index handle the sort?
378
+ -- Hash Join → fine for moderate sizes
379
+ ```
380
+
381
+ ### Detect N+1 Queries
382
+
383
+ ```typescript
384
+ // Add query logging in dev
385
+ import { db } from './client'
386
+
387
+ // Drizzle: enable logging
388
+ const db = drizzle(pool, { logger: true })
389
+
390
+ // Or use a query counter middleware
391
+ let queryCount = 0
392
+ db.$on('query', () => queryCount++)
393
+
394
+ // In tests:
395
+ queryCount = 0
396
+ const tasks = await getTasksWithAssignees(projectId)
397
+ expect(queryCount).toBe(1) // Fail if it's 21 (1 + 20 N+1s)
398
+ ```
399
+
400
+ ```python
401
+ # Django: detect N+1 with django-silk or nplusone
402
+ from nplusone.ext.django.middleware import NPlusOneMiddleware
403
+ MIDDLEWARE = ['nplusone.ext.django.middleware.NPlusOneMiddleware']
404
+ NPLUSONE_RAISE = True # Raise exception on N+1 in tests
405
+ ```
406
+
407
+ ### Fix N+1 — Before/After
408
+
409
+ ```typescript
410
+ // Before: N+1 (1 query for tasks + N queries for assignees)
411
+ const tasks = await db.select().from(tasksTable)
412
+ for (const task of tasks) {
413
+ task.assignee = await db.select().from(usersTable)
414
+ .where(eq(usersTable.id, task.assigneeId))
415
+ .then(r => r[0])
416
+ }
417
+
418
+ // After: 1 query with JOIN
419
+ const tasks = await db
420
+ .select({
421
+ id: tasksTable.id,
422
+ title: tasksTable.title,
423
+ assigneeName: usersTable.name,
424
+ assigneeEmail: usersTable.email,
425
+ })
426
+ .from(tasksTable)
427
+ .leftJoin(usersTable, eq(usersTable.id, tasksTable.assigneeId))
428
+ .where(eq(tasksTable.projectId, projectId))
429
+ ```
430
+
431
+ ---
432
+
433
+ ## Load Testing with k6
434
+
435
+ ```javascript
436
+ // tests/load/api-load-test.js
437
+ import http from 'k6/http'
438
+ import { check, sleep } from 'k6'
439
+ import { Rate, Trend } from 'k6/metrics'
440
+
441
+ const errorRate = new Rate('errors')
442
+ const taskListDuration = new Trend('task_list_duration')
443
+
444
+ export const options = {
445
+ stages: [
446
+ { duration: '30s', target: 10 }, // Ramp up to 10 VUs
447
+ { duration: '1m', target: 50 }, // Ramp to 50 VUs
448
+ { duration: '2m', target: 50 }, // Sustain 50 VUs
449
+ { duration: '30s', target: 100 }, // Spike to 100 VUs
450
+ { duration: '1m', target: 50 }, // Back to 50
451
+ { duration: '30s', target: 0 }, // Ramp down
452
+ ],
453
+ thresholds: {
454
+ http_req_duration: ['p(95)<500'], // 95% of requests < 500ms
455
+ http_req_duration: ['p(99)<1000'], // 99% < 1s
456
+ errors: ['rate<0.01'], // Error rate < 1%
457
+ task_list_duration: ['p(95)<200'], // Task list specifically < 200ms
458
+ },
459
+ }
460
+
461
+ const BASE_URL = __ENV.BASE_URL || 'http://localhost:3000'
462
+
463
+ export function setup() {
464
+ // Get auth token once
465
+ const loginRes = http.post(`${BASE_URL}/api/auth/login`, JSON.stringify({
466
+ email: 'loadtest@example.com',
467
+ password: 'loadtest123',
468
+ }), { headers: { 'Content-Type': 'application/json' } })
469
+
470
+ return { token: loginRes.json('token') }
471
+ }
472
+
473
+ export default function(data) {
474
+ const headers = {
475
+ 'Authorization': `Bearer ${data.token}`,
476
+ 'Content-Type': 'application/json',
477
+ }
478
+
479
+ // Scenario 1: List tasks
480
+ const start = Date.now()
481
+ const listRes = http.get(`${BASE_URL}/api/tasks?limit=20`, { headers })
482
+ taskListDuration.add(Date.now() - start)
483
+
484
+ check(listRes, {
485
+ 'list tasks: status 200': (r) => r.status === 200,
486
+ 'list tasks: has items': (r) => r.json('items') !== undefined,
487
+ }) || errorRate.add(1)
488
+
489
+ sleep(0.5)
490
+
491
+ // Scenario 2: Create task
492
+ const createRes = http.post(
493
+ `${BASE_URL}/api/tasks`,
494
+ JSON.stringify({ title: `Load test task ${Date.now()}`, priority: 'medium' }),
495
+ { headers }
496
+ )
497
+
498
+ check(createRes, {
499
+ 'create task: status 201': (r) => r.status === 201,
500
+ }) || errorRate.add(1)
501
+
502
+ sleep(1)
503
+ }
504
+
505
+ export function teardown(data) {
506
+ // Cleanup: delete load test tasks
507
+ }
508
+ ```
509
+
510
+ ```bash
511
+ # Run load test
512
+ k6 run tests/load/api-load-test.js \
513
+ --env BASE_URL=https://staging.myapp.com
514
+
515
+ # With Grafana output
516
+ k6 run --out influxdb=http://localhost:8086/k6 tests/load/api-load-test.js
517
+ ```
518
+
519
+ ---
520
+
521
+ ## Before/After Measurement Template
522
+
523
+ ```markdown
524
+ ## Performance Optimization: [What You Fixed]
525
+
526
+ **Date:** 2026-03-01
527
+ **Engineer:** @username
528
+ **Ticket:** PROJ-123
529
+
530
+ ### Problem
531
+ [1-2 sentences: what was slow, how was it observed]
532
+
533
+ ### Root Cause
534
+ [What the profiler revealed]
535
+
536
+ ### Baseline (Before)
537
+ | Metric | Value |
538
+ |--------|-------|
539
+ | P50 latency | 480ms |
540
+ | P95 latency | 1,240ms |
541
+ | P99 latency | 3,100ms |
542
+ | RPS @ 50 VUs | 42 |
543
+ | Error rate | 0.8% |
544
+ | DB queries/req | 23 (N+1) |
545
+
546
+ Profiler evidence: [link to flamegraph or screenshot]
547
+
548
+ ### Fix Applied
549
+ [What changed — code diff or description]
550
+
551
+ ### After
552
+ | Metric | Before | After | Delta |
553
+ |--------|--------|-------|-------|
554
+ | P50 latency | 480ms | 48ms | -90% |
555
+ | P95 latency | 1,240ms | 120ms | -90% |
556
+ | P99 latency | 3,100ms | 280ms | -91% |
557
+ | RPS @ 50 VUs | 42 | 380 | +804% |
558
+ | Error rate | 0.8% | 0% | -100% |
559
+ | DB queries/req | 23 | 1 | -96% |
560
+
561
+ ### Verification
562
+ Load test run: [link to k6 output]
563
+ ```
564
+
565
+ ---
566
+
567
+ ## Optimization Checklist
568
+
569
+ ### Quick wins (check these first)
570
+
571
+ ```
572
+ Database
573
+ □ Missing indexes on WHERE/ORDER BY columns
574
+ □ N+1 queries (check query count per request)
575
+ □ Loading all columns when only 2-3 needed (SELECT *)
576
+ □ No LIMIT on unbounded queries
577
+ □ Missing connection pool (creating new connection per request)
578
+
579
+ Node.js
580
+ □ Sync I/O (fs.readFileSync) in hot path
581
+ □ JSON.parse/stringify of large objects in hot loop
582
+ □ Missing caching for expensive computations
583
+ □ No compression (gzip/brotli) on responses
584
+ □ Dependencies loaded in request handler (move to module level)
585
+
586
+ Bundle
587
+ □ Moment.js → dayjs/date-fns
588
+ □ Lodash (full) → lodash/function imports
589
+ □ Static imports of heavy components → dynamic imports
590
+ □ Images not optimized / not using next/image
591
+ □ No code splitting on routes
592
+
593
+ API
594
+ □ No pagination on list endpoints
595
+ □ No response caching (Cache-Control headers)
596
+ □ Serial awaits that could be parallel (Promise.all)
597
+ □ Fetching related data in a loop instead of JOIN
598
+ ```
599
+
600
+ ---
601
+
602
+ ## Common Pitfalls
603
+
604
+ - **Optimizing without measuring** — you'll optimize the wrong thing
605
+ - **Testing in development** — profile against production-like data volumes
606
+ - **Ignoring P99** — P50 can look fine while P99 is catastrophic
607
+ - **Premature optimization** — fix correctness first, then performance
608
+ - **Not re-measuring** — always verify the fix actually improved things
609
+ - **Load testing production** — use staging with production-size data
610
+
611
+ ---
612
+
613
+ ## Best Practices
614
+
615
+ 1. **Baseline first, always** — record metrics before touching anything
616
+ 2. **One change at a time** — isolate the variable to confirm causation
617
+ 3. **Profile with realistic data** — 10 rows in dev, millions in prod — different bottlenecks
618
+ 4. **Set performance budgets** — `p(95) < 200ms` in CI thresholds with k6
619
+ 5. **Monitor continuously** — add Datadog/Prometheus metrics for key paths
620
+ 6. **Cache invalidation strategy** — cache aggressively, invalidate precisely
621
+ 7. **Document the win** — before/after in the PR description motivates the team