appiq-solution 1.2.0 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (903) hide show
  1. package/#NEW APP PROMPT/ARCHITECTURE.md +279 -0
  2. package/#NEW APP PROMPT/ARCHITECTURE_UNIFIED.md +414 -0
  3. package/#NEW APP PROMPT/accesibility_prompt.md +103 -0
  4. package/#NEW APP PROMPT/clean-code.mdc +55 -0
  5. package/#NEW APP PROMPT/codequality.mdc +47 -0
  6. package/#NEW APP PROMPT/flutter-ai-rules/LICENSE +21 -0
  7. package/#NEW APP PROMPT/flutter-ai-rules/README.md +104 -0
  8. package/#NEW APP PROMPT/flutter-ai-rules/combined/README.md +25 -0
  9. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart.md +192 -0
  10. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart__under_6K.md +99 -0
  11. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_bloc_mocktail.md +308 -0
  12. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_bloc_mocktail__under_6K.md +87 -0
  13. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_change_notifier.md +254 -0
  14. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_change_notifier__under_6K.md +98 -0
  15. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_provider.md +261 -0
  16. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_provider__under_6K.md +105 -0
  17. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_riverpod_mockito.md +371 -0
  18. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_riverpod_mockito__under_6K.md +92 -0
  19. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_with_bloc.md +287 -0
  20. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_with_bloc__under_6K.md +68 -0
  21. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_with_riverpod.md +375 -0
  22. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_with_riverpod__under_6K.md +106 -0
  23. package/#NEW APP PROMPT/flutter-ai-rules/media/flutter_ai_rules.png +0 -0
  24. package/#NEW APP PROMPT/flutter-ai-rules/media/mocktail_md_01.png +0 -0
  25. package/#NEW APP PROMPT/flutter-ai-rules/media/mocktail_md_02.png +0 -0
  26. package/#NEW APP PROMPT/flutter-ai-rules/rules/bloc.md +94 -0
  27. package/#NEW APP PROMPT/flutter-ai-rules/rules/dart_3_updates.md +93 -0
  28. package/#NEW APP PROMPT/flutter-ai-rules/rules/effective_dart.md +105 -0
  29. package/#NEW APP PROMPT/flutter-ai-rules/rules/flutter_app_architecture.md +57 -0
  30. package/#NEW APP PROMPT/flutter-ai-rules/rules/flutter_change_notifier.md +62 -0
  31. package/#NEW APP PROMPT/flutter-ai-rules/rules/flutter_errors.md +11 -0
  32. package/#NEW APP PROMPT/flutter-ai-rules/rules/mockito.md +31 -0
  33. package/#NEW APP PROMPT/flutter-ai-rules/rules/mocktail.md +24 -0
  34. package/#NEW APP PROMPT/flutter-ai-rules/rules/provider.md +69 -0
  35. package/#NEW APP PROMPT/flutter-ai-rules/rules/riverpod.md +188 -0
  36. package/#NEW APP PROMPT/generate ssh.md +4 -0
  37. package/#NEW APP PROMPT/project_ai_prompt.md +544 -0
  38. package/{CHANGELOG.md → #Tools/APPIQ-METHOD/CHANGELOG.md} +173 -119
  39. package/#Tools/APPIQ-METHOD/README.md +139 -0
  40. package/#Tools/APPIQ-METHOD/appiq_start.md +232 -0
  41. package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/agents/architect.md +0 -6
  42. package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/agents/bmad-orchestrator.md +84 -0
  43. package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/agents/dev.md +9 -23
  44. package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/agents/pm.md +1 -3
  45. package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/agents/qa.md +0 -17
  46. package/#Tools/APPIQ-METHOD/bmad-core/data/technical-preferences.md +3 -0
  47. package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/templates/fullstack-architecture-tmpl.yaml +5 -12
  48. package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/user-guide.md +9 -10
  49. package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/working-in-the-brownfield.md +36 -39
  50. package/#Tools/APPIQ-METHOD/deployment/DEPLOYMENT_GUIDE.md +426 -0
  51. package/#Tools/APPIQ-METHOD/deployment/GITHUB_RELEASE_GUIDE.md +326 -0
  52. package/#Tools/APPIQ-METHOD/deployment/README.md +331 -0
  53. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agent-teams/team-all.yaml +14 -0
  54. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agent-teams/team-fullstack.yaml +18 -0
  55. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agent-teams/team-ide-minimal.yaml +10 -0
  56. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agent-teams/team-no-ui.yaml +13 -0
  57. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/analyst.md +81 -0
  58. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/architect.md +84 -0
  59. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/bmad-master.md +108 -0
  60. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/bmad-orchestrator.md +234 -0
  61. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/dev.md +76 -0
  62. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/pm.md +79 -0
  63. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/po.md +76 -0
  64. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/qa.md +69 -0
  65. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/sm.md +62 -0
  66. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/ux-expert.md +66 -0
  67. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/checklists/architect-checklist.md +443 -0
  68. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/checklists/change-checklist.md +182 -0
  69. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/checklists/pm-checklist.md +375 -0
  70. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/checklists/po-master-checklist.md +441 -0
  71. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/checklists/story-dod-checklist.md +101 -0
  72. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/checklists/story-draft-checklist.md +156 -0
  73. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/data/bmad-kb.md +803 -0
  74. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/data/brainstorming-techniques.md +36 -0
  75. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/data/elicitation-methods.md +134 -0
  76. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/data/technical-preferences.md +3 -0
  77. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/advanced-elicitation.md +117 -0
  78. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/brownfield-create-epic.md +160 -0
  79. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/brownfield-create-story.md +147 -0
  80. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/correct-course.md +70 -0
  81. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/create-brownfield-story.md +304 -0
  82. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/create-deep-research-prompt.md +289 -0
  83. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/create-next-story.md +112 -0
  84. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/document-project.md +341 -0
  85. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/facilitate-brainstorming-session.md +136 -0
  86. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/generate-ai-frontend-prompt.md +51 -0
  87. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/index-docs.md +179 -0
  88. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/kb-mode-interaction.md +75 -0
  89. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/review-story.md +145 -0
  90. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/shard-doc.md +187 -0
  91. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/validate-next-story.md +134 -0
  92. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/architecture-tmpl.yaml +650 -0
  93. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/brainstorming-output-tmpl.yaml +156 -0
  94. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/brownfield-architecture-tmpl.yaml +476 -0
  95. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/brownfield-prd-tmpl.yaml +280 -0
  96. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/competitor-analysis-tmpl.yaml +293 -0
  97. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/front-end-architecture-tmpl.yaml +206 -0
  98. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/front-end-spec-tmpl.yaml +349 -0
  99. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/fullstack-architecture-tmpl.yaml +805 -0
  100. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/market-research-tmpl.yaml +252 -0
  101. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/prd-tmpl.yaml +202 -0
  102. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/project-brief-tmpl.yaml +221 -0
  103. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/story-tmpl.yaml +137 -0
  104. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/user-guide.md +250 -0
  105. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/workflows/brownfield-fullstack.yaml +297 -0
  106. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/workflows/brownfield-service.yaml +187 -0
  107. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/workflows/brownfield-ui.yaml +197 -0
  108. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/workflows/greenfield-fullstack.yaml +240 -0
  109. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/workflows/greenfield-service.yaml +206 -0
  110. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/workflows/greenfield-ui.yaml +235 -0
  111. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/working-in-the-brownfield.md +361 -0
  112. package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-phaser-game-dev/config.yaml +1 -1
  113. package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-unity-game-dev/config.yaml +1 -1
  114. package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-infrastructure-devops/config.yaml +1 -1
  115. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agent-teams/mobile-team-cross-platform.yaml +22 -0
  116. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agent-teams/mobile-team-flutter.yaml +20 -0
  117. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agent-teams/mobile-team-minimal.yaml +13 -0
  118. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agent-teams/mobile-team-react-native.yaml +20 -0
  119. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agents/mobile-analytics.md +1487 -0
  120. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agents/mobile-architect.md +279 -0
  121. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agents/mobile-developer.md +649 -0
  122. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agents/mobile-pm.md +339 -0
  123. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agents/mobile-qa.md +622 -0
  124. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agents/mobile-security.md +1027 -0
  125. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agents/mobile-ux-expert.md +1451 -0
  126. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/checklists/mobile-development-checklist.md +490 -0
  127. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/config.yaml +54 -0
  128. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/data/bmad-kb.md +292 -0
  129. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/data/flutter-development-guidelines.md +483 -0
  130. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/tasks/existing-app-analysis.md +645 -0
  131. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/tasks/platform-selection.md +489 -0
  132. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/templates/mobile-architecture-tmpl.yaml +437 -0
  133. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/templates/mobile-prd-tmpl.yaml +408 -0
  134. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/workflows/mobile-app-development-init.yaml +555 -0
  135. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/workflows/mobile-brownfield-flutter.yaml +336 -0
  136. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/workflows/mobile-brownfield-react-native.yaml +345 -0
  137. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/workflows/mobile-greenfield-flutter.yaml +281 -0
  138. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/workflows/mobile-greenfield-react-native.yaml +283 -0
  139. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/workflows/mobile-platform-selection.yaml +404 -0
  140. package/#Tools/APPIQ-METHOD/deployment/build/slash-commands/appiq.md +273 -0
  141. package/#Tools/APPIQ-METHOD/deployment/build/slash-commands/ide-integrations/claude-appiq.md +294 -0
  142. package/#Tools/APPIQ-METHOD/deployment/build/slash-commands/ide-integrations/cursor-appiq.md +516 -0
  143. package/#Tools/APPIQ-METHOD/deployment/build/slash-commands/ide-integrations/universal-appiq.md +448 -0
  144. package/#Tools/APPIQ-METHOD/deployment/build/slash-commands/ide-integrations/windsurf-appiq.md +698 -0
  145. package/#Tools/APPIQ-METHOD/deployment/build/slash-commands/start.md +211 -0
  146. package/#Tools/APPIQ-METHOD/deployment/build-release.sh +449 -0
  147. package/#Tools/APPIQ-METHOD/deployment/create-release.sh +196 -0
  148. package/#Tools/APPIQ-METHOD/deployment/dist/appiq_installer.sh +678 -0
  149. package/#Tools/APPIQ-METHOD/deployment/docs/main_prd.md +36 -0
  150. package/#Tools/APPIQ-METHOD/deployment/init_appiq.sh +805 -0
  151. package/#Tools/APPIQ-METHOD/deployment/init_appiq_v2.sh +678 -0
  152. package/#Tools/APPIQ-METHOD/deployment/installers/appiq-global.sh +91 -0
  153. package/#Tools/APPIQ-METHOD/deployment/installers/claude-integration.sh +281 -0
  154. package/#Tools/APPIQ-METHOD/deployment/installers/cursor-integration.sh +257 -0
  155. package/#Tools/APPIQ-METHOD/deployment/installers/terminal-integration.sh +645 -0
  156. package/#Tools/APPIQ-METHOD/deployment/installers/windsurf-integration.sh +350 -0
  157. package/#Tools/APPIQ-METHOD/deployment/package-v2.sh +97 -0
  158. package/#Tools/APPIQ-METHOD/deployment/package.sh +363 -0
  159. package/#Tools/APPIQ-METHOD/deployment/quick-install.sh +57 -0
  160. package/#Tools/APPIQ-METHOD/dist/agents/analyst.txt +2882 -0
  161. package/#Tools/APPIQ-METHOD/dist/agents/architect.txt +3543 -0
  162. package/#Tools/APPIQ-METHOD/dist/agents/bmad-master.txt +8756 -0
  163. package/#Tools/APPIQ-METHOD/dist/agents/bmad-orchestrator.txt +1601 -0
  164. package/#Tools/APPIQ-METHOD/dist/agents/dev.txt +428 -0
  165. package/#Tools/APPIQ-METHOD/dist/agents/pm.txt +2227 -0
  166. package/#Tools/APPIQ-METHOD/dist/agents/po.txt +1364 -0
  167. package/#Tools/APPIQ-METHOD/dist/agents/qa.txt +386 -0
  168. package/#Tools/APPIQ-METHOD/dist/agents/sm.txt +668 -0
  169. package/#Tools/APPIQ-METHOD/dist/agents/ux-expert.txt +701 -0
  170. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.txt +2408 -0
  171. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.txt +1631 -0
  172. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.txt +822 -0
  173. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +11100 -0
  174. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.txt +4047 -0
  175. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.txt +3744 -0
  176. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.txt +465 -0
  177. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.txt +990 -0
  178. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt +15578 -0
  179. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-infrastructure-devops/agents/infra-devops-platform.txt +2077 -0
  180. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-analytics.txt +1530 -0
  181. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-architect.txt +322 -0
  182. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-developer.txt +692 -0
  183. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-pm.txt +382 -0
  184. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-qa.txt +665 -0
  185. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-security.txt +1070 -0
  186. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-ux-expert.txt +1494 -0
  187. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-mobile-app-dev/teams/mobile-team-cross-platform.txt +15613 -0
  188. package/#Tools/APPIQ-METHOD/dist/teams/team-all.txt +11171 -0
  189. package/#Tools/APPIQ-METHOD/dist/teams/team-fullstack.txt +10501 -0
  190. package/#Tools/APPIQ-METHOD/dist/teams/team-ide-minimal.txt +3618 -0
  191. package/#Tools/APPIQ-METHOD/dist/teams/team-no-ui.txt +9060 -0
  192. package/#Tools/APPIQ-METHOD/expansion-packs/README.md +3 -0
  193. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-phaser-game-dev/agent-teams/phaser-2d-nodejs-game-team.yaml +13 -0
  194. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.md +71 -0
  195. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.md +78 -0
  196. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.md +64 -0
  197. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-phaser-game-dev/checklists/game-design-checklist.md +201 -0
  198. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-phaser-game-dev/checklists/game-story-dod-checklist.md +160 -0
  199. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-phaser-game-dev/config.yaml +8 -0
  200. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-phaser-game-dev/data/bmad-kb.md +254 -0
  201. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-phaser-game-dev/data/development-guidelines.md +651 -0
  202. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-phaser-game-dev/tasks/advanced-elicitation.md +111 -0
  203. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-phaser-game-dev/tasks/create-game-story.md +216 -0
  204. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-phaser-game-dev/tasks/game-design-brainstorming.md +308 -0
  205. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-phaser-game-dev/templates/game-architecture-tmpl.yaml +613 -0
  206. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-phaser-game-dev/templates/game-brief-tmpl.yaml +356 -0
  207. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-phaser-game-dev/templates/game-design-doc-tmpl.yaml +343 -0
  208. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-phaser-game-dev/templates/game-story-tmpl.yaml +253 -0
  209. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-phaser-game-dev/templates/level-design-doc-tmpl.yaml +484 -0
  210. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-phaser-game-dev/workflows/game-dev-greenfield.yaml +183 -0
  211. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-phaser-game-dev/workflows/game-prototype.yaml +175 -0
  212. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/agent-teams/unity-2d-game-team.yaml +14 -0
  213. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.md +80 -0
  214. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.md +77 -0
  215. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.md +78 -0
  216. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.md +65 -0
  217. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/checklists/game-architect-checklist.md +396 -0
  218. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/checklists/game-change-checklist.md +203 -0
  219. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/checklists/game-design-checklist.md +201 -0
  220. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/checklists/game-story-dod-checklist.md +132 -0
  221. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/config.yaml +6 -0
  222. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/data/bmad-kb.md +776 -0
  223. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/data/development-guidelines.md +590 -0
  224. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/tasks/advanced-elicitation.md +111 -0
  225. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/tasks/correct-course-game.md +151 -0
  226. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/tasks/create-game-story.md +184 -0
  227. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/tasks/game-design-brainstorming.md +308 -0
  228. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/tasks/validate-game-story.md +200 -0
  229. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/templates/game-architecture-tmpl.yaml +1030 -0
  230. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/templates/game-brief-tmpl.yaml +356 -0
  231. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/templates/game-design-doc-tmpl.yaml +705 -0
  232. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/templates/game-story-tmpl.yaml +256 -0
  233. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/templates/level-design-doc-tmpl.yaml +484 -0
  234. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/workflows/game-dev-greenfield.yaml +183 -0
  235. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/workflows/game-prototype.yaml +175 -0
  236. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-infrastructure-devops/README.md +147 -0
  237. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-infrastructure-devops/agents/infra-devops-platform.md +71 -0
  238. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-infrastructure-devops/checklists/infrastructure-checklist.md +484 -0
  239. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-infrastructure-devops/config.yaml +9 -0
  240. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-infrastructure-devops/data/bmad-kb.md +308 -0
  241. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-infrastructure-devops/tasks/review-infrastructure.md +160 -0
  242. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-infrastructure-devops/tasks/validate-infrastructure.md +154 -0
  243. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-architecture-tmpl.yaml +424 -0
  244. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-platform-from-arch-tmpl.yaml +629 -0
  245. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agent-teams/mobile-team-cross-platform.yaml +22 -0
  246. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agent-teams/mobile-team-flutter.yaml +20 -0
  247. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agent-teams/mobile-team-minimal.yaml +13 -0
  248. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agent-teams/mobile-team-react-native.yaml +20 -0
  249. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agents/mobile-analytics.md +1487 -0
  250. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agents/mobile-architect.md +279 -0
  251. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agents/mobile-developer.md +649 -0
  252. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agents/mobile-pm.md +339 -0
  253. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agents/mobile-qa.md +622 -0
  254. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agents/mobile-security.md +1027 -0
  255. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agents/mobile-ux-expert.md +1451 -0
  256. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/checklists/mobile-development-checklist.md +490 -0
  257. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/config.yaml +54 -0
  258. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/data/bmad-kb.md +292 -0
  259. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/data/flutter-development-guidelines.md +483 -0
  260. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/tasks/existing-app-analysis.md +645 -0
  261. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/tasks/platform-selection.md +489 -0
  262. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/templates/mobile-architecture-tmpl.yaml +437 -0
  263. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/templates/mobile-prd-tmpl.yaml +408 -0
  264. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/workflows/mobile-app-development-init.yaml +555 -0
  265. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/workflows/mobile-brownfield-flutter.yaml +336 -0
  266. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/workflows/mobile-brownfield-react-native.yaml +345 -0
  267. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/workflows/mobile-greenfield-flutter.yaml +281 -0
  268. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/workflows/mobile-greenfield-react-native.yaml +283 -0
  269. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/workflows/mobile-platform-selection.yaml +404 -0
  270. package/#Tools/APPIQ-METHOD/package-bmad-backup.json +78 -0
  271. package/#Tools/APPIQ-METHOD/package.json +93 -0
  272. package/#Tools/APPIQ-METHOD/slash-commands/appiq.md +273 -0
  273. package/#Tools/APPIQ-METHOD/slash-commands/ide-integrations/claude-appiq.md +294 -0
  274. package/#Tools/APPIQ-METHOD/slash-commands/ide-integrations/cursor-appiq.md +516 -0
  275. package/#Tools/APPIQ-METHOD/slash-commands/ide-integrations/universal-appiq.md +448 -0
  276. package/#Tools/APPIQ-METHOD/slash-commands/ide-integrations/windsurf-appiq.md +698 -0
  277. package/#Tools/APPIQ-METHOD/slash-commands/start.md +211 -0
  278. package/#Tools/APPIQ-METHOD/tools/bmad-npx-wrapper.js +41 -0
  279. package/#Tools/APPIQ-METHOD/tools/builders/web-builder.js +681 -0
  280. package/#Tools/APPIQ-METHOD/tools/bump-all-versions.js +106 -0
  281. package/#Tools/APPIQ-METHOD/tools/bump-expansion-version.js +83 -0
  282. package/#Tools/APPIQ-METHOD/tools/cli.js +152 -0
  283. package/#Tools/APPIQ-METHOD/tools/installer/README.md +8 -0
  284. package/#Tools/APPIQ-METHOD/tools/installer/bin/bmad.js +469 -0
  285. package/#Tools/APPIQ-METHOD/tools/installer/config/ide-agent-config.yaml +58 -0
  286. package/#Tools/APPIQ-METHOD/tools/installer/config/install.config.yaml +92 -0
  287. package/#Tools/APPIQ-METHOD/tools/installer/lib/config-loader.js +253 -0
  288. package/#Tools/APPIQ-METHOD/tools/installer/lib/file-manager.js +411 -0
  289. package/#Tools/APPIQ-METHOD/tools/installer/lib/ide-base-setup.js +227 -0
  290. package/#Tools/APPIQ-METHOD/tools/installer/lib/ide-setup.js +1096 -0
  291. package/#Tools/APPIQ-METHOD/tools/installer/lib/installer.js +1746 -0
  292. package/#Tools/APPIQ-METHOD/tools/installer/lib/memory-profiler.js +224 -0
  293. package/#Tools/APPIQ-METHOD/tools/installer/lib/module-manager.js +110 -0
  294. package/#Tools/APPIQ-METHOD/tools/installer/lib/resource-locator.js +310 -0
  295. package/#Tools/APPIQ-METHOD/tools/installer/package.json +43 -0
  296. package/#Tools/APPIQ-METHOD/tools/lib/dependency-resolver.js +179 -0
  297. package/#Tools/APPIQ-METHOD/tools/lib/yaml-utils.js +29 -0
  298. package/#Tools/APPIQ-METHOD/tools/md-assets/web-agent-startup-instructions.md +39 -0
  299. package/#Tools/APPIQ-METHOD/tools/semantic-release-sync-installer.js +30 -0
  300. package/#Tools/APPIQ-METHOD/tools/sync-installer-version.js +34 -0
  301. package/#Tools/APPIQ-METHOD/tools/update-expansion-version.js +54 -0
  302. package/#Tools/APPIQ-METHOD/tools/upgraders/v3-to-v4-upgrader.js +763 -0
  303. package/#Tools/APPIQ-METHOD/tools/version-bump.js +79 -0
  304. package/#Tools/APPIQ-METHOD/tools/yaml-format.js +240 -0
  305. package/#Tools/SkyReels-V2/.pre-commit-config.yaml +25 -0
  306. package/#Tools/SkyReels-V2/LICENSE.txt +38 -0
  307. package/#Tools/SkyReels-V2/README.md +766 -0
  308. package/#Tools/SkyReels-V2/generate_video.py +161 -0
  309. package/#Tools/SkyReels-V2/generate_video_df.py +220 -0
  310. package/#Tools/SkyReels-V2/requirements.txt +16 -0
  311. package/#Tools/SkyReels-V2/skycaptioner_v1/README.md +278 -0
  312. package/#Tools/SkyReels-V2/skycaptioner_v1/examples/test.csv +5 -0
  313. package/#Tools/SkyReels-V2/skycaptioner_v1/examples/test_result.csv +5 -0
  314. package/#Tools/SkyReels-V2/skycaptioner_v1/infer_fusion_caption.sh +9 -0
  315. package/#Tools/SkyReels-V2/skycaptioner_v1/infer_struct_caption.sh +8 -0
  316. package/#Tools/SkyReels-V2/skycaptioner_v1/requirements.txt +3 -0
  317. package/#Tools/SkyReels-V2/skycaptioner_v1/scripts/gradio_fusion_caption.py +146 -0
  318. package/#Tools/SkyReels-V2/skycaptioner_v1/scripts/gradio_struct_caption.py +92 -0
  319. package/#Tools/SkyReels-V2/skycaptioner_v1/scripts/utils.py +19 -0
  320. package/#Tools/SkyReels-V2/skycaptioner_v1/scripts/vllm_fusion_caption.py +256 -0
  321. package/#Tools/SkyReels-V2/skycaptioner_v1/scripts/vllm_struct_caption.py +156 -0
  322. package/#Tools/SkyReels-V2/skyreels_v2_infer/__init__.py +1 -0
  323. package/#Tools/SkyReels-V2/skyreels_v2_infer/distributed/xdit_context_parallel.py +286 -0
  324. package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/__init__.py +69 -0
  325. package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/attention.py +179 -0
  326. package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/clip.py +525 -0
  327. package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/t5.py +454 -0
  328. package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/tokenizers.py +78 -0
  329. package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/transformer.py +839 -0
  330. package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/vae.py +639 -0
  331. package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/xlm_roberta.py +165 -0
  332. package/#Tools/SkyReels-V2/skyreels_v2_infer/pipelines/__init__.py +5 -0
  333. package/#Tools/SkyReels-V2/skyreels_v2_infer/pipelines/diffusion_forcing_pipeline.py +659 -0
  334. package/#Tools/SkyReels-V2/skyreels_v2_infer/pipelines/image2video_pipeline.py +156 -0
  335. package/#Tools/SkyReels-V2/skyreels_v2_infer/pipelines/prompt_enhancer.py +65 -0
  336. package/#Tools/SkyReels-V2/skyreels_v2_infer/pipelines/text2video_pipeline.py +110 -0
  337. package/#Tools/SkyReels-V2/skyreels_v2_infer/scheduler/__init__.py +0 -0
  338. package/#Tools/SkyReels-V2/skyreels_v2_infer/scheduler/fm_solvers_unipc.py +759 -0
  339. package/#Tools/SuperClaude/.claude/commands/analyze.md +36 -0
  340. package/#Tools/SuperClaude/.claude/commands/build.md +35 -0
  341. package/#Tools/SuperClaude/.claude/commands/cleanup.md +46 -0
  342. package/#Tools/SuperClaude/.claude/commands/deploy.md +55 -0
  343. package/#Tools/SuperClaude/.claude/commands/design.md +91 -0
  344. package/#Tools/SuperClaude/.claude/commands/dev-setup.md +37 -0
  345. package/#Tools/SuperClaude/.claude/commands/document.md +99 -0
  346. package/#Tools/SuperClaude/.claude/commands/estimate.md +69 -0
  347. package/#Tools/SuperClaude/.claude/commands/explain.md +85 -0
  348. package/#Tools/SuperClaude/.claude/commands/git.md +47 -0
  349. package/#Tools/SuperClaude/.claude/commands/improve.md +162 -0
  350. package/#Tools/SuperClaude/.claude/commands/index.md +159 -0
  351. package/#Tools/SuperClaude/.claude/commands/load.md +65 -0
  352. package/#Tools/SuperClaude/.claude/commands/migrate.md +76 -0
  353. package/#Tools/SuperClaude/.claude/commands/scan.md +163 -0
  354. package/#Tools/SuperClaude/.claude/commands/shared/ambiguity-check.yml +40 -0
  355. package/#Tools/SuperClaude/.claude/commands/shared/audit.yml +21 -0
  356. package/#Tools/SuperClaude/.claude/commands/shared/checkpoint.yml +28 -0
  357. package/#Tools/SuperClaude/.claude/commands/shared/cleanup-patterns.yml +107 -0
  358. package/#Tools/SuperClaude/.claude/commands/shared/command-memory.yml +52 -0
  359. package/#Tools/SuperClaude/.claude/commands/shared/command-templates.yml +167 -0
  360. package/#Tools/SuperClaude/.claude/commands/shared/config-validator.yml +206 -0
  361. package/#Tools/SuperClaude/.claude/commands/shared/constants.yml +311 -0
  362. package/#Tools/SuperClaude/.claude/commands/shared/documentation-dirs.yml +134 -0
  363. package/#Tools/SuperClaude/.claude/commands/shared/error-handling.yml +341 -0
  364. package/#Tools/SuperClaude/.claude/commands/shared/evidence.yml +75 -0
  365. package/#Tools/SuperClaude/.claude/commands/shared/execution-lifecycle.yml +277 -0
  366. package/#Tools/SuperClaude/.claude/commands/shared/git-operations.yml +217 -0
  367. package/#Tools/SuperClaude/.claude/commands/shared/git-workflow.yml +37 -0
  368. package/#Tools/SuperClaude/.claude/commands/shared/implementation.yml +199 -0
  369. package/#Tools/SuperClaude/.claude/commands/shared/loading-config.yml +73 -0
  370. package/#Tools/SuperClaude/.claude/commands/shared/mcp-flags.yml +109 -0
  371. package/#Tools/SuperClaude/.claude/commands/shared/migration-report.md +165 -0
  372. package/#Tools/SuperClaude/.claude/commands/shared/patterns.yml +155 -0
  373. package/#Tools/SuperClaude/.claude/commands/shared/performance.yml +317 -0
  374. package/#Tools/SuperClaude/.claude/commands/shared/planning-mode.yml +51 -0
  375. package/#Tools/SuperClaude/.claude/commands/shared/research-first.yml +278 -0
  376. package/#Tools/SuperClaude/.claude/commands/shared/session-recovery.yml +144 -0
  377. package/#Tools/SuperClaude/.claude/commands/shared/severity-levels.yml +252 -0
  378. package/#Tools/SuperClaude/.claude/commands/shared/task-system.yml +380 -0
  379. package/#Tools/SuperClaude/.claude/commands/shared/task-ultracompressed.yml +88 -0
  380. package/#Tools/SuperClaude/.claude/commands/shared/templates/feature-template.md +59 -0
  381. package/#Tools/SuperClaude/.claude/commands/shared/templates/task-ultracompressed.md +26 -0
  382. package/#Tools/SuperClaude/.claude/commands/shared/thinking-modes.yml +61 -0
  383. package/#Tools/SuperClaude/.claude/commands/shared/ultracompressed.yml +97 -0
  384. package/#Tools/SuperClaude/.claude/commands/shared/user-experience.yml +208 -0
  385. package/#Tools/SuperClaude/.claude/commands/shared/validation.yml +54 -0
  386. package/#Tools/SuperClaude/.claude/commands/shared/workflow-chains.yml +138 -0
  387. package/#Tools/SuperClaude/.claude/commands/spawn.md +106 -0
  388. package/#Tools/SuperClaude/.claude/commands/task.md +110 -0
  389. package/#Tools/SuperClaude/.claude/commands/test.md +67 -0
  390. package/#Tools/SuperClaude/.claude/commands/troubleshoot.md +93 -0
  391. package/#Tools/SuperClaude/.github/ISSUE_TEMPLATE/bug_report.yml +114 -0
  392. package/#Tools/SuperClaude/.github/ISSUE_TEMPLATE/feature_request.yml +119 -0
  393. package/#Tools/SuperClaude/.github/ISSUE_TEMPLATE/question.yml +87 -0
  394. package/#Tools/SuperClaude/.github/pull_request_template.md +62 -0
  395. package/#Tools/SuperClaude/CHANGELOG.md +109 -0
  396. package/#Tools/SuperClaude/CLAUDE.md +95 -0
  397. package/#Tools/SuperClaude/CODE_OF_CONDUCT.md +45 -0
  398. package/#Tools/SuperClaude/CONTRIBUTING.md +225 -0
  399. package/#Tools/SuperClaude/Commands_Cheat_Sheet.md +160 -0
  400. package/#Tools/SuperClaude/LICENSE +21 -0
  401. package/#Tools/SuperClaude/MCP.md +117 -0
  402. package/#Tools/SuperClaude/PERSONAS.md +115 -0
  403. package/#Tools/SuperClaude/README.md +249 -0
  404. package/#Tools/SuperClaude/RULES.md +220 -0
  405. package/#Tools/SuperClaude/SECURITY.md +91 -0
  406. package/#Tools/SuperClaude/install.sh +296 -0
  407. package/#Tools/claude-talk-to-figma-mcp/.github/workflows/test.yml +36 -0
  408. package/#Tools/claude-talk-to-figma-mcp/CHANGELOG.md +88 -0
  409. package/#Tools/claude-talk-to-figma-mcp/Dockerfile +16 -0
  410. package/#Tools/claude-talk-to-figma-mcp/LICENSE +22 -0
  411. package/#Tools/claude-talk-to-figma-mcp/TESTING.md +216 -0
  412. package/#Tools/claude-talk-to-figma-mcp/bun.lock +964 -0
  413. package/#Tools/claude-talk-to-figma-mcp/context/01/00-analisis.md +151 -0
  414. package/#Tools/claude-talk-to-figma-mcp/context/01/01-tools-refactor.md +370 -0
  415. package/#Tools/claude-talk-to-figma-mcp/context/01/02-tools-refactor-backlog.md +253 -0
  416. package/#Tools/claude-talk-to-figma-mcp/context/01/03-tools-refactor-test.md +138 -0
  417. package/#Tools/claude-talk-to-figma-mcp/context/01/04-tools-refactor-channel-error.md +133 -0
  418. package/#Tools/claude-talk-to-figma-mcp/context/01/04-tools-refactor-test-backlog.md +0 -0
  419. package/#Tools/claude-talk-to-figma-mcp/context/01/05-tools-refactor-four-tools-error.md +356 -0
  420. package/#Tools/claude-talk-to-figma-mcp/context/01/06-tools-refactor-four-tools-error-backlog.md +425 -0
  421. package/#Tools/claude-talk-to-figma-mcp/context/01/prompt-dev-nodejs-bun.md +105 -0
  422. package/#Tools/claude-talk-to-figma-mcp/context/01-prompt.md +135 -0
  423. package/#Tools/claude-talk-to-figma-mcp/context/02/00-analisis.md +131 -0
  424. package/#Tools/claude-talk-to-figma-mcp/context/02/01-plan.md +162 -0
  425. package/#Tools/claude-talk-to-figma-mcp/context/02/02-backlog.md +241 -0
  426. package/#Tools/claude-talk-to-figma-mcp/context/02-analisis.md +202 -0
  427. package/#Tools/claude-talk-to-figma-mcp/context/99-notas.md +139 -0
  428. package/#Tools/claude-talk-to-figma-mcp/context/pr-14/pr-14-analisis.md +221 -0
  429. package/#Tools/claude-talk-to-figma-mcp/context/pr-14/pr-14-claude-tests.md +152 -0
  430. package/#Tools/claude-talk-to-figma-mcp/context/pr-14/pr-14-npm-publishing.md +272 -0
  431. package/#Tools/claude-talk-to-figma-mcp/images/claude-talk-to-figma.png +0 -0
  432. package/#Tools/claude-talk-to-figma-mcp/images/mcp-figma-plugin-configuration.png +0 -0
  433. package/#Tools/claude-talk-to-figma-mcp/jest.config.cjs +25 -0
  434. package/#Tools/claude-talk-to-figma-mcp/package.json +67 -0
  435. package/#Tools/claude-talk-to-figma-mcp/prompts/prompt-ux-ui-especialista-es.md +82 -0
  436. package/#Tools/claude-talk-to-figma-mcp/prompts/prompt-ux-ui-especialista-gal.md +80 -0
  437. package/#Tools/claude-talk-to-figma-mcp/prompts/prompt-ux-ui-especialista-pt.md +80 -0
  438. package/#Tools/claude-talk-to-figma-mcp/prompts/prompt-ux-ui-specialist.md +80 -0
  439. package/#Tools/claude-talk-to-figma-mcp/readme.md +307 -0
  440. package/#Tools/claude-talk-to-figma-mcp/scripts/configure-claude.js +90 -0
  441. package/#Tools/claude-talk-to-figma-mcp/scripts/setup.sh +30 -0
  442. package/#Tools/claude-talk-to-figma-mcp/scripts/test-integration.js +339 -0
  443. package/#Tools/claude-talk-to-figma-mcp/smithery.yaml +26 -0
  444. package/#Tools/claude-talk-to-figma-mcp/src/claude_mcp_plugin/code.js +3295 -0
  445. package/#Tools/claude-talk-to-figma-mcp/src/claude_mcp_plugin/manifest.json +24 -0
  446. package/#Tools/claude-talk-to-figma-mcp/src/claude_mcp_plugin/setcharacters.js +215 -0
  447. package/#Tools/claude-talk-to-figma-mcp/src/claude_mcp_plugin/ui.html +656 -0
  448. package/#Tools/claude-talk-to-figma-mcp/src/socket.ts +349 -0
  449. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/bun.lock +246 -0
  450. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/config/config.ts +22 -0
  451. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/package.json +31 -0
  452. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/prompts/index.ts +297 -0
  453. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/server.ts +62 -0
  454. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tools/component-tools.ts +48 -0
  455. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tools/creation-tools.ts +620 -0
  456. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tools/document-tools.ts +390 -0
  457. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tools/index.ts +28 -0
  458. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tools/modification-tools.ts +408 -0
  459. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tools/text-tools.ts +531 -0
  460. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tsconfig.json +18 -0
  461. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/types/color.ts +13 -0
  462. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/types/index.ts +87 -0
  463. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/utils/defaults.ts +23 -0
  464. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/utils/figma-helpers.ts +142 -0
  465. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/utils/logger.ts +8 -0
  466. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/utils/websocket.ts +258 -0
  467. package/#Tools/claude-talk-to-figma-mcp/tests/fixtures/test-data.ts +32 -0
  468. package/#Tools/claude-talk-to-figma-mcp/tests/integration/set-fill-color.test.ts +309 -0
  469. package/#Tools/claude-talk-to-figma-mcp/tests/integration/set-stroke-color.test.ts +387 -0
  470. package/#Tools/claude-talk-to-figma-mcp/tests/setup.ts +7 -0
  471. package/#Tools/claude-talk-to-figma-mcp/tests/unit/utils/defaults.test.ts +131 -0
  472. package/#Tools/claude-talk-to-figma-mcp/tsconfig.json +17 -0
  473. package/#Tools/claude-talk-to-figma-mcp/tsup.config.ts +14 -0
  474. package/#Tools/jwt creator/AuthKey_MZ7UQGFV2Q.p8 +6 -0
  475. package/#Tools/jwt creator/generate_apple_jwt.js +18 -0
  476. package/#Tools/jwt creator/node_modules/.package-lock.json +145 -0
  477. package/#Tools/jwt creator/node_modules/buffer-equal-constant-time/.travis.yml +4 -0
  478. package/#Tools/jwt creator/node_modules/buffer-equal-constant-time/LICENSE.txt +12 -0
  479. package/#Tools/jwt creator/node_modules/buffer-equal-constant-time/README.md +50 -0
  480. package/#Tools/jwt creator/node_modules/buffer-equal-constant-time/index.js +41 -0
  481. package/#Tools/jwt creator/node_modules/buffer-equal-constant-time/package.json +21 -0
  482. package/#Tools/jwt creator/node_modules/buffer-equal-constant-time/test.js +42 -0
  483. package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/CODEOWNERS +1 -0
  484. package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/LICENSE +201 -0
  485. package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/README.md +65 -0
  486. package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/package.json +46 -0
  487. package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/src/ecdsa-sig-formatter.d.ts +17 -0
  488. package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/src/ecdsa-sig-formatter.js +187 -0
  489. package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/src/param-bytes-for-alg.js +23 -0
  490. package/#Tools/jwt creator/node_modules/jsonwebtoken/LICENSE +21 -0
  491. package/#Tools/jwt creator/node_modules/jsonwebtoken/README.md +396 -0
  492. package/#Tools/jwt creator/node_modules/jsonwebtoken/decode.js +30 -0
  493. package/#Tools/jwt creator/node_modules/jsonwebtoken/index.js +8 -0
  494. package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/JsonWebTokenError.js +14 -0
  495. package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/NotBeforeError.js +13 -0
  496. package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/TokenExpiredError.js +13 -0
  497. package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/asymmetricKeyDetailsSupported.js +3 -0
  498. package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/psSupported.js +3 -0
  499. package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/rsaPssKeyDetailsSupported.js +3 -0
  500. package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/timespan.js +18 -0
  501. package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/validateAsymmetricKey.js +66 -0
  502. package/#Tools/jwt creator/node_modules/jsonwebtoken/package.json +71 -0
  503. package/#Tools/jwt creator/node_modules/jsonwebtoken/sign.js +253 -0
  504. package/#Tools/jwt creator/node_modules/jsonwebtoken/verify.js +263 -0
  505. package/#Tools/jwt creator/node_modules/jwa/LICENSE +17 -0
  506. package/#Tools/jwt creator/node_modules/jwa/README.md +150 -0
  507. package/#Tools/jwt creator/node_modules/jwa/index.js +266 -0
  508. package/#Tools/jwt creator/node_modules/jwa/package.json +37 -0
  509. package/#Tools/jwt creator/node_modules/jws/CHANGELOG.md +34 -0
  510. package/#Tools/jwt creator/node_modules/jws/LICENSE +17 -0
  511. package/#Tools/jwt creator/node_modules/jws/index.js +22 -0
  512. package/#Tools/jwt creator/node_modules/jws/lib/data-stream.js +55 -0
  513. package/#Tools/jwt creator/node_modules/jws/lib/sign-stream.js +78 -0
  514. package/#Tools/jwt creator/node_modules/jws/lib/tostring.js +10 -0
  515. package/#Tools/jwt creator/node_modules/jws/lib/verify-stream.js +120 -0
  516. package/#Tools/jwt creator/node_modules/jws/package.json +34 -0
  517. package/#Tools/jwt creator/node_modules/jws/readme.md +255 -0
  518. package/#Tools/jwt creator/node_modules/lodash.includes/LICENSE +47 -0
  519. package/#Tools/jwt creator/node_modules/lodash.includes/README.md +18 -0
  520. package/#Tools/jwt creator/node_modules/lodash.includes/index.js +745 -0
  521. package/#Tools/jwt creator/node_modules/lodash.includes/package.json +17 -0
  522. package/#Tools/jwt creator/node_modules/lodash.isboolean/LICENSE +22 -0
  523. package/#Tools/jwt creator/node_modules/lodash.isboolean/README.md +18 -0
  524. package/#Tools/jwt creator/node_modules/lodash.isboolean/index.js +70 -0
  525. package/#Tools/jwt creator/node_modules/lodash.isboolean/package.json +17 -0
  526. package/#Tools/jwt creator/node_modules/lodash.isinteger/LICENSE +47 -0
  527. package/#Tools/jwt creator/node_modules/lodash.isinteger/README.md +18 -0
  528. package/#Tools/jwt creator/node_modules/lodash.isinteger/index.js +265 -0
  529. package/#Tools/jwt creator/node_modules/lodash.isinteger/package.json +17 -0
  530. package/#Tools/jwt creator/node_modules/lodash.isnumber/LICENSE +22 -0
  531. package/#Tools/jwt creator/node_modules/lodash.isnumber/README.md +18 -0
  532. package/#Tools/jwt creator/node_modules/lodash.isnumber/index.js +79 -0
  533. package/#Tools/jwt creator/node_modules/lodash.isnumber/package.json +17 -0
  534. package/#Tools/jwt creator/node_modules/lodash.isplainobject/LICENSE +47 -0
  535. package/#Tools/jwt creator/node_modules/lodash.isplainobject/README.md +18 -0
  536. package/#Tools/jwt creator/node_modules/lodash.isplainobject/index.js +139 -0
  537. package/#Tools/jwt creator/node_modules/lodash.isplainobject/package.json +17 -0
  538. package/#Tools/jwt creator/node_modules/lodash.isstring/LICENSE +22 -0
  539. package/#Tools/jwt creator/node_modules/lodash.isstring/README.md +18 -0
  540. package/#Tools/jwt creator/node_modules/lodash.isstring/index.js +95 -0
  541. package/#Tools/jwt creator/node_modules/lodash.isstring/package.json +17 -0
  542. package/#Tools/jwt creator/node_modules/lodash.once/LICENSE +47 -0
  543. package/#Tools/jwt creator/node_modules/lodash.once/README.md +18 -0
  544. package/#Tools/jwt creator/node_modules/lodash.once/index.js +294 -0
  545. package/#Tools/jwt creator/node_modules/lodash.once/package.json +17 -0
  546. package/#Tools/jwt creator/node_modules/ms/index.js +162 -0
  547. package/#Tools/jwt creator/node_modules/ms/license.md +21 -0
  548. package/#Tools/jwt creator/node_modules/ms/package.json +38 -0
  549. package/#Tools/jwt creator/node_modules/ms/readme.md +59 -0
  550. package/#Tools/jwt creator/node_modules/safe-buffer/LICENSE +21 -0
  551. package/#Tools/jwt creator/node_modules/safe-buffer/README.md +584 -0
  552. package/#Tools/jwt creator/node_modules/safe-buffer/index.d.ts +187 -0
  553. package/#Tools/jwt creator/node_modules/safe-buffer/index.js +65 -0
  554. package/#Tools/jwt creator/node_modules/safe-buffer/package.json +51 -0
  555. package/#Tools/jwt creator/node_modules/semver/LICENSE +15 -0
  556. package/#Tools/jwt creator/node_modules/semver/README.md +664 -0
  557. package/#Tools/jwt creator/node_modules/semver/bin/semver.js +191 -0
  558. package/#Tools/jwt creator/node_modules/semver/classes/comparator.js +143 -0
  559. package/#Tools/jwt creator/node_modules/semver/classes/index.js +7 -0
  560. package/#Tools/jwt creator/node_modules/semver/classes/range.js +556 -0
  561. package/#Tools/jwt creator/node_modules/semver/classes/semver.js +319 -0
  562. package/#Tools/jwt creator/node_modules/semver/functions/clean.js +8 -0
  563. package/#Tools/jwt creator/node_modules/semver/functions/cmp.js +54 -0
  564. package/#Tools/jwt creator/node_modules/semver/functions/coerce.js +62 -0
  565. package/#Tools/jwt creator/node_modules/semver/functions/compare-build.js +9 -0
  566. package/#Tools/jwt creator/node_modules/semver/functions/compare-loose.js +5 -0
  567. package/#Tools/jwt creator/node_modules/semver/functions/compare.js +7 -0
  568. package/#Tools/jwt creator/node_modules/semver/functions/diff.js +60 -0
  569. package/#Tools/jwt creator/node_modules/semver/functions/eq.js +5 -0
  570. package/#Tools/jwt creator/node_modules/semver/functions/gt.js +5 -0
  571. package/#Tools/jwt creator/node_modules/semver/functions/gte.js +5 -0
  572. package/#Tools/jwt creator/node_modules/semver/functions/inc.js +21 -0
  573. package/#Tools/jwt creator/node_modules/semver/functions/lt.js +5 -0
  574. package/#Tools/jwt creator/node_modules/semver/functions/lte.js +5 -0
  575. package/#Tools/jwt creator/node_modules/semver/functions/major.js +5 -0
  576. package/#Tools/jwt creator/node_modules/semver/functions/minor.js +5 -0
  577. package/#Tools/jwt creator/node_modules/semver/functions/neq.js +5 -0
  578. package/#Tools/jwt creator/node_modules/semver/functions/parse.js +18 -0
  579. package/#Tools/jwt creator/node_modules/semver/functions/patch.js +5 -0
  580. package/#Tools/jwt creator/node_modules/semver/functions/prerelease.js +8 -0
  581. package/#Tools/jwt creator/node_modules/semver/functions/rcompare.js +5 -0
  582. package/#Tools/jwt creator/node_modules/semver/functions/rsort.js +5 -0
  583. package/#Tools/jwt creator/node_modules/semver/functions/satisfies.js +12 -0
  584. package/#Tools/jwt creator/node_modules/semver/functions/sort.js +5 -0
  585. package/#Tools/jwt creator/node_modules/semver/functions/valid.js +8 -0
  586. package/#Tools/jwt creator/node_modules/semver/index.js +91 -0
  587. package/#Tools/jwt creator/node_modules/semver/internal/constants.js +37 -0
  588. package/#Tools/jwt creator/node_modules/semver/internal/debug.js +11 -0
  589. package/#Tools/jwt creator/node_modules/semver/internal/identifiers.js +25 -0
  590. package/#Tools/jwt creator/node_modules/semver/internal/lrucache.js +42 -0
  591. package/#Tools/jwt creator/node_modules/semver/internal/parse-options.js +17 -0
  592. package/#Tools/jwt creator/node_modules/semver/internal/re.js +223 -0
  593. package/#Tools/jwt creator/node_modules/semver/package.json +78 -0
  594. package/#Tools/jwt creator/node_modules/semver/preload.js +4 -0
  595. package/#Tools/jwt creator/node_modules/semver/range.bnf +16 -0
  596. package/#Tools/jwt creator/node_modules/semver/ranges/gtr.js +6 -0
  597. package/#Tools/jwt creator/node_modules/semver/ranges/intersects.js +9 -0
  598. package/#Tools/jwt creator/node_modules/semver/ranges/ltr.js +6 -0
  599. package/#Tools/jwt creator/node_modules/semver/ranges/max-satisfying.js +27 -0
  600. package/#Tools/jwt creator/node_modules/semver/ranges/min-satisfying.js +26 -0
  601. package/#Tools/jwt creator/node_modules/semver/ranges/min-version.js +63 -0
  602. package/#Tools/jwt creator/node_modules/semver/ranges/outside.js +82 -0
  603. package/#Tools/jwt creator/node_modules/semver/ranges/simplify.js +49 -0
  604. package/#Tools/jwt creator/node_modules/semver/ranges/subset.js +249 -0
  605. package/#Tools/jwt creator/node_modules/semver/ranges/to-comparators.js +10 -0
  606. package/#Tools/jwt creator/node_modules/semver/ranges/valid.js +13 -0
  607. package/#Tools/jwt creator/package-lock.json +150 -0
  608. package/#Tools/jwt creator/package.json +5 -0
  609. package/#Tools/package.json +94 -0
  610. package/SuperClaude/.claude/commands/analyze.md +36 -0
  611. package/SuperClaude/.claude/commands/build.md +35 -0
  612. package/SuperClaude/.claude/commands/cleanup.md +46 -0
  613. package/SuperClaude/.claude/commands/deploy.md +55 -0
  614. package/SuperClaude/.claude/commands/design.md +91 -0
  615. package/SuperClaude/.claude/commands/dev-setup.md +37 -0
  616. package/SuperClaude/.claude/commands/document.md +99 -0
  617. package/SuperClaude/.claude/commands/estimate.md +69 -0
  618. package/SuperClaude/.claude/commands/explain.md +85 -0
  619. package/SuperClaude/.claude/commands/git.md +47 -0
  620. package/SuperClaude/.claude/commands/improve.md +162 -0
  621. package/SuperClaude/.claude/commands/index.md +159 -0
  622. package/SuperClaude/.claude/commands/load.md +65 -0
  623. package/SuperClaude/.claude/commands/migrate.md +76 -0
  624. package/SuperClaude/.claude/commands/scan.md +163 -0
  625. package/SuperClaude/.claude/commands/shared/ambiguity-check.yml +40 -0
  626. package/SuperClaude/.claude/commands/shared/audit.yml +21 -0
  627. package/SuperClaude/.claude/commands/shared/checkpoint.yml +28 -0
  628. package/SuperClaude/.claude/commands/shared/cleanup-patterns.yml +107 -0
  629. package/SuperClaude/.claude/commands/shared/command-memory.yml +52 -0
  630. package/SuperClaude/.claude/commands/shared/command-templates.yml +167 -0
  631. package/SuperClaude/.claude/commands/shared/config-validator.yml +206 -0
  632. package/SuperClaude/.claude/commands/shared/constants.yml +311 -0
  633. package/SuperClaude/.claude/commands/shared/documentation-dirs.yml +134 -0
  634. package/SuperClaude/.claude/commands/shared/error-handling.yml +341 -0
  635. package/SuperClaude/.claude/commands/shared/evidence.yml +75 -0
  636. package/SuperClaude/.claude/commands/shared/execution-lifecycle.yml +277 -0
  637. package/SuperClaude/.claude/commands/shared/git-operations.yml +217 -0
  638. package/SuperClaude/.claude/commands/shared/git-workflow.yml +37 -0
  639. package/SuperClaude/.claude/commands/shared/implementation.yml +199 -0
  640. package/SuperClaude/.claude/commands/shared/loading-config.yml +73 -0
  641. package/SuperClaude/.claude/commands/shared/mcp-flags.yml +109 -0
  642. package/SuperClaude/.claude/commands/shared/migration-report.md +165 -0
  643. package/SuperClaude/.claude/commands/shared/patterns.yml +155 -0
  644. package/SuperClaude/.claude/commands/shared/performance.yml +317 -0
  645. package/SuperClaude/.claude/commands/shared/planning-mode.yml +51 -0
  646. package/SuperClaude/.claude/commands/shared/research-first.yml +278 -0
  647. package/SuperClaude/.claude/commands/shared/session-recovery.yml +144 -0
  648. package/SuperClaude/.claude/commands/shared/severity-levels.yml +252 -0
  649. package/SuperClaude/.claude/commands/shared/task-system.yml +380 -0
  650. package/SuperClaude/.claude/commands/shared/task-ultracompressed.yml +88 -0
  651. package/SuperClaude/.claude/commands/shared/templates/feature-template.md +59 -0
  652. package/SuperClaude/.claude/commands/shared/templates/task-ultracompressed.md +26 -0
  653. package/SuperClaude/.claude/commands/shared/thinking-modes.yml +61 -0
  654. package/SuperClaude/.claude/commands/shared/ultracompressed.yml +97 -0
  655. package/SuperClaude/.claude/commands/shared/user-experience.yml +208 -0
  656. package/SuperClaude/.claude/commands/shared/validation.yml +54 -0
  657. package/SuperClaude/.claude/commands/shared/workflow-chains.yml +138 -0
  658. package/SuperClaude/.claude/commands/spawn.md +106 -0
  659. package/SuperClaude/.claude/commands/task.md +110 -0
  660. package/SuperClaude/.claude/commands/test.md +67 -0
  661. package/SuperClaude/.claude/commands/troubleshoot.md +93 -0
  662. package/SuperClaude/.github/ISSUE_TEMPLATE/bug_report.yml +114 -0
  663. package/SuperClaude/.github/ISSUE_TEMPLATE/feature_request.yml +119 -0
  664. package/SuperClaude/.github/ISSUE_TEMPLATE/question.yml +87 -0
  665. package/SuperClaude/.github/pull_request_template.md +62 -0
  666. package/SuperClaude/CHANGELOG.md +109 -0
  667. package/SuperClaude/CLAUDE.md +95 -0
  668. package/SuperClaude/CODE_OF_CONDUCT.md +45 -0
  669. package/SuperClaude/CONTRIBUTING.md +225 -0
  670. package/SuperClaude/Commands_Cheat_Sheet.md +160 -0
  671. package/SuperClaude/LICENSE +21 -0
  672. package/SuperClaude/MCP.md +117 -0
  673. package/SuperClaude/PERSONAS.md +115 -0
  674. package/SuperClaude/README.md +249 -0
  675. package/SuperClaude/RULES.md +220 -0
  676. package/SuperClaude/SECURITY.md +91 -0
  677. package/SuperClaude/install.sh +296 -0
  678. package/appiq-mcp installer/How-to.md +250 -0
  679. package/appiq-mcp installer/LICENSE +21 -0
  680. package/appiq-mcp installer/README.md +235 -0
  681. package/appiq-mcp installer/index.js +672 -0
  682. package/appiq-mcp installer/my_mcps.md +105 -0
  683. package/appiq-mcp installer/package-lock.json +708 -0
  684. package/appiq-mcp installer/package.json +46 -0
  685. package/appiq-mcp installer/test-install.bat +60 -0
  686. package/appiq-mcp installer/test-install.sh +55 -0
  687. package/appiq-mcp installer/test-load.js +40 -0
  688. package/dist/agents/bmad-orchestrator.txt +111 -0
  689. package/dist/agents/pm.txt +0 -2
  690. package/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +111 -0
  691. package/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt +111 -0
  692. package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-analytics.txt +1530 -0
  693. package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-architect.txt +322 -0
  694. package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-developer.txt +692 -0
  695. package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-pm.txt +382 -0
  696. package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-qa.txt +665 -0
  697. package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-security.txt +1070 -0
  698. package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-ux-expert.txt +1494 -0
  699. package/dist/expansion-packs/bmad-mobile-app-dev/teams/mobile-team-cross-platform.txt +15613 -0
  700. package/dist/teams/team-all.txt +111 -2
  701. package/dist/teams/team-fullstack.txt +111 -2
  702. package/dist/teams/team-ide-minimal.txt +111 -0
  703. package/dist/teams/team-no-ui.txt +111 -2
  704. package/flutter/CLAUDE.md +58 -0
  705. package/flutter/punkt.claude/New Folder With Items/channel.md +221 -0
  706. package/flutter/punkt.claude/New Folder With Items/commands/add-translations.md +12 -0
  707. package/flutter/punkt.claude/New Folder With Items/commands/create-feature.md +168 -0
  708. package/flutter/punkt.claude/New Folder With Items/commands/explain-codebase.md +1 -0
  709. package/flutter/punkt.claude/New Folder With Items/commands/feature-business-logic.md +551 -0
  710. package/flutter/punkt.claude/New Folder With Items/commands/feature-data-layer.md +924 -0
  711. package/flutter/punkt.claude/New Folder With Items/commands/feature-domain-layer.md +540 -0
  712. package/flutter/punkt.claude/New Folder With Items/commands/feature-integration.md +493 -0
  713. package/flutter/punkt.claude/New Folder With Items/commands/feature-localization.md +427 -0
  714. package/flutter/punkt.claude/New Folder With Items/commands/feature-ui-layer.md +300 -0
  715. package/flutter/punkt.claude/New Folder With Items/commands/git-commit.md +3 -0
  716. package/flutter/punkt.claude/New Folder With Items/commands/search-web.md +1 -0
  717. package/flutter/punkt.claude/punkt.claude/channel.md +225 -0
  718. package/flutter/punkt.claude/punkt.claude/commands/add-translations.md +60 -0
  719. package/flutter/punkt.claude/punkt.claude/commands/bug-fix.md +32 -0
  720. package/flutter/punkt.claude/punkt.claude/commands/checkdev.md +122 -0
  721. package/flutter/punkt.claude/punkt.claude/commands/create-feature.md +174 -0
  722. package/flutter/punkt.claude/punkt.claude/commands/dev.md +79 -0
  723. package/flutter/punkt.claude/punkt.claude/commands/explain-codebase.md +1 -0
  724. package/flutter/punkt.claude/punkt.claude/commands/feature-business-logic.md +430 -0
  725. package/flutter/punkt.claude/punkt.claude/commands/feature-data-layer.md +572 -0
  726. package/flutter/punkt.claude/punkt.claude/commands/feature-domain-layer.md +537 -0
  727. package/flutter/punkt.claude/punkt.claude/commands/feature-integration.md +493 -0
  728. package/flutter/punkt.claude/punkt.claude/commands/feature-localization.md +427 -0
  729. package/flutter/punkt.claude/punkt.claude/commands/feature-ui-layer.md +831 -0
  730. package/flutter/punkt.claude/punkt.claude/commands/git-commit.md +3 -0
  731. package/flutter/punkt.claude/punkt.claude/commands/manage-translations.md +433 -0
  732. package/flutter/punkt.claude/punkt.claude/commands/search-web.md +1 -0
  733. package/flutter/punkt.claude/punkt.claude/developer_check.md +121 -0
  734. package/package.json +71 -18
  735. package/tools/bmad-npx-wrapper.js +7 -5
  736. package/tools/installer/bin/bmad.js +0 -14
  737. package/tools/installer/lib/installer.js +2 -28
  738. package/tools/installer/package-lock.json +89 -89
  739. package/tools/installer/package.json +1 -1
  740. package/web/CLAUDE.md +58 -0
  741. package/.bmad-config.json +0 -13
  742. package/.cursor/commands/analyze.md +0 -27
  743. package/.cursor/commands/appiq.md +0 -27
  744. package/.cursor/commands/help.md +0 -27
  745. package/.cursor/commands/story.md +0 -27
  746. package/DEVELOPMENT_GUIDE.md +0 -855
  747. package/NPM-README.md +0 -138
  748. package/README.md +0 -105
  749. package/SMART_WORKFLOW_GUIDE.md +0 -401
  750. package/activate-appiq.js +0 -81
  751. package/appiq-solution/README.md +0 -226
  752. package/bmad-core/agents/bmad-smart-launcher.md +0 -170
  753. package/bmad-core/checklists/security-validation-checklist.md +0 -332
  754. package/bmad-core/data/backend-services-integration.md +0 -686
  755. package/bmad-core/data/shadcn-ui-integration.md +0 -388
  756. package/bmad-core/data/technical-preferences.md +0 -149
  757. package/bmad-core/enhanced-ide-development-workflow.md +0 -43
  758. package/bmad-core/tasks/intelligent-epic-creation.md +0 -234
  759. package/bmad-core/tasks/smart-project-analysis.md +0 -289
  760. package/commands/README.md +0 -28
  761. package/commands/analyze.md +0 -27
  762. package/commands/appiq.md +0 -27
  763. package/commands/help.md +0 -27
  764. package/commands/story.md +0 -27
  765. package/expansion-packs/bmad-flutter-mobile-dev/agent-teams/flutter-mobile-team.yaml +0 -23
  766. package/expansion-packs/bmad-flutter-mobile-dev/agents/flutter-cubit-agent.md +0 -133
  767. package/expansion-packs/bmad-flutter-mobile-dev/agents/flutter-data-agent.md +0 -160
  768. package/expansion-packs/bmad-flutter-mobile-dev/agents/flutter-domain-agent.md +0 -153
  769. package/expansion-packs/bmad-flutter-mobile-dev/agents/flutter-ui-agent.md +0 -122
  770. package/expansion-packs/bmad-flutter-mobile-dev/agents/shared-components-agent.md +0 -161
  771. package/expansion-packs/bmad-flutter-mobile-dev/checklists/flutter-story-dod-checklist.md +0 -194
  772. package/expansion-packs/bmad-flutter-mobile-dev/config.yaml +0 -41
  773. package/expansion-packs/bmad-flutter-mobile-dev/data/flutter-development-guidelines.md +0 -551
  774. package/expansion-packs/bmad-flutter-mobile-dev/templates/flutter-mobile-architecture-tmpl.yaml +0 -530
  775. package/expansion-packs/bmad-flutter-mobile-dev/workflows/flutter-ui-first-development.yaml +0 -220
  776. package/install-appiq.sh +0 -41
  777. package/tasks/todo.md +0 -275
  778. package/tools/appiq-installer.js +0 -2621
  779. package/tools/epic-solution-installer.js +0 -538
  780. package/tools/flattener/main.js +0 -570
  781. package/tools/setup-ide-commands.js +0 -345
  782. package/tools/smart-installer.js +0 -589
  783. /package/{.github → #Tools/APPIQ-METHOD/.github}/FUNDING.yaml +0 -0
  784. /package/{.github → #Tools/APPIQ-METHOD/.github}/ISSUE_TEMPLATE/bug_report.md +0 -0
  785. /package/{.github → #Tools/APPIQ-METHOD/.github}/ISSUE_TEMPLATE/feature_request.md +0 -0
  786. /package/{.github → #Tools/APPIQ-METHOD/.github}/workflows/release.yaml +0 -0
  787. /package/{.releaserc.json → #Tools/APPIQ-METHOD/.releaserc.json} +0 -0
  788. /package/{.vscode → #Tools/APPIQ-METHOD/.vscode}/settings.json +0 -0
  789. /package/{CONTRIBUTING.md → #Tools/APPIQ-METHOD/CONTRIBUTING.md} +0 -0
  790. /package/{LICENSE → #Tools/APPIQ-METHOD/LICENSE} +0 -0
  791. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/agent-teams/team-all.yaml +0 -0
  792. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/agent-teams/team-fullstack.yaml +0 -0
  793. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/agent-teams/team-ide-minimal.yaml +0 -0
  794. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/agent-teams/team-no-ui.yaml +0 -0
  795. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/agents/analyst.md +0 -0
  796. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/agents/bmad-master.md +0 -0
  797. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/agents/po.md +0 -0
  798. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/agents/sm.md +0 -0
  799. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/agents/ux-expert.md +0 -0
  800. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/checklists/architect-checklist.md +0 -0
  801. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/checklists/change-checklist.md +0 -0
  802. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/checklists/pm-checklist.md +0 -0
  803. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/checklists/po-master-checklist.md +0 -0
  804. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/checklists/story-dod-checklist.md +0 -0
  805. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/checklists/story-draft-checklist.md +0 -0
  806. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/core-config.yaml +0 -0
  807. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/data/bmad-kb.md +0 -0
  808. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/data/brainstorming-techniques.md +0 -0
  809. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/data/elicitation-methods.md +0 -0
  810. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/tasks/advanced-elicitation.md +0 -0
  811. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/tasks/brownfield-create-epic.md +0 -0
  812. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/tasks/brownfield-create-story.md +0 -0
  813. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/tasks/correct-course.md +0 -0
  814. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/tasks/create-brownfield-story.md +0 -0
  815. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/tasks/create-deep-research-prompt.md +0 -0
  816. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/tasks/create-next-story.md +0 -0
  817. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/tasks/document-project.md +0 -0
  818. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/tasks/facilitate-brainstorming-session.md +0 -0
  819. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/tasks/generate-ai-frontend-prompt.md +0 -0
  820. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/tasks/index-docs.md +0 -0
  821. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/tasks/kb-mode-interaction.md +0 -0
  822. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/tasks/review-story.md +0 -0
  823. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/tasks/shard-doc.md +0 -0
  824. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/tasks/validate-next-story.md +0 -0
  825. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/templates/architecture-tmpl.yaml +0 -0
  826. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/templates/brainstorming-output-tmpl.yaml +0 -0
  827. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/templates/brownfield-architecture-tmpl.yaml +0 -0
  828. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/templates/brownfield-prd-tmpl.yaml +0 -0
  829. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/templates/competitor-analysis-tmpl.yaml +0 -0
  830. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/templates/front-end-architecture-tmpl.yaml +0 -0
  831. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/templates/front-end-spec-tmpl.yaml +0 -0
  832. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/templates/market-research-tmpl.yaml +0 -0
  833. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/templates/prd-tmpl.yaml +0 -0
  834. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/templates/project-brief-tmpl.yaml +0 -0
  835. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/templates/story-tmpl.yaml +0 -0
  836. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/workflows/brownfield-fullstack.yaml +0 -0
  837. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/workflows/brownfield-service.yaml +0 -0
  838. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/workflows/brownfield-ui.yaml +0 -0
  839. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/workflows/greenfield-fullstack.yaml +0 -0
  840. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/workflows/greenfield-service.yaml +0 -0
  841. /package/{bmad-core → #Tools/APPIQ-METHOD/bmad-core}/workflows/greenfield-ui.yaml +0 -0
  842. /package/{common → #Tools/APPIQ-METHOD/common}/tasks/create-doc.md +0 -0
  843. /package/{common → #Tools/APPIQ-METHOD/common}/tasks/execute-checklist.md +0 -0
  844. /package/{common → #Tools/APPIQ-METHOD/common}/utils/bmad-doc-template.md +0 -0
  845. /package/{common → #Tools/APPIQ-METHOD/common}/utils/workflow-management.md +0 -0
  846. /package/{bmad-core/core-config.yaml.bak → #Tools/APPIQ-METHOD/deployment/build/bmad-core/core-config.yaml} +0 -0
  847. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/README.md +0 -0
  848. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-phaser-game-dev/agent-teams/phaser-2d-nodejs-game-team.yaml +0 -0
  849. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-phaser-game-dev/agents/game-designer.md +0 -0
  850. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-phaser-game-dev/agents/game-developer.md +0 -0
  851. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-phaser-game-dev/agents/game-sm.md +0 -0
  852. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-phaser-game-dev/checklists/game-design-checklist.md +0 -0
  853. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-phaser-game-dev/checklists/game-story-dod-checklist.md +0 -0
  854. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-phaser-game-dev/data/bmad-kb.md +0 -0
  855. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-phaser-game-dev/data/development-guidelines.md +0 -0
  856. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-phaser-game-dev/tasks/advanced-elicitation.md +0 -0
  857. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-phaser-game-dev/tasks/create-game-story.md +0 -0
  858. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-phaser-game-dev/tasks/game-design-brainstorming.md +0 -0
  859. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-phaser-game-dev/templates/game-architecture-tmpl.yaml +0 -0
  860. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-phaser-game-dev/templates/game-brief-tmpl.yaml +0 -0
  861. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-phaser-game-dev/templates/game-design-doc-tmpl.yaml +0 -0
  862. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-phaser-game-dev/templates/game-story-tmpl.yaml +0 -0
  863. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-phaser-game-dev/templates/level-design-doc-tmpl.yaml +0 -0
  864. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-phaser-game-dev/workflows/game-dev-greenfield.yaml +0 -0
  865. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-phaser-game-dev/workflows/game-prototype.yaml +0 -0
  866. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-unity-game-dev/agent-teams/unity-2d-game-team.yaml +0 -0
  867. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-unity-game-dev/agents/game-architect.md +0 -0
  868. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-unity-game-dev/agents/game-designer.md +0 -0
  869. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-unity-game-dev/agents/game-developer.md +0 -0
  870. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-unity-game-dev/agents/game-sm.md +0 -0
  871. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-unity-game-dev/checklists/game-architect-checklist.md +0 -0
  872. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-unity-game-dev/checklists/game-change-checklist.md +0 -0
  873. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-unity-game-dev/checklists/game-design-checklist.md +0 -0
  874. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-unity-game-dev/checklists/game-story-dod-checklist.md +0 -0
  875. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-unity-game-dev/data/bmad-kb.md +0 -0
  876. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-unity-game-dev/data/development-guidelines.md +0 -0
  877. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-unity-game-dev/tasks/advanced-elicitation.md +0 -0
  878. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-unity-game-dev/tasks/correct-course-game.md +0 -0
  879. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-unity-game-dev/tasks/create-game-story.md +0 -0
  880. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-unity-game-dev/tasks/game-design-brainstorming.md +0 -0
  881. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-unity-game-dev/tasks/validate-game-story.md +0 -0
  882. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-unity-game-dev/templates/game-architecture-tmpl.yaml +0 -0
  883. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-unity-game-dev/templates/game-brief-tmpl.yaml +0 -0
  884. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-unity-game-dev/templates/game-design-doc-tmpl.yaml +0 -0
  885. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-unity-game-dev/templates/game-story-tmpl.yaml +0 -0
  886. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-unity-game-dev/templates/level-design-doc-tmpl.yaml +0 -0
  887. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-unity-game-dev/workflows/game-dev-greenfield.yaml +0 -0
  888. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-2d-unity-game-dev/workflows/game-prototype.yaml +0 -0
  889. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-infrastructure-devops/README.md +0 -0
  890. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-infrastructure-devops/agents/infra-devops-platform.md +0 -0
  891. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-infrastructure-devops/checklists/infrastructure-checklist.md +0 -0
  892. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-infrastructure-devops/data/bmad-kb.md +0 -0
  893. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-infrastructure-devops/tasks/review-infrastructure.md +0 -0
  894. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-infrastructure-devops/tasks/validate-infrastructure.md +0 -0
  895. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-infrastructure-devops/templates/infrastructure-architecture-tmpl.yaml +0 -0
  896. /package/{expansion-packs → #Tools/APPIQ-METHOD/deployment/build/expansion-packs}/bmad-infrastructure-devops/templates/infrastructure-platform-from-arch-tmpl.yaml +0 -0
  897. /package/{docs → #Tools/APPIQ-METHOD/docs}/GUIDING-PRINCIPLES.md +0 -0
  898. /package/{docs → #Tools/APPIQ-METHOD/docs}/core-architecture.md +0 -0
  899. /package/{docs → #Tools/APPIQ-METHOD/docs}/expansion-packs.md +0 -0
  900. /package/{docs → #Tools/APPIQ-METHOD/docs}/how-to-contribute-with-pull-requests.md +0 -0
  901. /package/{docs → #Tools/APPIQ-METHOD/docs}/versioning-and-releases.md +0 -0
  902. /package/{docs → #Tools/APPIQ-METHOD/docs}/versions.md +0 -0
  903. /package/{bmad-core/bmad-core/user-guide.md → #Tools/SkyReels-V2/skyreels_v2_infer/distributed/__init__.py} +0 -0
@@ -0,0 +1,659 @@
1
+ import math
2
+ import os
3
+ from typing import List
4
+ from typing import Optional
5
+ from typing import Tuple
6
+ from typing import Union
7
+
8
+ import numpy as np
9
+ import torch
10
+ from diffusers.image_processor import PipelineImageInput
11
+ from diffusers.utils.torch_utils import randn_tensor
12
+ from diffusers.video_processor import VideoProcessor
13
+ from tqdm import tqdm
14
+ import decord
15
+ from decord import VideoReader
16
+
17
+ from ..modules import get_text_encoder
18
+ from ..modules import get_transformer
19
+ from ..modules import get_vae
20
+ from ..scheduler.fm_solvers_unipc import FlowUniPCMultistepScheduler
21
+
22
+
23
+
24
+
25
+ class DiffusionForcingPipeline:
26
+ """
27
+ A pipeline for diffusion-based video generation tasks.
28
+
29
+ This pipeline supports two main tasks:
30
+ - Image-to-Video (i2v): Generates a video sequence from a source image
31
+ - Text-to-Video (t2v): Generates a video sequence from a text description
32
+
33
+ The pipeline integrates multiple components including:
34
+ - A transformer model for diffusion
35
+ - A VAE for encoding/decoding
36
+ - A text encoder for processing text prompts
37
+ - An image encoder for processing image inputs (i2v mode only)
38
+ """
39
+
40
+ def __init__(
41
+ self,
42
+ model_path: str,
43
+ dit_path: str,
44
+ device: str = "cuda",
45
+ weight_dtype=torch.bfloat16,
46
+ use_usp=False,
47
+ offload=False,
48
+ ):
49
+ """
50
+ Initialize the diffusion forcing pipeline class
51
+
52
+ Args:
53
+ model_path (str): Path to the model
54
+ dit_path (str): Path to the DIT model, containing model configuration file (config.json) and weight file (*.safetensor)
55
+ device (str): Device to run on, defaults to 'cuda'
56
+ weight_dtype: Weight data type, defaults to torch.bfloat16
57
+ """
58
+ load_device = "cpu" if offload else device
59
+ self.transformer = get_transformer(dit_path, load_device, weight_dtype)
60
+ vae_model_path = os.path.join(model_path, "Wan2.1_VAE.pth")
61
+ self.vae = get_vae(vae_model_path, device, weight_dtype=torch.float32)
62
+ self.text_encoder = get_text_encoder(model_path, load_device, weight_dtype)
63
+ self.video_processor = VideoProcessor(vae_scale_factor=16)
64
+ self.device = device
65
+ self.offload = offload
66
+
67
+ if use_usp:
68
+ from xfuser.core.distributed import get_sequence_parallel_world_size
69
+ from ..distributed.xdit_context_parallel import usp_attn_forward, usp_dit_forward
70
+ import types
71
+
72
+ for block in self.transformer.blocks:
73
+ block.self_attn.forward = types.MethodType(usp_attn_forward, block.self_attn)
74
+ self.transformer.forward = types.MethodType(usp_dit_forward, self.transformer)
75
+ self.sp_size = get_sequence_parallel_world_size()
76
+
77
+ self.scheduler = FlowUniPCMultistepScheduler()
78
+
79
+ @property
80
+ def do_classifier_free_guidance(self) -> bool:
81
+ return self._guidance_scale > 1
82
+
83
+ def encode_image(
84
+ self, image: PipelineImageInput, height: int, width: int, num_frames: int
85
+ ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]:
86
+
87
+ # prefix_video
88
+ prefix_video = np.array(image.resize((width, height))).transpose(2, 0, 1)
89
+ prefix_video = torch.tensor(prefix_video).unsqueeze(1) # .to(image_embeds.dtype).unsqueeze(1)
90
+ if prefix_video.dtype == torch.uint8:
91
+ prefix_video = (prefix_video.float() / (255.0 / 2.0)) - 1.0
92
+ prefix_video = prefix_video.to(self.device)
93
+ prefix_video = [self.vae.encode(prefix_video.unsqueeze(0))[0]] # [(c, f, h, w)]
94
+ causal_block_size = self.transformer.num_frame_per_block
95
+ if prefix_video[0].shape[1] % causal_block_size != 0:
96
+ truncate_len = prefix_video[0].shape[1] % causal_block_size
97
+ print("the length of prefix video is truncated for the casual block size alignment.")
98
+ prefix_video[0] = prefix_video[0][:, : prefix_video[0].shape[1] - truncate_len]
99
+ predix_video_latent_length = prefix_video[0].shape[1]
100
+ return prefix_video, predix_video_latent_length
101
+
102
+ def prepare_latents(
103
+ self,
104
+ shape: Tuple[int],
105
+ dtype: Optional[torch.dtype] = None,
106
+ device: Optional[torch.device] = None,
107
+ generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,
108
+ ) -> torch.Tensor:
109
+ return randn_tensor(shape, generator, device=device, dtype=dtype)
110
+
111
+ def generate_timestep_matrix(
112
+ self,
113
+ num_frames,
114
+ step_template,
115
+ base_num_frames,
116
+ ar_step=5,
117
+ num_pre_ready=0,
118
+ casual_block_size=1,
119
+ shrink_interval_with_mask=False,
120
+ ) -> tuple[torch.Tensor, torch.Tensor, torch.Tensor, list[tuple]]:
121
+ step_matrix, step_index = [], []
122
+ update_mask, valid_interval = [], []
123
+ num_iterations = len(step_template) + 1
124
+ num_frames_block = num_frames // casual_block_size
125
+ base_num_frames_block = base_num_frames // casual_block_size
126
+ if base_num_frames_block < num_frames_block:
127
+ infer_step_num = len(step_template)
128
+ gen_block = base_num_frames_block
129
+ min_ar_step = infer_step_num / gen_block
130
+ assert ar_step >= min_ar_step, f"ar_step should be at least {math.ceil(min_ar_step)} in your setting"
131
+ # print(num_frames, step_template, base_num_frames, ar_step, num_pre_ready, casual_block_size, num_frames_block, base_num_frames_block)
132
+ step_template = torch.cat(
133
+ [
134
+ torch.tensor([999], dtype=torch.int64, device=step_template.device),
135
+ step_template.long(),
136
+ torch.tensor([0], dtype=torch.int64, device=step_template.device),
137
+ ]
138
+ ) # to handle the counter in row works starting from 1
139
+ pre_row = torch.zeros(num_frames_block, dtype=torch.long)
140
+ if num_pre_ready > 0:
141
+ pre_row[: num_pre_ready // casual_block_size] = num_iterations
142
+
143
+ while torch.all(pre_row >= (num_iterations - 1)) == False:
144
+ new_row = torch.zeros(num_frames_block, dtype=torch.long)
145
+ for i in range(num_frames_block):
146
+ if i == 0 or pre_row[i - 1] >= (
147
+ num_iterations - 1
148
+ ): # the first frame or the last frame is completely denoised
149
+ new_row[i] = pre_row[i] + 1
150
+ else:
151
+ new_row[i] = new_row[i - 1] - ar_step
152
+ new_row = new_row.clamp(0, num_iterations)
153
+
154
+ update_mask.append(
155
+ (new_row != pre_row) & (new_row != num_iterations)
156
+ ) # False: no need to update, True: need to update
157
+ step_index.append(new_row)
158
+ step_matrix.append(step_template[new_row])
159
+ pre_row = new_row
160
+
161
+ # for long video we split into several sequences, base_num_frames is set to the model max length (for training)
162
+ terminal_flag = base_num_frames_block
163
+ if shrink_interval_with_mask:
164
+ idx_sequence = torch.arange(num_frames_block, dtype=torch.int64)
165
+ update_mask = update_mask[0]
166
+ update_mask_idx = idx_sequence[update_mask]
167
+ last_update_idx = update_mask_idx[-1].item()
168
+ terminal_flag = last_update_idx + 1
169
+ # for i in range(0, len(update_mask)):
170
+ for curr_mask in update_mask:
171
+ if terminal_flag < num_frames_block and curr_mask[terminal_flag]:
172
+ terminal_flag += 1
173
+ valid_interval.append((max(terminal_flag - base_num_frames_block, 0), terminal_flag))
174
+
175
+ step_update_mask = torch.stack(update_mask, dim=0)
176
+ step_index = torch.stack(step_index, dim=0)
177
+ step_matrix = torch.stack(step_matrix, dim=0)
178
+
179
+ if casual_block_size > 1:
180
+ step_update_mask = step_update_mask.unsqueeze(-1).repeat(1, 1, casual_block_size).flatten(1).contiguous()
181
+ step_index = step_index.unsqueeze(-1).repeat(1, 1, casual_block_size).flatten(1).contiguous()
182
+ step_matrix = step_matrix.unsqueeze(-1).repeat(1, 1, casual_block_size).flatten(1).contiguous()
183
+ valid_interval = [(s * casual_block_size, e * casual_block_size) for s, e in valid_interval]
184
+
185
+ return step_matrix, step_index, step_update_mask, valid_interval
186
+
187
+ def get_video_as_tensor(self, video_path, width, height):
188
+ """
189
+ Loads a video from the given path and returns it as a tensor with proper channel ordering.
190
+ Args:
191
+ video_path (str): Path to the video file
192
+ Returns:
193
+ torch.Tensor: Video tensor in [C, T, H, W] format (channels first)
194
+ """
195
+
196
+ # Set Decord to use CPU for video decoding
197
+ decord.bridge.set_bridge('torch')
198
+
199
+ # Load video
200
+ vr = VideoReader(video_path, width=width, height=height)
201
+ total_frames = len(vr)
202
+
203
+ # Read all frames
204
+ video_frames = vr.get_batch(list(range(total_frames)))
205
+
206
+ # Convert from [T, H, W, C] to [C, T, H, W] format
207
+ video_tensor = video_frames.permute(0, 3, 1, 2).float()
208
+
209
+ return video_tensor
210
+
211
+ @torch.no_grad()
212
+ def extend_video(
213
+ self,
214
+ prompt: Union[str, List[str]],
215
+ negative_prompt: Union[str, List[str]] = "",
216
+ prefix_video_path: List[torch.Tensor] = None,
217
+ height: int = 480,
218
+ width: int = 832,
219
+ num_frames: int = 97,
220
+ num_inference_steps: int = 50,
221
+ shift: float = 1.0,
222
+ guidance_scale: float = 5.0,
223
+ generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,
224
+ overlap_history: int = None,
225
+ addnoise_condition: int = 0,
226
+ base_num_frames: int = 97,
227
+ ar_step: int = 5,
228
+ causal_block_size: int = None,
229
+ fps: int = 24,
230
+ ):
231
+ latent_height = height // 8
232
+ latent_width = width // 8
233
+ latent_length = (num_frames - 1) // 4 + 1
234
+
235
+ self._guidance_scale = guidance_scale
236
+
237
+ i2v_extra_kwrags = {}
238
+ prefix_video = None
239
+ predix_video_latent_length = 0
240
+
241
+ self.text_encoder.to(self.device)
242
+ prompt_embeds = self.text_encoder.encode(prompt).to(self.transformer.dtype)
243
+ if self.do_classifier_free_guidance:
244
+ negative_prompt_embeds = self.text_encoder.encode(negative_prompt).to(self.transformer.dtype)
245
+ if self.offload:
246
+ self.text_encoder.cpu()
247
+ torch.cuda.empty_cache()
248
+
249
+ self.scheduler.set_timesteps(num_inference_steps, device=prompt_embeds.device, shift=shift)
250
+ init_timesteps = self.scheduler.timesteps
251
+ if causal_block_size is None:
252
+ causal_block_size = self.transformer.num_frame_per_block
253
+ fps_embeds = [fps] * prompt_embeds.shape[0]
254
+ fps_embeds = [0 if i == 16 else 1 for i in fps_embeds]
255
+ transformer_dtype = self.transformer.dtype
256
+ # with torch.cuda.amp.autocast(dtype=self.transformer.dtype), torch.no_grad():
257
+
258
+ prefix_video = self.get_video_as_tensor(prefix_video_path, width, height)
259
+ prefix_frame = torch.tensor(prefix_video, device=self.device)
260
+ start_video = (prefix_frame.float() / (255.0 / 2.0)) - 1.0
261
+ start_video = start_video.transpose(0, 1)
262
+
263
+ # long video generation
264
+ base_num_frames = (base_num_frames - 1) // 4 + 1 if base_num_frames is not None else latent_length
265
+ overlap_history_frames = (overlap_history - 1) // 4 + 1
266
+ n_iter = 1 + (latent_length - base_num_frames - 1) // (base_num_frames - overlap_history_frames) + 1
267
+ print(f"n_iter:{n_iter}")
268
+ output_video = start_video.cpu()
269
+ for i in range(n_iter):
270
+ prefix_video = output_video[:, -overlap_history:].to(prompt_embeds.device)
271
+ prefix_video = [self.vae.encode(prefix_video.unsqueeze(0))[0]] # [(c, f, h, w)]
272
+ if prefix_video[0].shape[1] % causal_block_size != 0:
273
+ truncate_len = prefix_video[0].shape[1] % causal_block_size
274
+ print("the length of prefix video is truncated for the casual block size alignment.")
275
+ prefix_video[0] = prefix_video[0][:, : prefix_video[0].shape[1] - truncate_len]
276
+ predix_video_latent_length = prefix_video[0].shape[1]
277
+ finished_frame_num = i * (base_num_frames - overlap_history_frames) + overlap_history_frames
278
+ left_frame_num = latent_length - finished_frame_num
279
+ base_num_frames_iter = min(left_frame_num + overlap_history_frames, base_num_frames)
280
+ if ar_step > 0 and self.transformer.enable_teacache:
281
+ num_steps = num_inference_steps + ((base_num_frames_iter - overlap_history_frames) // causal_block_size - 1) * ar_step
282
+ self.transformer.num_steps = num_steps
283
+
284
+ latent_shape = [16, base_num_frames_iter, latent_height, latent_width]
285
+ latents = self.prepare_latents(
286
+ latent_shape, dtype=transformer_dtype, device=prompt_embeds.device, generator=generator
287
+ )
288
+ latents = [latents]
289
+ if prefix_video is not None:
290
+ latents[0][:, :predix_video_latent_length] = prefix_video[0].to(transformer_dtype)
291
+ step_matrix, _, step_update_mask, valid_interval = self.generate_timestep_matrix(
292
+ base_num_frames_iter,
293
+ init_timesteps,
294
+ base_num_frames_iter,
295
+ ar_step,
296
+ predix_video_latent_length,
297
+ causal_block_size,
298
+ )
299
+ sample_schedulers = []
300
+ for _ in range(base_num_frames_iter):
301
+ sample_scheduler = FlowUniPCMultistepScheduler(
302
+ num_train_timesteps=1000, shift=1, use_dynamic_shifting=False
303
+ )
304
+ sample_scheduler.set_timesteps(num_inference_steps, device=prompt_embeds.device, shift=shift)
305
+ sample_schedulers.append(sample_scheduler)
306
+ sample_schedulers_counter = [0] * base_num_frames_iter
307
+ self.transformer.to(self.device)
308
+ for i, timestep_i in enumerate(tqdm(step_matrix)):
309
+ update_mask_i = step_update_mask[i]
310
+ valid_interval_i = valid_interval[i]
311
+ valid_interval_start, valid_interval_end = valid_interval_i
312
+ timestep = timestep_i[None, valid_interval_start:valid_interval_end].clone()
313
+ latent_model_input = [latents[0][:, valid_interval_start:valid_interval_end, :, :].clone()]
314
+ if addnoise_condition > 0 and valid_interval_start < predix_video_latent_length:
315
+ noise_factor = 0.001 * addnoise_condition
316
+ timestep_for_noised_condition = addnoise_condition
317
+ latent_model_input[0][:, valid_interval_start:predix_video_latent_length] = (
318
+ latent_model_input[0][:, valid_interval_start:predix_video_latent_length]
319
+ * (1.0 - noise_factor)
320
+ + torch.randn_like(
321
+ latent_model_input[0][:, valid_interval_start:predix_video_latent_length]
322
+ )
323
+ * noise_factor
324
+ )
325
+ timestep[:, valid_interval_start:predix_video_latent_length] = timestep_for_noised_condition
326
+ if not self.do_classifier_free_guidance:
327
+ noise_pred = self.transformer(
328
+ torch.stack([latent_model_input[0]]),
329
+ t=timestep,
330
+ context=prompt_embeds,
331
+ fps=fps_embeds,
332
+ **i2v_extra_kwrags,
333
+ )[0]
334
+ else:
335
+ noise_pred_cond = self.transformer(
336
+ torch.stack([latent_model_input[0]]),
337
+ t=timestep,
338
+ context=prompt_embeds,
339
+ fps=fps_embeds,
340
+ **i2v_extra_kwrags,
341
+ )[0]
342
+ noise_pred_uncond = self.transformer(
343
+ torch.stack([latent_model_input[0]]),
344
+ t=timestep,
345
+ context=negative_prompt_embeds,
346
+ fps=fps_embeds,
347
+ **i2v_extra_kwrags,
348
+ )[0]
349
+ noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_cond - noise_pred_uncond)
350
+ for idx in range(valid_interval_start, valid_interval_end):
351
+ if update_mask_i[idx].item():
352
+ latents[0][:, idx] = sample_schedulers[idx].step(
353
+ noise_pred[:, idx - valid_interval_start],
354
+ timestep_i[idx],
355
+ latents[0][:, idx],
356
+ return_dict=False,
357
+ generator=generator,
358
+ )[0]
359
+ sample_schedulers_counter[idx] += 1
360
+ if self.offload:
361
+ self.transformer.cpu()
362
+ torch.cuda.empty_cache()
363
+ x0 = latents[0].unsqueeze(0)
364
+ videos = [self.vae.decode(x0)[0]]
365
+ if output_video is None:
366
+ output_video = videos[0].clamp(-1, 1).cpu() # c, f, h, w
367
+ else:
368
+ output_video = torch.cat(
369
+ [output_video, videos[0][:, overlap_history:].clamp(-1, 1).cpu()], 1
370
+ ) # c, f, h, w
371
+ output_video = [(output_video / 2 + 0.5).clamp(0, 1)]
372
+ output_video = [video for video in output_video]
373
+ output_video = [video.permute(1, 2, 3, 0) * 255 for video in output_video]
374
+ output_video = [video.cpu().numpy().astype(np.uint8) for video in output_video]
375
+
376
+ return output_video
377
+
378
+
379
+ @torch.no_grad()
380
+ def __call__(
381
+ self,
382
+ prompt: Union[str, List[str]],
383
+ negative_prompt: Union[str, List[str]] = "",
384
+ image: PipelineImageInput = None,
385
+ end_image: PipelineImageInput = None,
386
+ height: int = 480,
387
+ width: int = 832,
388
+ num_frames: int = 97,
389
+ num_inference_steps: int = 50,
390
+ shift: float = 1.0,
391
+ guidance_scale: float = 5.0,
392
+ generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,
393
+ overlap_history: int = None,
394
+ addnoise_condition: int = 0,
395
+ base_num_frames: int = 97,
396
+ ar_step: int = 5,
397
+ causal_block_size: int = None,
398
+ fps: int = 24,
399
+ ):
400
+ latent_height = height // 8
401
+ latent_width = width // 8
402
+ latent_length = (num_frames - 1) // 4 + 1
403
+
404
+ self._guidance_scale = guidance_scale
405
+
406
+ i2v_extra_kwrags = {}
407
+ prefix_video = None
408
+ predix_video_latent_length = 0
409
+ end_video = None
410
+ end_video_latent_length = 0
411
+
412
+ if image:
413
+ prefix_video, predix_video_latent_length = self.encode_image(image, height, width, num_frames)
414
+
415
+ if end_image:
416
+ end_video, end_video_latent_length = self.encode_image(end_image, height, width, num_frames)
417
+
418
+ self.text_encoder.to(self.device)
419
+ prompt_embeds = self.text_encoder.encode(prompt).to(self.transformer.dtype)
420
+ if self.do_classifier_free_guidance:
421
+ negative_prompt_embeds = self.text_encoder.encode(negative_prompt).to(self.transformer.dtype)
422
+ if self.offload:
423
+ self.text_encoder.cpu()
424
+ torch.cuda.empty_cache()
425
+
426
+ self.scheduler.set_timesteps(num_inference_steps, device=prompt_embeds.device, shift=shift)
427
+ init_timesteps = self.scheduler.timesteps
428
+ if causal_block_size is None:
429
+ causal_block_size = self.transformer.num_frame_per_block
430
+ fps_embeds = [fps] * prompt_embeds.shape[0]
431
+ fps_embeds = [0 if i == 16 else 1 for i in fps_embeds]
432
+ transformer_dtype = self.transformer.dtype
433
+ # with torch.cuda.amp.autocast(dtype=self.transformer.dtype), torch.no_grad():
434
+ if overlap_history is None or base_num_frames is None or num_frames <= base_num_frames:
435
+ # short video generation
436
+ latent_shape = [16, latent_length, latent_height, latent_width]
437
+ latents = self.prepare_latents(
438
+ latent_shape, dtype=transformer_dtype, device=prompt_embeds.device, generator=generator
439
+ )
440
+ latents = [latents]
441
+ if prefix_video is not None:
442
+ latents[0][:, :predix_video_latent_length] = prefix_video[0].to(transformer_dtype)
443
+
444
+ if end_video is not None:
445
+ latents[0] = torch.cat([latents[0], end_video[0].to(transformer_dtype)], dim=1)
446
+
447
+ base_num_frames = num_frames
448
+ base_num_frames = (base_num_frames - 1) // 4 + 1 if base_num_frames is not None else latent_length
449
+ if end_video is not None:
450
+ base_num_frames += end_video_latent_length
451
+ latent_length += end_video_latent_length
452
+
453
+
454
+ step_matrix, _, step_update_mask, valid_interval = self.generate_timestep_matrix(
455
+ latent_length, init_timesteps, base_num_frames, ar_step, predix_video_latent_length, causal_block_size
456
+ )
457
+ if end_video is not None:
458
+ step_matrix[:, -end_video_latent_length:] = 0
459
+ step_update_mask[:, -end_video_latent_length:] = False
460
+
461
+ sample_schedulers = []
462
+ for _ in range(latent_length):
463
+ sample_scheduler = FlowUniPCMultistepScheduler(
464
+ num_train_timesteps=1000, shift=1, use_dynamic_shifting=False
465
+ )
466
+ sample_scheduler.set_timesteps(num_inference_steps, device=prompt_embeds.device, shift=shift)
467
+ sample_schedulers.append(sample_scheduler)
468
+ sample_schedulers_counter = [0] * latent_length
469
+ self.transformer.to(self.device)
470
+ for i, timestep_i in enumerate(tqdm(step_matrix)):
471
+ update_mask_i = step_update_mask[i]
472
+ valid_interval_i = valid_interval[i]
473
+ valid_interval_start, valid_interval_end = valid_interval_i
474
+ timestep = timestep_i[None, valid_interval_start:valid_interval_end].clone()
475
+ latent_model_input = [latents[0][:, valid_interval_start:valid_interval_end, :, :].clone()]
476
+ if addnoise_condition > 0 and valid_interval_start < predix_video_latent_length:
477
+ noise_factor = 0.001 * addnoise_condition
478
+ timestep_for_noised_condition = addnoise_condition
479
+ latent_model_input[0][:, valid_interval_start:predix_video_latent_length] = (
480
+ latent_model_input[0][:, valid_interval_start:predix_video_latent_length] * (1.0 - noise_factor)
481
+ + torch.randn_like(latent_model_input[0][:, valid_interval_start:predix_video_latent_length])
482
+ * noise_factor
483
+ )
484
+ timestep[:, valid_interval_start:predix_video_latent_length] = timestep_for_noised_condition
485
+ if not self.do_classifier_free_guidance:
486
+ noise_pred = self.transformer(
487
+ torch.stack([latent_model_input[0]]),
488
+ t=timestep,
489
+ context=prompt_embeds,
490
+ fps=fps_embeds,
491
+ **i2v_extra_kwrags,
492
+ )[0]
493
+ else:
494
+ noise_pred_cond = self.transformer(
495
+ torch.stack([latent_model_input[0]]),
496
+ t=timestep,
497
+ context=prompt_embeds,
498
+ fps=fps_embeds,
499
+ **i2v_extra_kwrags,
500
+ )[0]
501
+ noise_pred_uncond = self.transformer(
502
+ torch.stack([latent_model_input[0]]),
503
+ t=timestep,
504
+ context=negative_prompt_embeds,
505
+ fps=fps_embeds,
506
+ **i2v_extra_kwrags,
507
+ )[0]
508
+ noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_cond - noise_pred_uncond)
509
+ for idx in range(valid_interval_start, valid_interval_end):
510
+ if update_mask_i[idx].item():
511
+ latents[0][:, idx] = sample_schedulers[idx].step(
512
+ noise_pred[:, idx - valid_interval_start],
513
+ timestep_i[idx],
514
+ latents[0][:, idx],
515
+ return_dict=False,
516
+ generator=generator,
517
+ )[0]
518
+ sample_schedulers_counter[idx] += 1
519
+ if self.offload:
520
+ self.transformer.cpu()
521
+ torch.cuda.empty_cache()
522
+ x0 = latents[0].unsqueeze(0)
523
+ if end_video is not None:
524
+ x0 = latents[0][:, :-end_video_latent_length].unsqueeze(0)
525
+
526
+ videos = self.vae.decode(x0)
527
+ videos = (videos / 2 + 0.5).clamp(0, 1)
528
+ videos = [video for video in videos]
529
+ videos = [video.permute(1, 2, 3, 0) * 255 for video in videos]
530
+ videos = [video.cpu().numpy().astype(np.uint8) for video in videos]
531
+ return videos
532
+ else:
533
+ # long video generation
534
+ base_num_frames = (base_num_frames - 1) // 4 + 1 if base_num_frames is not None else latent_length
535
+ overlap_history_frames = (overlap_history - 1) // 4 + 1
536
+ n_iter = 1 + (latent_length - base_num_frames - 1) // (base_num_frames - overlap_history_frames) + 1
537
+ print(f"n_iter:{n_iter}")
538
+ output_video = None
539
+ for i in range(n_iter):
540
+ if output_video is not None: # i !=0
541
+ prefix_video = output_video[:, -overlap_history:].to(prompt_embeds.device)
542
+ prefix_video = [self.vae.encode(prefix_video.unsqueeze(0))[0]] # [(c, f, h, w)]
543
+ if prefix_video[0].shape[1] % causal_block_size != 0:
544
+ truncate_len = prefix_video[0].shape[1] % causal_block_size
545
+ print("the length of prefix video is truncated for the casual block size alignment.")
546
+ prefix_video[0] = prefix_video[0][:, : prefix_video[0].shape[1] - truncate_len]
547
+ predix_video_latent_length = prefix_video[0].shape[1]
548
+ finished_frame_num = i * (base_num_frames - overlap_history_frames) + overlap_history_frames
549
+ left_frame_num = latent_length - finished_frame_num
550
+ base_num_frames_iter = min(left_frame_num + overlap_history_frames, base_num_frames)
551
+ if ar_step > 0 and self.transformer.enable_teacache:
552
+ num_steps = num_inference_steps + ((base_num_frames_iter - overlap_history_frames) // causal_block_size - 1) * ar_step
553
+ self.transformer.num_steps = num_steps
554
+ else: # i == 0
555
+ base_num_frames_iter = base_num_frames
556
+ latent_shape = [16, base_num_frames_iter, latent_height, latent_width]
557
+ latents = self.prepare_latents(
558
+ latent_shape, dtype=transformer_dtype, device=prompt_embeds.device, generator=generator
559
+ )
560
+ latents = [latents]
561
+ if prefix_video is not None:
562
+ latents[0][:, :predix_video_latent_length] = prefix_video[0].to(transformer_dtype)
563
+
564
+ if end_video is not None and i == n_iter - 1:
565
+ base_num_frames_iter += end_video_latent_length
566
+ latents[0] = torch.cat([latents[0], end_video[0].to(transformer_dtype)], dim=1)
567
+
568
+ step_matrix, _, step_update_mask, valid_interval = self.generate_timestep_matrix(
569
+ base_num_frames_iter,
570
+ init_timesteps,
571
+ base_num_frames_iter,
572
+ ar_step,
573
+ predix_video_latent_length,
574
+ causal_block_size,
575
+ )
576
+ if end_video is not None and i == n_iter - 1:
577
+ step_matrix[:, -end_video_latent_length:] = 0
578
+ step_update_mask[:, -end_video_latent_length:] = False
579
+
580
+ sample_schedulers = []
581
+ for _ in range(base_num_frames_iter):
582
+ sample_scheduler = FlowUniPCMultistepScheduler(
583
+ num_train_timesteps=1000, shift=1, use_dynamic_shifting=False
584
+ )
585
+ sample_scheduler.set_timesteps(num_inference_steps, device=prompt_embeds.device, shift=shift)
586
+ sample_schedulers.append(sample_scheduler)
587
+ sample_schedulers_counter = [0] * base_num_frames_iter
588
+ self.transformer.to(self.device)
589
+ for i, timestep_i in enumerate(tqdm(step_matrix)):
590
+ update_mask_i = step_update_mask[i]
591
+ valid_interval_i = valid_interval[i]
592
+ valid_interval_start, valid_interval_end = valid_interval_i
593
+ timestep = timestep_i[None, valid_interval_start:valid_interval_end].clone()
594
+ latent_model_input = [latents[0][:, valid_interval_start:valid_interval_end, :, :].clone()]
595
+ if addnoise_condition > 0 and valid_interval_start < predix_video_latent_length:
596
+ noise_factor = 0.001 * addnoise_condition
597
+ timestep_for_noised_condition = addnoise_condition
598
+ latent_model_input[0][:, valid_interval_start:predix_video_latent_length] = (
599
+ latent_model_input[0][:, valid_interval_start:predix_video_latent_length]
600
+ * (1.0 - noise_factor)
601
+ + torch.randn_like(
602
+ latent_model_input[0][:, valid_interval_start:predix_video_latent_length]
603
+ )
604
+ * noise_factor
605
+ )
606
+ timestep[:, valid_interval_start:predix_video_latent_length] = timestep_for_noised_condition
607
+ if not self.do_classifier_free_guidance:
608
+ noise_pred = self.transformer(
609
+ torch.stack([latent_model_input[0]]),
610
+ t=timestep,
611
+ context=prompt_embeds,
612
+ fps=fps_embeds,
613
+ **i2v_extra_kwrags,
614
+ )[0]
615
+ else:
616
+ noise_pred_cond = self.transformer(
617
+ torch.stack([latent_model_input[0]]),
618
+ t=timestep,
619
+ context=prompt_embeds,
620
+ fps=fps_embeds,
621
+ **i2v_extra_kwrags,
622
+ )[0]
623
+ noise_pred_uncond = self.transformer(
624
+ torch.stack([latent_model_input[0]]),
625
+ t=timestep,
626
+ context=negative_prompt_embeds,
627
+ fps=fps_embeds,
628
+ **i2v_extra_kwrags,
629
+ )[0]
630
+ noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_cond - noise_pred_uncond)
631
+ for idx in range(valid_interval_start, valid_interval_end):
632
+ if update_mask_i[idx].item():
633
+ latents[0][:, idx] = sample_schedulers[idx].step(
634
+ noise_pred[:, idx - valid_interval_start],
635
+ timestep_i[idx],
636
+ latents[0][:, idx],
637
+ return_dict=False,
638
+ generator=generator,
639
+ )[0]
640
+ sample_schedulers_counter[idx] += 1
641
+ if self.offload:
642
+ self.transformer.cpu()
643
+ torch.cuda.empty_cache()
644
+ x0 = latents[0].unsqueeze(0)
645
+ if end_video is not None and i == n_iter - 1:
646
+ x0 = latents[0][:, :-end_video_latent_length].unsqueeze(0)
647
+
648
+ videos = [self.vae.decode(x0)[0]]
649
+ if output_video is None:
650
+ output_video = videos[0].clamp(-1, 1).cpu() # c, f, h, w
651
+ else:
652
+ output_video = torch.cat(
653
+ [output_video, videos[0][:, overlap_history:].clamp(-1, 1).cpu()], 1
654
+ ) # c, f, h, w
655
+ output_video = [(output_video / 2 + 0.5).clamp(0, 1)]
656
+ output_video = [video for video in output_video]
657
+ output_video = [video.permute(1, 2, 3, 0) * 255 for video in output_video]
658
+ output_video = [video.cpu().numpy().astype(np.uint8) for video in output_video]
659
+ return output_video