appiq-solution 1.4.7 → 1.4.9

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 (737) hide show
  1. package/README.md +172 -48
  2. package/bmad-core/agent-teams/team-fullstack.yaml +1 -11
  3. package/bmad-core/agents/analyst.md +3 -7
  4. package/bmad-core/agents/architect.md +0 -6
  5. package/bmad-core/agents/dev.md +5 -24
  6. package/bmad-core/agents/pm.md +3 -7
  7. package/bmad-core/agents/qa.md +0 -17
  8. package/bmad-core/agents/sm.md +3 -8
  9. package/bmad-core/agents/ux-expert.md +3 -8
  10. package/bmad-core/data/technical-preferences.md +1 -147
  11. package/bmad-core/templates/fullstack-architecture-tmpl.yaml +5 -12
  12. package/bmad-core/workflows/brownfield-fullstack.yaml +1 -15
  13. package/bmad-core/workflows/greenfield-fullstack.yaml +5 -49
  14. package/bmad-core/working-in-the-brownfield.md +10 -19
  15. package/dist/agents/bmad-orchestrator.txt +0 -111
  16. package/dist/agents/pm.txt +2 -0
  17. package/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +0 -111
  18. package/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt +0 -111
  19. package/dist/teams/team-all.txt +2 -111
  20. package/dist/teams/team-fullstack.txt +2 -111
  21. package/dist/teams/team-ide-minimal.txt +0 -111
  22. package/dist/teams/team-no-ui.txt +2 -111
  23. package/package.json +60 -18
  24. package/tools/cli.js +3 -3
  25. package/tools/installer/package-lock.json +2 -2
  26. package/#NEW APP PROMPT/ARCHITECTURE.md +0 -279
  27. package/#NEW APP PROMPT/ARCHITECTURE_UNIFIED.md +0 -414
  28. package/#NEW APP PROMPT/accesibility_prompt.md +0 -103
  29. package/#NEW APP PROMPT/clean-code.mdc +0 -55
  30. package/#NEW APP PROMPT/codequality.mdc +0 -47
  31. package/#NEW APP PROMPT/flutter-ai-rules/LICENSE +0 -21
  32. package/#NEW APP PROMPT/flutter-ai-rules/README.md +0 -104
  33. package/#NEW APP PROMPT/flutter-ai-rules/combined/README.md +0 -25
  34. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart.md +0 -192
  35. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart__under_6K.md +0 -99
  36. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_bloc_mocktail.md +0 -308
  37. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_bloc_mocktail__under_6K.md +0 -87
  38. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_change_notifier.md +0 -254
  39. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_change_notifier__under_6K.md +0 -98
  40. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_provider.md +0 -261
  41. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_provider__under_6K.md +0 -105
  42. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_riverpod_mockito.md +0 -371
  43. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_riverpod_mockito__under_6K.md +0 -92
  44. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_with_bloc.md +0 -287
  45. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_with_bloc__under_6K.md +0 -68
  46. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_with_riverpod.md +0 -375
  47. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_with_riverpod__under_6K.md +0 -106
  48. package/#NEW APP PROMPT/flutter-ai-rules/media/flutter_ai_rules.png +0 -0
  49. package/#NEW APP PROMPT/flutter-ai-rules/media/mocktail_md_01.png +0 -0
  50. package/#NEW APP PROMPT/flutter-ai-rules/media/mocktail_md_02.png +0 -0
  51. package/#NEW APP PROMPT/flutter-ai-rules/rules/bloc.md +0 -94
  52. package/#NEW APP PROMPT/flutter-ai-rules/rules/dart_3_updates.md +0 -93
  53. package/#NEW APP PROMPT/flutter-ai-rules/rules/effective_dart.md +0 -105
  54. package/#NEW APP PROMPT/flutter-ai-rules/rules/flutter_app_architecture.md +0 -57
  55. package/#NEW APP PROMPT/flutter-ai-rules/rules/flutter_change_notifier.md +0 -62
  56. package/#NEW APP PROMPT/flutter-ai-rules/rules/flutter_errors.md +0 -11
  57. package/#NEW APP PROMPT/flutter-ai-rules/rules/mockito.md +0 -31
  58. package/#NEW APP PROMPT/flutter-ai-rules/rules/mocktail.md +0 -24
  59. package/#NEW APP PROMPT/flutter-ai-rules/rules/provider.md +0 -69
  60. package/#NEW APP PROMPT/flutter-ai-rules/rules/riverpod.md +0 -188
  61. package/#NEW APP PROMPT/generate ssh.md +0 -4
  62. package/#NEW APP PROMPT/project_ai_prompt.md +0 -544
  63. package/#Tools/APPIQ-METHOD/.bmad-config.json +0 -13
  64. package/#Tools/APPIQ-METHOD/.cursor/commands/analyze.md +0 -27
  65. package/#Tools/APPIQ-METHOD/.cursor/commands/appiq.md +0 -27
  66. package/#Tools/APPIQ-METHOD/.cursor/commands/help.md +0 -27
  67. package/#Tools/APPIQ-METHOD/.cursor/commands/story.md +0 -27
  68. package/#Tools/APPIQ-METHOD/DEVELOPMENT_GUIDE.md +0 -855
  69. package/#Tools/APPIQ-METHOD/NPM-README.md +0 -138
  70. package/#Tools/APPIQ-METHOD/README.md +0 -107
  71. package/#Tools/APPIQ-METHOD/SMART_WORKFLOW_GUIDE.md +0 -401
  72. package/#Tools/APPIQ-METHOD/activate-appiq.js +0 -81
  73. package/#Tools/APPIQ-METHOD/appiq-solution/README.md +0 -226
  74. package/#Tools/APPIQ-METHOD/bmad-core/agent-teams/team-all.yaml +0 -14
  75. package/#Tools/APPIQ-METHOD/bmad-core/agent-teams/team-flutter-mobile.yaml +0 -114
  76. package/#Tools/APPIQ-METHOD/bmad-core/agent-teams/team-fullstack.yaml +0 -28
  77. package/#Tools/APPIQ-METHOD/bmad-core/agent-teams/team-ide-minimal.yaml +0 -10
  78. package/#Tools/APPIQ-METHOD/bmad-core/agent-teams/team-no-ui.yaml +0 -13
  79. package/#Tools/APPIQ-METHOD/bmad-core/agents/analyst.md +0 -85
  80. package/#Tools/APPIQ-METHOD/bmad-core/agents/architect.md +0 -90
  81. package/#Tools/APPIQ-METHOD/bmad-core/agents/bmad-master.md +0 -108
  82. package/#Tools/APPIQ-METHOD/bmad-core/agents/bmad-orchestrator.md +0 -150
  83. package/#Tools/APPIQ-METHOD/bmad-core/agents/bmad-smart-launcher.md +0 -170
  84. package/#Tools/APPIQ-METHOD/bmad-core/agents/dev.md +0 -95
  85. package/#Tools/APPIQ-METHOD/bmad-core/agents/init-flow-po.md +0 -143
  86. package/#Tools/APPIQ-METHOD/bmad-core/agents/pm.md +0 -85
  87. package/#Tools/APPIQ-METHOD/bmad-core/agents/po.md +0 -76
  88. package/#Tools/APPIQ-METHOD/bmad-core/agents/qa.md +0 -86
  89. package/#Tools/APPIQ-METHOD/bmad-core/agents/sm.md +0 -67
  90. package/#Tools/APPIQ-METHOD/bmad-core/agents/ux-expert.md +0 -71
  91. package/#Tools/APPIQ-METHOD/bmad-core/bmad-core/user-guide.md +0 -0
  92. package/#Tools/APPIQ-METHOD/bmad-core/checklists/architect-checklist.md +0 -443
  93. package/#Tools/APPIQ-METHOD/bmad-core/checklists/change-checklist.md +0 -182
  94. package/#Tools/APPIQ-METHOD/bmad-core/checklists/pm-checklist.md +0 -375
  95. package/#Tools/APPIQ-METHOD/bmad-core/checklists/po-master-checklist.md +0 -441
  96. package/#Tools/APPIQ-METHOD/bmad-core/checklists/security-validation-checklist.md +0 -332
  97. package/#Tools/APPIQ-METHOD/bmad-core/checklists/story-dod-checklist.md +0 -101
  98. package/#Tools/APPIQ-METHOD/bmad-core/checklists/story-draft-checklist.md +0 -156
  99. package/#Tools/APPIQ-METHOD/bmad-core/core-config.yaml +0 -20
  100. package/#Tools/APPIQ-METHOD/bmad-core/core-config.yaml.bak +0 -20
  101. package/#Tools/APPIQ-METHOD/bmad-core/data/backend-services-integration.md +0 -686
  102. package/#Tools/APPIQ-METHOD/bmad-core/data/bmad-kb.md +0 -803
  103. package/#Tools/APPIQ-METHOD/bmad-core/data/brainstorming-techniques.md +0 -36
  104. package/#Tools/APPIQ-METHOD/bmad-core/data/elicitation-methods.md +0 -134
  105. package/#Tools/APPIQ-METHOD/bmad-core/data/shadcn-ui-integration.md +0 -388
  106. package/#Tools/APPIQ-METHOD/bmad-core/data/technical-preferences.md +0 -149
  107. package/#Tools/APPIQ-METHOD/bmad-core/enhanced-ide-development-workflow.md +0 -43
  108. package/#Tools/APPIQ-METHOD/bmad-core/tasks/advanced-elicitation.md +0 -117
  109. package/#Tools/APPIQ-METHOD/bmad-core/tasks/brownfield-create-epic.md +0 -160
  110. package/#Tools/APPIQ-METHOD/bmad-core/tasks/brownfield-create-story.md +0 -147
  111. package/#Tools/APPIQ-METHOD/bmad-core/tasks/correct-course.md +0 -70
  112. package/#Tools/APPIQ-METHOD/bmad-core/tasks/create-brownfield-story.md +0 -304
  113. package/#Tools/APPIQ-METHOD/bmad-core/tasks/create-deep-research-prompt.md +0 -289
  114. package/#Tools/APPIQ-METHOD/bmad-core/tasks/create-flutter-story.md +0 -197
  115. package/#Tools/APPIQ-METHOD/bmad-core/tasks/create-next-story.md +0 -112
  116. package/#Tools/APPIQ-METHOD/bmad-core/tasks/document-project.md +0 -341
  117. package/#Tools/APPIQ-METHOD/bmad-core/tasks/facilitate-brainstorming-session.md +0 -136
  118. package/#Tools/APPIQ-METHOD/bmad-core/tasks/generate-ai-frontend-prompt.md +0 -51
  119. package/#Tools/APPIQ-METHOD/bmad-core/tasks/index-docs.md +0 -179
  120. package/#Tools/APPIQ-METHOD/bmad-core/tasks/intelligent-epic-creation.md +0 -234
  121. package/#Tools/APPIQ-METHOD/bmad-core/tasks/kb-mode-interaction.md +0 -75
  122. package/#Tools/APPIQ-METHOD/bmad-core/tasks/review-story.md +0 -145
  123. package/#Tools/APPIQ-METHOD/bmad-core/tasks/shard-doc.md +0 -187
  124. package/#Tools/APPIQ-METHOD/bmad-core/tasks/smart-project-analysis.md +0 -289
  125. package/#Tools/APPIQ-METHOD/bmad-core/tasks/validate-next-story.md +0 -134
  126. package/#Tools/APPIQ-METHOD/bmad-core/templates/architecture-tmpl.yaml +0 -650
  127. package/#Tools/APPIQ-METHOD/bmad-core/templates/brainstorming-output-tmpl.yaml +0 -156
  128. package/#Tools/APPIQ-METHOD/bmad-core/templates/brownfield-architecture-tmpl.yaml +0 -476
  129. package/#Tools/APPIQ-METHOD/bmad-core/templates/brownfield-prd-tmpl.yaml +0 -280
  130. package/#Tools/APPIQ-METHOD/bmad-core/templates/competitor-analysis-tmpl.yaml +0 -293
  131. package/#Tools/APPIQ-METHOD/bmad-core/templates/flutter-mobile-prd-tmpl.yaml +0 -330
  132. package/#Tools/APPIQ-METHOD/bmad-core/templates/flutter-story-tmpl.yaml +0 -376
  133. package/#Tools/APPIQ-METHOD/bmad-core/templates/flutter-ui-spec-tmpl.yaml +0 -415
  134. package/#Tools/APPIQ-METHOD/bmad-core/templates/front-end-architecture-tmpl.yaml +0 -206
  135. package/#Tools/APPIQ-METHOD/bmad-core/templates/front-end-spec-tmpl.yaml +0 -349
  136. package/#Tools/APPIQ-METHOD/bmad-core/templates/fullstack-architecture-tmpl.yaml +0 -812
  137. package/#Tools/APPIQ-METHOD/bmad-core/templates/market-research-tmpl.yaml +0 -252
  138. package/#Tools/APPIQ-METHOD/bmad-core/templates/prd-tmpl.yaml +0 -202
  139. package/#Tools/APPIQ-METHOD/bmad-core/templates/project-brief-tmpl.yaml +0 -221
  140. package/#Tools/APPIQ-METHOD/bmad-core/templates/story-tmpl.yaml +0 -137
  141. package/#Tools/APPIQ-METHOD/bmad-core/user-guide.md +0 -251
  142. package/#Tools/APPIQ-METHOD/bmad-core/workflows/brownfield-fullstack.yaml +0 -311
  143. package/#Tools/APPIQ-METHOD/bmad-core/workflows/brownfield-service.yaml +0 -187
  144. package/#Tools/APPIQ-METHOD/bmad-core/workflows/brownfield-ui.yaml +0 -197
  145. package/#Tools/APPIQ-METHOD/bmad-core/workflows/greenfield-fullstack.yaml +0 -284
  146. package/#Tools/APPIQ-METHOD/bmad-core/workflows/greenfield-service.yaml +0 -206
  147. package/#Tools/APPIQ-METHOD/bmad-core/workflows/greenfield-ui.yaml +0 -235
  148. package/#Tools/APPIQ-METHOD/bmad-core/working-in-the-brownfield.md +0 -373
  149. package/#Tools/APPIQ-METHOD/commands/README.md +0 -28
  150. package/#Tools/APPIQ-METHOD/commands/analyze.md +0 -27
  151. package/#Tools/APPIQ-METHOD/commands/appiq.md +0 -27
  152. package/#Tools/APPIQ-METHOD/commands/help.md +0 -27
  153. package/#Tools/APPIQ-METHOD/commands/story.md +0 -27
  154. package/#Tools/APPIQ-METHOD/dist/agents/analyst.txt +0 -2882
  155. package/#Tools/APPIQ-METHOD/dist/agents/architect.txt +0 -3543
  156. package/#Tools/APPIQ-METHOD/dist/agents/bmad-master.txt +0 -8756
  157. package/#Tools/APPIQ-METHOD/dist/agents/bmad-orchestrator.txt +0 -1490
  158. package/#Tools/APPIQ-METHOD/dist/agents/dev.txt +0 -428
  159. package/#Tools/APPIQ-METHOD/dist/agents/pm.txt +0 -2229
  160. package/#Tools/APPIQ-METHOD/dist/agents/po.txt +0 -1364
  161. package/#Tools/APPIQ-METHOD/dist/agents/qa.txt +0 -386
  162. package/#Tools/APPIQ-METHOD/dist/agents/sm.txt +0 -668
  163. package/#Tools/APPIQ-METHOD/dist/agents/ux-expert.txt +0 -701
  164. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.txt +0 -2408
  165. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.txt +0 -1631
  166. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.txt +0 -822
  167. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +0 -10989
  168. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.txt +0 -4047
  169. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.txt +0 -3744
  170. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.txt +0 -465
  171. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.txt +0 -990
  172. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt +0 -15467
  173. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-infrastructure-devops/agents/infra-devops-platform.txt +0 -2077
  174. package/#Tools/APPIQ-METHOD/dist/teams/team-all.txt +0 -11062
  175. package/#Tools/APPIQ-METHOD/dist/teams/team-fullstack.txt +0 -10392
  176. package/#Tools/APPIQ-METHOD/dist/teams/team-ide-minimal.txt +0 -3507
  177. package/#Tools/APPIQ-METHOD/dist/teams/team-no-ui.txt +0 -8951
  178. package/#Tools/APPIQ-METHOD/install-appiq.sh +0 -41
  179. package/#Tools/APPIQ-METHOD/package-lock.json +0 -631
  180. package/#Tools/APPIQ-METHOD/package.json +0 -44
  181. package/#Tools/APPIQ-METHOD/tasks/todo.md +0 -275
  182. package/#Tools/APPIQ-METHOD/tools/appiq-installer.js +0 -2711
  183. package/#Tools/APPIQ-METHOD/tools/bmad-npx-wrapper.js +0 -39
  184. package/#Tools/APPIQ-METHOD/tools/builders/web-builder.js +0 -681
  185. package/#Tools/APPIQ-METHOD/tools/bump-all-versions.js +0 -106
  186. package/#Tools/APPIQ-METHOD/tools/bump-expansion-version.js +0 -83
  187. package/#Tools/APPIQ-METHOD/tools/cli.js +0 -152
  188. package/#Tools/APPIQ-METHOD/tools/epic-solution-installer.js +0 -536
  189. package/#Tools/APPIQ-METHOD/tools/flattener/main.js +0 -570
  190. package/#Tools/APPIQ-METHOD/tools/installer/README.md +0 -8
  191. package/#Tools/APPIQ-METHOD/tools/installer/bin/bmad.js +0 -483
  192. package/#Tools/APPIQ-METHOD/tools/installer/config/ide-agent-config.yaml +0 -58
  193. package/#Tools/APPIQ-METHOD/tools/installer/config/install.config.yaml +0 -92
  194. package/#Tools/APPIQ-METHOD/tools/installer/lib/config-loader.js +0 -253
  195. package/#Tools/APPIQ-METHOD/tools/installer/lib/file-manager.js +0 -411
  196. package/#Tools/APPIQ-METHOD/tools/installer/lib/ide-base-setup.js +0 -227
  197. package/#Tools/APPIQ-METHOD/tools/installer/lib/ide-setup.js +0 -1096
  198. package/#Tools/APPIQ-METHOD/tools/installer/lib/installer.js +0 -1772
  199. package/#Tools/APPIQ-METHOD/tools/installer/lib/memory-profiler.js +0 -224
  200. package/#Tools/APPIQ-METHOD/tools/installer/lib/module-manager.js +0 -110
  201. package/#Tools/APPIQ-METHOD/tools/installer/lib/resource-locator.js +0 -310
  202. package/#Tools/APPIQ-METHOD/tools/installer/package-lock.json +0 -906
  203. package/#Tools/APPIQ-METHOD/tools/installer/package.json +0 -43
  204. package/#Tools/APPIQ-METHOD/tools/lib/dependency-resolver.js +0 -179
  205. package/#Tools/APPIQ-METHOD/tools/lib/yaml-utils.js +0 -29
  206. package/#Tools/APPIQ-METHOD/tools/md-assets/web-agent-startup-instructions.md +0 -39
  207. package/#Tools/APPIQ-METHOD/tools/semantic-release-sync-installer.js +0 -30
  208. package/#Tools/APPIQ-METHOD/tools/setup-ide-commands.js +0 -348
  209. package/#Tools/APPIQ-METHOD/tools/smart-installer.js +0 -592
  210. package/#Tools/APPIQ-METHOD/tools/sync-installer-version.js +0 -34
  211. package/#Tools/APPIQ-METHOD/tools/update-expansion-version.js +0 -54
  212. package/#Tools/APPIQ-METHOD/tools/upgraders/v3-to-v4-upgrader.js +0 -763
  213. package/#Tools/APPIQ-METHOD/tools/version-bump.js +0 -79
  214. package/#Tools/APPIQ-METHOD/tools/yaml-format.js +0 -240
  215. package/#Tools/SkyReels-V2/.pre-commit-config.yaml +0 -25
  216. package/#Tools/SkyReels-V2/LICENSE.txt +0 -38
  217. package/#Tools/SkyReels-V2/README.md +0 -766
  218. package/#Tools/SkyReels-V2/generate_video.py +0 -161
  219. package/#Tools/SkyReels-V2/generate_video_df.py +0 -220
  220. package/#Tools/SkyReels-V2/requirements.txt +0 -16
  221. package/#Tools/SkyReels-V2/skycaptioner_v1/README.md +0 -278
  222. package/#Tools/SkyReels-V2/skycaptioner_v1/examples/test.csv +0 -5
  223. package/#Tools/SkyReels-V2/skycaptioner_v1/examples/test_result.csv +0 -5
  224. package/#Tools/SkyReels-V2/skycaptioner_v1/infer_fusion_caption.sh +0 -9
  225. package/#Tools/SkyReels-V2/skycaptioner_v1/infer_struct_caption.sh +0 -8
  226. package/#Tools/SkyReels-V2/skycaptioner_v1/requirements.txt +0 -3
  227. package/#Tools/SkyReels-V2/skycaptioner_v1/scripts/gradio_fusion_caption.py +0 -146
  228. package/#Tools/SkyReels-V2/skycaptioner_v1/scripts/gradio_struct_caption.py +0 -92
  229. package/#Tools/SkyReels-V2/skycaptioner_v1/scripts/utils.py +0 -19
  230. package/#Tools/SkyReels-V2/skycaptioner_v1/scripts/vllm_fusion_caption.py +0 -256
  231. package/#Tools/SkyReels-V2/skycaptioner_v1/scripts/vllm_struct_caption.py +0 -156
  232. package/#Tools/SkyReels-V2/skyreels_v2_infer/__init__.py +0 -1
  233. package/#Tools/SkyReels-V2/skyreels_v2_infer/distributed/__init__.py +0 -0
  234. package/#Tools/SkyReels-V2/skyreels_v2_infer/distributed/xdit_context_parallel.py +0 -286
  235. package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/__init__.py +0 -69
  236. package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/attention.py +0 -179
  237. package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/clip.py +0 -525
  238. package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/t5.py +0 -454
  239. package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/tokenizers.py +0 -78
  240. package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/transformer.py +0 -839
  241. package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/vae.py +0 -639
  242. package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/xlm_roberta.py +0 -165
  243. package/#Tools/SkyReels-V2/skyreels_v2_infer/pipelines/__init__.py +0 -5
  244. package/#Tools/SkyReels-V2/skyreels_v2_infer/pipelines/diffusion_forcing_pipeline.py +0 -659
  245. package/#Tools/SkyReels-V2/skyreels_v2_infer/pipelines/image2video_pipeline.py +0 -156
  246. package/#Tools/SkyReels-V2/skyreels_v2_infer/pipelines/prompt_enhancer.py +0 -65
  247. package/#Tools/SkyReels-V2/skyreels_v2_infer/pipelines/text2video_pipeline.py +0 -110
  248. package/#Tools/SkyReels-V2/skyreels_v2_infer/scheduler/__init__.py +0 -0
  249. package/#Tools/SkyReels-V2/skyreels_v2_infer/scheduler/fm_solvers_unipc.py +0 -759
  250. package/#Tools/SuperClaude/.claude/commands/analyze.md +0 -36
  251. package/#Tools/SuperClaude/.claude/commands/build.md +0 -35
  252. package/#Tools/SuperClaude/.claude/commands/cleanup.md +0 -46
  253. package/#Tools/SuperClaude/.claude/commands/deploy.md +0 -55
  254. package/#Tools/SuperClaude/.claude/commands/design.md +0 -91
  255. package/#Tools/SuperClaude/.claude/commands/dev-setup.md +0 -37
  256. package/#Tools/SuperClaude/.claude/commands/document.md +0 -99
  257. package/#Tools/SuperClaude/.claude/commands/estimate.md +0 -69
  258. package/#Tools/SuperClaude/.claude/commands/explain.md +0 -85
  259. package/#Tools/SuperClaude/.claude/commands/git.md +0 -47
  260. package/#Tools/SuperClaude/.claude/commands/improve.md +0 -162
  261. package/#Tools/SuperClaude/.claude/commands/index.md +0 -159
  262. package/#Tools/SuperClaude/.claude/commands/load.md +0 -65
  263. package/#Tools/SuperClaude/.claude/commands/migrate.md +0 -76
  264. package/#Tools/SuperClaude/.claude/commands/scan.md +0 -163
  265. package/#Tools/SuperClaude/.claude/commands/shared/ambiguity-check.yml +0 -40
  266. package/#Tools/SuperClaude/.claude/commands/shared/audit.yml +0 -21
  267. package/#Tools/SuperClaude/.claude/commands/shared/checkpoint.yml +0 -28
  268. package/#Tools/SuperClaude/.claude/commands/shared/cleanup-patterns.yml +0 -107
  269. package/#Tools/SuperClaude/.claude/commands/shared/command-memory.yml +0 -52
  270. package/#Tools/SuperClaude/.claude/commands/shared/command-templates.yml +0 -167
  271. package/#Tools/SuperClaude/.claude/commands/shared/config-validator.yml +0 -206
  272. package/#Tools/SuperClaude/.claude/commands/shared/constants.yml +0 -311
  273. package/#Tools/SuperClaude/.claude/commands/shared/documentation-dirs.yml +0 -134
  274. package/#Tools/SuperClaude/.claude/commands/shared/error-handling.yml +0 -341
  275. package/#Tools/SuperClaude/.claude/commands/shared/evidence.yml +0 -75
  276. package/#Tools/SuperClaude/.claude/commands/shared/execution-lifecycle.yml +0 -277
  277. package/#Tools/SuperClaude/.claude/commands/shared/git-operations.yml +0 -217
  278. package/#Tools/SuperClaude/.claude/commands/shared/git-workflow.yml +0 -37
  279. package/#Tools/SuperClaude/.claude/commands/shared/implementation.yml +0 -199
  280. package/#Tools/SuperClaude/.claude/commands/shared/loading-config.yml +0 -73
  281. package/#Tools/SuperClaude/.claude/commands/shared/mcp-flags.yml +0 -109
  282. package/#Tools/SuperClaude/.claude/commands/shared/migration-report.md +0 -165
  283. package/#Tools/SuperClaude/.claude/commands/shared/patterns.yml +0 -155
  284. package/#Tools/SuperClaude/.claude/commands/shared/performance.yml +0 -317
  285. package/#Tools/SuperClaude/.claude/commands/shared/planning-mode.yml +0 -51
  286. package/#Tools/SuperClaude/.claude/commands/shared/research-first.yml +0 -278
  287. package/#Tools/SuperClaude/.claude/commands/shared/session-recovery.yml +0 -144
  288. package/#Tools/SuperClaude/.claude/commands/shared/severity-levels.yml +0 -252
  289. package/#Tools/SuperClaude/.claude/commands/shared/task-system.yml +0 -380
  290. package/#Tools/SuperClaude/.claude/commands/shared/task-ultracompressed.yml +0 -88
  291. package/#Tools/SuperClaude/.claude/commands/shared/templates/feature-template.md +0 -59
  292. package/#Tools/SuperClaude/.claude/commands/shared/templates/task-ultracompressed.md +0 -26
  293. package/#Tools/SuperClaude/.claude/commands/shared/thinking-modes.yml +0 -61
  294. package/#Tools/SuperClaude/.claude/commands/shared/ultracompressed.yml +0 -97
  295. package/#Tools/SuperClaude/.claude/commands/shared/user-experience.yml +0 -208
  296. package/#Tools/SuperClaude/.claude/commands/shared/validation.yml +0 -54
  297. package/#Tools/SuperClaude/.claude/commands/shared/workflow-chains.yml +0 -138
  298. package/#Tools/SuperClaude/.claude/commands/spawn.md +0 -106
  299. package/#Tools/SuperClaude/.claude/commands/task.md +0 -110
  300. package/#Tools/SuperClaude/.claude/commands/test.md +0 -67
  301. package/#Tools/SuperClaude/.claude/commands/troubleshoot.md +0 -93
  302. package/#Tools/SuperClaude/.github/ISSUE_TEMPLATE/bug_report.yml +0 -114
  303. package/#Tools/SuperClaude/.github/ISSUE_TEMPLATE/feature_request.yml +0 -119
  304. package/#Tools/SuperClaude/.github/ISSUE_TEMPLATE/question.yml +0 -87
  305. package/#Tools/SuperClaude/.github/pull_request_template.md +0 -62
  306. package/#Tools/SuperClaude/CHANGELOG.md +0 -109
  307. package/#Tools/SuperClaude/CLAUDE.md +0 -95
  308. package/#Tools/SuperClaude/CODE_OF_CONDUCT.md +0 -45
  309. package/#Tools/SuperClaude/CONTRIBUTING.md +0 -225
  310. package/#Tools/SuperClaude/Commands_Cheat_Sheet.md +0 -160
  311. package/#Tools/SuperClaude/LICENSE +0 -21
  312. package/#Tools/SuperClaude/MCP.md +0 -117
  313. package/#Tools/SuperClaude/PERSONAS.md +0 -115
  314. package/#Tools/SuperClaude/README.md +0 -249
  315. package/#Tools/SuperClaude/RULES.md +0 -220
  316. package/#Tools/SuperClaude/SECURITY.md +0 -91
  317. package/#Tools/SuperClaude/install.sh +0 -296
  318. package/#Tools/claude-talk-to-figma-mcp/.github/workflows/test.yml +0 -36
  319. package/#Tools/claude-talk-to-figma-mcp/CHANGELOG.md +0 -88
  320. package/#Tools/claude-talk-to-figma-mcp/Dockerfile +0 -16
  321. package/#Tools/claude-talk-to-figma-mcp/LICENSE +0 -22
  322. package/#Tools/claude-talk-to-figma-mcp/TESTING.md +0 -216
  323. package/#Tools/claude-talk-to-figma-mcp/bun.lock +0 -964
  324. package/#Tools/claude-talk-to-figma-mcp/context/01/00-analisis.md +0 -151
  325. package/#Tools/claude-talk-to-figma-mcp/context/01/01-tools-refactor.md +0 -370
  326. package/#Tools/claude-talk-to-figma-mcp/context/01/02-tools-refactor-backlog.md +0 -253
  327. package/#Tools/claude-talk-to-figma-mcp/context/01/03-tools-refactor-test.md +0 -138
  328. package/#Tools/claude-talk-to-figma-mcp/context/01/04-tools-refactor-channel-error.md +0 -133
  329. package/#Tools/claude-talk-to-figma-mcp/context/01/04-tools-refactor-test-backlog.md +0 -0
  330. package/#Tools/claude-talk-to-figma-mcp/context/01/05-tools-refactor-four-tools-error.md +0 -356
  331. package/#Tools/claude-talk-to-figma-mcp/context/01/06-tools-refactor-four-tools-error-backlog.md +0 -425
  332. package/#Tools/claude-talk-to-figma-mcp/context/01/prompt-dev-nodejs-bun.md +0 -105
  333. package/#Tools/claude-talk-to-figma-mcp/context/01-prompt.md +0 -135
  334. package/#Tools/claude-talk-to-figma-mcp/context/02/00-analisis.md +0 -131
  335. package/#Tools/claude-talk-to-figma-mcp/context/02/01-plan.md +0 -162
  336. package/#Tools/claude-talk-to-figma-mcp/context/02/02-backlog.md +0 -241
  337. package/#Tools/claude-talk-to-figma-mcp/context/02-analisis.md +0 -202
  338. package/#Tools/claude-talk-to-figma-mcp/context/99-notas.md +0 -139
  339. package/#Tools/claude-talk-to-figma-mcp/context/pr-14/pr-14-analisis.md +0 -221
  340. package/#Tools/claude-talk-to-figma-mcp/context/pr-14/pr-14-claude-tests.md +0 -152
  341. package/#Tools/claude-talk-to-figma-mcp/context/pr-14/pr-14-npm-publishing.md +0 -272
  342. package/#Tools/claude-talk-to-figma-mcp/images/claude-talk-to-figma.png +0 -0
  343. package/#Tools/claude-talk-to-figma-mcp/images/mcp-figma-plugin-configuration.png +0 -0
  344. package/#Tools/claude-talk-to-figma-mcp/jest.config.cjs +0 -25
  345. package/#Tools/claude-talk-to-figma-mcp/package.json +0 -67
  346. package/#Tools/claude-talk-to-figma-mcp/prompts/prompt-ux-ui-especialista-es.md +0 -82
  347. package/#Tools/claude-talk-to-figma-mcp/prompts/prompt-ux-ui-especialista-gal.md +0 -80
  348. package/#Tools/claude-talk-to-figma-mcp/prompts/prompt-ux-ui-especialista-pt.md +0 -80
  349. package/#Tools/claude-talk-to-figma-mcp/prompts/prompt-ux-ui-specialist.md +0 -80
  350. package/#Tools/claude-talk-to-figma-mcp/readme.md +0 -307
  351. package/#Tools/claude-talk-to-figma-mcp/scripts/configure-claude.js +0 -90
  352. package/#Tools/claude-talk-to-figma-mcp/scripts/setup.sh +0 -30
  353. package/#Tools/claude-talk-to-figma-mcp/scripts/test-integration.js +0 -339
  354. package/#Tools/claude-talk-to-figma-mcp/smithery.yaml +0 -26
  355. package/#Tools/claude-talk-to-figma-mcp/src/claude_mcp_plugin/code.js +0 -3295
  356. package/#Tools/claude-talk-to-figma-mcp/src/claude_mcp_plugin/manifest.json +0 -24
  357. package/#Tools/claude-talk-to-figma-mcp/src/claude_mcp_plugin/setcharacters.js +0 -215
  358. package/#Tools/claude-talk-to-figma-mcp/src/claude_mcp_plugin/ui.html +0 -656
  359. package/#Tools/claude-talk-to-figma-mcp/src/socket.ts +0 -349
  360. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/bun.lock +0 -246
  361. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/config/config.ts +0 -22
  362. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/package.json +0 -31
  363. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/prompts/index.ts +0 -297
  364. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/server.ts +0 -62
  365. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tools/component-tools.ts +0 -48
  366. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tools/creation-tools.ts +0 -620
  367. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tools/document-tools.ts +0 -390
  368. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tools/index.ts +0 -28
  369. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tools/modification-tools.ts +0 -408
  370. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tools/text-tools.ts +0 -531
  371. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tsconfig.json +0 -18
  372. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/types/color.ts +0 -13
  373. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/types/index.ts +0 -87
  374. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/utils/defaults.ts +0 -23
  375. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/utils/figma-helpers.ts +0 -142
  376. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/utils/logger.ts +0 -8
  377. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/utils/websocket.ts +0 -258
  378. package/#Tools/claude-talk-to-figma-mcp/tests/fixtures/test-data.ts +0 -32
  379. package/#Tools/claude-talk-to-figma-mcp/tests/integration/set-fill-color.test.ts +0 -309
  380. package/#Tools/claude-talk-to-figma-mcp/tests/integration/set-stroke-color.test.ts +0 -387
  381. package/#Tools/claude-talk-to-figma-mcp/tests/setup.ts +0 -7
  382. package/#Tools/claude-talk-to-figma-mcp/tests/unit/utils/defaults.test.ts +0 -131
  383. package/#Tools/claude-talk-to-figma-mcp/tsconfig.json +0 -17
  384. package/#Tools/claude-talk-to-figma-mcp/tsup.config.ts +0 -14
  385. package/#Tools/jwt creator/AuthKey_MZ7UQGFV2Q.p8 +0 -6
  386. package/#Tools/jwt creator/generate_apple_jwt.js +0 -18
  387. package/#Tools/jwt creator/node_modules/.package-lock.json +0 -145
  388. package/#Tools/jwt creator/node_modules/buffer-equal-constant-time/.travis.yml +0 -4
  389. package/#Tools/jwt creator/node_modules/buffer-equal-constant-time/LICENSE.txt +0 -12
  390. package/#Tools/jwt creator/node_modules/buffer-equal-constant-time/README.md +0 -50
  391. package/#Tools/jwt creator/node_modules/buffer-equal-constant-time/index.js +0 -41
  392. package/#Tools/jwt creator/node_modules/buffer-equal-constant-time/package.json +0 -21
  393. package/#Tools/jwt creator/node_modules/buffer-equal-constant-time/test.js +0 -42
  394. package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/CODEOWNERS +0 -1
  395. package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/LICENSE +0 -201
  396. package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/README.md +0 -65
  397. package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/package.json +0 -46
  398. package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/src/ecdsa-sig-formatter.d.ts +0 -17
  399. package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/src/ecdsa-sig-formatter.js +0 -187
  400. package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/src/param-bytes-for-alg.js +0 -23
  401. package/#Tools/jwt creator/node_modules/jsonwebtoken/LICENSE +0 -21
  402. package/#Tools/jwt creator/node_modules/jsonwebtoken/README.md +0 -396
  403. package/#Tools/jwt creator/node_modules/jsonwebtoken/decode.js +0 -30
  404. package/#Tools/jwt creator/node_modules/jsonwebtoken/index.js +0 -8
  405. package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/JsonWebTokenError.js +0 -14
  406. package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/NotBeforeError.js +0 -13
  407. package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/TokenExpiredError.js +0 -13
  408. package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/asymmetricKeyDetailsSupported.js +0 -3
  409. package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/psSupported.js +0 -3
  410. package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/rsaPssKeyDetailsSupported.js +0 -3
  411. package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/timespan.js +0 -18
  412. package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/validateAsymmetricKey.js +0 -66
  413. package/#Tools/jwt creator/node_modules/jsonwebtoken/package.json +0 -71
  414. package/#Tools/jwt creator/node_modules/jsonwebtoken/sign.js +0 -253
  415. package/#Tools/jwt creator/node_modules/jsonwebtoken/verify.js +0 -263
  416. package/#Tools/jwt creator/node_modules/jwa/LICENSE +0 -17
  417. package/#Tools/jwt creator/node_modules/jwa/README.md +0 -150
  418. package/#Tools/jwt creator/node_modules/jwa/index.js +0 -266
  419. package/#Tools/jwt creator/node_modules/jwa/package.json +0 -37
  420. package/#Tools/jwt creator/node_modules/jws/CHANGELOG.md +0 -34
  421. package/#Tools/jwt creator/node_modules/jws/LICENSE +0 -17
  422. package/#Tools/jwt creator/node_modules/jws/index.js +0 -22
  423. package/#Tools/jwt creator/node_modules/jws/lib/data-stream.js +0 -55
  424. package/#Tools/jwt creator/node_modules/jws/lib/sign-stream.js +0 -78
  425. package/#Tools/jwt creator/node_modules/jws/lib/tostring.js +0 -10
  426. package/#Tools/jwt creator/node_modules/jws/lib/verify-stream.js +0 -120
  427. package/#Tools/jwt creator/node_modules/jws/package.json +0 -34
  428. package/#Tools/jwt creator/node_modules/jws/readme.md +0 -255
  429. package/#Tools/jwt creator/node_modules/lodash.includes/LICENSE +0 -47
  430. package/#Tools/jwt creator/node_modules/lodash.includes/README.md +0 -18
  431. package/#Tools/jwt creator/node_modules/lodash.includes/index.js +0 -745
  432. package/#Tools/jwt creator/node_modules/lodash.includes/package.json +0 -17
  433. package/#Tools/jwt creator/node_modules/lodash.isboolean/LICENSE +0 -22
  434. package/#Tools/jwt creator/node_modules/lodash.isboolean/README.md +0 -18
  435. package/#Tools/jwt creator/node_modules/lodash.isboolean/index.js +0 -70
  436. package/#Tools/jwt creator/node_modules/lodash.isboolean/package.json +0 -17
  437. package/#Tools/jwt creator/node_modules/lodash.isinteger/LICENSE +0 -47
  438. package/#Tools/jwt creator/node_modules/lodash.isinteger/README.md +0 -18
  439. package/#Tools/jwt creator/node_modules/lodash.isinteger/index.js +0 -265
  440. package/#Tools/jwt creator/node_modules/lodash.isinteger/package.json +0 -17
  441. package/#Tools/jwt creator/node_modules/lodash.isnumber/LICENSE +0 -22
  442. package/#Tools/jwt creator/node_modules/lodash.isnumber/README.md +0 -18
  443. package/#Tools/jwt creator/node_modules/lodash.isnumber/index.js +0 -79
  444. package/#Tools/jwt creator/node_modules/lodash.isnumber/package.json +0 -17
  445. package/#Tools/jwt creator/node_modules/lodash.isplainobject/LICENSE +0 -47
  446. package/#Tools/jwt creator/node_modules/lodash.isplainobject/README.md +0 -18
  447. package/#Tools/jwt creator/node_modules/lodash.isplainobject/index.js +0 -139
  448. package/#Tools/jwt creator/node_modules/lodash.isplainobject/package.json +0 -17
  449. package/#Tools/jwt creator/node_modules/lodash.isstring/LICENSE +0 -22
  450. package/#Tools/jwt creator/node_modules/lodash.isstring/README.md +0 -18
  451. package/#Tools/jwt creator/node_modules/lodash.isstring/index.js +0 -95
  452. package/#Tools/jwt creator/node_modules/lodash.isstring/package.json +0 -17
  453. package/#Tools/jwt creator/node_modules/lodash.once/LICENSE +0 -47
  454. package/#Tools/jwt creator/node_modules/lodash.once/README.md +0 -18
  455. package/#Tools/jwt creator/node_modules/lodash.once/index.js +0 -294
  456. package/#Tools/jwt creator/node_modules/lodash.once/package.json +0 -17
  457. package/#Tools/jwt creator/node_modules/ms/index.js +0 -162
  458. package/#Tools/jwt creator/node_modules/ms/license.md +0 -21
  459. package/#Tools/jwt creator/node_modules/ms/package.json +0 -38
  460. package/#Tools/jwt creator/node_modules/ms/readme.md +0 -59
  461. package/#Tools/jwt creator/node_modules/safe-buffer/LICENSE +0 -21
  462. package/#Tools/jwt creator/node_modules/safe-buffer/README.md +0 -584
  463. package/#Tools/jwt creator/node_modules/safe-buffer/index.d.ts +0 -187
  464. package/#Tools/jwt creator/node_modules/safe-buffer/index.js +0 -65
  465. package/#Tools/jwt creator/node_modules/safe-buffer/package.json +0 -51
  466. package/#Tools/jwt creator/node_modules/semver/LICENSE +0 -15
  467. package/#Tools/jwt creator/node_modules/semver/README.md +0 -664
  468. package/#Tools/jwt creator/node_modules/semver/bin/semver.js +0 -191
  469. package/#Tools/jwt creator/node_modules/semver/classes/comparator.js +0 -143
  470. package/#Tools/jwt creator/node_modules/semver/classes/index.js +0 -7
  471. package/#Tools/jwt creator/node_modules/semver/classes/range.js +0 -556
  472. package/#Tools/jwt creator/node_modules/semver/classes/semver.js +0 -319
  473. package/#Tools/jwt creator/node_modules/semver/functions/clean.js +0 -8
  474. package/#Tools/jwt creator/node_modules/semver/functions/cmp.js +0 -54
  475. package/#Tools/jwt creator/node_modules/semver/functions/coerce.js +0 -62
  476. package/#Tools/jwt creator/node_modules/semver/functions/compare-build.js +0 -9
  477. package/#Tools/jwt creator/node_modules/semver/functions/compare-loose.js +0 -5
  478. package/#Tools/jwt creator/node_modules/semver/functions/compare.js +0 -7
  479. package/#Tools/jwt creator/node_modules/semver/functions/diff.js +0 -60
  480. package/#Tools/jwt creator/node_modules/semver/functions/eq.js +0 -5
  481. package/#Tools/jwt creator/node_modules/semver/functions/gt.js +0 -5
  482. package/#Tools/jwt creator/node_modules/semver/functions/gte.js +0 -5
  483. package/#Tools/jwt creator/node_modules/semver/functions/inc.js +0 -21
  484. package/#Tools/jwt creator/node_modules/semver/functions/lt.js +0 -5
  485. package/#Tools/jwt creator/node_modules/semver/functions/lte.js +0 -5
  486. package/#Tools/jwt creator/node_modules/semver/functions/major.js +0 -5
  487. package/#Tools/jwt creator/node_modules/semver/functions/minor.js +0 -5
  488. package/#Tools/jwt creator/node_modules/semver/functions/neq.js +0 -5
  489. package/#Tools/jwt creator/node_modules/semver/functions/parse.js +0 -18
  490. package/#Tools/jwt creator/node_modules/semver/functions/patch.js +0 -5
  491. package/#Tools/jwt creator/node_modules/semver/functions/prerelease.js +0 -8
  492. package/#Tools/jwt creator/node_modules/semver/functions/rcompare.js +0 -5
  493. package/#Tools/jwt creator/node_modules/semver/functions/rsort.js +0 -5
  494. package/#Tools/jwt creator/node_modules/semver/functions/satisfies.js +0 -12
  495. package/#Tools/jwt creator/node_modules/semver/functions/sort.js +0 -5
  496. package/#Tools/jwt creator/node_modules/semver/functions/valid.js +0 -8
  497. package/#Tools/jwt creator/node_modules/semver/index.js +0 -91
  498. package/#Tools/jwt creator/node_modules/semver/internal/constants.js +0 -37
  499. package/#Tools/jwt creator/node_modules/semver/internal/debug.js +0 -11
  500. package/#Tools/jwt creator/node_modules/semver/internal/identifiers.js +0 -25
  501. package/#Tools/jwt creator/node_modules/semver/internal/lrucache.js +0 -42
  502. package/#Tools/jwt creator/node_modules/semver/internal/parse-options.js +0 -17
  503. package/#Tools/jwt creator/node_modules/semver/internal/re.js +0 -223
  504. package/#Tools/jwt creator/node_modules/semver/package.json +0 -78
  505. package/#Tools/jwt creator/node_modules/semver/preload.js +0 -4
  506. package/#Tools/jwt creator/node_modules/semver/range.bnf +0 -16
  507. package/#Tools/jwt creator/node_modules/semver/ranges/gtr.js +0 -6
  508. package/#Tools/jwt creator/node_modules/semver/ranges/intersects.js +0 -9
  509. package/#Tools/jwt creator/node_modules/semver/ranges/ltr.js +0 -6
  510. package/#Tools/jwt creator/node_modules/semver/ranges/max-satisfying.js +0 -27
  511. package/#Tools/jwt creator/node_modules/semver/ranges/min-satisfying.js +0 -26
  512. package/#Tools/jwt creator/node_modules/semver/ranges/min-version.js +0 -63
  513. package/#Tools/jwt creator/node_modules/semver/ranges/outside.js +0 -82
  514. package/#Tools/jwt creator/node_modules/semver/ranges/simplify.js +0 -49
  515. package/#Tools/jwt creator/node_modules/semver/ranges/subset.js +0 -249
  516. package/#Tools/jwt creator/node_modules/semver/ranges/to-comparators.js +0 -10
  517. package/#Tools/jwt creator/node_modules/semver/ranges/valid.js +0 -13
  518. package/#Tools/jwt creator/package-lock.json +0 -150
  519. package/#Tools/jwt creator/package.json +0 -5
  520. package/#Tools/package.json +0 -94
  521. package/SuperClaude/.claude/commands/analyze.md +0 -36
  522. package/SuperClaude/.claude/commands/build.md +0 -35
  523. package/SuperClaude/.claude/commands/cleanup.md +0 -46
  524. package/SuperClaude/.claude/commands/deploy.md +0 -55
  525. package/SuperClaude/.claude/commands/design.md +0 -91
  526. package/SuperClaude/.claude/commands/dev-setup.md +0 -37
  527. package/SuperClaude/.claude/commands/document.md +0 -99
  528. package/SuperClaude/.claude/commands/estimate.md +0 -69
  529. package/SuperClaude/.claude/commands/explain.md +0 -85
  530. package/SuperClaude/.claude/commands/git.md +0 -47
  531. package/SuperClaude/.claude/commands/improve.md +0 -162
  532. package/SuperClaude/.claude/commands/index.md +0 -159
  533. package/SuperClaude/.claude/commands/load.md +0 -65
  534. package/SuperClaude/.claude/commands/migrate.md +0 -76
  535. package/SuperClaude/.claude/commands/scan.md +0 -163
  536. package/SuperClaude/.claude/commands/shared/ambiguity-check.yml +0 -40
  537. package/SuperClaude/.claude/commands/shared/audit.yml +0 -21
  538. package/SuperClaude/.claude/commands/shared/checkpoint.yml +0 -28
  539. package/SuperClaude/.claude/commands/shared/cleanup-patterns.yml +0 -107
  540. package/SuperClaude/.claude/commands/shared/command-memory.yml +0 -52
  541. package/SuperClaude/.claude/commands/shared/command-templates.yml +0 -167
  542. package/SuperClaude/.claude/commands/shared/config-validator.yml +0 -206
  543. package/SuperClaude/.claude/commands/shared/constants.yml +0 -311
  544. package/SuperClaude/.claude/commands/shared/documentation-dirs.yml +0 -134
  545. package/SuperClaude/.claude/commands/shared/error-handling.yml +0 -341
  546. package/SuperClaude/.claude/commands/shared/evidence.yml +0 -75
  547. package/SuperClaude/.claude/commands/shared/execution-lifecycle.yml +0 -277
  548. package/SuperClaude/.claude/commands/shared/git-operations.yml +0 -217
  549. package/SuperClaude/.claude/commands/shared/git-workflow.yml +0 -37
  550. package/SuperClaude/.claude/commands/shared/implementation.yml +0 -199
  551. package/SuperClaude/.claude/commands/shared/loading-config.yml +0 -73
  552. package/SuperClaude/.claude/commands/shared/mcp-flags.yml +0 -109
  553. package/SuperClaude/.claude/commands/shared/migration-report.md +0 -165
  554. package/SuperClaude/.claude/commands/shared/patterns.yml +0 -155
  555. package/SuperClaude/.claude/commands/shared/performance.yml +0 -317
  556. package/SuperClaude/.claude/commands/shared/planning-mode.yml +0 -51
  557. package/SuperClaude/.claude/commands/shared/research-first.yml +0 -278
  558. package/SuperClaude/.claude/commands/shared/session-recovery.yml +0 -144
  559. package/SuperClaude/.claude/commands/shared/severity-levels.yml +0 -252
  560. package/SuperClaude/.claude/commands/shared/task-system.yml +0 -380
  561. package/SuperClaude/.claude/commands/shared/task-ultracompressed.yml +0 -88
  562. package/SuperClaude/.claude/commands/shared/templates/feature-template.md +0 -59
  563. package/SuperClaude/.claude/commands/shared/templates/task-ultracompressed.md +0 -26
  564. package/SuperClaude/.claude/commands/shared/thinking-modes.yml +0 -61
  565. package/SuperClaude/.claude/commands/shared/ultracompressed.yml +0 -97
  566. package/SuperClaude/.claude/commands/shared/user-experience.yml +0 -208
  567. package/SuperClaude/.claude/commands/shared/validation.yml +0 -54
  568. package/SuperClaude/.claude/commands/shared/workflow-chains.yml +0 -138
  569. package/SuperClaude/.claude/commands/spawn.md +0 -106
  570. package/SuperClaude/.claude/commands/task.md +0 -110
  571. package/SuperClaude/.claude/commands/test.md +0 -67
  572. package/SuperClaude/.claude/commands/troubleshoot.md +0 -93
  573. package/SuperClaude/.github/ISSUE_TEMPLATE/bug_report.yml +0 -114
  574. package/SuperClaude/.github/ISSUE_TEMPLATE/feature_request.yml +0 -119
  575. package/SuperClaude/.github/ISSUE_TEMPLATE/question.yml +0 -87
  576. package/SuperClaude/.github/pull_request_template.md +0 -62
  577. package/SuperClaude/CHANGELOG.md +0 -109
  578. package/SuperClaude/CLAUDE.md +0 -95
  579. package/SuperClaude/CODE_OF_CONDUCT.md +0 -45
  580. package/SuperClaude/CONTRIBUTING.md +0 -225
  581. package/SuperClaude/Commands_Cheat_Sheet.md +0 -160
  582. package/SuperClaude/LICENSE +0 -21
  583. package/SuperClaude/MCP.md +0 -117
  584. package/SuperClaude/PERSONAS.md +0 -115
  585. package/SuperClaude/README.md +0 -249
  586. package/SuperClaude/RULES.md +0 -220
  587. package/SuperClaude/SECURITY.md +0 -91
  588. package/SuperClaude/install.sh +0 -296
  589. package/appiq-mcp installer/How-to.md +0 -250
  590. package/appiq-mcp installer/LICENSE +0 -21
  591. package/appiq-mcp installer/README.md +0 -235
  592. package/appiq-mcp installer/index.js +0 -672
  593. package/appiq-mcp installer/my_mcps.md +0 -105
  594. package/appiq-mcp installer/package-lock.json +0 -708
  595. package/appiq-mcp installer/package.json +0 -46
  596. package/appiq-mcp installer/test-install.bat +0 -60
  597. package/appiq-mcp installer/test-install.sh +0 -55
  598. package/appiq-mcp installer/test-load.js +0 -40
  599. package/bmad-core/agent-teams/team-flutter-mobile.yaml +0 -114
  600. package/bmad-core/agents/bmad-smart-launcher.md +0 -170
  601. package/bmad-core/agents/init-flow-po.md +0 -143
  602. package/bmad-core/checklists/security-validation-checklist.md +0 -332
  603. package/bmad-core/core-config.yaml.bak +0 -20
  604. package/bmad-core/data/backend-services-integration.md +0 -686
  605. package/bmad-core/data/shadcn-ui-integration.md +0 -388
  606. package/bmad-core/tasks/create-flutter-story.md +0 -197
  607. package/bmad-core/tasks/intelligent-epic-creation.md +0 -234
  608. package/bmad-core/tasks/smart-project-analysis.md +0 -289
  609. package/bmad-core/templates/flutter-mobile-prd-tmpl.yaml +0 -330
  610. package/bmad-core/templates/flutter-story-tmpl.yaml +0 -376
  611. package/bmad-core/templates/flutter-ui-spec-tmpl.yaml +0 -415
  612. package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-analytics.txt +0 -1530
  613. package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-architect.txt +0 -322
  614. package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-developer.txt +0 -692
  615. package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-pm.txt +0 -382
  616. package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-qa.txt +0 -665
  617. package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-security.txt +0 -1070
  618. package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-ux-expert.txt +0 -1494
  619. package/dist/expansion-packs/bmad-mobile-app-dev/teams/mobile-team-cross-platform.txt +0 -15613
  620. package/flutter/CLAUDE.md +0 -58
  621. package/flutter/punkt.claude/New Folder With Items/channel.md +0 -221
  622. package/flutter/punkt.claude/New Folder With Items/commands/add-translations.md +0 -12
  623. package/flutter/punkt.claude/New Folder With Items/commands/create-feature.md +0 -168
  624. package/flutter/punkt.claude/New Folder With Items/commands/explain-codebase.md +0 -1
  625. package/flutter/punkt.claude/New Folder With Items/commands/feature-business-logic.md +0 -551
  626. package/flutter/punkt.claude/New Folder With Items/commands/feature-data-layer.md +0 -924
  627. package/flutter/punkt.claude/New Folder With Items/commands/feature-domain-layer.md +0 -540
  628. package/flutter/punkt.claude/New Folder With Items/commands/feature-integration.md +0 -493
  629. package/flutter/punkt.claude/New Folder With Items/commands/feature-localization.md +0 -427
  630. package/flutter/punkt.claude/New Folder With Items/commands/feature-ui-layer.md +0 -300
  631. package/flutter/punkt.claude/New Folder With Items/commands/git-commit.md +0 -3
  632. package/flutter/punkt.claude/New Folder With Items/commands/search-web.md +0 -1
  633. package/flutter/punkt.claude/punkt.claude/channel.md +0 -225
  634. package/flutter/punkt.claude/punkt.claude/commands/add-translations.md +0 -60
  635. package/flutter/punkt.claude/punkt.claude/commands/bug-fix.md +0 -32
  636. package/flutter/punkt.claude/punkt.claude/commands/checkdev.md +0 -122
  637. package/flutter/punkt.claude/punkt.claude/commands/create-feature.md +0 -174
  638. package/flutter/punkt.claude/punkt.claude/commands/dev.md +0 -79
  639. package/flutter/punkt.claude/punkt.claude/commands/explain-codebase.md +0 -1
  640. package/flutter/punkt.claude/punkt.claude/commands/feature-business-logic.md +0 -430
  641. package/flutter/punkt.claude/punkt.claude/commands/feature-data-layer.md +0 -572
  642. package/flutter/punkt.claude/punkt.claude/commands/feature-domain-layer.md +0 -537
  643. package/flutter/punkt.claude/punkt.claude/commands/feature-integration.md +0 -493
  644. package/flutter/punkt.claude/punkt.claude/commands/feature-localization.md +0 -427
  645. package/flutter/punkt.claude/punkt.claude/commands/feature-ui-layer.md +0 -831
  646. package/flutter/punkt.claude/punkt.claude/commands/git-commit.md +0 -3
  647. package/flutter/punkt.claude/punkt.claude/commands/manage-translations.md +0 -433
  648. package/flutter/punkt.claude/punkt.claude/commands/search-web.md +0 -1
  649. package/flutter/punkt.claude/punkt.claude/developer_check.md +0 -121
  650. package/tools/appiq-installer.js +0 -2711
  651. package/tools/epic-solution-installer.js +0 -536
  652. package/tools/setup-ide-commands.js +0 -348
  653. package/tools/smart-installer.js +0 -592
  654. package/web/CLAUDE.md +0 -58
  655. /package/{#Tools/APPIQ-METHOD/.github → .github}/FUNDING.yaml +0 -0
  656. /package/{#Tools/APPIQ-METHOD/.github → .github}/ISSUE_TEMPLATE/bug_report.md +0 -0
  657. /package/{#Tools/APPIQ-METHOD/.github → .github}/ISSUE_TEMPLATE/feature_request.md +0 -0
  658. /package/{#Tools/APPIQ-METHOD/.github → .github}/workflows/release.yaml +0 -0
  659. /package/{#Tools/APPIQ-METHOD/.releaserc.json → .releaserc.json} +0 -0
  660. /package/{#Tools/APPIQ-METHOD/.vscode → .vscode}/settings.json +0 -0
  661. /package/{#Tools/APPIQ-METHOD/CHANGELOG.md → CHANGELOG.md} +0 -0
  662. /package/{#Tools/APPIQ-METHOD/CONTRIBUTING.md → CONTRIBUTING.md} +0 -0
  663. /package/{#Tools/APPIQ-METHOD/LICENSE → LICENSE} +0 -0
  664. /package/{#Tools/APPIQ-METHOD/common → common}/tasks/create-doc.md +0 -0
  665. /package/{#Tools/APPIQ-METHOD/common → common}/tasks/execute-checklist.md +0 -0
  666. /package/{#Tools/APPIQ-METHOD/common → common}/utils/bmad-doc-template.md +0 -0
  667. /package/{#Tools/APPIQ-METHOD/common → common}/utils/workflow-management.md +0 -0
  668. /package/{#Tools/APPIQ-METHOD/docs → docs}/GUIDING-PRINCIPLES.md +0 -0
  669. /package/{#Tools/APPIQ-METHOD/docs → docs}/core-architecture.md +0 -0
  670. /package/{#Tools/APPIQ-METHOD/docs → docs}/expansion-packs.md +0 -0
  671. /package/{#Tools/APPIQ-METHOD/docs → docs}/how-to-contribute-with-pull-requests.md +0 -0
  672. /package/{#Tools/APPIQ-METHOD/docs → docs}/versioning-and-releases.md +0 -0
  673. /package/{#Tools/APPIQ-METHOD/docs → docs}/versions.md +0 -0
  674. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/README.md +0 -0
  675. /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/agent-teams/flutter-mobile-team.yaml +0 -0
  676. /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/agents/flutter-cubit-agent.md +0 -0
  677. /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/agents/flutter-data-agent.md +0 -0
  678. /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/agents/flutter-domain-agent.md +0 -0
  679. /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/agents/flutter-ui-agent.md +0 -0
  680. /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/agents/shared-components-agent.md +0 -0
  681. /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/checklists/flutter-story-dod-checklist.md +0 -0
  682. /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/config.yaml +0 -0
  683. /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/data/flutter-development-guidelines.md +0 -0
  684. /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/templates/flutter-mobile-architecture-tmpl.yaml +0 -0
  685. /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/workflows/flutter-ui-first-development.yaml +0 -0
  686. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/agent-teams/phaser-2d-nodejs-game-team.yaml +0 -0
  687. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/agents/game-designer.md +0 -0
  688. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/agents/game-developer.md +0 -0
  689. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/agents/game-sm.md +0 -0
  690. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/checklists/game-design-checklist.md +0 -0
  691. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/checklists/game-story-dod-checklist.md +0 -0
  692. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/config.yaml +0 -0
  693. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/data/bmad-kb.md +0 -0
  694. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/data/development-guidelines.md +0 -0
  695. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/tasks/advanced-elicitation.md +0 -0
  696. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/tasks/create-game-story.md +0 -0
  697. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/tasks/game-design-brainstorming.md +0 -0
  698. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/templates/game-architecture-tmpl.yaml +0 -0
  699. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/templates/game-brief-tmpl.yaml +0 -0
  700. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/templates/game-design-doc-tmpl.yaml +0 -0
  701. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/templates/game-story-tmpl.yaml +0 -0
  702. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/templates/level-design-doc-tmpl.yaml +0 -0
  703. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/workflows/game-dev-greenfield.yaml +0 -0
  704. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/workflows/game-prototype.yaml +0 -0
  705. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/agent-teams/unity-2d-game-team.yaml +0 -0
  706. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/agents/game-architect.md +0 -0
  707. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/agents/game-designer.md +0 -0
  708. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/agents/game-developer.md +0 -0
  709. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/agents/game-sm.md +0 -0
  710. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/checklists/game-architect-checklist.md +0 -0
  711. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/checklists/game-change-checklist.md +0 -0
  712. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/checklists/game-design-checklist.md +0 -0
  713. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/checklists/game-story-dod-checklist.md +0 -0
  714. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/config.yaml +0 -0
  715. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/data/bmad-kb.md +0 -0
  716. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/data/development-guidelines.md +0 -0
  717. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/tasks/advanced-elicitation.md +0 -0
  718. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/tasks/correct-course-game.md +0 -0
  719. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/tasks/create-game-story.md +0 -0
  720. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/tasks/game-design-brainstorming.md +0 -0
  721. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/tasks/validate-game-story.md +0 -0
  722. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/templates/game-architecture-tmpl.yaml +0 -0
  723. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/templates/game-brief-tmpl.yaml +0 -0
  724. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/templates/game-design-doc-tmpl.yaml +0 -0
  725. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/templates/game-story-tmpl.yaml +0 -0
  726. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/templates/level-design-doc-tmpl.yaml +0 -0
  727. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/workflows/game-dev-greenfield.yaml +0 -0
  728. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/workflows/game-prototype.yaml +0 -0
  729. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/README.md +0 -0
  730. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/agents/infra-devops-platform.md +0 -0
  731. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/checklists/infrastructure-checklist.md +0 -0
  732. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/config.yaml +0 -0
  733. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/data/bmad-kb.md +0 -0
  734. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/tasks/review-infrastructure.md +0 -0
  735. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/tasks/validate-infrastructure.md +0 -0
  736. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/templates/infrastructure-architecture-tmpl.yaml +0 -0
  737. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/templates/infrastructure-platform-from-arch-tmpl.yaml +0 -0
@@ -1,659 +0,0 @@
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