@hybridlabor-api/aos 4.2.0 → 4.4.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 (1098) hide show
  1. package/.claude/hooks/memb-inject.mjs +121 -0
  2. package/.claude/settings.json +10 -0
  3. package/CLAUDE.md +37 -84
  4. package/CODEX.md +31 -12
  5. package/GEMINI.md +51 -58
  6. package/README.de.md +13 -14
  7. package/README.md +13 -14
  8. package/README.pt.md +13 -14
  9. package/THIRD_PARTY_NOTICES.md +54 -0
  10. package/docs/skills_table.md +0 -2
  11. package/installer.js +29 -16
  12. package/package.json +21 -2
  13. package/scripts/validate-skills.mjs +402 -0
  14. package/skills/basic/godmode-engineering/SKILL.md +1 -1
  15. package/skills/basic/godmode-shipping/SKILL.md +1 -1
  16. package/skills/github-repo/SKILL.md +1 -0
  17. package/skills/global_config/agent-tool-builder/SKILL.md +5 -4
  18. package/skills/global_config/ai-product/SKILL.md +3 -2
  19. package/skills/global_config/aos-project-init/SKILL.md +194 -0
  20. package/skills/global_config/aos-project-init/assets/AGENTS.template.md +56 -0
  21. package/skills/global_config/aos-project-init/scripts/aos-project-doctor.mjs +137 -0
  22. package/skills/global_config/aos-setup/SKILL.md +222 -0
  23. package/skills/global_config/aos-setup/scripts/aos-doctor.mjs +262 -0
  24. package/skills/global_config/ask-tim/SKILL.md +4 -2
  25. package/skills/global_config/{bdb-adobe-suite-mcp.md → bdb-adobe-suite-mcp/SKILL.md} +1 -0
  26. package/skills/global_config/{bdb-after-effects-mcp.md → bdb-after-effects-mcp/SKILL.md} +1 -0
  27. package/skills/global_config/{bdb-blender-mcp.md → bdb-blender-mcp/SKILL.md} +1 -0
  28. package/skills/global_config/{bdb-computer-use-mcp.md → bdb-computer-use-mcp/SKILL.md} +1 -0
  29. package/skills/global_config/{bdb-davinci-mcp.md → bdb-davinci-mcp/SKILL.md} +1 -0
  30. package/skills/global_config/bdb-ecosystem-health/SKILL.md +3 -3
  31. package/skills/global_config/{bdb-grandma3-mcp.md → bdb-grandma3-mcp/SKILL.md} +1 -0
  32. package/skills/global_config/{bdb-memb-mcp.md → bdb-memb-mcp/SKILL.md} +10 -0
  33. package/skills/global_config/{bdb-resolume-mcp.md → bdb-resolume-mcp/SKILL.md} +1 -0
  34. package/skills/global_config/{bdb-rhino-mcp.md → bdb-rhino-mcp/SKILL.md} +1 -0
  35. package/skills/global_config/{bdb-touchdesigner-mcp.md → bdb-touchdesigner-mcp/SKILL.md} +1 -0
  36. package/skills/global_config/{bdb-unreal-mcp.md → bdb-unreal-mcp/SKILL.md} +1 -0
  37. package/skills/global_config/{bdb-vectorworks-mcp.md → bdb-vectorworks-mcp/SKILL.md} +1 -0
  38. package/skills/global_config/bdbsaashost/SKILL.md +50 -50
  39. package/skills/global_config/browser-automation/SKILL.md +4 -4
  40. package/skills/global_config/crewai/SKILL.md +3 -2
  41. package/skills/global_config/debugger/SKILL.md +3 -6
  42. package/skills/global_config/git-advanced-workflows/SKILL.md +0 -1
  43. package/skills/global_config/github-actions-templates/SKILL.md +0 -2
  44. package/skills/global_config/neon-postgres/SKILL.md +3 -2
  45. package/skills/global_config/playwright-skill/SKILL.md +1 -1
  46. package/skills/global_config/posix-shell-pro/SKILL.md +0 -1
  47. package/skills/global_config/postgres-best-practices/SKILL.md +1 -1
  48. package/skills/global_config/prompt-engineering-patterns/SKILL.md +0 -1
  49. package/skills/global_config/rag-engineer/SKILL.md +4 -3
  50. package/skills/global_config/react-best-practices/SKILL.md +1 -1
  51. package/skills/global_config/remotion/SKILL.md +0 -1
  52. package/skills/global_config/seo/SKILL.md +6 -41
  53. package/skills/global_config/systematic-debugging/CREATION-LOG.md +1 -1
  54. package/skills/global_config/systematic-debugging/root-cause-tracing.md +1 -1
  55. package/skills/global_config/turborepo-caching/SKILL.md +0 -1
  56. package/skills/global_config/using-neon/SKILL.md +1 -47
  57. package/skills/global_config/vector-database-engineer/SKILL.md +0 -1
  58. package/skills/global_config/web-artifacts-builder/LICENSE.txt +1 -1
  59. package/skills/global_config/web-artifacts-builder/SKILL.md +1 -1
  60. package/skills/global_config/webapp-testing/LICENSE.txt +1 -1
  61. package/skills/global_config/webapp-testing/SKILL.md +1 -1
  62. package/assets/Give_AI_Agents_Control_of_Creative_Software.mp4 +0 -0
  63. package/mcps/RhinoMCP/connector/icon-dark.png +0 -3
  64. package/mcps/RhinoMCP/connector/icon-light.png +0 -3
  65. package/mcps/RhinoMCP/connector/screenshots/casa-rhino.png +0 -3
  66. package/mcps/RhinoMCP/docs/assets/css/custom.css +0 -640
  67. package/mcps/RhinoMCP/docs/content/_index.md +0 -88
  68. package/mcps/RhinoMCP/docs/content/docs/_index.md +0 -35
  69. package/mcps/RhinoMCP/docs/content/docs/advanced/_index.md +0 -37
  70. package/mcps/RhinoMCP/docs/content/docs/advanced/bulk-file-processing.md +0 -70
  71. package/mcps/RhinoMCP/docs/content/docs/advanced/headless-render-farm.md +0 -60
  72. package/mcps/RhinoMCP/docs/content/docs/advanced/make-this-parametric.md +0 -56
  73. package/mcps/RhinoMCP/docs/content/docs/advanced/sketch-to-model.md +0 -58
  74. package/mcps/RhinoMCP/docs/content/docs/advanced/upgrade-gh1-to-gh2.md +0 -51
  75. package/mcps/RhinoMCP/docs/content/docs/developers/_index.md +0 -39
  76. package/mcps/RhinoMCP/docs/content/docs/developers/dev-troubleshooting.md +0 -15
  77. package/mcps/RhinoMCP/docs/content/docs/developers/plugin-prototyping.md +0 -56
  78. package/mcps/RhinoMCP/docs/content/docs/developers/upgrade-gh1-to-gh2.md +0 -98
  79. package/mcps/RhinoMCP/docs/content/docs/developers/upgrade-to-netcore.md +0 -53
  80. package/mcps/RhinoMCP/docs/content/docs/developers/windows-to-cross-platform.md +0 -58
  81. package/mcps/RhinoMCP/docs/content/docs/developers/wpf-to-eto.md +0 -64
  82. package/mcps/RhinoMCP/docs/content/docs/getting-started/_index.md +0 -45
  83. package/mcps/RhinoMCP/docs/content/docs/getting-started/cc-plugin.md +0 -116
  84. package/mcps/RhinoMCP/docs/content/docs/getting-started/connector.md +0 -65
  85. package/mcps/RhinoMCP/docs/content/docs/getting-started/copilot.md +0 -61
  86. package/mcps/RhinoMCP/docs/content/docs/getting-started/lm-studio.md +0 -62
  87. package/mcps/RhinoMCP/docs/content/docs/troubleshooting.md +0 -66
  88. package/mcps/RhinoMCP/docs/content/docs/try-it-out/_index.md +0 -39
  89. package/mcps/RhinoMCP/docs/content/docs/try-it-out/examples/_index.md +0 -25
  90. package/mcps/RhinoMCP/docs/content/docs/try-it-out/examples/build-grasshopper.md +0 -26
  91. package/mcps/RhinoMCP/docs/content/docs/try-it-out/examples/generate-variations.md +0 -25
  92. package/mcps/RhinoMCP/docs/content/docs/try-it-out/examples/inspect-and-report.md +0 -26
  93. package/mcps/RhinoMCP/docs/content/docs/try-it-out/examples/layers.md +0 -28
  94. package/mcps/RhinoMCP/docs/content/docs/try-it-out/examples/model-from-image.md +0 -27
  95. package/mcps/RhinoMCP/docs/content/docs/try-it-out/recipes.md +0 -178
  96. package/mcps/RhinoMCP/docs/data/icons.yaml +0 -3
  97. package/mcps/RhinoMCP/docs/go.mod +0 -5
  98. package/mcps/RhinoMCP/docs/go.sum +0 -4
  99. package/mcps/RhinoMCP/docs/hugo.yaml +0 -78
  100. package/mcps/RhinoMCP/docs/layouts/_partials/sidebar.html +0 -333
  101. package/mcps/RhinoMCP/docs/layouts/docs/list.html +0 -29
  102. package/mcps/RhinoMCP/docs/layouts/docs/single.html +0 -29
  103. package/mcps/RhinoMCP/docs/layouts/partials/custom/head-end.html +0 -3
  104. package/mcps/RhinoMCP/docs/layouts/shortcodes/download-asset.html +0 -21
  105. package/mcps/RhinoMCP/docs/layouts/shortcodes/github.html +0 -21
  106. package/mcps/RhinoMCP/docs/layouts/shortcodes/prompt.html +0 -23
  107. package/mcps/RhinoMCP/docs/layouts/shortcodes/yak.html +0 -21
  108. package/mcps/RhinoMCP/docs/static/developer/sel-arc.png +0 -3
  109. package/mcps/RhinoMCP/docs/static/developer/voxelizer-gh2-conversion.png +0 -3
  110. package/mcps/RhinoMCP/docs/static/examples/ai-kettle.png +0 -3
  111. package/mcps/RhinoMCP/docs/static/examples/casa_rhino_shapes.png +0 -3
  112. package/mcps/RhinoMCP/docs/static/examples/kettle.jpg +0 -0
  113. package/mcps/RhinoMCP/docs/static/examples/raygun-layers.png +0 -3
  114. package/mcps/RhinoMCP/docs/static/examples/raygun-thumbnail.png +0 -3
  115. package/mcps/RhinoMCP/docs/static/examples/twisty-tower-gh.png +0 -3
  116. package/mcps/RhinoMCP/docs/static/favicon.svg +0 -26
  117. package/mcps/RhinoMCP/docs/static/images/landing-dark.png +0 -3
  118. package/mcps/RhinoMCP/docs/static/images/landing.png +0 -3
  119. package/mcps/RhinoMCP/docs/static/images/logo-dark.svg +0 -26
  120. package/mcps/RhinoMCP/docs/static/images/logo.svg +0 -26
  121. package/mcps/RhinoMCP/docs/static/local-llm.png +0 -3
  122. package/mcps/RhinoMCP/rhino/plugin/icon.png +0 -3
  123. package/mcps/RhinoMCP/tests/Acp.Tests/Acp.Tests.csproj +0 -29
  124. package/mcps/RhinoMCP/tests/Acp.Tests/CoverageTests.cs +0 -52
  125. package/mcps/RhinoMCP/tests/Acp.Tests/Fakes.cs +0 -90
  126. package/mcps/RhinoMCP/tests/Acp.Tests/GlobalUsings.cs +0 -1
  127. package/mcps/RhinoMCP/tests/Acp.Tests/LoopbackTests.cs +0 -59
  128. package/mcps/RhinoMCP/tests/Acp.Tests/RobustnessTests.cs +0 -124
  129. package/mcps/RhinoMCP/tests/Acp.Tests/SerializationTests.cs +0 -94
  130. package/mcps/RhinoMCP/tests/Integration.Tests/AdoptedSlotTests.cs +0 -136
  131. package/mcps/RhinoMCP/tests/Integration.Tests/AutoSpawnNotificationTests.cs +0 -63
  132. package/mcps/RhinoMCP/tests/Integration.Tests/CloseSlotAgentTests.cs +0 -56
  133. package/mcps/RhinoMCP/tests/Integration.Tests/CloseSlotTests.cs +0 -37
  134. package/mcps/RhinoMCP/tests/Integration.Tests/DocLifecycleTests.cs +0 -42
  135. package/mcps/RhinoMCP/tests/Integration.Tests/GlobalUsings.cs +0 -3
  136. package/mcps/RhinoMCP/tests/Integration.Tests/GrasshopperStartTests.cs +0 -56
  137. package/mcps/RhinoMCP/tests/Integration.Tests/Harness/ReturnResult.cs +0 -28
  138. package/mcps/RhinoMCP/tests/Integration.Tests/Harness/RhinoMcpFixture.cs +0 -90
  139. package/mcps/RhinoMCP/tests/Integration.Tests/Harness/RhinoMcpRouter.cs +0 -111
  140. package/mcps/RhinoMCP/tests/Integration.Tests/Harness/RhinoRouterPaths.cs +0 -83
  141. package/mcps/RhinoMCP/tests/Integration.Tests/Harness/RouterFixture.cs +0 -50
  142. package/mcps/RhinoMCP/tests/Integration.Tests/Integration.Tests.csproj +0 -31
  143. package/mcps/RhinoMCP/tests/Integration.Tests/ListSlotsShapeTests.cs +0 -55
  144. package/mcps/RhinoMCP/tests/Integration.Tests/ListSlotsTests.cs +0 -19
  145. package/mcps/RhinoMCP/tests/Integration.Tests/MacSharedProcessTests.cs +0 -87
  146. package/mcps/RhinoMCP/tests/Integration.Tests/MultiRouterTests.cs +0 -74
  147. package/mcps/RhinoMCP/tests/Integration.Tests/PluginToolTests.cs +0 -115
  148. package/mcps/RhinoMCP/tests/Integration.Tests/README.md +0 -35
  149. package/mcps/RhinoMCP/tests/Integration.Tests/RhinoCrashHandlingTests.cs +0 -107
  150. package/mcps/RhinoMCP/tests/Integration.Tests/SlotReapingTests.cs +0 -84
  151. package/mcps/RhinoMCP/tests/Integration.Tests/SpawnErrorTests.cs +0 -52
  152. package/mcps/RhinoMCP/tests/Integration.Tests/SpawnSlotTests.cs +0 -66
  153. package/mcps/RhinoMCP/tests/Integration.Tests/ToolDispatchBySlotTests.cs +0 -53
  154. package/mcps/RhinoMCP/tests/Integration.Tests/WindowsProcessIsolationTests.cs +0 -62
  155. package/mcps/RhinoMCP/tests/Router.Tests/CodegenTests.cs +0 -125
  156. package/mcps/RhinoMCP/tests/Router.Tests/ReturnResultTests.cs +0 -90
  157. package/mcps/RhinoMCP/tests/Router.Tests/RhinoCrashReportFinderTests.cs +0 -207
  158. package/mcps/RhinoMCP/tests/Router.Tests/RhinoLocatorOverrideTests.cs +0 -61
  159. package/mcps/RhinoMCP/tests/Router.Tests/RhinoLocatorTests.cs +0 -38
  160. package/mcps/RhinoMCP/tests/Router.Tests/RhinoManagerResolutionTests.cs +0 -151
  161. package/mcps/RhinoMCP/tests/Router.Tests/Router.Tests.csproj +0 -31
  162. package/mcps/RhinoMCP/tests/Router.Tests/RouterConfigTests.cs +0 -92
  163. package/mcps/RhinoMCP/tests/Router.Tests/SlotStoreLaunchingAbsenceTests.cs +0 -70
  164. package/mcps/RhinoMCP/tests/Router.Tests/SlotStorePortReservationTests.cs +0 -92
  165. package/mcps/RhinoMCP/tests/Router.Tests/SpawnDiagnosticsTests.cs +0 -100
  166. package/mcps/RhinoMCP/tests/Router.Tests/SpawnSlotToolDiagnoseTests.cs +0 -66
  167. package/mcps/RhinoMCP/tests/Server.Tests/McpConfigEditTests.cs +0 -223
  168. package/mcps/RhinoMCP/tests/Server.Tests/ParameterBinderTests.cs +0 -208
  169. package/mcps/RhinoMCP/tests/Server.Tests/ProtocolTests.cs +0 -200
  170. package/mcps/RhinoMCP/tests/Server.Tests/ResourceRegistryTests.cs +0 -218
  171. package/mcps/RhinoMCP/tests/Server.Tests/ResultUnwrapperTests.cs +0 -53
  172. package/mcps/RhinoMCP/tests/Server.Tests/SchemaBuilderTests.cs +0 -166
  173. package/mcps/RhinoMCP/tests/Server.Tests/Server.Tests.csproj +0 -40
  174. package/mcps/RhinoMCP/tests/StreamJson.Tests/AcpMessageMapperTests.cs +0 -82
  175. package/mcps/RhinoMCP/tests/StreamJson.Tests/AgentPromptsTests.cs +0 -56
  176. package/mcps/RhinoMCP/tests/StreamJson.Tests/AgentRegistryOverlayTests.cs +0 -88
  177. package/mcps/RhinoMCP/tests/StreamJson.Tests/AgentRegistryResolutionTests.cs +0 -152
  178. package/mcps/RhinoMCP/tests/StreamJson.Tests/AgentRunnerTurnTests.cs +0 -149
  179. package/mcps/RhinoMCP/tests/StreamJson.Tests/ClaudeStreamJsonParserTests.cs +0 -118
  180. package/mcps/RhinoMCP/tests/StreamJson.Tests/CodexStreamJsonParserTests.cs +0 -100
  181. package/mcps/RhinoMCP/tests/StreamJson.Tests/ConversationStorePruneTests.cs +0 -94
  182. package/mcps/RhinoMCP/tests/StreamJson.Tests/ConversationStoreRoundTripTests.cs +0 -70
  183. package/mcps/RhinoMCP/tests/StreamJson.Tests/ConversationTests.cs +0 -153
  184. package/mcps/RhinoMCP/tests/StreamJson.Tests/ConversationUsageTests.cs +0 -56
  185. package/mcps/RhinoMCP/tests/StreamJson.Tests/GlobalUsings.cs +0 -12
  186. package/mcps/RhinoMCP/tests/StreamJson.Tests/Shims.cs +0 -93
  187. package/mcps/RhinoMCP/tests/StreamJson.Tests/StreamJson.Tests.csproj +0 -56
  188. package/mcps/RhinoMCP/tests/StreamJson.Tests/StreamJsonAgentLoopbackTests.cs +0 -75
  189. package/mcps/RhinoMCP/tests/StreamJson.Tests/StreamJsonParserEdgeCaseTests.cs +0 -128
  190. package/mcps/RhinoMCP/tests/StreamJson.Tests/TokenUsageTests.cs +0 -40
  191. package/mcps/RhinoMCP/tests/launcher/launcher.test.mjs +0 -461
  192. package/mcps/RhinoMCP/tests/launcher/package.json +0 -8
  193. package/mcps/ae-mcp/docs/demo.png +0 -0
  194. package/mcps/ae-mcp/docs/demo1.png +0 -0
  195. package/mcps/ae-mcp/docs/demo3.png +0 -0
  196. package/mcps/ae-mcp/docs/video.png +0 -0
  197. package/mcps/after-effects-mcp/assets/MCP Auto Bridge.png +0 -0
  198. package/mcps/bdb-remoteos-mcp/tests/__init__.py +0 -1
  199. package/mcps/bdb-remoteos-mcp/tests/mock_incus.py +0 -60
  200. package/mcps/bdb-remoteos-mcp/tests/test_mcp_server.py +0 -27
  201. package/mcps/bdb-remoteos-mcp/tests/test_security_redteam.py +0 -349
  202. package/mcps/bdb-remoteos-mcp/tests/test_webhook.py +0 -61
  203. package/mcps/blender-mcp/assets/addon-instructions.png +0 -0
  204. package/mcps/blender-mcp/assets/hammer-icon.png +0 -0
  205. package/mcps/blender-mcp-server/docs/architecture.md +0 -209
  206. package/mcps/blender-mcp-server/docs/images/demo_render.png +0 -0
  207. package/mcps/blender-mcp-server/docs/python-execute-design.md +0 -515
  208. package/mcps/blender-mcp-server/tests/__init__.py +0 -0
  209. package/mcps/blender-mcp-server/tests/test_addon.py +0 -953
  210. package/mcps/blender-mcp-server/tests/test_server.py +0 -364
  211. package/mcps/davinci-mcp-professional/docs/README.md +0 -67
  212. package/mcps/davinci-mcp-professional/docs/html/README_8md.html +0 -113
  213. package/mcps/davinci-mcp-professional/docs/html/____init_____8py.html +0 -126
  214. package/mcps/davinci-mcp-professional/docs/html/____init_____8py.js +0 -6
  215. package/mcps/davinci-mcp-professional/docs/html/____init_____8py_source.html +0 -125
  216. package/mcps/davinci-mcp-professional/docs/html/__version_8py.html +0 -130
  217. package/mcps/davinci-mcp-professional/docs/html/__version_8py.js +0 -9
  218. package/mcps/davinci-mcp-professional/docs/html/__version_8py_source.html +0 -130
  219. package/mcps/davinci-mcp-professional/docs/html/annotated.html +0 -123
  220. package/mcps/davinci-mcp-professional/docs/html/annotated_dup.js +0 -21
  221. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveClient-members.html +0 -131
  222. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveClient.html +0 -706
  223. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveClient.js +0 -26
  224. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveConnectionError.html +0 -143
  225. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveConnectionError__coll__graph.map +0 -7
  226. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveConnectionError__coll__graph.md5 +0 -1
  227. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveConnectionError__coll__graph.png +0 -0
  228. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveConnectionError__inherit__graph.map +0 -7
  229. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveConnectionError__inherit__graph.md5 +0 -1
  230. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveConnectionError__inherit__graph.png +0 -0
  231. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveError.html +0 -143
  232. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveError__coll__graph.map +0 -5
  233. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveError__coll__graph.md5 +0 -1
  234. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveError__coll__graph.png +0 -0
  235. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveError__inherit__graph.map +0 -9
  236. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveError__inherit__graph.md5 +0 -1
  237. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveError__inherit__graph.png +0 -0
  238. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveNotRunningError.html +0 -143
  239. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveNotRunningError__coll__graph.map +0 -7
  240. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveNotRunningError__coll__graph.md5 +0 -1
  241. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveNotRunningError__coll__graph.png +0 -0
  242. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveNotRunningError__inherit__graph.map +0 -7
  243. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveNotRunningError__inherit__graph.md5 +0 -1
  244. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveNotRunningError__inherit__graph.png +0 -0
  245. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1server_1_1DaVinciMCPServer-members.html +0 -115
  246. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1server_1_1DaVinciMCPServer.html +0 -325
  247. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1server_1_1DaVinciMCPServer.js +0 -10
  248. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciMediaPool-members.html +0 -110
  249. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciMediaPool.html +0 -188
  250. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciMediaPool.js +0 -5
  251. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciMediaPool__coll__graph.map +0 -5
  252. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciMediaPool__coll__graph.md5 +0 -1
  253. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciMediaPool__coll__graph.png +0 -0
  254. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciMediaPool__inherit__graph.map +0 -5
  255. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciMediaPool__inherit__graph.md5 +0 -1
  256. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciMediaPool__inherit__graph.png +0 -0
  257. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProject-members.html +0 -113
  258. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProject.html +0 -248
  259. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProject.js +0 -8
  260. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProjectManager-members.html +0 -113
  261. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProjectManager.html +0 -252
  262. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProjectManager.js +0 -8
  263. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProjectManager__coll__graph.map +0 -5
  264. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProjectManager__coll__graph.md5 +0 -1
  265. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProjectManager__coll__graph.png +0 -0
  266. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProjectManager__inherit__graph.map +0 -5
  267. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProjectManager__inherit__graph.md5 +0 -1
  268. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProjectManager__inherit__graph.png +0 -0
  269. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProject__coll__graph.map +0 -5
  270. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProject__coll__graph.md5 +0 -1
  271. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProject__coll__graph.png +0 -0
  272. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProject__inherit__graph.map +0 -5
  273. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProject__inherit__graph.md5 +0 -1
  274. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProject__inherit__graph.png +0 -0
  275. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciResolveApp-members.html +0 -115
  276. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciResolveApp.html +0 -288
  277. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciResolveApp.js +0 -10
  278. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciResolveApp__coll__graph.map +0 -5
  279. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciResolveApp__coll__graph.md5 +0 -1
  280. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciResolveApp__coll__graph.png +0 -0
  281. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciResolveApp__inherit__graph.map +0 -5
  282. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciResolveApp__inherit__graph.md5 +0 -1
  283. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciResolveApp__inherit__graph.png +0 -0
  284. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciTimeline-members.html +0 -110
  285. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciTimeline.html +0 -188
  286. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciTimeline.js +0 -5
  287. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciTimeline__coll__graph.map +0 -5
  288. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciTimeline__coll__graph.md5 +0 -1
  289. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciTimeline__coll__graph.png +0 -0
  290. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciTimeline__inherit__graph.map +0 -5
  291. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciTimeline__inherit__graph.md5 +0 -1
  292. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciTimeline__inherit__graph.png +0 -0
  293. package/mcps/davinci-mcp-professional/docs/html/classes.html +0 -111
  294. package/mcps/davinci-mcp-professional/docs/html/cli_8py.html +0 -135
  295. package/mcps/davinci-mcp-professional/docs/html/cli_8py.js +0 -11
  296. package/mcps/davinci-mcp-professional/docs/html/cli_8py_source.html +0 -249
  297. package/mcps/davinci-mcp-professional/docs/html/clipboard.js +0 -61
  298. package/mcps/davinci-mcp-professional/docs/html/cookie.js +0 -58
  299. package/mcps/davinci-mcp-professional/docs/html/dir_1a1069c9a5427270b3ccd00c87d405fe.html +0 -127
  300. package/mcps/davinci-mcp-professional/docs/html/dir_1a1069c9a5427270b3ccd00c87d405fe.js +0 -4
  301. package/mcps/davinci-mcp-professional/docs/html/dir_1a1069c9a5427270b3ccd00c87d405fe_dep.map +0 -4
  302. package/mcps/davinci-mcp-professional/docs/html/dir_1a1069c9a5427270b3ccd00c87d405fe_dep.md5 +0 -1
  303. package/mcps/davinci-mcp-professional/docs/html/dir_1a1069c9a5427270b3ccd00c87d405fe_dep.png +0 -0
  304. package/mcps/davinci-mcp-professional/docs/html/dir_6a5346f4427b2e9426ba2ccfd9f0b603.html +0 -128
  305. package/mcps/davinci-mcp-professional/docs/html/dir_6a5346f4427b2e9426ba2ccfd9f0b603.js +0 -5
  306. package/mcps/davinci-mcp-professional/docs/html/dir_6a5346f4427b2e9426ba2ccfd9f0b603_dep.map +0 -4
  307. package/mcps/davinci-mcp-professional/docs/html/dir_6a5346f4427b2e9426ba2ccfd9f0b603_dep.md5 +0 -1
  308. package/mcps/davinci-mcp-professional/docs/html/dir_6a5346f4427b2e9426ba2ccfd9f0b603_dep.png +0 -0
  309. package/mcps/davinci-mcp-professional/docs/html/dir_77c8a4d399bde190a30252eceec792ef.html +0 -127
  310. package/mcps/davinci-mcp-professional/docs/html/dir_77c8a4d399bde190a30252eceec792ef.js +0 -4
  311. package/mcps/davinci-mcp-professional/docs/html/dir_77c8a4d399bde190a30252eceec792ef_dep.map +0 -4
  312. package/mcps/davinci-mcp-professional/docs/html/dir_77c8a4d399bde190a30252eceec792ef_dep.md5 +0 -1
  313. package/mcps/davinci-mcp-professional/docs/html/dir_77c8a4d399bde190a30252eceec792ef_dep.png +0 -0
  314. package/mcps/davinci-mcp-professional/docs/html/dir_f94b29b73815c35a8351f4403bcc4f74.html +0 -129
  315. package/mcps/davinci-mcp-professional/docs/html/dir_f94b29b73815c35a8351f4403bcc4f74.js +0 -12
  316. package/mcps/davinci-mcp-professional/docs/html/doxygen.css +0 -2540
  317. package/mcps/davinci-mcp-professional/docs/html/doxygen.svg +0 -28
  318. package/mcps/davinci-mcp-professional/docs/html/doxygen_crawl.html +0 -170
  319. package/mcps/davinci-mcp-professional/docs/html/dynsections.js +0 -198
  320. package/mcps/davinci-mcp-professional/docs/html/files.html +0 -123
  321. package/mcps/davinci-mcp-professional/docs/html/files_dup.js +0 -4
  322. package/mcps/davinci-mcp-professional/docs/html/functions.html +0 -190
  323. package/mcps/davinci-mcp-professional/docs/html/functions_func.html +0 -184
  324. package/mcps/davinci-mcp-professional/docs/html/functions_vars.html +0 -110
  325. package/mcps/davinci-mcp-professional/docs/html/graph_legend.html +0 -165
  326. package/mcps/davinci-mcp-professional/docs/html/graph_legend.md5 +0 -1
  327. package/mcps/davinci-mcp-professional/docs/html/graph_legend.png +0 -0
  328. package/mcps/davinci-mcp-professional/docs/html/hierarchy.html +0 -123
  329. package/mcps/davinci-mcp-professional/docs/html/hierarchy.js +0 -18
  330. package/mcps/davinci-mcp-professional/docs/html/index.html +0 -200
  331. package/mcps/davinci-mcp-professional/docs/html/index.js +0 -9
  332. package/mcps/davinci-mcp-professional/docs/html/inherit_graph_0.map +0 -3
  333. package/mcps/davinci-mcp-professional/docs/html/inherit_graph_0.md5 +0 -1
  334. package/mcps/davinci-mcp-professional/docs/html/inherit_graph_0.png +0 -0
  335. package/mcps/davinci-mcp-professional/docs/html/inherit_graph_1.map +0 -3
  336. package/mcps/davinci-mcp-professional/docs/html/inherit_graph_1.md5 +0 -1
  337. package/mcps/davinci-mcp-professional/docs/html/inherit_graph_1.png +0 -0
  338. package/mcps/davinci-mcp-professional/docs/html/inherit_graph_2.map +0 -9
  339. package/mcps/davinci-mcp-professional/docs/html/inherit_graph_2.md5 +0 -1
  340. package/mcps/davinci-mcp-professional/docs/html/inherit_graph_2.png +0 -0
  341. package/mcps/davinci-mcp-professional/docs/html/inherit_graph_3.map +0 -13
  342. package/mcps/davinci-mcp-professional/docs/html/inherit_graph_3.md5 +0 -1
  343. package/mcps/davinci-mcp-professional/docs/html/inherit_graph_3.png +0 -0
  344. package/mcps/davinci-mcp-professional/docs/html/inherits.html +0 -145
  345. package/mcps/davinci-mcp-professional/docs/html/jquery.js +0 -204
  346. package/mcps/davinci-mcp-professional/docs/html/menu.js +0 -131
  347. package/mcps/davinci-mcp-professional/docs/html/menudata.js +0 -73
  348. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp.html +0 -209
  349. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp.js +0 -34
  350. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1__version.html +0 -260
  351. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1cli.html +0 -303
  352. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1resolve__client.html +0 -147
  353. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1resolve__client.js +0 -8
  354. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1resources.html +0 -140
  355. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1server.html +0 -144
  356. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1server.js +0 -5
  357. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1tools.html +0 -140
  358. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1types.html +0 -216
  359. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1types.js +0 -13
  360. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1utils.html +0 -155
  361. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1utils.js +0 -11
  362. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1utils_1_1platform.html +0 -232
  363. package/mcps/davinci-mcp-professional/docs/html/namespacemembers.html +0 -173
  364. package/mcps/davinci-mcp-professional/docs/html/namespacemembers_func.html +0 -114
  365. package/mcps/davinci-mcp-professional/docs/html/namespacemembers_vars.html +0 -121
  366. package/mcps/davinci-mcp-professional/docs/html/namespaces.html +0 -119
  367. package/mcps/davinci-mcp-professional/docs/html/namespaces_dup.js +0 -4
  368. package/mcps/davinci-mcp-professional/docs/html/navtree.css +0 -327
  369. package/mcps/davinci-mcp-professional/docs/html/navtree.js +0 -901
  370. package/mcps/davinci-mcp-professional/docs/html/navtreedata.js +0 -68
  371. package/mcps/davinci-mcp-professional/docs/html/navtreeindex0.js +0 -212
  372. package/mcps/davinci-mcp-professional/docs/html/platform_8py.html +0 -130
  373. package/mcps/davinci-mcp-professional/docs/html/platform_8py.js +0 -8
  374. package/mcps/davinci-mcp-professional/docs/html/platform_8py_source.html +0 -245
  375. package/mcps/davinci-mcp-professional/docs/html/resolve__client_8py.html +0 -132
  376. package/mcps/davinci-mcp-professional/docs/html/resolve__client_8py.js +0 -8
  377. package/mcps/davinci-mcp-professional/docs/html/resolve__client_8py_source.html +0 -501
  378. package/mcps/davinci-mcp-professional/docs/html/resources_2____init_____8py.html +0 -125
  379. package/mcps/davinci-mcp-professional/docs/html/resources_2____init_____8py.js +0 -4
  380. package/mcps/davinci-mcp-professional/docs/html/resources_2____init_____8py_source.html +0 -169
  381. package/mcps/davinci-mcp-professional/docs/html/search/all_0.js +0 -22
  382. package/mcps/davinci-mcp-professional/docs/html/search/all_1.js +0 -4
  383. package/mcps/davinci-mcp-professional/docs/html/search/all_10.js +0 -4
  384. package/mcps/davinci-mcp-professional/docs/html/search/all_11.js +0 -4
  385. package/mcps/davinci-mcp-professional/docs/html/search/all_12.js +0 -4
  386. package/mcps/davinci-mcp-professional/docs/html/search/all_13.js +0 -4
  387. package/mcps/davinci-mcp-professional/docs/html/search/all_2.js +0 -4
  388. package/mcps/davinci-mcp-professional/docs/html/search/all_3.js +0 -15
  389. package/mcps/davinci-mcp-professional/docs/html/search/all_4.js +0 -26
  390. package/mcps/davinci-mcp-professional/docs/html/search/all_5.js +0 -4
  391. package/mcps/davinci-mcp-professional/docs/html/search/all_6.js +0 -6
  392. package/mcps/davinci-mcp-professional/docs/html/search/all_7.js +0 -25
  393. package/mcps/davinci-mcp-professional/docs/html/search/all_8.js +0 -7
  394. package/mcps/davinci-mcp-professional/docs/html/search/all_9.js +0 -9
  395. package/mcps/davinci-mcp-professional/docs/html/search/all_a.js +0 -6
  396. package/mcps/davinci-mcp-professional/docs/html/search/all_b.js +0 -6
  397. package/mcps/davinci-mcp-professional/docs/html/search/all_c.js +0 -9
  398. package/mcps/davinci-mcp-professional/docs/html/search/all_d.js +0 -10
  399. package/mcps/davinci-mcp-professional/docs/html/search/all_e.js +0 -11
  400. package/mcps/davinci-mcp-professional/docs/html/search/all_f.js +0 -5
  401. package/mcps/davinci-mcp-professional/docs/html/search/classes_0.js +0 -13
  402. package/mcps/davinci-mcp-professional/docs/html/search/files_0.js +0 -5
  403. package/mcps/davinci-mcp-professional/docs/html/search/files_1.js +0 -4
  404. package/mcps/davinci-mcp-professional/docs/html/search/files_2.js +0 -4
  405. package/mcps/davinci-mcp-professional/docs/html/search/files_3.js +0 -5
  406. package/mcps/davinci-mcp-professional/docs/html/search/files_4.js +0 -4
  407. package/mcps/davinci-mcp-professional/docs/html/search/files_5.js +0 -4
  408. package/mcps/davinci-mcp-professional/docs/html/search/functions_0.js +0 -9
  409. package/mcps/davinci-mcp-professional/docs/html/search/functions_1.js +0 -4
  410. package/mcps/davinci-mcp-professional/docs/html/search/functions_2.js +0 -10
  411. package/mcps/davinci-mcp-professional/docs/html/search/functions_3.js +0 -4
  412. package/mcps/davinci-mcp-professional/docs/html/search/functions_4.js +0 -25
  413. package/mcps/davinci-mcp-professional/docs/html/search/functions_5.js +0 -6
  414. package/mcps/davinci-mcp-professional/docs/html/search/functions_6.js +0 -7
  415. package/mcps/davinci-mcp-professional/docs/html/search/functions_7.js +0 -4
  416. package/mcps/davinci-mcp-professional/docs/html/search/functions_8.js +0 -5
  417. package/mcps/davinci-mcp-professional/docs/html/search/functions_9.js +0 -4
  418. package/mcps/davinci-mcp-professional/docs/html/search/functions_a.js +0 -4
  419. package/mcps/davinci-mcp-professional/docs/html/search/functions_b.js +0 -6
  420. package/mcps/davinci-mcp-professional/docs/html/search/namespaces_0.js +0 -13
  421. package/mcps/davinci-mcp-professional/docs/html/search/pages_0.js +0 -4
  422. package/mcps/davinci-mcp-professional/docs/html/search/pages_1.js +0 -6
  423. package/mcps/davinci-mcp-professional/docs/html/search/pages_2.js +0 -5
  424. package/mcps/davinci-mcp-professional/docs/html/search/pages_3.js +0 -4
  425. package/mcps/davinci-mcp-professional/docs/html/search/pages_4.js +0 -5
  426. package/mcps/davinci-mcp-professional/docs/html/search/pages_5.js +0 -4
  427. package/mcps/davinci-mcp-professional/docs/html/search/pages_6.js +0 -4
  428. package/mcps/davinci-mcp-professional/docs/html/search/pages_7.js +0 -4
  429. package/mcps/davinci-mcp-professional/docs/html/search/pages_8.js +0 -5
  430. package/mcps/davinci-mcp-professional/docs/html/search/pages_9.js +0 -5
  431. package/mcps/davinci-mcp-professional/docs/html/search/pages_a.js +0 -6
  432. package/mcps/davinci-mcp-professional/docs/html/search/pages_b.js +0 -4
  433. package/mcps/davinci-mcp-professional/docs/html/search/pages_c.js +0 -4
  434. package/mcps/davinci-mcp-professional/docs/html/search/pages_d.js +0 -4
  435. package/mcps/davinci-mcp-professional/docs/html/search/search.css +0 -377
  436. package/mcps/davinci-mcp-professional/docs/html/search/search.js +0 -708
  437. package/mcps/davinci-mcp-professional/docs/html/search/searchdata.js +0 -33
  438. package/mcps/davinci-mcp-professional/docs/html/search/variables_0.js +0 -14
  439. package/mcps/davinci-mcp-professional/docs/html/search/variables_1.js +0 -4
  440. package/mcps/davinci-mcp-professional/docs/html/search/variables_2.js +0 -4
  441. package/mcps/davinci-mcp-professional/docs/html/search/variables_3.js +0 -5
  442. package/mcps/davinci-mcp-professional/docs/html/search/variables_4.js +0 -4
  443. package/mcps/davinci-mcp-professional/docs/html/search/variables_5.js +0 -5
  444. package/mcps/davinci-mcp-professional/docs/html/search/variables_6.js +0 -5
  445. package/mcps/davinci-mcp-professional/docs/html/search/variables_7.js +0 -4
  446. package/mcps/davinci-mcp-professional/docs/html/search/variables_8.js +0 -4
  447. package/mcps/davinci-mcp-professional/docs/html/search/variables_9.js +0 -4
  448. package/mcps/davinci-mcp-professional/docs/html/server_8py.html +0 -129
  449. package/mcps/davinci-mcp-professional/docs/html/server_8py.js +0 -5
  450. package/mcps/davinci-mcp-professional/docs/html/server_8py_source.html +0 -318
  451. package/mcps/davinci-mcp-professional/docs/html/tabs.css +0 -1
  452. package/mcps/davinci-mcp-professional/docs/html/tools_2____init_____8py.html +0 -125
  453. package/mcps/davinci-mcp-professional/docs/html/tools_2____init_____8py.js +0 -4
  454. package/mcps/davinci-mcp-professional/docs/html/tools_2____init_____8py_source.html +0 -253
  455. package/mcps/davinci-mcp-professional/docs/html/types_8py.html +0 -137
  456. package/mcps/davinci-mcp-professional/docs/html/types_8py.js +0 -13
  457. package/mcps/davinci-mcp-professional/docs/html/types_8py_source.html +0 -309
  458. package/mcps/davinci-mcp-professional/docs/html/utils_2____init_____8py.html +0 -125
  459. package/mcps/davinci-mcp-professional/docs/html/utils_2____init_____8py.js +0 -4
  460. package/mcps/davinci-mcp-professional/docs/html/utils_2____init_____8py_source.html +0 -123
  461. package/mcps/davinci-mcp-professional/tests/README.md +0 -49
  462. package/mcps/davinci-mcp-professional/tests/__init__.py +0 -1
  463. package/mcps/davinci-mcp-professional/tests/conftest.py +0 -75
  464. package/mcps/davinci-mcp-professional/tests/test_security.py +0 -251
  465. package/mcps/davinci-resolve-mcp/docs/README.md +0 -56
  466. package/mcps/davinci-resolve-mcp/docs/SKILL.md +0 -1635
  467. package/mcps/davinci-resolve-mcp/docs/authoring/fuse-dctl-authoring.md +0 -242
  468. package/mcps/davinci-resolve-mcp/docs/authoring/script-plugin-authoring.md +0 -195
  469. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/README.md +0 -152
  470. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/references/category-patterns.md +0 -780
  471. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/references/controls.md +0 -259
  472. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/references/format.md +0 -568
  473. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/references/gotchas.md +0 -168
  474. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/references/thumbnails.md +0 -106
  475. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Blur.setting +0 -46
  476. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Color Tint.setting +0 -78
  477. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Cross Dissolve.setting +0 -57
  478. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Fade Title.setting +0 -111
  479. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Glow.setting +0 -55
  480. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Gradient.setting +0 -52
  481. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Iris.setting +0 -127
  482. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Lower Third.setting +0 -192
  483. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Noise.setting +0 -74
  484. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Solid Color.setting +0 -55
  485. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Title.setting +0 -105
  486. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Vignette.setting +0 -98
  487. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Wipe.setting +0 -98
  488. package/mcps/davinci-resolve-mcp/docs/contributing.md +0 -82
  489. package/mcps/davinci-resolve-mcp/docs/guides/color-decision-guide.md +0 -427
  490. package/mcps/davinci-resolve-mcp/docs/guides/control-panel.md +0 -234
  491. package/mcps/davinci-resolve-mcp/docs/guides/editorial-decision-guide.md +0 -165
  492. package/mcps/davinci-resolve-mcp/docs/guides/media-analysis-guide.md +0 -763
  493. package/mcps/davinci-resolve-mcp/docs/guides/multicam-setup-guide.md +0 -138
  494. package/mcps/davinci-resolve-mcp/docs/images/control-panel/01-overview.png +0 -0
  495. package/mcps/davinci-resolve-mcp/docs/images/control-panel/02-review-bin-grid.png +0 -0
  496. package/mcps/davinci-resolve-mcp/docs/images/control-panel/03-clip-detail.png +0 -0
  497. package/mcps/davinci-resolve-mcp/docs/images/control-panel/04-transcript.png +0 -0
  498. package/mcps/davinci-resolve-mcp/docs/images/control-panel/05-shot-detail.png +0 -0
  499. package/mcps/davinci-resolve-mcp/docs/images/control-panel/06-inventory.png +0 -0
  500. package/mcps/davinci-resolve-mcp/docs/images/control-panel/07-diagnostics-resolve.png +0 -0
  501. package/mcps/davinci-resolve-mcp/docs/images/control-panel/08-preferences-analysis.png +0 -0
  502. package/mcps/davinci-resolve-mcp/docs/images/control-panel/09-ai-console.png +0 -0
  503. package/mcps/davinci-resolve-mcp/docs/images/control-panel/10-history.png +0 -0
  504. package/mcps/davinci-resolve-mcp/docs/images/control-panel/11-edit-plans.png +0 -0
  505. package/mcps/davinci-resolve-mcp/docs/install.md +0 -208
  506. package/mcps/davinci-resolve-mcp/docs/integrations/workflow-integrations.md +0 -120
  507. package/mcps/davinci-resolve-mcp/docs/kernels/README.md +0 -28
  508. package/mcps/davinci-resolve-mcp/docs/kernels/audio-fairlight-kernel.md +0 -86
  509. package/mcps/davinci-resolve-mcp/docs/kernels/color-grade-kernel.md +0 -103
  510. package/mcps/davinci-resolve-mcp/docs/kernels/extension-authoring-kernel.md +0 -101
  511. package/mcps/davinci-resolve-mcp/docs/kernels/fusion-composition-kernel.md +0 -121
  512. package/mcps/davinci-resolve-mcp/docs/kernels/media-pool-ingest-kernel.md +0 -147
  513. package/mcps/davinci-resolve-mcp/docs/kernels/project-lifecycle-kernel.md +0 -120
  514. package/mcps/davinci-resolve-mcp/docs/kernels/render-deliver-kernel.md +0 -92
  515. package/mcps/davinci-resolve-mcp/docs/kernels/review-annotation-kernel.md +0 -110
  516. package/mcps/davinci-resolve-mcp/docs/kernels/timeline-conform-interchange-kernel.md +0 -102
  517. package/mcps/davinci-resolve-mcp/docs/kernels/timeline-edit-kernel.md +0 -189
  518. package/mcps/davinci-resolve-mcp/docs/notes/codec-plugin-notes.md +0 -136
  519. package/mcps/davinci-resolve-mcp/docs/notes/dctl-notes.md +0 -234
  520. package/mcps/davinci-resolve-mcp/docs/notes/fusion-template-notes.md +0 -136
  521. package/mcps/davinci-resolve-mcp/docs/notes/lut-notes.md +0 -136
  522. package/mcps/davinci-resolve-mcp/docs/notes/openfx-notes.md +0 -120
  523. package/mcps/davinci-resolve-mcp/docs/process/release-process.md +0 -180
  524. package/mcps/davinci-resolve-mcp/docs/reference/api-coverage.md +0 -521
  525. package/mcps/davinci-resolve-mcp/docs/reference/api-limitations.md +0 -259
  526. package/mcps/davinci-resolve-mcp/docs/reference/readwrite-symmetry.md +0 -25
  527. package/mcps/davinci-resolve-mcp/docs/reference/resolve_scripting_api.txt +0 -1024
  528. package/mcps/davinci-resolve-mcp/tests/_error_envelope_helpers.py +0 -35
  529. package/mcps/davinci-resolve-mcp/tests/benchmark_server.py +0 -270
  530. package/mcps/davinci-resolve-mcp/tests/create_test_timeline.py +0 -177
  531. package/mcps/davinci-resolve-mcp/tests/live_api_gap_verification.py +0 -274
  532. package/mcps/davinci-resolve-mcp/tests/live_audio_fairlight_validation.py +0 -77
  533. package/mcps/davinci-resolve-mcp/tests/live_auto_sync_settings_check.py +0 -76
  534. package/mcps/davinci-resolve-mcp/tests/live_color_grade_validation.py +0 -89
  535. package/mcps/davinci-resolve-mcp/tests/live_delete_governance_check.py +0 -71
  536. package/mcps/davinci-resolve-mcp/tests/live_duplicate_clips_validation.py +0 -831
  537. package/mcps/davinci-resolve-mcp/tests/live_edit_engine_validation.py +0 -277
  538. package/mcps/davinci-resolve-mcp/tests/live_enum_settings_check.py +0 -89
  539. package/mcps/davinci-resolve-mcp/tests/live_extension_authoring_validation.py +0 -77
  540. package/mcps/davinci-resolve-mcp/tests/live_fuse_diagnose.py +0 -230
  541. package/mcps/davinci-resolve-mcp/tests/live_fuse_smoke.py +0 -250
  542. package/mcps/davinci-resolve-mcp/tests/live_fusion_composition_validation.py +0 -82
  543. package/mcps/davinci-resolve-mcp/tests/live_fusion_keyframe_validation.py +0 -116
  544. package/mcps/davinci-resolve-mcp/tests/live_fusion_mask_title_validation.py +0 -286
  545. package/mcps/davinci-resolve-mcp/tests/live_marker_validation.py +0 -439
  546. package/mcps/davinci-resolve-mcp/tests/live_media_pool_ingest_validation.py +0 -98
  547. package/mcps/davinci-resolve-mcp/tests/live_metadata_field_inventory_validation.py +0 -379
  548. package/mcps/davinci-resolve-mcp/tests/live_metadata_publish_validation.py +0 -192
  549. package/mcps/davinci-resolve-mcp/tests/live_multicam_setup_validation.py +0 -198
  550. package/mcps/davinci-resolve-mcp/tests/live_path_probe.py +0 -119
  551. package/mcps/davinci-resolve-mcp/tests/live_project_lifecycle_validation.py +0 -77
  552. package/mcps/davinci-resolve-mcp/tests/live_render_deliver_validation.py +0 -82
  553. package/mcps/davinci-resolve-mcp/tests/live_review_annotation_validation.py +0 -91
  554. package/mcps/davinci-resolve-mcp/tests/live_script_smoke.py +0 -141
  555. package/mcps/davinci-resolve-mcp/tests/live_sync_event_validation.py +0 -165
  556. package/mcps/davinci-resolve-mcp/tests/live_timeline_conform_validation.py +0 -77
  557. package/mcps/davinci-resolve-mcp/tests/live_v233_validation.py +0 -282
  558. package/mcps/davinci-resolve-mcp/tests/test-after-restart.bat +0 -83
  559. package/mcps/davinci-resolve-mcp/tests/test-after-restart.sh +0 -87
  560. package/mcps/davinci-resolve-mcp/tests/test_action_help.py +0 -47
  561. package/mcps/davinci-resolve-mcp/tests/test_action_list_drift.py +0 -163
  562. package/mcps/davinci-resolve-mcp/tests/test_ai_console_dispatch.py +0 -91
  563. package/mcps/davinci-resolve-mcp/tests/test_analysis_caps.py +0 -210
  564. package/mcps/davinci-resolve-mcp/tests/test_analysis_runs.py +0 -157
  565. package/mcps/davinci-resolve-mcp/tests/test_analysis_store.py +0 -366
  566. package/mcps/davinci-resolve-mcp/tests/test_api_limitations_doc.py +0 -56
  567. package/mcps/davinci-resolve-mcp/tests/test_api_truth.py +0 -64
  568. package/mcps/davinci-resolve-mcp/tests/test_api_truth_mitigations.py +0 -45
  569. package/mcps/davinci-resolve-mcp/tests/test_append_clip_infos_result_handling.py +0 -679
  570. package/mcps/davinci-resolve-mcp/tests/test_audio_fairlight_probe.py +0 -216
  571. package/mcps/davinci-resolve-mcp/tests/test_auto_run.py +0 -76
  572. package/mcps/davinci-resolve-mcp/tests/test_auto_sync_audio.py +0 -171
  573. package/mcps/davinci-resolve-mcp/tests/test_batch_cli.py +0 -253
  574. package/mcps/davinci-resolve-mcp/tests/test_brain_edits.py +0 -218
  575. package/mcps/davinci-resolve-mcp/tests/test_bridge_metrics.py +0 -52
  576. package/mcps/davinci-resolve-mcp/tests/test_bulk_match_to_hero.py +0 -219
  577. package/mcps/davinci-resolve-mcp/tests/test_caps_events_and_history.py +0 -147
  578. package/mcps/davinci-resolve-mcp/tests/test_caps_integration.py +0 -315
  579. package/mcps/davinci-resolve-mcp/tests/test_cdl_and_install_config.py +0 -372
  580. package/mcps/davinci-resolve-mcp/tests/test_clip_query.py +0 -57
  581. package/mcps/davinci-resolve-mcp/tests/test_cloud_settings.py +0 -62
  582. package/mcps/davinci-resolve-mcp/tests/test_color_grade_probe.py +0 -230
  583. package/mcps/davinci-resolve-mcp/tests/test_confirm_token.py +0 -85
  584. package/mcps/davinci-resolve-mcp/tests/test_confirm_token_preferences.py +0 -22
  585. package/mcps/davinci-resolve-mcp/tests/test_contracts.py +0 -81
  586. package/mcps/davinci-resolve-mcp/tests/test_create_subtitles_settings.py +0 -111
  587. package/mcps/davinci-resolve-mcp/tests/test_custom_timeline.py +0 -137
  588. package/mcps/davinci-resolve-mcp/tests/test_cut_executor.py +0 -87
  589. package/mcps/davinci-resolve-mcp/tests/test_cut_ir.py +0 -82
  590. package/mcps/davinci-resolve-mcp/tests/test_dashboard_transport.py +0 -47
  591. package/mcps/davinci-resolve-mcp/tests/test_deep_vision.py +0 -311
  592. package/mcps/davinci-resolve-mcp/tests/test_description_xml_shape.py +0 -71
  593. package/mcps/davinci-resolve-mcp/tests/test_destructive_decorator_coverage.py +0 -92
  594. package/mcps/davinci-resolve-mcp/tests/test_destructive_hook.py +0 -245
  595. package/mcps/davinci-resolve-mcp/tests/test_destructive_registry_drift.py +0 -108
  596. package/mcps/davinci-resolve-mcp/tests/test_edit_engine.py +0 -574
  597. package/mcps/davinci-resolve-mcp/tests/test_embeddings.py +0 -302
  598. package/mcps/davinci-resolve-mcp/tests/test_entities.py +0 -225
  599. package/mcps/davinci-resolve-mcp/tests/test_error_envelope.py +0 -179
  600. package/mcps/davinci-resolve-mcp/tests/test_exhaustive_wave_a.py +0 -101
  601. package/mcps/davinci-resolve-mcp/tests/test_extension_authoring_probe.py +0 -77
  602. package/mcps/davinci-resolve-mcp/tests/test_extract_frames.py +0 -42
  603. package/mcps/davinci-resolve-mcp/tests/test_extract_source_frame_ranges.py +0 -129
  604. package/mcps/davinci-resolve-mcp/tests/test_failure_tracker.py +0 -103
  605. package/mcps/davinci-resolve-mcp/tests/test_fuse_dctl_authoring.py +0 -596
  606. package/mcps/davinci-resolve-mcp/tests/test_fusion_comp_targeting.py +0 -269
  607. package/mcps/davinci-resolve-mcp/tests/test_fusion_composition_probe.py +0 -156
  608. package/mcps/davinci-resolve-mcp/tests/test_fusion_group_settings.py +0 -284
  609. package/mcps/davinci-resolve-mcp/tests/test_fusion_mask_title.py +0 -205
  610. package/mcps/davinci-resolve-mcp/tests/test_fusion_node_ops.py +0 -212
  611. package/mcps/davinci-resolve-mcp/tests/test_governance_identity.py +0 -155
  612. package/mcps/davinci-resolve-mcp/tests/test_grade_evidence_base.py +0 -132
  613. package/mcps/davinci-resolve-mcp/tests/test_import.py +0 -153
  614. package/mcps/davinci-resolve-mcp/tests/test_improvements.py +0 -334
  615. package/mcps/davinci-resolve-mcp/tests/test_inventory_exclude_bins.py +0 -139
  616. package/mcps/davinci-resolve-mcp/tests/test_live_api.py +0 -315
  617. package/mcps/davinci-resolve-mcp/tests/test_marker_params.py +0 -234
  618. package/mcps/davinci-resolve-mcp/tests/test_mcp_prompts.py +0 -77
  619. package/mcps/davinci-resolve-mcp/tests/test_mcp_resources.py +0 -117
  620. package/mcps/davinci-resolve-mcp/tests/test_mcp_transport.py +0 -74
  621. package/mcps/davinci-resolve-mcp/tests/test_media_analysis.py +0 -4637
  622. package/mcps/davinci-resolve-mcp/tests/test_media_pool_append_verification.py +0 -153
  623. package/mcps/davinci-resolve-mcp/tests/test_media_pool_changes.py +0 -105
  624. package/mcps/davinci-resolve-mcp/tests/test_media_pool_delete_governance.py +0 -69
  625. package/mcps/davinci-resolve-mcp/tests/test_media_pool_ingest_probe.py +0 -546
  626. package/mcps/davinci-resolve-mcp/tests/test_media_pool_walk.py +0 -79
  627. package/mcps/davinci-resolve-mcp/tests/test_multicam_setup.py +0 -178
  628. package/mcps/davinci-resolve-mcp/tests/test_object_inspection.py +0 -140
  629. package/mcps/davinci-resolve-mcp/tests/test_open_control_panel.py +0 -172
  630. package/mcps/davinci-resolve-mcp/tests/test_p1_param_validation.py +0 -57
  631. package/mcps/davinci-resolve-mcp/tests/test_p1_whitelist_and_delete.py +0 -81
  632. package/mcps/davinci-resolve-mcp/tests/test_page_lock.py +0 -52
  633. package/mcps/davinci-resolve-mcp/tests/test_panel_docs_drift.py +0 -77
  634. package/mcps/davinci-resolve-mcp/tests/test_partial_success_manifest.py +0 -113
  635. package/mcps/davinci-resolve-mcp/tests/test_persistence_safety.py +0 -147
  636. package/mcps/davinci-resolve-mcp/tests/test_prefer_handle.py +0 -89
  637. package/mcps/davinci-resolve-mcp/tests/test_project_cleanup.py +0 -111
  638. package/mcps/davinci-resolve-mcp/tests/test_project_lifecycle_probe.py +0 -256
  639. package/mcps/davinci-resolve-mcp/tests/test_project_lint.py +0 -79
  640. package/mcps/davinci-resolve-mcp/tests/test_project_spec.py +0 -246
  641. package/mcps/davinci-resolve-mcp/tests/test_propose_grade.py +0 -116
  642. package/mcps/davinci-resolve-mcp/tests/test_provenance.py +0 -88
  643. package/mcps/davinci-resolve-mcp/tests/test_readback.py +0 -77
  644. package/mcps/davinci-resolve-mcp/tests/test_readwrite_audit.py +0 -43
  645. package/mcps/davinci-resolve-mcp/tests/test_reel_name_writeback.py +0 -149
  646. package/mcps/davinci-resolve-mcp/tests/test_render_deliver_probe.py +0 -250
  647. package/mcps/davinci-resolve-mcp/tests/test_resolve20_api.py +0 -282
  648. package/mcps/davinci-resolve-mcp/tests/test_resolve21_actions.py +0 -386
  649. package/mcps/davinci-resolve-mcp/tests/test_resolve_ai_governance.py +0 -92
  650. package/mcps/davinci-resolve-mcp/tests/test_resolve_ai_ledger.py +0 -89
  651. package/mcps/davinci-resolve-mcp/tests/test_resolve_busy.py +0 -134
  652. package/mcps/davinci-resolve-mcp/tests/test_review_annotation_probe.py +0 -162
  653. package/mcps/davinci-resolve-mcp/tests/test_sampling_modes.py +0 -293
  654. package/mcps/davinci-resolve-mcp/tests/test_script_plugin.py +0 -750
  655. package/mcps/davinci-resolve-mcp/tests/test_shot_relationships.py +0 -254
  656. package/mcps/davinci-resolve-mcp/tests/test_spec_lint_wiring.py +0 -311
  657. package/mcps/davinci-resolve-mcp/tests/test_static_undefined_names.py +0 -45
  658. package/mcps/davinci-resolve-mcp/tests/test_structural_diff.py +0 -67
  659. package/mcps/davinci-resolve-mcp/tests/test_sync_detection.py +0 -213
  660. package/mcps/davinci-resolve-mcp/tests/test_thumbnail_image.py +0 -55
  661. package/mcps/davinci-resolve-mcp/tests/test_timeline_brain_db.py +0 -230
  662. package/mcps/davinci-resolve-mcp/tests/test_timeline_conform_probe.py +0 -229
  663. package/mcps/davinci-resolve-mcp/tests/test_timeline_editorial_helpers.py +0 -88
  664. package/mcps/davinci-resolve-mcp/tests/test_timeline_export_enum.py +0 -59
  665. package/mcps/davinci-resolve-mcp/tests/test_timeline_kernel_probe.py +0 -70
  666. package/mcps/davinci-resolve-mcp/tests/test_timeline_title_text_utils.py +0 -64
  667. package/mcps/davinci-resolve-mcp/tests/test_timeline_versioning.py +0 -419
  668. package/mcps/davinci-resolve-mcp/tests/test_tool_choice_hint.py +0 -42
  669. package/mcps/davinci-resolve-mcp/tests/test_tool_exposure.py +0 -159
  670. package/mcps/davinci-resolve-mcp/tests/test_tool_registration.py +0 -91
  671. package/mcps/davinci-resolve-mcp/tests/test_transcript_read.py +0 -74
  672. package/mcps/davinci-resolve-mcp/tests/test_update_check.py +0 -171
  673. package/mcps/davinci-resolve-mcp/tests/test_update_hardening.py +0 -171
  674. package/mcps/davinci-resolve-mcp/tests/test_update_history.py +0 -116
  675. package/mcps/davinci-resolve-mcp/tests/test_v232_helpers.py +0 -265
  676. package/mcps/davinci-resolve-mcp/tests/test_v233_helpers.py +0 -307
  677. package/mcps/davinci-resolve-mcp/tests/test_validation_guards.py +0 -108
  678. package/mcps/davinci-resolve-mcp/tests/test_verification_stats.py +0 -32
  679. package/mcps/davinci-resolve-mcp/tests/test_waveb_p2_p3.py +0 -65
  680. package/mcps/golem-rhino-mcp/Nexus-AI-Agents.png +0 -0
  681. package/mcps/golem-rhino-mcp/docs/ARCHITECTURE.md +0 -277
  682. package/mcps/golem-rhino-mcp/docs/PROTOCOL.md +0 -247
  683. package/mcps/golem-rhino-mcp/docs/TOOL_REFERENCE.md +0 -1571
  684. package/mcps/golem-rhino-mcp/docs/TROUBLESHOOTING.md +0 -396
  685. package/mcps/golem-rhino-mcp/mcp_server/Screenshot 2026-03-20 at 18.33.06.png +0 -0
  686. package/mcps/golem-rhino-mcp/mcp_server/Screenshot 2026-03-21 at 1.43.01.png +0 -0
  687. package/mcps/golem-rhino-mcp/nexus-pngs/CAIO.png +0 -0
  688. package/mcps/golem-rhino-mcp/nexus-pngs/CEO.png +0 -0
  689. package/mcps/golem-rhino-mcp/nexus-pngs/CFO.png +0 -0
  690. package/mcps/golem-rhino-mcp/nexus-pngs/CHRO.png +0 -0
  691. package/mcps/golem-rhino-mcp/nexus-pngs/CISO.png +0 -0
  692. package/mcps/golem-rhino-mcp/nexus-pngs/CLO.png +0 -0
  693. package/mcps/golem-rhino-mcp/nexus-pngs/CMO.png +0 -0
  694. package/mcps/golem-rhino-mcp/nexus-pngs/COO.png +0 -0
  695. package/mcps/golem-rhino-mcp/nexus-pngs/CPO.png +0 -0
  696. package/mcps/golem-rhino-mcp/nexus-pngs/CRO.png +0 -0
  697. package/mcps/golem-rhino-mcp/nexus-pngs/CTO.png +0 -0
  698. package/mcps/golem-rhino-mcp/nexus-pngs/king-hippo.png +0 -0
  699. package/mcps/golem-rhino-mcp/nexus-pngs/tier-0-csuite.png +0 -0
  700. package/mcps/golem-rhino-mcp/screenshots/city_monument.png +0 -0
  701. package/mcps/golem-rhino-mcp/screenshots/city_skyline.png +0 -0
  702. package/mcps/golem-rhino-mcp/screenshots/city_street.png +0 -0
  703. package/mcps/golem-rhino-mcp/screenshots/city_wide.png +0 -0
  704. package/mcps/golem-rhino-mcp/tests/__init__.py +0 -0
  705. package/mcps/golem-rhino-mcp/tests/conftest.py +0 -150
  706. package/mcps/golem-rhino-mcp/tests/test_connection.py +0 -543
  707. package/mcps/golem-rhino-mcp/tests/test_integration.py +0 -344
  708. package/mcps/golem-rhino-mcp/tests/test_models.py +0 -749
  709. package/mcps/golem-rhino-mcp/tests/test_protocol.py +0 -334
  710. package/mcps/golem-rhino-mcp/tests/test_tools_mock.py +0 -689
  711. package/mcps/tdmcp/.github/social-preview.png +0 -0
  712. package/mcps/tdmcp/docs/.vitepress/config.ts +0 -397
  713. package/mcps/tdmcp/docs/AI_PARTY_LLM_TRAINING_PLAN.md +0 -118
  714. package/mcps/tdmcp/docs/AI_PARTY_POC.md +0 -142
  715. package/mcps/tdmcp/docs/AI_PARTY_POC_PLAN.md +0 -112
  716. package/mcps/tdmcp/docs/CREATIVE_RAG.md +0 -346
  717. package/mcps/tdmcp/docs/DEPLOYMENT.md +0 -113
  718. package/mcps/tdmcp/docs/PROJECT_RAG.md +0 -477
  719. package/mcps/tdmcp/docs/ROADMAP.md +0 -1346
  720. package/mcps/tdmcp/docs/guide/ai-controlled-party.md +0 -215
  721. package/mcps/tdmcp/docs/guide/body-tracking.md +0 -169
  722. package/mcps/tdmcp/docs/guide/codex.md +0 -107
  723. package/mcps/tdmcp/docs/guide/components.md +0 -126
  724. package/mcps/tdmcp/docs/guide/dashboard-foh.md +0 -93
  725. package/mcps/tdmcp/docs/guide/faq.md +0 -62
  726. package/mcps/tdmcp/docs/guide/first-visual.md +0 -76
  727. package/mcps/tdmcp/docs/guide/generators.md +0 -230
  728. package/mcps/tdmcp/docs/guide/glossary.md +0 -123
  729. package/mcps/tdmcp/docs/guide/install.md +0 -200
  730. package/mcps/tdmcp/docs/guide/local-copilot.md +0 -154
  731. package/mcps/tdmcp/docs/guide/lops-integration.md +0 -133
  732. package/mcps/tdmcp/docs/guide/mcp-resources.md +0 -96
  733. package/mcps/tdmcp/docs/guide/mediapipe-adapters.md +0 -90
  734. package/mcps/tdmcp/docs/guide/physical-installations.md +0 -129
  735. package/mcps/tdmcp/docs/guide/prompt-cookbook.md +0 -2285
  736. package/mcps/tdmcp/docs/guide/recipes.md +0 -72
  737. package/mcps/tdmcp/docs/guide/session-profile.md +0 -90
  738. package/mcps/tdmcp/docs/guide/shader-park.md +0 -94
  739. package/mcps/tdmcp/docs/guide/show-timelines.md +0 -125
  740. package/mcps/tdmcp/docs/guide/troubleshooting.md +0 -121
  741. package/mcps/tdmcp/docs/guide/what-is-tdmcp.md +0 -62
  742. package/mcps/tdmcp/docs/index.md +0 -49
  743. package/mcps/tdmcp/docs/privacy.md +0 -85
  744. package/mcps/tdmcp/docs/pt/CREATIVE_RAG.md +0 -370
  745. package/mcps/tdmcp/docs/pt/PROJECT_RAG.md +0 -420
  746. package/mcps/tdmcp/docs/pt/guide/ai-controlled-party.md +0 -218
  747. package/mcps/tdmcp/docs/pt/guide/body-tracking.md +0 -175
  748. package/mcps/tdmcp/docs/pt/guide/codex.md +0 -113
  749. package/mcps/tdmcp/docs/pt/guide/components.md +0 -129
  750. package/mcps/tdmcp/docs/pt/guide/dashboard-foh.md +0 -95
  751. package/mcps/tdmcp/docs/pt/guide/faq.md +0 -62
  752. package/mcps/tdmcp/docs/pt/guide/first-visual.md +0 -81
  753. package/mcps/tdmcp/docs/pt/guide/generators.md +0 -243
  754. package/mcps/tdmcp/docs/pt/guide/glossary.md +0 -127
  755. package/mcps/tdmcp/docs/pt/guide/install.md +0 -196
  756. package/mcps/tdmcp/docs/pt/guide/local-copilot.md +0 -164
  757. package/mcps/tdmcp/docs/pt/guide/lops-integration.md +0 -143
  758. package/mcps/tdmcp/docs/pt/guide/mcp-resources.md +0 -96
  759. package/mcps/tdmcp/docs/pt/guide/mediapipe-adapters.md +0 -93
  760. package/mcps/tdmcp/docs/pt/guide/physical-installations.md +0 -135
  761. package/mcps/tdmcp/docs/pt/guide/prompt-cookbook.md +0 -2342
  762. package/mcps/tdmcp/docs/pt/guide/recipes.md +0 -59
  763. package/mcps/tdmcp/docs/pt/guide/session-profile.md +0 -92
  764. package/mcps/tdmcp/docs/pt/guide/shader-park.md +0 -95
  765. package/mcps/tdmcp/docs/pt/guide/show-timelines.md +0 -128
  766. package/mcps/tdmcp/docs/pt/guide/troubleshooting.md +0 -109
  767. package/mcps/tdmcp/docs/pt/guide/what-is-tdmcp.md +0 -61
  768. package/mcps/tdmcp/docs/pt/index.md +0 -49
  769. package/mcps/tdmcp/docs/pt/privacy.md +0 -91
  770. package/mcps/tdmcp/docs/pt/reference/architecture.md +0 -178
  771. package/mcps/tdmcp/docs/pt/reference/environment.md +0 -70
  772. package/mcps/tdmcp/docs/public/favicon.svg +0 -12
  773. package/mcps/tdmcp/docs/public/logo-400.png +0 -0
  774. package/mcps/tdmcp/docs/public/og-image.jpg +0 -0
  775. package/mcps/tdmcp/docs/public/robots.txt +0 -4
  776. package/mcps/tdmcp/docs/reference/API_STABILITY.md +0 -116
  777. package/mcps/tdmcp/docs/reference/architecture.md +0 -191
  778. package/mcps/tdmcp/docs/reference/bridge-api.md +0 -155
  779. package/mcps/tdmcp/docs/reference/cli.md +0 -288
  780. package/mcps/tdmcp/docs/reference/coverage-harness.md +0 -61
  781. package/mcps/tdmcp/docs/reference/environment.md +0 -116
  782. package/mcps/tdmcp/docs/reference/packages.md +0 -98
  783. package/mcps/tdmcp/docs/reference/tool-contract.md +0 -74
  784. package/mcps/tdmcp/docs/superpowers/plans/2026-05-29-shader-park-animus-integrations.md +0 -76
  785. package/mcps/tdmcp/docs/superpowers/plans/2026-06-02-doctor-fix-textport-auto-install.md +0 -131
  786. package/mcps/tdmcp/docs/superpowers/plans/2026-06-06-body-bubbles.md +0 -138
  787. package/mcps/tdmcp/docs/superpowers/plans/2026-06-08-deep-doppelganger-implementation.md +0 -201
  788. package/mcps/tdmcp/docs/superpowers/plans/2026-06-10-ai-party-ollama-integration.md +0 -55
  789. package/mcps/tdmcp/docs/superpowers/plans/2026-06-24-kinect-wall-harp-calibration-wizard.md +0 -53
  790. package/mcps/tdmcp/docs/superpowers/plans/2026-06-24-kinect-wall-harp-external-kinect.md +0 -286
  791. package/mcps/tdmcp/docs/superpowers/specs/2026-05-31-create-vector-lines-design.md +0 -308
  792. package/mcps/tdmcp/docs/superpowers/specs/2026-06-01-ai-controlled-party-plan.md +0 -461
  793. package/mcps/tdmcp/docs/superpowers/specs/2026-06-04-ai-party-ui24r-scene-arming-design.md +0 -296
  794. package/mcps/tdmcp/docs/superpowers/specs/2026-06-08-ai-controlled-party-producer-poc.md +0 -232
  795. package/mcps/tdmcp/docs/superpowers/specs/2026-06-08-deep-doppelganger-design.md +0 -136
  796. package/mcps/tdmcp/docs/superpowers/specs/2026-06-10-hermes-ai-party-poc.md +0 -383
  797. package/mcps/tdmcp/docs/superpowers/specs/2026-06-23-kinect-wall-harp-design.md +0 -340
  798. package/mcps/tdmcp/docs/superpowers/specs/2026-06-24-kinect-environment-diagnostic-design.md +0 -151
  799. package/mcps/tdmcp/docs/superpowers/specs/2026-06-24-kinect-wall-harp-external-kinect-design.md +0 -104
  800. package/mcps/tdmcp/training/showintent/data/curated/.gitkeep +0 -1
  801. package/mcps/tdmcp/training/showintent/data/curated/curated-approved.jsonl +0 -1
  802. package/mcps/tdmcp/training/showintent/data/curation_template.csv +0 -1
  803. package/mcps/tdmcp/training/showintent/data/generated/.gitkeep +0 -1
  804. package/mcps/tdmcp/training/showintent/data/generated/showintent-synthetic.jsonl +0 -2000
  805. package/mcps/tdmcp/training/showintent/data/raw/.gitkeep +0 -1
  806. package/mcps/tdmcp/training/showintent/data/splits/.gitkeep +0 -1
  807. package/mcps/tdmcp/training/showintent/data/splits/train-compact.jsonl +0 -1800
  808. package/mcps/tdmcp/training/showintent/data/splits/train.jsonl +0 -1800
  809. package/mcps/tdmcp/training/showintent/data/splits/validation-compact.jsonl +0 -200
  810. package/mcps/tdmcp/training/showintent/data/splits/validation.jsonl +0 -200
  811. package/mcps/touchdesigner-mcp/assets/import.png +0 -0
  812. package/mcps/touchdesigner-mcp/assets/nodes_list.png +0 -0
  813. package/mcps/touchdesigner-mcp/assets/particle_on_youtube.png +0 -0
  814. package/mcps/touchdesigner-mcp/assets/textport.png +0 -0
  815. package/mcps/touchdesigner-mcp/assets/tutorial.png +0 -0
  816. package/mcps/touchdesigner-mcp/assets/tutorial_docker.png +0 -0
  817. package/mcps/touchdesigner-mcp/docs/architecture.md +0 -1245
  818. package/mcps/touchdesigner-mcp/docs/development.ja.md +0 -197
  819. package/mcps/touchdesigner-mcp/docs/development.md +0 -212
  820. package/mcps/touchdesigner-mcp/docs/installation.ja.md +0 -370
  821. package/mcps/touchdesigner-mcp/docs/installation.md +0 -406
  822. package/mcps/unreal_mcp/Public/icon.png +0 -0
  823. package/mcps/unreal_mcp/docs/Engine-API-Reference.md +0 -2251
  824. package/mcps/unreal_mcp/docs/Roadmap.md +0 -2269
  825. package/mcps/unreal_mcp/docs/editor-plugin-extension.md +0 -373
  826. package/mcps/unreal_mcp/docs/handler-mapping.md +0 -1170
  827. package/mcps/unreal_mcp/docs/native-automation-progress.md +0 -431
  828. package/mcps/unreal_mcp/docs/testing-guide.md +0 -149
  829. package/mcps/unreal_mcp/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/Domains/Test/McpAutomationBridge_TestHandlers.cpp +0 -74
  830. package/mcps/unreal_mcp/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/Tests/McpCustomHandlerAliasTests.cpp +0 -191
  831. package/mcps/unreal_mcp/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/Tests/McpEnvironmentSnapshotSchemaTests.cpp +0 -192
  832. package/mcps/unreal_mcp/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/Tests/McpPropertyReflectionImportTests.cpp +0 -269
  833. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentAcpClientProtocolAutomation.cpp +0 -152
  834. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentAcpProtocolTestHelpers.cpp +0 -136
  835. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentAcpProtocolTestHelpers.h +0 -49
  836. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentAutomationTestDelegates.h +0 -12
  837. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentAutomationTests.cpp +0 -34
  838. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentAutomationWidgetHelpers.cpp +0 -116
  839. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentAutomationWidgetHelpers.h +0 -15
  840. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentFakeAcpScript.cpp +0 -76
  841. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentPanelAutomation.h +0 -35
  842. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentPanelAutomationFixture.cpp +0 -118
  843. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentPanelHistoryChecks.cpp +0 -162
  844. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentPanelLayoutChecks.cpp +0 -158
  845. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentPanelTranscriptChecks.cpp +0 -117
  846. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentStudioKitAutomationChecks.cpp +0 -155
  847. package/mcps/unreal_mcp/tests/AGENTS.md +0 -73
  848. package/mcps/unreal_mcp/tests/expectation-utils.mjs +0 -29
  849. package/mcps/unreal_mcp/tests/heartbeat-progress.test.mjs +0 -143
  850. package/mcps/unreal_mcp/tests/integration/get_ai_info_characterization.mjs +0 -216
  851. package/mcps/unreal_mcp/tests/integration.mjs +0 -94
  852. package/mcps/unreal_mcp/tests/mcp-tools/core/control-actor.test.mjs +0 -114
  853. package/mcps/unreal_mcp/tests/mcp-tools/core/control-editor.test.mjs +0 -86
  854. package/mcps/unreal_mcp/tests/mcp-tools/core/inspect.test.mjs +0 -85
  855. package/mcps/unreal_mcp/tests/mcp-tools/core/manage-asset.test.mjs +0 -302
  856. package/mcps/unreal_mcp/tests/mcp-tools/core/manage-blueprint.test.mjs +0 -331
  857. package/mcps/unreal_mcp/tests/mcp-tools/core/manage-level.test.mjs +0 -73
  858. package/mcps/unreal_mcp/tests/mcp-tools/core/manage-tools.test.mjs +0 -30
  859. package/mcps/unreal_mcp/tests/mcp-tools/core/system-control.test.mjs +0 -205
  860. package/mcps/unreal_mcp/tests/mcp-tools/gameplay/animation-physics.test.mjs +0 -277
  861. package/mcps/unreal_mcp/tests/mcp-tools/gameplay/manage-ai.test.mjs +0 -299
  862. package/mcps/unreal_mcp/tests/mcp-tools/gameplay/manage-character.test.mjs +0 -85
  863. package/mcps/unreal_mcp/tests/mcp-tools/gameplay/manage-combat.test.mjs +0 -106
  864. package/mcps/unreal_mcp/tests/mcp-tools/gameplay/manage-effect.test.mjs +0 -108
  865. package/mcps/unreal_mcp/tests/mcp-tools/gameplay/manage-gas.test.mjs +0 -96
  866. package/mcps/unreal_mcp/tests/mcp-tools/gameplay/manage-interaction.test.mjs +0 -122
  867. package/mcps/unreal_mcp/tests/mcp-tools/gameplay/manage-inventory.test.mjs +0 -146
  868. package/mcps/unreal_mcp/tests/mcp-tools/utility/behavior-tree-get-tree.test.mjs +0 -233
  869. package/mcps/unreal_mcp/tests/mcp-tools/utility/manage-audio.test.mjs +0 -160
  870. package/mcps/unreal_mcp/tests/mcp-tools/utility/manage-behavior-tree.test.mjs +0 -223
  871. package/mcps/unreal_mcp/tests/mcp-tools/utility/manage-networking.test.mjs +0 -635
  872. package/mcps/unreal_mcp/tests/mcp-tools/utility/manage-sequence.test.mjs +0 -95
  873. package/mcps/unreal_mcp/tests/mcp-tools/world/build-environment.test.mjs +0 -282
  874. package/mcps/unreal_mcp/tests/mcp-tools/world/manage-geometry.test.mjs +0 -130
  875. package/mcps/unreal_mcp/tests/mcp-tools/world/manage-level-structure.test.mjs +0 -149
  876. package/mcps/unreal_mcp/tests/mcp-tools/world/manage-pcg.test.mjs +0 -471
  877. package/mcps/unreal_mcp/tests/mcp-tools/world/rendering-cases.cjs +0 -775
  878. package/mcps/unreal_mcp/tests/mcp-tools/world/rendering.test.mjs +0 -15
  879. package/mcps/unreal_mcp/tests/native-mcp-parity-audit.mjs +0 -260
  880. package/mcps/unreal_mcp/tests/native-mcp-source-parser.mjs +0 -229
  881. package/mcps/unreal_mcp/tests/native-mcp-typescript-parity-parser.mjs +0 -121
  882. package/mcps/unreal_mcp/tests/parameter-audit-cli.mjs +0 -23
  883. package/mcps/unreal_mcp/tests/parameter-audit-context.mjs +0 -14
  884. package/mcps/unreal_mcp/tests/parameter-audit-coverage.mjs +0 -164
  885. package/mcps/unreal_mcp/tests/parameter-audit-schema.mjs +0 -190
  886. package/mcps/unreal_mcp/tests/parameter-audit-suites.mjs +0 -218
  887. package/mcps/unreal_mcp/tests/parameter-combination-audit.mjs +0 -37
  888. package/mcps/unreal_mcp/tests/test-runner-response-utils.mjs +0 -132
  889. package/mcps/unreal_mcp/tests/test-runner.mjs +0 -1798
  890. package/mcps/unreal_mcp/tests/unit/automation/bridge_host_validation.test.ts +0 -165
  891. package/mcps/unreal_mcp/tests/unit/config.test.ts +0 -205
  892. package/mcps/unreal_mcp/tests/unit/native_mcp_parity_audit.test.ts +0 -281
  893. package/mcps/unreal_mcp/tests/unit/native_mcp_parity_comment_filtering.test.ts +0 -175
  894. package/mcps/unreal_mcp/tests/unit/parameter_audit_schema.test.ts +0 -273
  895. package/mcps/unreal_mcp/tests/unit/plugin/automation_event_stream_contracts.test.ts +0 -195
  896. package/mcps/unreal_mcp/tests/unit/plugin/environment_asset_name_contracts.test.ts +0 -115
  897. package/mcps/unreal_mcp/tests/unit/plugin/environment_build_adapter_contracts.test.ts +0 -377
  898. package/mcps/unreal_mcp/tests/unit/plugin/environment_snapshot_path_contracts.test.ts +0 -122
  899. package/mcps/unreal_mcp/tests/unit/plugin/handler_routing_contracts.test.ts +0 -120
  900. package/mcps/unreal_mcp/tests/unit/plugin/level_lighting_contracts.test.ts +0 -125
  901. package/mcps/unreal_mcp/tests/unit/plugin/plugin_manifest_contracts.test.ts +0 -154
  902. package/mcps/unreal_mcp/tests/unit/plugin/plugin_packaging_contracts.test.ts +0 -124
  903. package/mcps/unreal_mcp/tests/unit/plugin/runtime_behavior_contracts.test.ts +0 -372
  904. package/mcps/unreal_mcp/tests/unit/plugin/security_contracts.test.ts +0 -81
  905. package/mcps/unreal_mcp/tests/unit/plugin/source_structure.test.ts +0 -101
  906. package/mcps/unreal_mcp/tests/unit/plugin/source_structure_contracts.test.ts +0 -103
  907. package/mcps/unreal_mcp/tests/unit/plugin/websocket_origin_contracts.test.ts +0 -25
  908. package/mcps/unreal_mcp/tests/unit/server_shutdown_contracts.test.ts +0 -33
  909. package/mcps/unreal_mcp/tests/unit/source_structure.test.ts +0 -79
  910. package/mcps/unreal_mcp/tests/unit/test_runner.test.ts +0 -342
  911. package/mcps/unreal_mcp/tests/unit/test_runner_response_utils.test.ts +0 -105
  912. package/mcps/unreal_mcp/tests/unit/tools/asset_handlers_security.test.ts +0 -246
  913. package/mcps/unreal_mcp/tests/unit/tools/behavior_tree_get_tree.test.ts +0 -20
  914. package/mcps/unreal_mcp/tests/unit/tools/blueprint_handlers.test.ts +0 -122
  915. package/mcps/unreal_mcp/tests/unit/tools/editor.test.ts +0 -56
  916. package/mcps/unreal_mcp/tests/unit/tools/handler_structure.test.ts +0 -59
  917. package/mcps/unreal_mcp/tests/unit/tools/inspect_handlers.test.ts +0 -231
  918. package/mcps/unreal_mcp/tests/unit/tools/level.test.ts +0 -56
  919. package/mcps/unreal_mcp/tests/unit/tools/level_security.test.ts +0 -45
  920. package/mcps/unreal_mcp/tests/unit/tools/lighting_timeout_propagation.test.ts +0 -123
  921. package/mcps/windows-computer-use-mcp/cua-reports/app-1781542686.png +0 -0
  922. package/mcps/windows-computer-use-mcp/cua-reports/bridge-1781542694.png +0 -0
  923. package/mcps/windows-computer-use-mcp/cua-reports/bridge-ok-1781442393.png +0 -0
  924. package/mcps/windows-computer-use-mcp/cua-reports/bridge-ok-1781442915.png +0 -0
  925. package/mcps/windows-computer-use-mcp/cua-reports/bridge-snap-1781444105.png +0 -0
  926. package/mcps/windows-computer-use-mcp/cua-reports/bridge-snap-1781444214.png +0 -0
  927. package/mcps/windows-computer-use-mcp/cua-reports/bridge-snap-1781457035.png +0 -0
  928. package/mcps/windows-computer-use-mcp/cua-reports/cua-smoke-1781440024.png +0 -0
  929. package/mcps/windows-computer-use-mcp/cua-reports/cua-smoke-1781440234.png +0 -0
  930. package/mcps/windows-computer-use-mcp/cua-reports/cua-smoke-1781442383.png +0 -0
  931. package/mcps/windows-computer-use-mcp/cua-reports/cua-smoke-1781442906.png +0 -0
  932. package/mcps/windows-computer-use-mcp/cua-reports/cua-smoke-1781444096.png +0 -0
  933. package/mcps/windows-computer-use-mcp/cua-reports/cua-smoke-1781444209.png +0 -0
  934. package/mcps/windows-computer-use-mcp/cua-reports/cua-smoke-1781457029.png +0 -0
  935. package/mcps/windows-computer-use-mcp/cua-reports/nav/dashboard-1781542713.png +0 -0
  936. package/mcps/windows-computer-use-mcp/cua-reports/nav/help-1781542738.png +0 -0
  937. package/mcps/windows-computer-use-mcp/cua-reports/nav/logging-1781542722.png +0 -0
  938. package/mcps/windows-computer-use-mcp/cua-reports/nav/nav-dashboard-1781444225.png +0 -0
  939. package/mcps/windows-computer-use-mcp/cua-reports/nav/nav-dashboard-1781457051.png +0 -0
  940. package/mcps/windows-computer-use-mcp/cua-reports/nav/nav-help-1781444245.png +0 -0
  941. package/mcps/windows-computer-use-mcp/cua-reports/nav/nav-help-1781457075.png +0 -0
  942. package/mcps/windows-computer-use-mcp/cua-reports/nav/nav-logging-1781444232.png +0 -0
  943. package/mcps/windows-computer-use-mcp/cua-reports/nav/nav-logging-1781457059.png +0 -0
  944. package/mcps/windows-computer-use-mcp/cua-reports/nav/nav-settings-1781444239.png +0 -0
  945. package/mcps/windows-computer-use-mcp/cua-reports/nav/nav-settings-1781457067.png +0 -0
  946. package/mcps/windows-computer-use-mcp/cua-reports/nav/settings-1781542730.png +0 -0
  947. package/mcps/windows-computer-use-mcp/cua-reports/nav-dashboard-1781442925.png +0 -0
  948. package/mcps/windows-computer-use-mcp/cua-reports/nav-help-1781442941.png +0 -0
  949. package/mcps/windows-computer-use-mcp/cua-reports/nav-logging-1781442930.png +0 -0
  950. package/mcps/windows-computer-use-mcp/cua-reports/nav-settings-1781442936.png +0 -0
  951. package/mcps/windows-computer-use-mcp/docs/ARCHITECTURE.md +0 -46
  952. package/mcps/windows-computer-use-mcp/docs/ASSESSMENT_BY_CURSOR_2026-06-14_CUA_NSIS.md +0 -383
  953. package/mcps/windows-computer-use-mcp/docs/AUTOMATION_ASSERT_SPEC.md +0 -202
  954. package/mcps/windows-computer-use-mcp/docs/CUA_PARITY.md +0 -39
  955. package/mcps/windows-computer-use-mcp/docs/DEVELOPMENT.md +0 -51
  956. package/mcps/windows-computer-use-mcp/docs/MEMOPS_CUA.md +0 -147
  957. package/mcps/windows-computer-use-mcp/docs/PRD.md +0 -93
  958. package/mcps/windows-computer-use-mcp/docs/README.md +0 -34
  959. package/mcps/windows-computer-use-mcp/docs/ROADMAP.md +0 -142
  960. package/mcps/windows-computer-use-mcp/docs/SAFETY.md +0 -138
  961. package/mcps/windows-computer-use-mcp/docs/TESTING.md +0 -90
  962. package/mcps/windows-computer-use-mcp/docs/TOOLS.md +0 -80
  963. package/mcps/windows-computer-use-mcp/docs/TOOL_DOCSTRING_STANDARD.md +0 -538
  964. package/mcps/windows-computer-use-mcp/docs/_stale/AHK_VS_PYWINAUTO_COMPARISON.md +0 -353
  965. package/mcps/windows-computer-use-mcp/docs/_stale/ASSESSMENT.md +0 -54
  966. package/mcps/windows-computer-use-mcp/docs/_stale/ASSESSMENT_2026-06-08.md +0 -309
  967. package/mcps/windows-computer-use-mcp/docs/_stale/COMPLETE_DOCUMENTATION_STRUCTURE.md +0 -5
  968. package/mcps/windows-computer-use-mcp/docs/_stale/CUA_ASSISTANT_TODO.md +0 -84
  969. package/mcps/windows-computer-use-mcp/docs/_stale/CUA_PARITY_ROADMAP.md +0 -81
  970. package/mcps/windows-computer-use-mcp/docs/_stale/CUA_ROADMAP.md +0 -306
  971. package/mcps/windows-computer-use-mcp/docs/_stale/DESKTOP_APP.md +0 -125
  972. package/mcps/windows-computer-use-mcp/docs/_stale/DOCUMENTATION_INDEX.md +0 -59
  973. package/mcps/windows-computer-use-mcp/docs/_stale/GLAMA_AI_CRITICISM_ANALYSIS.md +0 -259
  974. package/mcps/windows-computer-use-mcp/docs/_stale/GLAMA_AI_PLATFORM.md +0 -175
  975. package/mcps/windows-computer-use-mcp/docs/_stale/GLAMA_AI_RESCAN_GUIDE.md +0 -216
  976. package/mcps/windows-computer-use-mcp/docs/_stale/GOLD_STATUS_ACHIEVEMENT.md +0 -197
  977. package/mcps/windows-computer-use-mcp/docs/_stale/LLM_REPO_CONTEXT.md +0 -7
  978. package/mcps/windows-computer-use-mcp/docs/_stale/MCP_PRODUCTION_CHECKLIST.md +0 -105
  979. package/mcps/windows-computer-use-mcp/docs/_stale/OFFICE_BACKGROUND_MATRIX.md +0 -19
  980. package/mcps/windows-computer-use-mcp/docs/_stale/OPERATOR_PROTOCOL.md +0 -37
  981. package/mcps/windows-computer-use-mcp/docs/_stale/ORGANIZATION_SUMMARY.md +0 -305
  982. package/mcps/windows-computer-use-mcp/docs/_stale/RENAME-TO-AUTOMATION-MCP.md +0 -191
  983. package/mcps/windows-computer-use-mcp/docs/_stale/STATUS_REPORT.md +0 -288
  984. package/mcps/windows-computer-use-mcp/docs/_stale/TARGETS_PAGE_SKETCH.md +0 -977
  985. package/mcps/windows-computer-use-mcp/docs/_stale/TOOL_DOCSTRING_MIGRATION.md +0 -365
  986. package/mcps/windows-computer-use-mcp/docs/_stale/USAGE_SCENARIOS.md +0 -697
  987. package/mcps/windows-computer-use-mcp/docs/_stale/desktop-state-tool.md +0 -464
  988. package/mcps/windows-computer-use-mcp/docs/_stale/development/README.md +0 -18
  989. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/AI_DEVELOPMENT_RULES.md +0 -928
  990. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/AI_DEVELOPMENT_TOOLS_COMPARISON.md +0 -364
  991. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/BULLETPROOF_MCP_GUIDE.md +0 -793
  992. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/DEBUGGING_LESSONS_LEARNED.md +0 -635
  993. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/DEVELOPMENT_PAIN_POINTS.md +0 -699
  994. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/FILE_VALIDATION_COMPLETE.md +0 -410
  995. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/FILE_VALIDATION_GUIDE.md +0 -575
  996. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/LINK_PARSER_FIX.md +0 -769
  997. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/MCP_SYNC_DEBUGGING_GUIDE.md +0 -512
  998. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/PYTHON_DEPENDENCY_HELL_FIX.md +0 -568
  999. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/PYTHON_SNIPPETS_USAGE_GUIDE.md +0 -717
  1000. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/README.md +0 -25
  1001. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/SYNC_HEALTH_IMPROVEMENTS_SUMMARY.md +0 -496
  1002. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/SYNC_HEALTH_INTEGRATION.md +0 -381
  1003. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/SYSTEMATIC_PROJECT_UPDATES.md +0 -532
  1004. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/mcp-prompt-templates-vs-docstrings.md +0 -657
  1005. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/mcp-tool-docstring-best-practices.md +0 -439
  1006. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/mcp-tool-documentation-standards.md +0 -1153
  1007. package/mcps/windows-computer-use-mcp/docs/_stale/glama-platform/CI_CD_GLAMA_OPTIMIZATION_GUIDE.md +0 -850
  1008. package/mcps/windows-computer-use-mcp/docs/_stale/glama-platform/GLAMA_AI_CRITICISM_ANALYSIS.md +0 -259
  1009. package/mcps/windows-computer-use-mcp/docs/_stale/glama-platform/GLAMA_AI_OPTIMIZATION_SUMMARY.md +0 -204
  1010. package/mcps/windows-computer-use-mcp/docs/_stale/glama-platform/GLAMA_AI_PLATFORM.md +0 -175
  1011. package/mcps/windows-computer-use-mcp/docs/_stale/glama-platform/GLAMA_AI_RESCAN_GUIDE.md +0 -216
  1012. package/mcps/windows-computer-use-mcp/docs/_stale/glama-platform/GLAMA_GITHUB_APP_SETUP.md +0 -199
  1013. package/mcps/windows-computer-use-mcp/docs/_stale/glama-platform/GLAMA_INTEGRATION.md +0 -181
  1014. package/mcps/windows-computer-use-mcp/docs/_stale/glama-platform/GLAMA_RESCAN_EMAIL.txt +0 -43
  1015. package/mcps/windows-computer-use-mcp/docs/_stale/glama-platform/GOLD_STATUS_ACHIEVEMENT.md +0 -197
  1016. package/mcps/windows-computer-use-mcp/docs/_stale/glama-platform/GOLD_STATUS_UPDATE_2025_10_08.md +0 -378
  1017. package/mcps/windows-computer-use-mcp/docs/_stale/glama-platform/README.md +0 -632
  1018. package/mcps/windows-computer-use-mcp/docs/_stale/legacy/requirements-fastmcp.txt +0 -8
  1019. package/mcps/windows-computer-use-mcp/docs/_stale/legacy/requirements_minimal.txt +0 -4
  1020. package/mcps/windows-computer-use-mcp/docs/_stale/mcp-technical/CLAUDE_DESKTOP_DEBUGGING.md +0 -561
  1021. package/mcps/windows-computer-use-mcp/docs/_stale/mcp-technical/CONTAINERIZATION_GUIDELINES.md +0 -707
  1022. package/mcps/windows-computer-use-mcp/docs/_stale/mcp-technical/MCP_PRODUCTION_CHECKLIST.md +0 -101
  1023. package/mcps/windows-computer-use-mcp/docs/_stale/mcp-technical/MONITORING_STACK_DEPLOYMENT.md +0 -532
  1024. package/mcps/windows-computer-use-mcp/docs/_stale/mcp-technical/README.md +0 -266
  1025. package/mcps/windows-computer-use-mcp/docs/_stale/mcp-technical/TROUBLESHOOTING_FASTMCP_2.12.md +0 -670
  1026. package/mcps/windows-computer-use-mcp/docs/_stale/mcpb-packaging/MCPB_BUILDING_GUIDE.md +0 -1921
  1027. package/mcps/windows-computer-use-mcp/docs/_stale/mcpb-packaging/MCPB_IMPLEMENTATION_SUMMARY.md +0 -387
  1028. package/mcps/windows-computer-use-mcp/docs/_stale/mcpb-packaging/PYPI_PUBLISHING_GUIDE.md +0 -789
  1029. package/mcps/windows-computer-use-mcp/docs/_stale/mcpb-packaging/README.md +0 -404
  1030. package/mcps/windows-computer-use-mcp/docs/_stale/notepadpp/COMMUNITY_AND_SUPPORT.md +0 -976
  1031. package/mcps/windows-computer-use-mcp/docs/_stale/notepadpp/LANGUAGE_SERVER_PROTOCOL_EXPLAINED.md +0 -416
  1032. package/mcps/windows-computer-use-mcp/docs/_stale/notepadpp/MCP_TOOL_CORRUPTION_ISSUE.md +0 -279
  1033. package/mcps/windows-computer-use-mcp/docs/_stale/notepadpp/NOTEPADPP_ALTERNATIVES.md +0 -308
  1034. package/mcps/windows-computer-use-mcp/docs/_stale/notepadpp/NOTEPADPP_COLOR_FIX_2025_10_08.md +0 -187
  1035. package/mcps/windows-computer-use-mcp/docs/_stale/notepadpp/NOTEPADPP_COMPLETE_GUIDE.md +0 -1259
  1036. package/mcps/windows-computer-use-mcp/docs/_stale/notepadpp/NOTEPADPP_NUCLEAR_REINSTALL_2025_10_08.md +0 -196
  1037. package/mcps/windows-computer-use-mcp/docs/_stale/notepadpp/NPP_WHITE_ON_WHITE_BATTLE_PLAN.md +0 -336
  1038. package/mcps/windows-computer-use-mcp/docs/_stale/notepadpp/PLUGIN_ECOSYSTEM_COMPREHENSIVE.md +0 -887
  1039. package/mcps/windows-computer-use-mcp/docs/_stale/notepadpp/README.md +0 -472
  1040. package/mcps/windows-computer-use-mcp/docs/_stale/repository-protection/BACKUP_AND_RECOVERY_GUIDE.md +0 -455
  1041. package/mcps/windows-computer-use-mcp/docs/_stale/repository-protection/BRANCH_PROTECTION_SETTINGS.md +0 -236
  1042. package/mcps/windows-computer-use-mcp/docs/_stale/repository-protection/BRANCH_STRATEGY_AND_AI_WORKFLOW.md +0 -616
  1043. package/mcps/windows-computer-use-mcp/docs/_stale/repository-protection/README.md +0 -333
  1044. package/mcps/windows-computer-use-mcp/docs/_stale/serena/SERENA_COPY_TO_OTHER_REPOS.md +0 -159
  1045. package/mcps/windows-computer-use-mcp/docs/_stale/serena/SERENA_GUIDE.md +0 -632
  1046. package/mcps/windows-computer-use-mcp/docs/_stale/serena/SERENA_INSTALL_AND_TEST.md +0 -569
  1047. package/mcps/windows-computer-use-mcp/docs/_stale/serena/SERENA_NEXT_STEPS.md +0 -351
  1048. package/mcps/windows-computer-use-mcp/docs/_stale/serena/SERENA_QUICK_INSTALL.md +0 -195
  1049. package/mcps/windows-computer-use-mcp/docs/_stale/state-tool-implementation.md +0 -498
  1050. package/mcps/windows-computer-use-mcp/docs/composing-with-playwright.md +0 -55
  1051. package/mcps/windows-computer-use-mcp/docs/cua-nsis-certification.md +0 -101
  1052. package/mcps/windows-computer-use-mcp/docs/ocr.md +0 -107
  1053. package/mcps/windows-computer-use-mcp/docs/py-stack.md +0 -47
  1054. package/mcps/windows-computer-use-mcp/native/icons/icon.png +0 -0
  1055. package/mcps/windows-computer-use-mcp/screenshot_demo.png +0 -0
  1056. package/mcps/windows-computer-use-mcp/src/windows_computer_use_mcp/templates/vroidstudio/default/export_complete_toast.png +0 -0
  1057. package/mcps/windows-computer-use-mcp/src/windows_computer_use_mcp/templates/vroidstudio/default/export_dialog_title.png +0 -0
  1058. package/mcps/windows-computer-use-mcp/src/windows_computer_use_mcp/templates/vroidstudio/default/file_dialog_path_field.png +0 -0
  1059. package/mcps/windows-computer-use-mcp/src/windows_computer_use_mcp/templates/vroidstudio/default/sample_tile_female.png +0 -0
  1060. package/mcps/windows-computer-use-mcp/tests/README.md +0 -155
  1061. package/mcps/windows-computer-use-mcp/tests/__init__.py +0 -1
  1062. package/mcps/windows-computer-use-mcp/tests/conftest.py +0 -281
  1063. package/mcps/windows-computer-use-mcp/tests/conftest_env.py +0 -116
  1064. package/mcps/windows-computer-use-mcp/tests/e2e/conftest.py +0 -96
  1065. package/mcps/windows-computer-use-mcp/tests/e2e/test_libreoffice_cua_loop.py +0 -72
  1066. package/mcps/windows-computer-use-mcp/tests/test_app_integration.py +0 -83
  1067. package/mcps/windows-computer-use-mcp/tests/test_app_profiles.py +0 -28
  1068. package/mcps/windows-computer-use-mcp/tests/test_automation_assert.py +0 -185
  1069. package/mcps/windows-computer-use-mcp/tests/test_automation_dialog.py +0 -43
  1070. package/mcps/windows-computer-use-mcp/tests/test_automation_elements.py +0 -138
  1071. package/mcps/windows-computer-use-mcp/tests/test_automation_keyboard.py +0 -57
  1072. package/mcps/windows-computer-use-mcp/tests/test_automation_mouse.py +0 -57
  1073. package/mcps/windows-computer-use-mcp/tests/test_automation_shortcut.py +0 -41
  1074. package/mcps/windows-computer-use-mcp/tests/test_automation_task.py +0 -115
  1075. package/mcps/windows-computer-use-mcp/tests/test_automation_windows.py +0 -105
  1076. package/mcps/windows-computer-use-mcp/tests/test_cameras_api.py +0 -43
  1077. package/mcps/windows-computer-use-mcp/tests/test_cua_parity.py +0 -51
  1078. package/mcps/windows-computer-use-mcp/tests/test_dependency_failures.py +0 -39
  1079. package/mcps/windows-computer-use-mcp/tests/test_desktop_state.py +0 -99
  1080. package/mcps/windows-computer-use-mcp/tests/test_face_recognition.py +0 -238
  1081. package/mcps/windows-computer-use-mcp/tests/test_face_recognition_api.py +0 -161
  1082. package/mcps/windows-computer-use-mcp/tests/test_images/README.md +0 -28
  1083. package/mcps/windows-computer-use-mcp/tests/test_mission.py +0 -42
  1084. package/mcps/windows-computer-use-mcp/tests/test_portmanteau_windows_mock.py +0 -173
  1085. package/mcps/windows-computer-use-mcp/tests/test_portmanteau_windows_real.py +0 -139
  1086. package/mcps/windows-computer-use-mcp/tests/test_retry.py +0 -26
  1087. package/mcps/windows-computer-use-mcp/tests/test_safety_api.py +0 -24
  1088. package/mcps/windows-computer-use-mcp/tests/test_template_library.py +0 -53
  1089. package/mcps/windows-computer-use-mcp/tests/test_utils.py +0 -185
  1090. package/mcps/windows-computer-use-mcp/web_sota/src-tauri/icons/icon.png +0 -0
  1091. package/skills/global_config/google-sheets-automation/SKILL.md +0 -150
  1092. package/skills/global_config/senior-fullstack/SKILL.md +0 -221
  1093. package/skills/global_config/senior-fullstack/references/architecture_patterns.md +0 -103
  1094. package/skills/global_config/senior-fullstack/references/development_workflows.md +0 -103
  1095. package/skills/global_config/senior-fullstack/references/tech_stack_guide.md +0 -103
  1096. package/skills/global_config/senior-fullstack/scripts/code_quality_analyzer.py +0 -114
  1097. package/skills/global_config/senior-fullstack/scripts/fullstack_scaffolder.py +0 -114
  1098. package/skills/global_config/senior-fullstack/scripts/project_scaffolder.py +0 -114
@@ -1,2342 +0,0 @@
1
- ---
2
- description: "Prompts prontos para criar visuais com o tdmcp, o servidor MCP para TouchDesigner — feedback, áudio-reativo, partículas, arte generativa e mais."
3
- ---
4
-
5
- <script setup>
6
- import { withBase } from "vitepress";
7
- </script>
8
-
9
- # Receitas de prompt
10
-
11
- Copie, troque as palavras e deixe do seu jeito. Estão agrupadas pelo que você quer
12
- criar. Depois de qualquer build, você sempre pode dizer **"me mostre um preview"**
13
- e então ajustar: *"mais quente", "mais devagar", "mais contraste", "adicione um
14
- glitch".*
15
-
16
- ::: tip Como descrever
17
- Descreva o **resultado e a sensação**, não os nós. "Um túnel lento, hipnótico e
18
- azul-profundo" funciona melhor do que nomear operadores. A IA escolhe os
19
- operadores.
20
- :::
21
-
22
- A mídia desta página fica reservada para o resultado visual ou a superfície
23
- performável que o prompt cria. Se o prompt gera relatório, config, README ou
24
- health check, ele fica só em texto em vez de mostrar uma ilustração decorativa do
25
- comando.
26
-
27
- ## Starters de receita (v0.8.2)
28
-
29
- Use estes quando quiser começar por uma receita first-party validada e só depois
30
- pedir uma passada criativa. São bons para workshop e ensaio porque partem de redes
31
- checadas por schema, não de topologia inventada do zero.
32
-
33
- > *"Aplique `audio_reactive_basic`, use um tom de teste se o mic não estiver
34
- > disponível, então ligue a cor de saída ao nível RMS e me mostre o caminho do Null
35
- > de áudio."*
36
-
37
- <video :src="withBase('/examples/recipe-audio-reactive-basic.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
38
-
39
- *Uma cadeia compacta de audio-in / spectrum / RMS com Null CHOP estável e saída TOP
40
- pronta para `bind_to_channel` ou expressões manuais.*
41
-
42
- > *"Aplique `keyframe_animation_basic`, adicione cinco keyframes legíveis de câmera
43
- > ou objeto e exponha um controle Speed para eu ensaiar o movimento sem abrir o
44
- > grafo."*
45
-
46
- <video :src="withBase('/examples/recipe-keyframe-animation-basic.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
47
-
48
- *O starter com Animation COMP coloca movimento declarativo primeiro: você autoria os
49
- canais no Animation Editor do TD e usa o CHOP resultante para guiar o look.*
50
-
51
- > *"Aplique `pose_skeleton_standalone` com a tabela interna de landmarks, renderize
52
- > juntas como pontos brilhantes e ossos, e deixe notas para trocar por uma fonte de
53
- > pose ao vivo depois."*
54
-
55
- <video :src="withBase('/examples/recipe-pose-skeleton-standalone.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
56
-
57
- *Um renderizador de pose sem câmera: landmarks estáticos alimentam um skeleton em
58
- Script SOP, útil para testar o look antes de existir fonte MediaPipe ou Kinect.*
59
-
60
- > *"Aplique `particle_system_basic`, faça o emissor subir como cinza e exponha
61
- > BirthRate, Lifetime e ForceY como os primeiros controles performáveis."*
62
-
63
- <video :src="withBase('/examples/recipe-particle-system-basic.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
64
-
65
- *Um starter com Particle SOP, câmera, luz, material point-sprite e Null de saída.
66
- Simples para ensinar, completo o bastante para tocar ao vivo.*
67
-
68
- > *"Aplique `feedback_network_basic`, ajuste blur e decay para virar um túnel
69
- > recursivo de alto contraste e mantenha a rede mínima para eu aprender o loop."*
70
-
71
- <video :src="withBase('/examples/recipe-feedback-network-basic.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
72
-
73
- *Seed de noise, composite feedback, blur, level decay e Null de saída: a menor rede
74
- de feedback performável que ainda se comporta como instrumento visual.*
75
-
76
- > *"Aplique `glsl_shader_basic`, deixe o plasma inline editável e exponha uTime,
77
- > uScale, uColorA e uColorB para eu combinar com a paleta do show."*
78
-
79
- <video :src="withBase('/examples/recipe-glsl-shader-basic.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
80
-
81
- *Uma receita minúscula de GLSL TOP para trabalho shader-first. Ela cai como rede
82
- válida e mantém o source perto para ensino ou remix rápido.*
83
-
84
- > *"Aplique `kinetic_text_audio_reactive`, escreva uma palavra gigante de cue e
85
- > depois ligue a expressão de brightness ao canal de grave do analyze."*
86
-
87
- <video :src="withBase('/examples/recipe-kinetic-text-audio-reactive.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
88
-
89
- *Text TOP com cadeia transform / level ao lado de um analisador de grave. A receita
90
- deixa a expressão de áudio manual explícita em vez de escondê-la em dados inválidos.*
91
-
92
- > *"Aplique `decks_layer_mixer`, deixe os decks A e B com cores claramente
93
- > diferentes, então adicione uma nota de Cross e gain por deck para o VJ."*
94
-
95
- <video :src="withBase('/examples/recipe-decks-layer-mixer.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
96
-
97
- *A receita de decks first-party é um esqueleto pequeno de mixer: duas fontes, dois
98
- gains, um bus composite e uma saída program estável.*
99
-
100
- > *"Aplique `depth_displacement_post`, use o depth map sintético para deformar um
101
- > ramp, então finalize com blur e level grade para parecer um post pass real."*
102
-
103
- <video :src="withBase('/examples/recipe-depth-displacement-post.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
104
-
105
- *Uma pilha depth/displace/post sem hardware, boa para ensaiar looks de profundidade
106
- antes de existir câmera depth ou mapa gerado.*
107
-
108
- > *"Aplique `kinetic_text_path_follow`, coloque o título do show num caminho circular
109
- > e me diga exatamente quais expressões preciso ligar depois do import."*
110
-
111
- <video :src="withBase('/examples/recipe-kinetic-text-path-follow.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
112
-
113
- *Um template de ligação manual para tipo seguindo caminho: CHOPs sin/cos
114
- determinísticos guiam o movimento enquanto a receita continua válida no schema.*
115
-
116
- > *"Aplique `optical_flow_particles`, roteie o movimento da câmera para o drift das
117
- > partículas e deixe a saída pronta para um feedback de trails."*
118
-
119
- <video :src="withBase('/examples/recipe-optical-flow-particles.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
120
-
121
- *Vídeo ao vivo vira campo de optical-flow e empurra partículas. É a receita
122
- camera-reactive para usar quando o movimento do corpo deve deixar rastros visíveis.*
123
-
124
- > *"Aplique `atemporal_bodytrack_glitch_timeline` neste clipe vertical: comece limpo,
125
- > deixe glitches verdes curtos entrarem como bug de câmera, volte ao normal entre os
126
- > filtros e use o tracker vermelho só como pontos pequenos, linhas e rastros -- sem
127
- > círculos grandes."*
128
-
129
- <video :src="withBase('/examples/atemporal-bodytrack-glitch.mp4')" autoplay loop muted playsinline style="width:100%;max-width:360px;border-radius:8px;display:block"></video>
130
-
131
- *Um template reutilizável de bug-timeline: filmagem limpa, saltos atemporais verdes,
132
- respiros normais e um branch vermelho de body tracking que parece object tracking,
133
- não decoração circular. Anime `SceneMode` para performar o edit e adicione ticks /
134
- ruído de glitch apenas enquanto um branch filtrado estiver ativo.*
135
-
136
- > *"Aplique `mediapipe_face_overlay`, escureça a webcam por baixo, tinja os pontos de
137
- > landmark e deixe o overlay fácil de trocar do demo para o adaptador de face ao
138
- > vivo."*
139
-
140
- <video :src="withBase('/examples/recipe-mediapipe-face-overlay.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
141
-
142
- *Uma receita de face overlay que espelha o setup novo de face tracking: webcam,
143
- CHOP de landmarks, dots instanciados, render e composite.*
144
-
145
- > *"Aplique `scene_timeline_demo`, monte três cenas óbvias e exponha play, rate e
146
- > fade para eu demonstrar timing de cue em um minuto."*
147
-
148
- <video :src="withBase('/examples/recipe-scene-timeline-demo.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
149
-
150
- *Um demo de três cenas guiado por timer que ensina raciocínio de show-clock sem
151
- exigir um setlist runner completo.*
152
-
153
- > *"Aplique `scene_3d_basic`, coloque uma esfera sob câmera e luz, então ligue
154
- > RotateY a uma rampa de tempo depois do import."*
155
-
156
- <video :src="withBase('/examples/recipe-scene-3d-basic.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
157
-
158
- *A menor cena 3D renderizável: geometria, câmera, luz, Render TOP e Null. Boa base
159
- para exercícios de material, instancing e audio-reactive.*
160
-
161
- > *"Aplique `video_synth_oscillator`, faça um synth de cor com oscilador Lissajous e
162
- > mantenha uFreqX / uFreqY / uColor expostos para ajuste ao vivo."*
163
-
164
- <video :src="withBase('/examples/recipe-video-synth-oscillator.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
165
-
166
- *Um starter de video synth procedural, sem filmagem: um GLSL TOP desenha uma curva
167
- de oscilador brilhante com controles seguros para show.*
168
-
169
- > *"Aplique `kinetic_text_standalone`, faça a palavra respirar com LFO e deixe os
170
- > bindings pós-import documentados para um iniciante terminar."*
171
-
172
- <video :src="withBase('/examples/recipe-kinetic-text-standalone.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
173
-
174
- *Uma receita de kinetic type sem áudio para title cards, contagens regressivas e
175
- labels de cue quando audio-reactivity ainda não é necessária.*
176
-
177
- ## Generativo & abstrato
178
-
179
- > *"Crie um túnel de feedback a partir de ruído com blur e displace, adicione bloom
180
- > e me mostre um preview."*
181
-
182
- <video :src="withBase('/examples/feedback-tunnel.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
183
-
184
- *Uma rede de feedback de alto contraste (blur + displace + bloom), ajustada como
185
- showpiece em vez de uma demonstração técnica simples.*
186
-
187
- > *"Faça um padrão de reação-difusão em evolução, em verdes e pretos, lento e
188
- > orgânico."*
189
-
190
- <video :src="withBase('/examples/reaction-diffusion.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
191
-
192
- *Padrão estilo reação-difusão na GPU, com contraste mais forte e cor pronta para
193
- palco, não uma simulação de laboratório chapada.*
194
-
195
- > *"Construa uma paisagem de ruído fluida em 3D com uma câmera orbitando."*
196
-
197
- <video :src="withBase('/examples/noise-landscape.mp4')" autoplay loop muted playsinline style="width:100%;max-width:560px;border-radius:8px;display:block"></video>
198
-
199
- *Um terreno 3D deslocado por ruído.*
200
-
201
- > *"Me dê um visual de atrator estranho Lorenz com partículas brilhantes no preto,
202
- > engrossado como tubo e evoluindo só enquanto a timeline toca."*
203
-
204
- <video :src="withBase('/examples/strange-attractor.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
205
-
206
- *`create_strange_attractor` integra ODEs Lorenz / Aizawa / Halvorsen num buffer
207
- rolante de Script CHOP, renderiza a trilha como geometria SOP e pode engrossar a
208
- linha com Tube SOP para virar um caminho 3D real.*
209
-
210
- > *"Me dê um visual de sintetizador de vídeo analógico dos anos 70 — padrões de
211
- > interferência suaves e scanlines rolando em verde-azulado elétrico e rosa."*
212
-
213
- <video :src="withBase('/examples/analog-video-synth.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
214
-
215
- *Padrões procedurais de lissajous / interferência / scanline animados ao longo do
216
- tempo com controles de frequência e cor — uma lavagem de osciloscópio estilo
217
- Rutt-Etra autossuficiente, sem precisar de nenhuma filmagem.*
218
-
219
- > *"Construa um túnel fractal por raymarching que eu possa atravessar voando, ciano
220
- > brilhante no preto, com um botão de Velocidade."*
221
-
222
- <video :src="withBase('/examples/raymarched-tunnel.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
223
-
224
- *Uma cena de campo de distância com sinal (SDF) renderizada inteiramente num GLSL
225
- TOP — um túnel infinito que você atravessa voando, com controles de Velocidade da
226
- câmera e de cor. Sem nós de geometria, só matemática.*
227
-
228
- > *"Construa um campo SDF programável com uma esfera subtraindo uma caixa e uma
229
- > união suave de torus, ciano-para-magenta, com controles vivos de CameraZ /
230
- > StepCount / Rotate."*
231
-
232
- <video :src="withBase('/examples/sdf-field-csg-raymarch.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
233
-
234
- *`create_sdf_field` é o raymarcher CSG mais novo: componha primitivas esfera /
235
- caixa / torus com union, intersect, subtract e smooth blend, então performe o campo
236
- com controles SDF expostos em vez de editar shader no meio do show.*
237
-
238
- > *"Esculpa um blob de metaball macio e morfando em 3D que respira devagar,
239
- > superfície iridescente num palco escuro."*
240
-
241
- <video :src="withBase('/examples/shader-park-blobs.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
242
-
243
- *Uma escultura SDF estilo Shader Park (esferas e ruído mesclados) compilada num GLSL
244
- TOP, com controles de Velocidade de morph e de superfície — volumes orgânicos, tipo
245
- argila, que pulsam e se fundem.*
246
-
247
- > *"Use estas três imagens de moodboard — oceano enevoado, cobre oxidado e luz fria
248
- > de catedral — e construa um sistema generativo compatível com post-FX."*
249
-
250
- <video :src="withBase('/examples/moodboard-to-system-dispatch.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
251
-
252
- *`moodboard_to_system` lê de 1 a 6 imagens, extrai intenção de paleta / movimento /
253
- gerador com o LLM configurado (ou fallback determinístico) e dispara um sistema
254
- Layer-1 compatível, com pós-processamento.*
255
-
256
- > *"Faça crescer um sistema orgânico de galhos a partir de um único caule, verde
257
- > musgo no preto, e deixe a taxa de crescimento reagir à música."*
258
-
259
- <video :src="withBase('/examples/growth-system-branching.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
260
-
261
- *Um gerador de L-system / turtle-growth engrossado como geometria SOP renderizável,
262
- com controles de gerações, ângulo de galho, passo e espessura — útil para vinhas,
263
- raízes, circuitos e line-art viva.*
264
-
265
- > *"Empacote os seis clássicos generativos canônicos — túnel de feedback, barras de
266
- > espectro, paisagem de ruído, galáxia de partículas, reaction-diffusion e glitch de
267
- > webcam — como um bundle portátil de receitas para importar em outra máquina."*
268
-
269
- <video :src="withBase('/examples/generative-classics-pack.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
270
-
271
- *`generative_classics_pack` começa como uma lista read-only de receitas internas
272
- disponíveis, então pode escrever um JSON compatível com `import_recipe_bundle`. É o
273
- export rápido de "clássicos confiáveis" para workshops, instalações novas e rigs
274
- offline.*
275
-
276
- > *"Me puxe para um túnel de feedback infinito com zoom da minha webcam, deixando
277
- > rastros e girando, magenta profundo."*
278
-
279
- <video :src="withBase('/examples/feedback-tunnel-infinite.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
280
-
281
- *Um loop de feedback de zoom infinito dedicado (zoom + rotação + decay) semeado a
282
- partir de qualquer fonte, com botões de Zoom / Giro / Rastro — o clássico túnel de
283
- "cair dentro da tela".*
284
-
285
- > *"Preencha o quadro com uma simulação de fluido de tinta em tempo real, ciano e
286
- > magenta, com splats de áudio no bumbo mas auto-LFO quando não houver mic ligado."*
287
-
288
- <video :src="withBase('/examples/fluid-sim-ink.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
289
-
290
- *`create_fluid_sim` constrói a pilha de advection / pressão / vorticity / dye em
291
- GLSL TOPs, expõe controles de viscosidade / dissipação / splat e consegue se
292
- autoanimar antes de você ligar uma fonte ao vivo.*
293
-
294
- > *"Transforme este poster em milhares de partículas que explodem no drop e depois
295
- > voltam como mola para formar a imagem original."*
296
-
297
- <video :src="withBase('/examples/image-particles-burst.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
298
-
299
- *`image_to_particles` amostra os pixels da fonte como posições e cores de repouso, e
300
- usa um loop de partículas na GPU para a imagem dissolver, espalhar e se recompor no
301
- tempo da música.*
302
-
303
- > *"Esculpe uma catedral de esferas fundidas e anéis de toroide em pura matemática
304
- > SDF, iluminada por dentro de violeta, e me dê um botão de Camera-Z pra voar pra
305
- > dentro."*
306
-
307
- <video :src="withBase('/examples/sdf-csg-cathedral.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
308
-
309
- *Um único GLSL TOP faz raymarch de uma árvore CSG (union / subtract / smooth-blend de
310
- primitivas esfera + caixa + torus) com controles ao vivo de CameraZ, StepCount,
311
- Speed, ColorA / ColorB e Background. A saída é um sólido infinitamente detalhado por
312
- onde você voa sem instanciar nenhum SOP.*
313
-
314
- ## Estudos artísticos & instalações
315
-
316
- Estes prompts são para artistas visuais primeiro: loops de galeria, imagens de
317
- palco, estudos de câmera, transformações com cara de impressão e peças de instalação.
318
-
319
- > *"Faça uma murmuração de 4.000 agentes minúsculos respirando como um bando, com
320
- > botões Separation / Alignment / Cohesion para eu performar devagar."*
321
-
322
- <video :src="withBase('/examples/particle-flock-murmuration.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
323
-
324
- *`create_particle_flock` é a superfície de boids: um sistema comportamental na GPU em
325
- que a imagem não é um efeito de partículas colado por cima, mas uma multidão em
326
- movimento com regras sociais próprias. Bom para bandos, cardumes, campos de pessoas
327
- e movimento ambiente de galeria.*
328
-
329
- > *"Construa uma galáxia de partículas com curl-noise: centenas de milhares de
330
- > pontos orbitando em braços suaves, reagindo devagar ao movimento da sala."*
331
-
332
- <video :src="withBase('/examples/gpu-particle-curl-galaxy.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
333
-
334
- *`create_gpu_particle_field` é o campo de alta contagem para névoa, estrelas, cinza,
335
- plâncton e poeira. Peça `reactivity:"motion"` quando uma câmera deve energizar o
336
- drift sem transformar a peça num efeito literal de webcam.*
337
-
338
- > *"Transforme o performer num recorte preto com aro ciano/magenta e use essa
339
- > máscara para revelar um mundo generativo atrás dele."*
340
-
341
- <video :src="withBase('/examples/depth-silhouette-neon-mask.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
342
-
343
- *`create_depth_silhouette` dá uma matte limpa para instalações: fonte sintética no
344
- ensaio, câmera/depth source no local, controles de blur/threshold/invert para
345
- ajustar a borda e uma máscara de saída pronta para composição.*
346
-
347
- > *"Rastreie quatro blobs brilhantes da câmera e deixe cada um puxar um campo de cor,
348
- > como visitantes movendo lanternas pela projeção."*
349
-
350
- <video :src="withBase('/examples/blob-reactive-installation.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
351
-
352
- *`create_blob_reactive` transforma pontos de luz, mãos ou objetos rastreados em
353
- canais como `blob0_x`, `blob0_y` e `blob0_size`. Use em instalações participativas
354
- onde corpos controlam a obra sem ninguém segurar um controlador.*
355
-
356
- > *"Rotoscope esta fonte em linhas vetoriais fluindo: congele um frame, trace os
357
- > contornos e mantenha um botão de pulse para eu capturar um novo desenho ao vivo."*
358
-
359
- <video :src="withBase('/examples/vector-lines-rotoscope.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
360
-
361
- *`create_vector_lines` é uma ponte entre vídeo e desenho: prepara uma máscara,
362
- congela, traça como geometria SOP editável e depois renderiza ou exporta. Útil para
363
- estudos de plotter, rotoscope ao vivo, testes de contorno para laser e fluxos de
364
- impressão.*
365
-
366
- > *"Faça uma tapeçaria de cellular automata, azul e âmbar, com regras que pareçam
367
- > pixels tecidos crescendo pela parede."*
368
-
369
- <video :src="withBase('/examples/cellular-automata-tapestry.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
370
-
371
- *`create_generative_art` aceita `cellular_automata` como estudo promptável. Funciona
372
- especialmente bem quando o artista quer um tecido vivo, não um efeito de câmera nem
373
- um visual musical.*
374
-
375
- > *"Preencha a projeção do chão com trilhas de slime-mold: caminhos luminosos
376
- > procuram, se sobrepõem, desaparecem e deixam memória de tinta molhada."*
377
-
378
- <video :src="withBase('/examples/slime-trails-ink.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
379
-
380
- *`create_simulation` com `type:"slime"` entrega trilhas decaindo e movimento de
381
- busca. Fica entre reaction-diffusion e fluid sim: menos diagrama científico, mais
382
- rastro vivo.*
383
-
384
- > *"Gere uma paleta harmônica contida a partir de um tom azul-esverdeado, construa
385
- > uma faixa de gradiente e use isso como fonte de cor para o próximo visual."*
386
-
387
- <video :src="withBase('/examples/palette-harmony-study.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
388
-
389
- *`create_palette` não é só encanamento utilitário: é ferramenta de direção de arte.
390
- Use regras de harmonia para definir primeiro o mundo visual, depois alimente grade,
391
- partículas, cor de SDF, tipografia ou projection mapping com esses swatches.*
392
-
393
- > *"Crie traços de fitas fluindo a partir de um vector field, como caligrafia de
394
- > tinta em longa exposição se movendo sobre preto."*
395
-
396
- <video :src="withBase('/examples/flow-field-ribbons.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
397
-
398
- *`create_generative_art` com `flow_field` é a versão promptável de movimento em
399
- linhas: boa para rastros caligráficos, mapas de corrente, desenhos de vento e
400
- estudos de movimento sem dados externos.*
401
-
402
- > *"Faça um relevo escultórico a partir de uma imagem: uma superfície iluminada de
403
- > lado que sobe e desce como peça de parede de galeria, não um filtro de vídeo plano."*
404
-
405
- <video :src="withBase('/examples/sculptural-relief-gallery.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
406
-
407
- *`create_depth_displacement` transforma brilho ou profundidade em forma 2.5D real,
408
- com luz e controles de câmera orbitável. Use quando a imagem deve virar objeto.*
409
-
410
- ## Reativo a áudio
411
-
412
- > *"Construa um espectro radial que floresce no grave e solta faíscas cromáticas
413
- > nos agudos."*
414
-
415
- **O que você recebe:** uma cadeia de análise (espectro + nível + batida) alimentando
416
- um visual, geralmente com um botão de *Sensibilidade*. Veja a
417
- [nota sobre permissão de microfone](/pt/guide/troubleshooting#macos-microphone-camera-permission)
418
- no macOS, ou peça um **tom de teste** em vez do mic enquanto experimenta.
419
-
420
- > *"Construa uma bola 3D de espinhos que se projetam para fora no grave e brilham
421
- > nos agudos — mostre o preview num beat de teste."*
422
-
423
- <video :src="withBase('/examples/audio-reactive-3d-spikes.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
424
-
425
- *Uma geometria 3D renderizada cujo deslocamento, escala e rotação são ligados a
426
- bandas de áudio ao vivo (grave / médio / agudo) com um botão de Sensibilidade — um
427
- sólido espinhento e respirante que dança com a faixa. Usa uma fonte sintética, então
428
- dá preview sem permissão do mic.*
429
-
430
- > *"Faça sidechain desta camada com o bumbo para ela abaixar e voltar pulsando a
431
- > cada batida, como um compressor."*
432
-
433
- *Um seguidor de envelope com ataque/release e gate/duck — faça sidechain da
434
- opacidade ou do brilho de uma camada com o bumbo para ela pulsar no tempo, indo além
435
- de um simples Lag de suavização. O "pump de sidechain" que todo produtor de
436
- eletrônica conhece, aplicado a um visual.*
437
-
438
- > *"Divida esta faixa em cor por classe de nota, flashes de transiente e uma
439
- > estrutura lenta de energia, então conecte cada fluxo a uma parte diferente do
440
- > visual."*
441
-
442
- <video :src="withBase('/examples/chroma-transient-energy.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
443
-
444
- *Três caminhos novos de análise musical: `create_chroma_reactive` expõe 12 canais de
445
- classe de nota, `create_transient_reactive` separa percussão de sustain, e
446
- `create_energy_structure` detecta build / drop / breakdown com limiares adaptativos.*
447
-
448
- > *"Escute esta faixa de referência, extraia fingerprint de tempo / brilho / densidade
449
- > de ataques / dinâmica, e escolha automaticamente um sistema visual compatível."*
450
-
451
- <video :src="withBase('/examples/audio-fingerprint-dispatch.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
452
-
453
- *`audio_fingerprint_to_visual` amostra áudio, classifica o fingerprint e dispara um
454
- gerador ajustado, como glitch, caleidoscópio, feedback, partículas na GPU ou geometria
455
- reativa a áudio. Use `dry_run` primeiro quando quiser inspecionar a escolha.*
456
-
457
- > *"Divida o feed do DJ em quatro bandas limpas, roteie sub para displacement,
458
- > médios para pulso de cor e agudos para densidade de faíscas, então conecte as
459
- > mesmas bandas ao meu GLSL TOP como uniforms `uBass`, `uMid` e `uHigh`."*
460
-
461
- *Use `create_band_router` quando uma entrada de áudio precisa virar canais de
462
- controle legíveis `band0..bandN`, depois `create_audio_glsl_uniforms` quando esses
463
- canais devem guiar uniforms do shader diretamente. O resultado não é só "reativo a
464
- áudio": é um barramento de modulação nomeado e inspecionável que quem escreve shader
465
- consegue ajustar sem reescrever GLSL a cada mudança.*
466
-
467
- ### MIDI & instrumentos
468
-
469
- > *"Faça cada nota do meu teclado MIDI disparar um estouro de cor diferente — e me
470
- > deixe testar sem plugar nada."*
471
-
472
- *Mapeia notas MIDI recebidas para canais reativos por nota (um flash ou estouro por
473
- altura), com uma fonte de notas sintética embutida, então dá preview e você pode
474
- ensaiar o look antes do equipamento estar conectado.*
475
-
476
- ## Reativo a câmera & movimento
477
-
478
- A contraparte da reatividade ao áudio — guie um visual pelo movimento ou pelo
479
- brilho na frente da sua webcam.
480
-
481
- > *"Faça um visual que reage ao movimento na frente da minha webcam, e dê
482
- > preview."*
483
-
484
- > *"Controle a quantidade de feedback pelo tanto de movimento que a câmera vê."*
485
-
486
- > *"Reaja ao brilho da sala — aumente o bloom quando acenderem as luzes."*
487
-
488
- **O que você recebe:** uma cadeia de análise expondo canais de *movimento* e
489
- *brilho* mais um botão de *Sensibilidade*. Como o mic, a câmera ao vivo dispara o
490
- [popup de permissão do macOS](/pt/guide/troubleshooting#macos-microphone-camera-permission)
491
- — ou peça uma **fonte sintética de teste** para experimentar sem câmera.
492
-
493
- > *"Analise o movimento deste clip como optical flow, suavize e use o campo vetorial
494
- > para controlar um liquid displacement warp — use o clip Mosaic embutido se minha
495
- > câmera ainda não estiver pronta."*
496
-
497
- <video :src="withBase('/examples/optical-flow-vector-field.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
498
-
499
- *`create_optical_flow` monta um campo de movimento com TOPs nativos a partir do
500
- frame atual versus o anterior, com controles de Sensitivity / Smoothing / Blur. Ele
501
- emite um TOP de flow RG-packed que pode modular displacement, partículas ou qualquer
502
- cadeia de movimento guiada por TOP.*
503
-
504
- ### Body tracking (webcam, sem hardware extra)
505
-
506
- Rastreamento de corpo inteiro por uma webcam comum, via o plugin gratuito
507
- [MediaPipe](https://github.com/torinmb/mediapipe-touchdesigner) (instale uma vez com
508
- `tdmcp install mediapipe-touchdesigner`).
509
-
510
- > *"Configure body tracking pela minha webcam e mostre o esqueleto."*
511
-
512
- > *"Faça fitas brilhantes seguirem meus pulsos e ombros, deixando rastros neon longos
513
- > enquanto eu me movo — use uma pose sintética no preview se a câmera ainda não
514
- > estiver pronta."*
515
-
516
- <video :src="withBase('/examples/pose-trails-skeleton.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
517
-
518
- > *"Controle a intensidade do visual pelo quanto meu corpo está se mexendo."*
519
-
520
- **O que você recebe:** o engine MediaPipe carregado + um adaptador que emite um CHOP
521
- de pose com 33 landmarks (tx/ty/tz/confidence), então um esqueleto ao vivo, trilhas
522
- de fita ou um visual reativo à câmera. Mantenha a timeline do TD **tocando** (o
523
- plugin captura por um browser embutido que só roda com a timeline ativa) e permita a
524
- câmera se o macOS pedir. Sem webcam agora? Peça uma fonte de pose **sintética** para
525
- montar e pré-visualizar o look offline.
526
-
527
- > *"Renderize meu body tracking como um feed ControlNet limpo estilo OpenPose:
528
- > fundo preto, membros coloridos, confidence gate e um sender NDI chamado
529
- > controlnet_pose."*
530
-
531
-
532
- *`create_pose_controlnet_driver` transforma o mesmo CHOP de 33 landmarks numa saída
533
- TOP OpenPose-COCO com controles de JointRadius, LimbThickness, ConfidenceGate e
534
- Mirror. Deixe interno para ComfyUI / StreamDiffusion local, ou publique por NDI /
535
- Syphon-Spout quando outra máquina precisar do feed de pose.*
536
-
537
- ### Face, mãos & segmentação
538
-
539
- > *"Configure MediaPipe face tracking, centralize os landmarks na ponta do nariz e
540
- > use o CHOP de face para guiar uma máscara brilhante e highlights nos olhos."*
541
-
542
- <video :src="withBase('/examples/face-tracking-landmarks.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
543
-
544
- *`setup_face_tracking` carrega o engine MediaPipe instalado e emite um CHOP com
545
- 468 landmarks (ou 478 com íris), centralizado no nariz, pronto para bind de
546
- parâmetros ou visualização de dados.*
547
-
548
- > *"Rastreie as duas mãos em coordenadas de mundo, detecte gestos de palma aberta /
549
- > pinça e conecte a altura da mão direita ao feedback amount."*
550
-
551
- <video :src="withBase('/examples/hand-tracking-gestures.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
552
-
553
- *`setup_hand_tracking` reutiliza o mesmo engine MediaPipe e emite
554
- `max_hands × 21` samples com canais tx / ty / tz / confidence / handedness. Use
555
- `coordinate_space:'world'` quando a profundidade do gesto importar.*
556
-
557
- > *"Segmente o performer da webcam, aplique feather de 4 px na máscara, publique uma
558
- > alpha matte limpa e um TOP person RGBA pré-keyado para composição."*
559
-
560
- <video :src="withBase('/examples/segmentation-alpha-matte.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
561
-
562
- *`setup_segmentation` ativa o caminho de selfie-segmentation do MediaPipe e publica
563
- um Null TOP de máscara mais uma saída opcional `person_rgba`, então mattes de corpo
564
- podem alimentar keyers, silhuetas, partículas ou troca de fundo.*
565
-
566
- > *"Olha o movimento da minha câmera e empurra 20.000 partículas brilhantes com ele
567
- > — deixa rastros por onde eu me mexo."*
568
-
569
- <video :src="withBase('/examples/optical-flow-particles-trail.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
570
-
571
- *Um campo vetorial de optical-flow em CPU (blur / mono / cache / composite-subtract /
572
- feedback) emite um TOP de fluxo RG-packed, que é conectado direto num campo de
573
- partículas na GPU como displacement. O resultado pinta rastros de movimento visíveis
574
- seguindo o corpo em tempo real, sem CUDA, sem hardware extra.*
575
-
576
- > *"Rastreia os pontos do meu rosto e costura uma máscara wireframe brilhante sobre
577
- > as feições, com a webcam escurecida embaixo."*
578
-
579
-
580
- *Adaptador MediaPipe ENGINE one-shot publica um CHOP de 468 landmarks (ou 478 com
581
- íris). A receita instancia pontos / linhas em cada landmark, compõe sobre uma câmera
582
- escurecida por `levelTOP` e expõe controles de Tint e Dim.*
583
-
584
- > *"Usa minha mão na câmera como um pad XY — pinça pra confirmar — e mapeia pro
585
- > Decay e Hue do visual atual."*
586
-
587
-
588
- *CHOP de 21 landmarks da mão (coordenadas de mundo) alimenta um XY pad cujo X/Y vem
589
- da ponta do indicador; a distância polegar↔indicador habilita um evento de
590
- "confirm" que trava os valores XY atuais nos parâmetros-alvo. Vira um controlador
591
- que você veste na mão.*
592
-
593
- > *"Me recorta do meu quarto com segmentação selfie e me coloca dentro de uma
594
- > nebulosa raymarched lenta, como se eu tivesse entrado num portal."*
595
-
596
-
597
- *A selfie-segmentation do MediaPipe publica uma máscara alpha limpa mais um TOP
598
- RGBA `person_rgba` pré-keyado. Composto sobre um fundo raymarched, o artista parece
599
- estar dentro da cena gerada, com bordas de matte suaves em tempo real.*
600
-
601
- ## Partículas & 3D
602
-
603
- > *"Construa um campo denso de blocos 3D instanciados que respira com uma onda de
604
- > ruído e deixa rastro neon de profundidade enquanto a câmera orbita."*
605
-
606
- <video :src="withBase('/examples/scene-3d.mp4')" autoplay loop muted playsinline style="width:100%;max-width:560px;border-radius:8px;display:block"></video>
607
-
608
- *Uma cena de geometria instanciada mais densa, com profundidade, variação de cor e
609
- movimento vivo, boa como base para áudio, câmera ou modulação de timeline.*
610
-
611
- **O que você recebe:** um sistema de partículas ou geometria com botões de *Arrasto
612
- / Turbulência / Gravidade / Vida* para moldar o movimento.
613
-
614
- > *"Mostre uma esfera metálica polida numa mesa giratória com iluminação de estúdio
615
- > realista e reflexos suaves."*
616
-
617
- <video :src="withBase('/examples/pbr-product-spin.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
618
-
619
- *Uma cena 3D baseada em física (material PBR + iluminação de ambiente + Render TOP)
620
- com controles de rugosidade/metalicidade e um botão de giro — um render de estúdio
621
- convincente de uma primitiva, não um cubo chapado padrão do TD.*
622
-
623
- > *"Faça uma nuvem de pontos de uma esfera flutuando devagar, pontinhos brilhantes
624
- > que cintilam, no preto profundo."*
625
-
626
- <video :src="withBase('/examples/point-cloud-drift.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
627
-
628
- *Um render de nuvem de pontos de uma superfície amostrada (esfera/grade/modelo) como
629
- milhares de pontos na GPU com controles de tamanho/jitter e deriva — um brilho
630
- volumétrico parecido com uma constelação.*
631
-
632
- > *"Empurre a imagem da minha webcam para um relevo 3D, onde as áreas claras saltam
633
- > em direção à câmera, iluminadas de lado."*
634
-
635
- <video :src="withBase('/examples/depth-displacement-relief.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
636
-
637
- *Um plano deslocado em geometria 2.5D real por um mapa de profundidade/luminância via
638
- um estágio de vértice GLSL MAT, com controle de Quantidade de profundidade e
639
- iluminação — sua imagem vira um terreno esculpido e iluminado de lado.*
640
-
641
- > *"Renderize uma cena 3D com sombras de oclusão de ambiente e use a profundidade
642
- > dela para empurrar outra imagem em relevo — e eu não tenho câmera de profundidade."*
643
-
644
- <video :src="withBase('/examples/multipass-depth-no-camera.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
645
-
646
- *Um render 3D multi-passe (Render + passe de SSAO) que também emite uma saída de
647
- **profundidade sintética**, que então alimenta o depth-displacement/silhueta — 3D com
648
- sombras de contato mais um mapa de profundidade fabricado por software.*
649
-
650
- > *"Adicione passes cinematográficos de pós 3D a esta cena: sombras SSAO de contato,
651
- > um pouco de SSR, profundidade de campo rasa e motion blur nos movimentos rápidos."*
652
-
653
- <video :src="withBase('/examples/post-passes-3d-cinematic.mp4')" autoplay loop muted playsinline style="width:100%;max-width:560px;border-radius:8px;display:block"></video>
654
-
655
- *`post_passes_3d` é a cadeia dedicada para acabamento 3D com depth/normal/velocity;
656
- `apply_post_processing` redireciona pedidos de SSAO / SSR / DOF / motion-blur para
657
- ela em vez de fingir que esses passes funcionam num TOP chapado.*
658
-
659
- > *"Monte um rig de geometria estilo POP com torus, duas subdivisões, noise
660
- > displacement animado e controles ao vivo de RotateY / NoiseAmount, pronto para
661
- > renderizar."*
662
-
663
- <video :src="withBase('/examples/pop-geometry-noise-rig.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
664
-
665
- *`create_pop_geometry` envolve uma cadeia primitiva → transform → subdivide opcional
666
- → noise → material SOP num rig completo de render. Use quando você quer um objeto
667
- 3D editável, não apenas um shader fingindo ser geometria.*
668
-
669
- > *"Monte uma tempestade de partículas POP onde 40.000 pontos nascem de uma
670
- > nuvem-semente, atravessam um campo de força por textura e deixam um rastro
671
- > brilhante de feedback."*
672
-
673
-
674
- *`create_pop_particle_system` monta o instrumento POP renderizado: point-generator
675
- de semente, Particle POP, Feedback POP, força por lookup-texture, visualização de
676
- campo opcional e Render TOP de saída. EmissionRate, Lifetime e FeedbackGain ficam
677
- expostos para tocar a tempestade em vez de congelar o resultado.*
678
-
679
- > *"Faça crescer um organismo POP tipo coral: acreção densa para fora, movimento
680
- > guiado por ruído, decaimento lento e controles de growth rate, threshold e
681
- > feedback."*
682
-
683
-
684
- *`create_pop_growth` é o preset orgânico em POP: modos dendritic, coral e lichen
685
- com controles de GrowthRate, Decay, Threshold e FeedbackGain. Use quando o look
686
- deve parecer acreção, fungo, coral ou fibra ramificada em vez de partículas comuns.*
687
-
688
- > *"Faça uma nuvem de pontos plexus girando devagar: 1.000 pontos, conecte só
689
- > vizinhos próximos, degrade linhas pela distância e deixe pontinhos por cima."*
690
-
691
-
692
- *`create_pop_lines_pointcloud` roda um Neighbor POP sobre uma nuvem de pontos
693
- gerada ou externa, emite linhas deduplicadas via Script SOP e renderiza a teia com
694
- controles de MaxDistance, MaxNeighbors, MaxLines, Spin e PointSize. É o look plexus
695
- sem escrever o loop de vizinhança à mão.*
696
-
697
- > *"Use minha máscara de segmentação como campo de profundidade e espalhe 25.000
698
- > pontos ao redor do meu corpo, coloridos por profundidade perto/longe e girando
699
- > devagar em 3D."*
700
-
701
- <video :src="withBase('/examples/depth-pop-field-performer.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
702
-
703
- *`create_depth_pop_field` aceita um TOP de profundidade/máscara existente ou sobe
704
- uma cadeia de segmentação, então usa lookup-texture POPs, jitter e proxy de
705
- displacement para transformar a máscara num campo espacial de pontos renderizado.
706
- DepthScale, PointSize e Spin fazem a câmera plana se comportar como volume de palco.*
707
-
708
- > *"Carregue este scan .splat como cena Gaussian Splat, conecte na minha câmera de
709
- > órbita, gere 1080p e exponha o caminho do asset e a referência da câmera no
710
- > wrapper."*
711
-
712
-
713
- *`create_gaussian_splat_scene` envolve o TDGS.tox quando ele está instalado,
714
- valida assets `.ply` / `.splat`, conecta uma câmera opcional e promove controles
715
- de SplatAssetPath, CameraRef e OutputRes. Se o TDGS estiver ausente, falha rápido
716
- com instrução de instalação em vez de travar o TouchDesigner.*
717
-
718
- > *"Estime profundidade a partir deste feed 2D de câmera, mantenha o depth map
719
- > cozinhando e use isso como fonte para um visual de relevo/displacement."*
720
-
721
-
722
- *`create_depth_from_2d` carrega o TDDepthAnything quando disponível, conecta um TOP
723
- de origem, configura modelo/resolução e devolve um Null TOP `depth_out` vivo com
724
- frame cooker. A saída pode alimentar `create_depth_pop_field`, displacement,
725
- silhuetas ou qualquer cadeia depth-aware sem câmera de profundidade.*
726
-
727
- > *"Crie um volume de nebulosa lento: 24 fatias empilhadas, paleta roxo-magenta,
728
- > alta densidade, pouca turbulência e controles ao vivo de densidade e color map."*
729
-
730
- <video :src="withBase('/examples/volumetric-field-nebula.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
731
-
732
- *`create_volumetric_field` simula volume com noise 3D animado, displacement
733
- opcional, pilha de fatias em Cache TOP e acumulação GLSL Beer-Lambert. Density,
734
- Turbulence e ColorMap transformam isso em fumaça, nebulosa, brasa, gelo, tóxico ou
735
- mono.*
736
-
737
- > *"Transforme este feed de câmera numa cidade voxel isométrica: brilho controla a
738
- > altura das torres, a cor da fonte pinta cada bloco e eu ganho controles de
739
- > HeightScale e RotateY."*
740
-
741
-
742
- *`create_voxel_stack` amostra um TOP em canais de instância, mescla barramentos de
743
- posição, altura, escala e cor, e instancia box geometry por uma câmera isométrica
744
- ou de perspectiva. É footage plano virando campo performável de cubos, não um
745
- filtro 2D pixelado.*
746
-
747
- > *"Transforme este retrato num estudo de nuvem de pontos pontilhada: pontos
748
- > quentes sobre preto, luminância controlando densidade, jitter aleatório sutil e
749
- > uma órbita lenta de câmera como uma impressão se dissolvendo no espaço."*
750
-
751
- *`create_stipple_pointcloud` converte luminância de TOP em densidade POP e renderiza
752
- milhares de pontos pequenos com controles de DotSize, JitterAmount e CameraRotate.
753
- Fica entre gravura e partículas 3D: mais tátil que halftone, mais leve que uma
754
- simulação completa de fluido ou partículas.*
755
-
756
- ## Vídeo & câmera
757
-
758
- > *"Passe minha webcam por detecção de bordas, um RGB split e um loop de feedback
759
- > para um visual glitchado."*
760
-
761
- <video :src="withBase('/examples/video-glitch.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
762
-
763
- *O look de glitch / VHS — scanlines, RGB split e datamosh (mostrado sobre uma fonte
764
- sintética em vez de uma webcam ao vivo).*
765
-
766
- > *"Pegue minha webcam e deixe com cara de fita VHS velha e degradada."*
767
-
768
- > *"Monte dois decks de vídeo com um crossfader grande para eu misturar dois clipes
769
- > como um DJ."*
770
-
771
- <video :src="withBase('/examples/dj-decks-crossfade.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
772
-
773
- *Decks A/B mesclados por um crossfader mestre (Cross TOP) com ganho por deck; cada
774
- deck puxa uma fonte TOP ou uma fonte de teste embutida — o equivalente visual de uma
775
- mesa de DJ.*
776
-
777
- > *"Monte um mixer VJ de quatro decks: câmera, loops, camada generativa e vinheta de
778
- > logo, cada um com ganho e FX-send, mais um seletor de hard-cut para transições ao vivo."*
779
-
780
- <video :src="withBase('/examples/nchannel-decks-fx-send.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
781
-
782
- *`create_decks` agora tem modo N-channel: 2-8 decks, ganho por deck, FX send por
783
- deck, mix contínuo de programa e um barramento de transition-cut. Use o prompt A/B
784
- antigo para crossfader simples; use `decks[]` quando o rig já estiver parecendo um
785
- mixer VJ de verdade.*
786
-
787
- > *"Coloque waveform, RGB parade e vectorscope ao lado deste feed de câmera para eu
788
- > ajustar a grade antes da abertura do show."*
789
-
790
- <video :src="withBase('/examples/video-scopes-monitor.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
791
-
792
- *`create_video_scopes` monta uma superfície de monitoramento estilo broadcast para
793
- uma fonte TOP: painéis de waveform, parade e vectorscope que mostram problemas de
794
- cor / exposição antes de eles virarem problema no projetor.*
795
-
796
- > *"Adicione um histogram scope de luminância a este feed de câmera com 128 bins,
797
- > escala log e traço verde-fósforo para eu enxergar pretos esmagados antes do
798
- > projetor."*
799
-
800
- <video :src="withBase('/examples/histogram-scope-rgb.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
801
-
802
- *`create_histogram_scope` transforma um TOP num painel de histograma com preview,
803
- usando uma passada GLSL de bins, normalização TOP-to-CHOP e traço renderizado. Pode
804
- rodar a partir de padrão de teste, arquivo, TOP existente ou device ao vivo.*
805
-
806
- > *"Extrai as cores dominantes do meu clipe principal e usa elas pra seedar um
807
- > color grade combinando pro resto do show."*
808
-
809
- <video :src="withBase('/examples/palette-extract-and-grade.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
810
-
811
- *`extract_palette` amostra o preview do TOP via `get_preview` e roda k-means
812
- determinístico nos pixels RGB decodificados, devolvendo swatches hex ponderados.
813
- Esses swatches alimentam diretamente alvos de lift / gamma / gain em
814
- `create_color_grade`.*
815
-
816
- > *"Transforme a câmera num espelho de IA com prompt de água etérea, mostre a
817
- > câmera crua no painel de controle e envie a saída gerada por Syphon/Spout quando
818
- > estiver pronta."*
819
-
820
-
821
- *`create_ai_mirror` envolve entrada de câmera, sintética ou TOP existente pelo
822
- StreamDiffusionTD com controles de Prompt, Negative Prompt, Strength e CFG, mais
823
- preview opcional da câmera. A saída pode ficar interna ou ir para Syphon-Spout /
824
- NDI, e a falta do TOX de StreamDiffusion vira aviso amigável com o esqueleto ainda
825
- montado.*
826
-
827
- > *"Monte meu rack de ingest ao vivo: uma fonte segura de screen-grab para ensaio,
828
- > um media bin de loops vindo de uma pasta e um chroma keyer que possa alternar
829
- > entre câmera e cartão de teste antes do show."*
830
-
831
- *`create_live_source`, `create_media_bin` e `create_keyer` são o trio prático de
832
- entrada de vídeo: um normaliza feeds ao vivo, outro varre uma pasta em clipes
833
- alternáveis e o terceiro compõe footage keyado sobre um fundo. Câmera, NDI,
834
- Syphon/Spout e streams continuam gated por plataforma/permissão, então o prompt deve
835
- pedir warnings e caminhos `out1` estáveis antes de ligar no mix do show.*
836
-
837
- ## Texto & títulos
838
-
839
- > *"Monte um hit de lyric com alpha seguro: pisque a palavra 'DROP' enorme no beat
840
- > e faça ela sumir limpa entre os golpes por cima do visual rodando."*
841
-
842
- <video :src="withBase('/examples/kinetic-lyrics-flash.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
843
-
844
- *`create_kinetic_text` em `mode: "flash"` cria Text TOP, LFO, gate de alpha e
845
- composite opcional por cima de um TOP de entrada. O detalhe importante para show: o
846
- texto fica transparente entre os hits em vez de piscar preto.*
847
-
848
- > *"Faça um lower third pulsando para a vocalista: nome da artista, label do palco e
849
- > um indicador pequeno de beat, composto por cima do program feed."*
850
-
851
- <video :src="withBase('/examples/kinetic-lower-third-pulse.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
852
-
853
- *Use `create_text_overlay` para uma camada title-safe e troque para
854
- `create_kinetic_text` em `mode: "pulse"` quando o lower third deve respirar com a
855
- música em vez de ficar chapado.*
856
-
857
- > *"Crie um ticker de setlist no rodapé da saída: seção atual, próximo cue, lado do
858
- > palco e nota da artista, em loop infinito."*
859
-
860
- <video :src="withBase('/examples/text-crawl-setlist-ticker.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
861
-
862
- *`create_text_crawl` com `mode: "crawl_horizontal"` é a camada de ticker para texto
863
- contínuo, contagens, notas de stage manager e mensagens de status de instalação.*
864
-
865
- > *"Role os créditos finais para cima sobre a cena ambiente final, com fade lento no
866
- > topo e na base do quadro."*
867
-
868
- <video :src="withBase('/examples/text-roll-credits-stage.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
869
-
870
- *A mesma ferramenta `create_text_crawl` em `mode: "roll_vertical"` resolve créditos
871
- multi-linha, statements de artista e texto de parede de galeria. Use `\n` para
872
- manter cada linha editável.*
873
-
874
- > *"Revele um manifesto curto caractere por caractere antes da instalação abrir:
875
- > 'NO PREVIEW / NO PANIC / BUILD THE LIGHT / THEN PERFORM IT'."*
876
-
877
- <video :src="withBase('/examples/typewriter-manifesto-reveal.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
878
-
879
- *`create_text_crawl` também expõe `mode: "typewriter"` para reveals caractere a
880
- caractere. Ele está marcado como experimental na documentação da ferramenta, então
881
- use para ensaio ou docs gerados e valide a expressão do Text TOP no build de
882
- TouchDesigner alvo antes do show.*
883
-
884
- > *"Faça o nome do meu festival em letras 3D extrudadas grossas de cromo, girando
885
- > devagar com um holofote."*
886
-
887
- <video :src="withBase('/examples/3d-extruded-title.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
888
-
889
- *`create_text_3d` monta Text SOP -> Extrude SOP -> material -> Camera/Light/Render
890
- como uma cena de título autocontida, com controles ao vivo de Spin e Depth.*
891
-
892
- > *"Transforme a palavra 'NOISE' em geometria SOP, adicione point noise e renderize
893
- > como uma escultura tipográfica deformada em vez de um card chapado."*
894
-
895
- <video :src="withBase('/examples/pop-text-noise-sculpture.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
896
-
897
- *`create_pop_geometry` com `primitive: "text"` e `text_string` coloca o texto dentro
898
- do pipeline de geometria. Adicione `noise_amount` quando o título deve parecer um
899
- objeto vivo, não uma legenda.*
900
-
901
- > *"Gere um padrão de alinhamento de projetor com label OUTPUT 02 / LEFT para a
902
- > equipe identificar a superfície física de longe."*
903
-
904
- <video :src="withBase('/examples/projector-label-test-pattern.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
905
-
906
- *`create_test_pattern` consegue desenhar grids de calibração, crosshairs, números
907
- de saída e labels. Ele entra em Texto & títulos porque esses labels são a tipografia
908
- que mantém a instalação compreensível durante a montagem.*
909
-
910
- > *"Mapeie meus pads MIDI para palavras: KICK, BASS, SNARE, VOX, CLAP e PAD devem
911
- > piscar quando o canal de nota correspondente disparar."*
912
-
913
- <video :src="withBase('/examples/midi-note-type-hits.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
914
-
915
- *Combine `create_midi_note_reactive` com `create_kinetic_text` quando a tipografia
916
- deve responder a eventos de nota individuais em vez de um nível global de áudio.*
917
-
918
- > *"Coloque o título 'DEEP FIELD' num caminho circular e deixe as letras orbitarem
919
- > ao redor do centro antes da cena principal começar."*
920
-
921
- <video :src="withBase('/examples/path-title-orbit.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
922
-
923
- *Aplique a receita `kinetic_text_path_follow` quando o título precisa seguir um
924
- caminho: bugs orbitais, logos circulares de show, labels se movendo em torno de
925
- esculturas e loops de wayfinding.*
926
-
927
- **O que você recebe:** um kit performável de tipografia: hits de lyric com alpha,
928
- lower thirds pulsando, ticker crawls, créditos rolando, reveals typewriter, texto 3D
929
- extrudado, geometria tipográfica com noise, labels de projetor, palavras disparadas
930
- por MIDI e títulos seguindo paths.
931
-
932
- ## Performance ao vivo & controle
933
-
934
- > *"Adicione botões de feedback, zoom, giro e blur para eu tocar isto ao vivo."*
935
-
936
- > *"Anime o botão de giro com um LFO lento."*
937
-
938
- > *"Crie um relógio de tempo a 128 BPM e sincronize o movimento à batida."*
939
-
940
- > *"Faça bridge do Ableton Live para o TouchDesigner: clips, tracks, transporte e
941
- > macros de device como canais CHOP nomeados, com fallback OSC se o TDAbleton não
942
- > estiver instalado."*
943
-
944
-
945
- *`setup_tdableton` procura primeiro o componente Palette e depois cai para um OSC In
946
- simples, então o mesmo patch de show consegue ensaiar mesmo sem setup perfeito de
947
- estúdio.*
948
-
949
- > *"Monte um holograma futurista de mão: um cubo ciano transparente com scanlines
950
- > violetas flutuando acima da minha palma aberta. Comece com o preview sintético de
951
- > duas mãos, exponha controles de Size, FloatHeight, Glow e PinchScale, e faça uma
952
- > pinça da outra mão aumentar o cubo e intensificar o brilho."*
953
-
954
- *`create_hand_hologram` monta o visual completo e aninha `create_hand_gesture_bus`
955
- dentro dele. O bus estabiliza a âncora da palma, mantém a palma ativa travada
956
- quando a mão de controle entra no frame, e publica `pinch_power`, `light_gain` e
957
- `audio_level` para o mesmo tracking depois guiar lasers, partículas ou áudio.*
958
-
959
- > *"Monte um controlador de gestos pelo celular na porta 9982: X/Y multitouch para
960
- > feedback e hue, inclinação para roll da câmera e shake como gatilho de flash
961
- > seguro para panic. Me dê a URL e os nomes dos canais CHOP antes de eu fazer
962
- > bind."*
963
-
964
- *`create_phone_gesture` serve uma página local do próprio TouchDesigner e publica
965
- canais de touch, tilt, gyro e shake por Script CHOP. Sensores de movimento no iOS
966
- precisam de toque explícito de permissão no navegador e muitas vezes HTTPS, então
967
- isso entra primeiro como superfície de ensaio; só depois vira controle de show,
968
- quando as faixas dos canais já foram observadas.*
969
-
970
- > *"Transforme minhas mãos na webcam em um controlador de Ableton Auto Filter com
971
- > quatro canais via TDAbleton, sem AbletonMCP. Use rastreamento de mãos do
972
- > MediaPipe, monte um overlay de esqueleto com estrelinhas nas juntas, publique
973
- > `mapper_send` para que `map1` seja a pinça esquerda, `map2` a pinça direita,
974
- > `map3` a rotação do punho esquerdo e `map4` a rotação do punho direito, então
975
- > diagnostique o roteamento do `TDA_Mapper` antes de eu mapear os quatro slots no
976
- > Ableton."*
977
-
978
- *`create_hand_ableton_mapper` monta o lado TouchDesigner do controlador performático
979
- e `diagnose_tdableton_mapper` confere caminho do mapper, CHOP de entrada, `Reorder`,
980
- bypasses e ranges. O caminho de runtime é TouchDesigner -> `TDA_Mapper` do
981
- TDAbleton -> parâmetros mapeados de Auto Filter ou macros de rack no Ableton;
982
- AbletonMCP não é necessário.*
983
-
984
- > *"Monte um rig de ensaio de harpa de parede com Kinect em modo sintético:
985
- > 16 zonas musicais pela parede, 128 linhas laser sutis, flashes âmbar de pluck,
986
- > pontos de mão em debug e controles expostos de calibração, decay de áudio e
987
- > reverb para eu testar a peça antes de conectar o Kinect."*
988
-
989
- *`create_kinect_wall_harp` monta o instrumento de parede como um COMP no TD:
990
- linhas projetadas da harpa, saídas de debug de depth / mask / mãos, barramentos CHOP de
991
- mão e pluck, além de uma cadeia interna de áudio sine/reverb. Use
992
- `source:"synthetic"` ou mantenha `fallback_to_synthetic:true` para ensaio; só
993
- adicione vídeo no cookbook depois de capturar o `output_top` real do TouchDesigner.*
994
-
995
- > *"Monte uma camada de controle performável para este look: quatro moduladores
996
- > travados no tempo chamados breathe, shimmer, wobble e random_hold, um XY pad para
997
- > blur/hue e um look bank com slots ambient, chorus e blackout-safe mais um botão de
998
- > morph A/B."*
999
-
1000
- *`create_modulators`, `create_xy_pad` e `create_look_bank` transformam um patch
1001
- gerado em instrumento: modulação CHOP nomeada, controle direto em dois eixos e looks
1002
- salvos que podem saltar, quantizar ou morfar. Use quando o visual já funciona e o
1003
- próximo problema é repetir os controles sob pressão de show.*
1004
-
1005
- > *"Monte dois cues — 'intro' e 'drop' — entre os quais eu possa transicionar."*
1006
-
1007
- > *"Deixe eu controlar os botões principais pelo meu celular."*
1008
-
1009
- > *"Mapeie o primeiro fader do meu controlador MIDI para o botão de
1010
- > Sensibilidade."*
1011
-
1012
- > *"Indo ao vivo agora — ligue o perform mode para nada engasgar no meio do show."*
1013
-
1014
-
1015
- *`set_perform_mode` agora prefere o endpoint hardened `POST /api/perform` e devolve
1016
- um snapshot tipado dizendo se o store da raiz, o perform mode da UI e o perform
1017
- mode do projeto foram realmente ligados. Ainda faz fallback em bridges antigas, mas
1018
- o caminho de show vira uma chamada REST real.*
1019
-
1020
- > *"Monte uma grade de botões estilo Ableton para eu disparar meus looks salvos ao
1021
- > vivo, um toque cada."*
1022
-
1023
- *Uma grade de botões que disparam cues (reaproveitando o motor de recall/morph do
1024
- manage_cue) — toque numa célula para pular ou morfar para uma cena salva, abrível no
1025
- modo Perform como uma superfície de toque.*
1026
-
1027
- > *"Faça uma grade de 16 passos que dispara um strobe nas batidas fortes e um efeito
1028
- > nas fracas, travada no meu tempo."*
1029
-
1030
- *Uma grade de passos por compasso/batida que dispara um parâmetro ou cue por passo
1031
- ativo — a contraparte determinística e programável do auto-VJ; ligue e desligue
1032
- passos para compor um padrão repetido travado no relógio.*
1033
-
1034
- > *"Monte um sequenciador probabilístico onde calm quase sempre deriva para shimmer,
1035
- > shimmer às vezes salta para um estouro de glitch, e blackout só acontece em drops
1036
- > raros."*
1037
-
1038
- <video :src="withBase('/examples/prob-sequencer-markov.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1039
-
1040
- *Um sequenciador de passos Markov para estados de show: a cada batida ele amostra a
1041
- tabela de transições ponderadas, emite `state` e `trigger`, e guia cues ou parâmetros
1042
- sem repetir um loop fixo.*
1043
-
1044
- > *"Monte uma timeline de três cenas para um set a 128 BPM: intro é um túnel de
1045
- > feedback, drop é uma bola de espinhos reativa ao áudio, breakdown é uma correção
1046
- > de cor cinematográfica. Deixe scrubbable e mantenha os ids dos slots do setlist."*
1047
-
1048
- <video :src="withBase('/examples/scene-timeline-arranger.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1049
-
1050
- *Uma timeline mestra de show: cenas viram blocos sobre um playhead de Timer CHOP,
1051
- recalls de cue caem nas fronteiras das cenas e ferramentas seguintes conseguem
1052
- manter as referências de slot do setlist em cada cena.*
1053
-
1054
- > *"Escaneie esta pasta de loops e monte um auto-montage quantizado na batida, que
1055
- > embaralha clipes a cada compasso com meio segundo de crossfade."*
1056
-
1057
- <video :src="withBase('/examples/auto-montage-shuffle.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1058
-
1059
- *Um seletor automático de media-bin: clipes/imagens alimentam um Switch TOP, um
1060
- relógio de compasso/batida/intervalo avança o índice, e modos shuffle/random/weighted
1061
- evitam deixar o mesmo clipe tempo demais.*
1062
-
1063
- > *"Crie um sequenciador Euclidiano com 5 batidas em 16 passos e conecte os hits a
1064
- > um strobe, um estouro de glitch e a quantidade de preset-morph."*
1065
-
1066
- <video :src="withBase('/examples/euclidean-strobe-pattern.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1067
-
1068
- *Ritmo estilo Bjorklund para visuais — pulsos esparsos e musicais que disparam cues,
1069
- parâmetros ou scripts em vez de um metrônomo simples.*
1070
-
1071
- > *"Misture quatro looks salvos com um único botão Morph, com pesos para eu ficar
1072
- > no meio entre neon ciano e âmbar quente durante o breakdown."*
1073
-
1074
- <video :src="withBase('/examples/preset-morph-blend.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1075
-
1076
- *Um blend real entre N presets: em vez de saltar de um cue para outro, estados de
1077
- parâmetros salvos viram pesos numa tabela de morph que você pode automatizar, mapear
1078
- em MIDI ou guiar por uma timeline de cenas.*
1079
-
1080
- > *"Grave minha varredura de cutoff do filtro por quatro compassos, então faça loop
1081
- > como uma automation lane para eu tirar as mãos durante o drop."*
1082
-
1083
- <video :src="withBase('/examples/automation-lane-loop.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1084
-
1085
- *`create_automation_lane` amostra um parâmetro-alvo num buffer em fase com o compasso
1086
- e depois toca isso de volta por um Lookup CHOP. Chame a mesma lane em modo `record`
1087
- ou `loop` para armar, capturar e tocar movimentos reutilizáveis de botão.*
1088
-
1089
- > *"Grave meu CHOP do controlador manual por oito compassos, faça loop do melhor
1090
- > take e toque de volta como fonte de modulação reutilizável."*
1091
-
1092
- <video :src="withBase('/examples/chop-recorder-replay.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1093
-
1094
- *`create_chop_recorder` transforma qualquer fluxo CHOP (OSC, MIDI, feature de áudio,
1095
- pose ou controle customizado) numa superfície de captura / playback / loop, então um
1096
- gesto ao vivo vira parte do rig em vez de sumir depois do ensaio.*
1097
-
1098
- > *"No compasso 32 dispare o cue do drop, no compasso 64 inicie o auto-montage e no
1099
- > fim da faixa congele a saída até eu limpar."*
1100
-
1101
- **O que você recebe:** uma primitiva de scheduler baseada em timers/segmentos
1102
- nomeados. Use para callbacks temporizados pequenos, ou coloque `create_scene_timeline`
1103
- por cima quando quiser um arranjador de música scrubbable.
1104
-
1105
- > *"Monte um dashboard de celular com botões de cue para intro/drop/break, dois
1106
- > faders mestres, uma faixa VU ao vivo e botões grandes de Blackout / Freeze para
1107
- > recuperação de emergência."*
1108
-
1109
- <video :src="withBase('/examples/live-dashboard-panic.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1110
-
1111
- *Um cockpit único de performance servido pelo TouchDesigner: disparo de cues,
1112
- faders, leitura ao vivo e controles de panic numa página para celular/laptop. Use
1113
- apenas numa rede confiável.*
1114
-
1115
- > *"Atualize o stage dashboard para layout v2: VU estéreo, BPM vindo de
1116
- > `/project1/tempo_null`, marcadores de timeline de cue vindos do meu setlist e
1117
- > uma barra PANIC fixa com toque de confirmação."*
1118
-
1119
- <video :src="withBase('/examples/stage-dashboard-v2.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1120
-
1121
- *`create_stage_dashboard` com `layout:"v2"` mantém compatibilidade com o dashboard
1122
- original e adiciona leitura de front-of-house: VU estéreo, BPM, overlay de FPS /
1123
- cook, faixa de timeline de cues e uma superfície de panic em duas etapas.*
1124
-
1125
- > *"Rode um dry-run do AI show director: permita um cue de intro de banda
1126
- > pré-aprovado, coloque um pedido de fog de três segundos na fila de aprovação do
1127
- > operador, e bloqueie um pedido de blackout."*
1128
-
1129
-
1130
- *`tdmcp-agent show-director` é uma superfície de política, não um gatilho perigoso
1131
- de hardware. Ele valida intents estruturadas de show, retorna decisões allow /
1132
- approval / block, mantém fila de aprovação e audit log, e marca todo plano de ação
1133
- como dry-run-only até um caminho humano/de operador resolver aquilo.*
1134
-
1135
- > *"Antes da banda entrar, arme a cena Soundcraft pré-declarada `band_a_intro`
1136
- > pelo AI Show Director. Coloque na fila de aprovação, amarre o hash do catálogo e
1137
- > mostre o plano dry-run sem contatar o mixer."*
1138
-
1139
- *`arm_mixer_scene` é separado de `arm_effect`: só um `scene_id` pré-declarado no
1140
- catálogo entra na fila de aprovação, a aprovação revalida o hash do catálogo atual
1141
- e o adapter dry-run devolve `hardware_changed:false`. A saída útil é o plano
1142
- revisado pelo operador e o estado de auditoria, não uma ilustração decorativa de
1143
- mixer.*
1144
-
1145
- > *"Trave o show em timecode OSC de entrada, siga a timeline quadro a quadro e pule
1146
- > para cues nomeados se o rótulo de timecode disser chorus ou blackout."*
1147
-
1148
-
1149
- *`sync_timecode` conecta MTC / LTC / OSC timecode a um CHOP normalizado e pode guiar
1150
- a timeline do TD. Combine com `control_timeline_transport` para comandos explícitos
1151
- de play, pause, seek, rate e cue.*
1152
-
1153
- > *"Agende a instalação do lobby: iniciar a cena ocean todo dia útil às 09:00,
1154
- > trocar para o set dusk às 18:00 e rodar um dry-run do agendamento primeiro."*
1155
-
1156
-
1157
- *`tdmcp-agent schedule` é o companheiro cron-lite para instalações sem operador. Ele
1158
- usa agendamento por relógio de parede com timezone, pode fazer dry-run e pode disparar
1159
- comandos, cues ou setlists.*
1160
-
1161
- > *"Grave as próximas chamadas MCP como uma macro chamada soundcheck, então rode de
1162
- > novo na segunda máquina depois que a rede do palco estiver online."*
1163
-
1164
-
1165
- *Use `macro_recorder` para capturar uma macro JSON portátil e `run_macro_script` para
1166
- reproduzi-la depois. O lado CLI também consegue fazer fanout de um comando para
1167
- vários agentes remotos quando várias máquinas TD precisam do mesmo setup.*
1168
-
1169
- > *"Planeja um set de 20 minutos atravessando minhas três cenas em modo dry-run —
1170
- > me mostra o que o diretor de IA vai fazer antes de tocar em qualquer coisa."*
1171
-
1172
-
1173
- *A camada de política do AI Show Director avalia cada chamada de ferramenta de
1174
- show em modo dry-run e devolve a ação planejada + justificativa (qual cena, qual
1175
- transição, quando), então o artista pré-visualiza um set autônomo antes de
1176
- encostar na bridge. Aprove, edite ou rejeite antes do show rodar.*
1177
-
1178
- > *"Me dá um dashboard de FOH com VU estéreo, BPM ao vivo do meu detector de tempo,
1179
- > overlay de FPS, faixa da próxima cue e uma barra PANIC fixa."*
1180
-
1181
- <video :src="withBase('/examples/stage-dashboard-v2.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1182
-
1183
- *`layout:"v2"` adiciona um par VU estéreo, leitura de BPM alimentada por um Null
1184
- CHOP de `detect_tempo`, overlay de FPS / cook-time / frame, faixa de timeline de
1185
- cues vinda de um array de pares de `compose_cue_list` e uma barra PANIC com toque de
1186
- confirmação — sem quebrar o dashboard v1 byte por byte.*
1187
-
1188
- > *"Pula minha timeline pra cue do refrão, coloca rate 1.25 e dá play — pelo
1189
- > caminho REST rápido, não por exec de Python."*
1190
-
1191
-
1192
- *O novo endpoint `POST /api/transport` lida com play / pause / seek / cue / rate
1193
- sem `executePythonScript`. A ferramenta prefere o endpoint via `tryEndpoint` e cai
1194
- para exec apenas em bridges antigas. Latência mais baixa, amigável a bridge
1195
- hardenada.*
1196
-
1197
- > *"Adiciona uma corrente de segurança kill/dimmer na saída master com fade de
1198
- > 2 segundos e um botão Emergency de pânico que eu posso apertar pelo celular."*
1199
-
1200
- <video :src="withBase('/examples/safety-blackout-chain.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1201
-
1202
- *`create_safety_blackout_chain` envolve o TOP de programa com um Level/dim
1203
- controlado por um Null CHOP `safety_dim` (0 = aceso, 1 = preto total), um fade de
1204
- 2 segundos controlado por Speed, e um toggle `Panic` exposto. Faça bind do
1205
- `safety_dim` a um fader do celular com `bind_to_channel`, ou ligue um botão
1206
- "dead-man" físico ao Panic. Funciona offline e é seguro instalar em uma bridge com
1207
- `TDMCP_BRIDGE_ALLOW_EXEC=0`.*
1208
-
1209
- > *"Monta um setlist cronometrado que cicla por três cenas — intro 30s, drop 60s,
1210
- > outro 45s — com crossfades de 2 segundos e um HUD mostrando agora/próximo/restante."*
1211
-
1212
- <video :src="withBase('/examples/setlist-runner-hud.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1213
-
1214
- *`create_setlist_runner` instala um Timer CHOP com um segmento por cena, um bus de
1215
- crossfade e um Text TOP HUD lendo agora/próximo/segundos restantes. O Parameter
1216
- Execute DAT `param_engine` escuta Play/Row/Skip/Prev para você sobrescrever a
1217
- programação ao vivo — pausar numa cena, pular adiante ou voltar sem reescrever o
1218
- timer.*
1219
-
1220
- > *"Envolve minha entrada NDI num watchdog que troca automaticamente pra um MP4
1221
- > pré-renderizado se a câmera cair, com crossfade de 250ms e um toggle de recuperação fixo."*
1222
-
1223
-
1224
- *`create_show_failover` roda um Info CHOP na fonte ao vivo e observa o delta de
1225
- `total_cooks` — quando ele para de subir, o watchdog roteia um Switch TOP pro
1226
- MoviefileIn de backup num crossfade de 250ms. O toggle `sticky_recover` impede o
1227
- ping-pong quando o NDI pisca, então o show não fica estroboscópico numa câmera
1228
- instável.*
1229
-
1230
- > *"Liga minha pose corporal ao visual: quando eu levanto a mão direita o
1231
- > caleidoscópio gira, quando eu abro os braços o bloom dobra de intensidade."*
1232
-
1233
- <video :src="withBase('/examples/pose-reactive-bindings.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1234
-
1235
- *Encadeie `setup_body_tracking` (fonte de pose MediaPipe) em `create_pose_reactive`
1236
- para obter canais CHOP nomeados por articulação e gestos derivados
1237
- (`right_hand_up`, `arms_open`, `lean_left`). Mapeie esses canais para a rotação do
1238
- caleidoscópio e o nível do bloom — a pose vira uma superfície de controle, sem
1239
- MIDI.*
1240
-
1241
- > *"Cria o meu reativo, mas usa o novo gate de transiente pra palmas dispararem
1242
- > um strobe, e dá um duck no bloom em cada bumbo tipo sidechain compressor."*
1243
-
1244
- <video :src="withBase('/examples/audio-reactive-gate-duck.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1245
-
1246
- *`create_audio_reactive` agora aceita `transient_gate:true` (+ `transient_threshold`,
1247
- `transient_hold_ms`) e `sidechain_duck:true` (+ `duck_depth`, `duck_release_ms`)
1248
- para adicionar buses de gate e duck à mesma rede. Os defaults continuam desligados,
1249
- então containers reativos existentes ficam byte-idênticos — opte por dentro só
1250
- quando quiser os buses novos.*
1251
-
1252
- > *"Enfileire meus cues de strobe e logo quando eu apertar o botão, mas só dispare
1253
- > no próximo limite de frase de 16 compassos para o drop cair musicalmente."*
1254
-
1255
-
1256
- *`create_phrase_locked_cue_engine` observa um CHOP de cue pendente, coloca pulsos
1257
- numa fila e trava o disparo contra um Beat CHOP local de frase. O Null CHOP de
1258
- saída emite o trigger quantizado musicalmente, enquanto PhraseLength, Active, Flush
1259
- e QueueDepth dão controle ao operador sobre a fila.*
1260
-
1261
- ## Saída & mapeamento
1262
-
1263
- > *"Mande o visual final para uma janela em tela cheia no meu segundo monitor."*
1264
-
1265
- > *"Envie isto via NDI para eu usar no OBS."*
1266
-
1267
- > *"Faça corner-pin disto num projetor e me deixe arrastar os cantos."*
1268
-
1269
- <video :src="withBase('/examples/projection-mapping.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1270
-
1271
- *Uma fonte distorcida por um corner-pin (keystone) — arraste os quatro cantos para
1272
- alinhar com uma parede, tela ou objeto.*
1273
-
1274
- > *"Grave a saída em um arquivo de vídeo por 30 segundos."*
1275
-
1276
- > *"Inspecione a GPU e os displays conectados, então me diga qual plano de saída é
1277
- > seguro para este rig de projetores."*
1278
-
1279
- > *"Faça bridge deste TOP por shared memory para a máquina Unreal, e receba de volta
1280
- > um fluxo CHOP de controle vindo do processo de luz."*
1281
-
1282
- > *"Monte uma pipeline de fixtures DMX para oito barras RGBW via Art-Net universo 1,
1283
- > com canais de dimmer, cor e strobe expostos."*
1284
-
1285
- *`create_dmx_fixture_pipeline` organiza perfis de fixture, padding de slots DMX e
1286
- um DMX Out CHOP para Art-Net ou sACN. Ele deve mostrar sobreposições, warnings acima
1287
- do canal 512 e nomes exatos dos canais antes de qualquer coisa ir ao vivo; saída de
1288
- fixture é hardware, então o cookbook mantém isso como relatório de
1289
- roteamento/controle verificado, não como preview falso de luz.*
1290
-
1291
- > *"Crie um arquivo inicial de config `TDMCP_*` para este notebook de show, mas deixe
1292
- > segredos comentados e recuse sobrescrever o arquivo existente sem `force`."*
1293
-
1294
-
1295
- *`tdmcp-agent config init` imprime ou escreve toda a superfície `.env` que o servidor lê,
1296
- com segredos de bridge/LLM comentados para preenchimento manual. É pequeno, mas torna
1297
- o setup de máquinas de turnê repetível em vez de depender de memória oral.*
1298
-
1299
- **O que você recebe:** ferramentas de preparação de palco para displays, capacidade
1300
- de GPU, DMX / Art-Net, IPC por shared memory e fanout multi-agente. Nesses casos de
1301
- infraestrutura, a saída útil costuma ser um relatório de roteamento verificado em vez
1302
- de um preview bonito.
1303
-
1304
- > *"Põe um scope de histograma RGB+luma estilo broadcast no canto da minha saída
1305
- > pra eu ver se estou esmagando os pretos."*
1306
-
1307
-
1308
- *Um GLSL TOP agrupa luminância e RGB por canal, normaliza por CHOPs e renderiza as
1309
- barras via Script SOP + Render TOP num Null TOP pronto pra overlay. Visual de
1310
- waveform-monitor de verdade, atualizando ao vivo com o seu programa.*
1311
-
1312
- > *"Monta um ensaio com dois projetores pra AI-Controlled Party — uma parede pro
1313
- > visual principal, outra pras letras — e sincroniza ambos na mesma cue list."*
1314
-
1315
- <video :src="withBase('/examples/ai-party-two-projector-rehearsal.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1316
-
1317
- *Dois `outTOP`s conectados a dois displays físicos via `setup_output`,
1318
- compartilhando um único clock de `compose_cue_list` pra que o overlay de letra vire
1319
- em sincronia com as mudanças de cena. Espelha o harness de ensaio que a
1320
- AI-Controlled Party usa para ensaios offline.*
1321
-
1322
- > *"Monte um rig de projection mapping interativo para webcam e projetor:
1323
- > movimento acorda partículas ciano, cards magenta flutuam pela parede, e eu
1324
- > consigo alternar entre final, câmera, movimento, blobs e calibração."*
1325
-
1326
- <video :src="withBase('/examples/interactive-projection-motion-dots.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1327
-
1328
- *`create_interactive_projection_mapping` monta o rig de ensaio com fonte de câmera,
1329
- sintética ou TOP existente, campo de movimento por diferença de frames, branch de
1330
- blob-mask, saída de projection mapping com corner pin e switch de debug. Sensitivity,
1331
- TrailDecay, BlobThreshold e ProjectionBrightness ficam expostos para calibração na sala.*
1332
-
1333
- > *"Envie meu TOP final como NDI chamado stage_program, mantenha inativo até eu
1334
- > aprovar e também crie um sender Syphon/Spout para a máquina local de captura."*
1335
-
1336
- <video :src="withBase('/examples/external-io-ndi-syphon-return.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1337
-
1338
- *`create_external_io` agora inclui `ndi_out` e `syphon_spout_out` junto de OSC,
1339
- MIDI, DMX, Art-Net e modos de streaming. Ele conecta o TOP de origem, define os
1340
- nomes de sender/source e deixa Active desligado a menos que o prompt peça para
1341
- começar a transmitir.*
1342
-
1343
- > *"Monte um esqueleto de facade mapping para três projetores com edge blend
1344
- > horizontal, brilho por projetor, canvas de preview e curvas smoothstep."*
1345
-
1346
- <video :src="withBase('/examples/facade-mapping-edge-blend.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1347
-
1348
- *`create_facade_mapping` distribui um TOP de origem em 1-8 branches de projetor,
1349
- recorta cada fatia com overlap, aplica ramps de blend / branches de corner pin, cria
1350
- Nulls de saída por projetor e expõe brilho mais controles de largura/curva de blend.
1351
- É o esqueleto de setup antes do alinhamento físico dos projetores.*
1352
-
1353
- > *"Prepare testes fulldome sem hardware para este feed glitch gerado: faça um dome
1354
- > master fisheye com controles de Rotation de horizonte e FOV, então monte uma cena
1355
- > de teste cubemap real para eu comparar o caminho de maior fidelidade."*
1356
-
1357
- <video :src="withBase('/examples/dome-output-glitch.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1358
-
1359
- <video :src="withBase('/examples/cubemap-dome-master.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1360
-
1361
- *Use `create_dome_output` para uma fonte 2D equirectangular/panorâmica e
1362
- `create_cubemap_dome` quando você tem, ou quer gerar, uma fonte cubemap real. Os
1363
- dois produzem um dome master quadrado, mas geometria final, FOV e costuras precisam
1364
- ser ajustados contra o dome ou simulador real; a saída útil é o caminho do TOP
1365
- mapeado e os controles, não uma ilustração genérica de planetário.*
1366
-
1367
- ## Consertar & entender
1368
-
1369
- > *"Algo parece quebrado — confira a rede em busca de erros e conserte."*
1370
-
1371
- > *"Pegue um inline preview de `/project1/out1`: me dê um thumbnail de 256 px,
1372
- > metadados de cook, parâmetros alterados e erros dos pais numa resposta
1373
- > estruturada."*
1374
-
1375
- <video :src="withBase('/examples/inline-preview-snapshot.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1376
-
1377
- *`get_inline_preview` é a passada compacta de inspeção para agentes: uma chamada
1378
- retorna thumbnail limitado, resolução / formato de pixel / stats de cook,
1379
- parâmetros alterados e uma varredura de erros nos pais sem encadear várias
1380
- ferramentas de preview e erro.*
1381
-
1382
- > *"Explique o que esta rede está fazendo, passo a passo."*
1383
-
1384
- > *"Leia os modos de parâmetro de todos os nós importantes em `/project1/hero`
1385
- > numa chamada batch, então me diga quais parâmetros são expressão, bind ou canal
1386
- > exportado."*
1387
-
1388
-
1389
- *O caminho `POST /api/param_modes/batch` da bridge deixa agentes inspecionarem
1390
- modos expression, bind, export e constant de muitos nós em uma rodada só. Ele
1391
- substitui o loop antigo de vários execs quando você precisa entender por que um rig
1392
- está reagindo, travado ou sobrescrito.*
1393
-
1394
- > *"Isto está lento — ache o gargalo e otimize."*
1395
-
1396
- > *"Pontue este build em paleta, movimento, complexidade, erros e performance, então
1397
- > sugira as menores mudanças que melhorariam o resultado."*
1398
-
1399
-
1400
- *`score_build` é read-only e devolve uma rubrica de 0 a 100 com sugestões
1401
- determinísticas. `enhance_build` pode pré-visualizar ou aplicar um pequeno ciclo de
1402
- melhoria permitido, então pontuar de novo para mostrar se a intervenção ajudou.*
1403
-
1404
- > *"Extraia as cinco cores dominantes de `/project1/look/out1` e use-as como
1405
- > swatches para a próxima paleta e correção de cor."*
1406
-
1407
- <video :src="withBase('/examples/palette-extraction-swatches.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1408
-
1409
- *`extract_palette` captura um preview TOP e roda k-means determinístico nos pixels.
1410
- É read-only, então é seguro para ciclos de crítica, hand-off de paleta e prompts do
1411
- tipo "faça o próximo look combinar com este".*
1412
-
1413
- > *"Pergunte ao vision copilot o que domina este TOP, se o assunto é legível do fundo
1414
- > da sala e qual única mudança mais melhoraria o resultado."*
1415
-
1416
-
1417
- *`copilot_vision` envia um TOP renderizado mais a sua pergunta ao LLM multimodal
1418
- configurado. Ele complementa ferramentas determinísticas como `caption_top` e
1419
- `score_build` quando você quer resposta de direção de arte, não só medições.*
1420
-
1421
- > *"Eu sei que quero `create_audio_reactive`, mas só disse 'barras neon do microfone'
1422
- > — infira os argumentos obrigatórios ausentes pelo schema e mostre a chamada
1423
- > proposta."*
1424
-
1425
-
1426
- *`elicit_missing_args` usa o schema registrado da ferramenta mais o contexto da
1427
- conversa para propor apenas os campos ausentes. É read-only e ajuda agentes a fazerem
1428
- menos perguntas manuais sem inventar parâmetros inexistentes.*
1429
-
1430
- > *"Faça profile de cook cost por 60 frames e ranqueie os nós com maior chance de
1431
- > causar queda de frame."*
1432
-
1433
- > *"Arrume o layout para eu conseguir ler."*
1434
-
1435
- > *"Troque este `noiseTOP` por um `rampTOP`, mantenha o nome e os fios, preserve os
1436
- > parâmetros compatíveis e relate o que não pôde ser carregado."*
1437
-
1438
-
1439
- *`swap_operator` é a versão cuidadosa de "substitua este nó": ele tira snapshot dos
1440
- fios e parâmetros, recria o tipo de operador no mesmo lugar, reconecta o que consegue
1441
- e devolve parâmetros descartados/falhas explicitamente.*
1442
-
1443
- > *"Tenta consertar essa cadeia de render quebrada — mas se a contagem de erros
1444
- > aumentar, desfaça toda mudança que você fez."*
1445
-
1446
-
1447
- *O loop de repair agora tira snapshot de `(par.path, par.mode)` e `(op.path,
1448
- op.bypass, op.display)` antes de cada passo. Se `errors_after >= errors_before` e
1449
- não for dry-run, todo passo aplicado é revertido e o relatório carrega uma flag
1450
- `rolled_back: true` — o agente não consegue piorar a situação. Uma passada de
1451
- reparo que se desfaz sozinha, a rede de segurança que todo artista queria do "AI,
1452
- conserta aí".*
1453
-
1454
- > *"Roda um auto-repair em `/project1` — até três passadas, para se os erros
1455
- > pararem de cair e desfaz qualquer passada que piore o estado."*
1456
-
1457
-
1458
- *`auto_repair_loop` é o verbo "conserta tudo": ele dirige `repair_network` em
1459
- iterações, marca `errors_before`/`errors_after` por passada, para no platô e
1460
- herda o mesmo rollback de segurança. Uma chamada no lugar do ciclo manual
1461
- reparar/checar/repetir.*
1462
-
1463
- > *"Antes de tocar neste patch de show, amostre `/project1/out1` num grid 8x8 e
1464
- > me diga se ele está vivo, quais cores aparecem por alto e se vale gastar uma
1465
- > captura completa."*
1466
-
1467
- *`get_preview` com `sample_grid` devolve um grid de amostras RGBA mais estatísticas
1468
- min/max/mean por canal em JSON, sem codificar imagem. Use como checagem barata de
1469
- "este TOP está vivo?" antes de gastar contexto com preview completo ou crítica.*
1470
-
1471
- <video :src="withBase('/examples/cookbook-ops-sample-grid-source.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1472
-
1473
- *Capturado ao vivo do TOP
1474
- `/project1/cookbook_ops_demo/sample_grid_halftone_source/out1` amostrado com
1475
- `sample_grid:8`. O clipe mostra o output do TouchDesigner sendo amostrado; a
1476
- resposta real da ferramenta é o grid RGBA e as estatísticas em JSON.*
1477
-
1478
- > *"Dispare o reset de `/project1/trails/feedback1`, espere 12 frames e depois
1479
- > colete o preview para eu ver o burst depois que o feedback loop estabilizar."*
1480
-
1481
- *`get_preview` agora aceita `pre_pulses` e `delay_frames`: pulsa um ou mais
1482
- parâmetros no mesmo frame, adia a captura e depois coleta por `job_id`. É para
1483
- looks transitórios que somem se você capturar um frame cedo demais.*
1484
-
1485
- <video :src="withBase('/examples/cookbook-ops-preview-burst.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1486
-
1487
- *Capturado ao vivo do TOP `/project1/cookbook_ops_demo/preview_burst/out1` depois
1488
- de disparar `reset` em `/project1/cookbook_ops_demo/preview_burst/feedback1` e
1489
- esperar 12 frames pelo tdmcp. Este clipe é o resultado do TouchDesigner, não uma
1490
- ilustração do prompt.*
1491
-
1492
- > *"Antes de setar o device de entrada em `/project1/live_in/moviefilein1`, leia
1493
- > os valores de menu e me mostre os nomes de máquina exatos que posso usar sem o
1494
- > TouchDesigner escolher silenciosamente o primeiro item."*
1495
-
1496
- *`get_parameter_menu` busca ao vivo `menuNames`, `menuLabels` e o valor atual do
1497
- menu no build de TouchDesigner rodando. Peça isso antes de setar parâmetros Menu /
1498
- StrMenu; se raw exec estiver desligado, o fallback vem marcado como catálogo
1499
- embutido possivelmente defasado.*
1500
-
1501
- > *"Leia as linhas 500-560 de `/project1/show/state_table`, inclua o header e as
1502
- > cinco primeiras linhas, e me diga se algum estado de cue parece errado."*
1503
-
1504
- *`get_dat_content` lê Text DATs e Table DATs em páginas: `offset`, `limit`,
1505
- `include_header` e `preview_rows` impedem uma tabela enorme de cues de inundar o
1506
- modelo. O resultado inclui contagem de linhas, estado de truncamento e a janela
1507
- exata lida.*
1508
-
1509
- > *"Depois de montar o hero look, foque o Network Editor no novo output, no painel
1510
- > de controle e no composite final para eu inspecionar os nós exatos sem caçar na
1511
- > rede."*
1512
-
1513
- *`focus_network_editor` é um movimento de UI: ele faz pan/zoom no Network Editor do
1514
- TouchDesigner para enquadrar os operadores selecionados e não muda nada no grafo. É
1515
- o passo de handoff depois de um build gerado, não um efeito visual.*
1516
-
1517
- > *"Arrume `/project1/hero` recursivamente, mas mantenha todo DAT de shader
1518
- > dockado junto do nó a que pertence."*
1519
-
1520
- *`arrange_network` mantém a limpeza left-to-right do fluxo de dados, e
1521
- `include_docked` agora move DATs dockados de GLSL / callbacks pelo mesmo delta do
1522
- nó dono. Use quando a rede gerada só fica legível se os DATs auxiliares viajarem
1523
- junto.*
1524
-
1525
- > *"Desative `/project1/hero/old_grade` para o ensaio, mas não delete — quero
1526
- > poder reativar se o diretor sentir falta daquele look."*
1527
-
1528
- *`delete_td_node` com `mode:"bypass"` liga o bypass do operador em vez de destruir
1529
- o nó. É o meio-termo reversível entre deixar um operador quebrado na cadeia e apagar
1530
- trabalho de show permanentemente.*
1531
-
1532
- > *"Reconstrua esta pequena cadeia de post a partir do spec salvo com auto-layout
1533
- > ligado, para os reruns não deixarem nós empilhados e os fios ficarem legíveis da
1534
- > esquerda para a direita."*
1535
-
1536
- *`rebuild_network` com `auto_layout:true` calcula posições a partir do grafo de
1537
- inputs do spec e sobrescreve coordenadas manuais velhas antes de criar os nós. É
1538
- útil para round-trips de receita/spec em que a rede correta ainda precisa ficar
1539
- legível no layout do TD.*
1540
-
1541
- ## Looks reutilizáveis & handoff de show
1542
-
1543
- Use estes quando o look já funciona e você quer tocar de novo, ensinar, levar para
1544
- outra sala ou transformar em saída física.
1545
-
1546
- > *"Deixe este hero look pronto para turnê: exponha controles Speed, Palette, Glow e
1547
- > Reset, coloque labels claros, salve como `.tox` portátil e inclua uma imagem de
1548
- > preview para eu reconhecer antes de abrir o TouchDesigner."*
1549
-
1550
-
1551
- *As ferramentas de pacote ajudam quando servem ao artista: `.tox` portátil,
1552
- controles visíveis, notas simples e thumbnail da saída real. O resultado é um
1553
- instrumento visual para colocar no show, não um exercício de handoff técnico.*
1554
-
1555
- > *"Transforme `/project1/hero_look` num starter de workshop: preserve a rede visual,
1556
- > capture os controles que eu devo explicar e deixe fácil aplicar em um projeto
1557
- > vazio na semana que vem."*
1558
-
1559
-
1560
- *`scaffold_recipe_from_network` pode transformar uma subárvore TD pronta numa
1561
- receita reaplicável. Para artista, a utilidade é ensino e ensaio repetíveis:
1562
- reconstruir o look do zero e ajustar os controles expostos na frente das pessoas.*
1563
-
1564
- > *"Faça um mapa de uma página deste patch: thumbnail da saída final, os três
1565
- > controles que devo tocar ao vivo e um diagrama simples da esquerda para a direita
1566
- > mostrando como o sinal vira imagem."*
1567
-
1568
-
1569
- *Notas geradas só entram aqui quando parecem mapa de estúdio: o que é o look, quais
1570
- controles importam, o que alimenta a saída e como está o preview atual.*
1571
-
1572
- > *"Salve este look com três variantes — ambient lenta, refrão de alta energia e
1573
- > blackout-safe — e marque a favorita para eu encontrar rápido no próximo ensaio."*
1574
-
1575
-
1576
- *Tags, variantes e notas de versão no vault ajudam artistas a manter uma biblioteca
1577
- ao vivo organizada: a pergunta vira "qual look eu confio para este cue?", não
1578
- "qual arquivo eu exportei mês passado?"*
1579
-
1580
- > *"Monte uma cadeia de controle de grave chamada `bass_energy`, `bass_peak` e
1581
- > `bass_gate`, depois me mostre onde ligar brightness, blur e pulse no visual
1582
- > atual."*
1583
-
1584
- <video :src="withBase('/examples/audio-reactive-gate-duck.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1585
-
1586
- *Builders Layer-2 ficam artist-facing quando produzem fontes de modulação limpas,
1587
- com nomes legíveis. Você ganha canais estáveis para performar, enquanto os detalhes
1588
- CHOP continuam editáveis quando quiser aprender.*
1589
-
1590
- > *"Exporte esta escultura generativa de linhas como SVG de polilinhas para meu
1591
- > AxiDraw, mantendo a escala e orientação do preview para o plot parecer a versão
1592
- > da tela."*
1593
-
1594
- <video :src="withBase('/examples/sop-to-svg-plotter.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1595
-
1596
- *`export_sop_to_svg` lê primitivas SOP e escreve vetores prontos para plotter. É a
1597
- ponte da imagem generativa ao vivo para canetas, lasers e impressão.*
1598
-
1599
- ## Autoria de shader & material
1600
-
1601
- > *"Crie um material GLSL para esta esfera: faixas iridescentes tipo óleo, rim light
1602
- > suave e um uniform `uTime` que eu possa guiar pela timeline."*
1603
-
1604
- <video :src="withBase('/examples/glsl-material-iridescent.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1605
-
1606
- *`create_glsl_material` cria o GLSL MAT mais os Text DATs auxiliares, conecta os
1607
- shaders de pixel/vértice e avisa sobre armadilhas de GLSL no TouchDesigner, como
1608
- `fragColor` ausente, colisões com o preâmbulo F1/F2 e `uTime` não declarado.*
1609
-
1610
- > *"Importe este sketch do Shadertoy, conecte placeholders nos iChannels se precisar,
1611
- > exponha controles de Speed e Mouse, e faça preview do GLSL TOP traduzido."*
1612
-
1613
- <video :src="withBase('/examples/import-shadertoy-nebula.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1614
-
1615
- *`import_shadertoy` mapeia `iTime`, `iResolution`, `iMouse` e `iChannelN` para
1616
- uniforms / entradas TOP amigáveis ao TouchDesigner. Cole `raw_source` quando quiser
1617
- manter a importação inteira offline.*
1618
-
1619
- > *"Importe este shader ISF, gere uma página limpa de parâmetros customizados a partir
1620
- > dos INPUTS e mantenha o GLSL editável no TouchDesigner."*
1621
-
1622
- <video :src="withBase('/examples/import-isf-plasma-controls.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1623
-
1624
- *`import_isf_shader` parseia o cabeçalho JSON do ISF e transforma entradas float /
1625
- color / bool / event / long em controles TouchDesigner, então sketches de biblioteca
1626
- viram redes tocáveis em vez de blocos de código colados.*
1627
-
1628
- > *"Transforme este sketch de GLSL TOP num material no logo 3D, exponha Color, Speed
1629
- > e Fresnel, depois renderize um preview."*
1630
-
1631
- **O que você recebe:** uma etapa de autoria de shader que mantém o código editável em
1632
- DATs enquanto transforma os uniforms importantes em controles tocáveis no
1633
- TouchDesigner.
1634
-
1635
- ## Efeitos e looks marcantes
1636
-
1637
- > *"Dobre minha webcam num caleidoscópio de seis lados girando devagar, em tons de
1638
- > joia profundos, e me mostre um preview."*
1639
-
1640
- <video :src="withBase('/examples/kaleidoscope-webcam.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1641
-
1642
- *Um espelho de dobra polar em GLSL ao vivo transforma qualquer fonte numa mandala
1643
- simétrica; expõe os Segmentos e um botão de rotação/Velocidade. Apontado para a
1644
- webcam, faz a sala desabrochar em pétalas caleidoscópicas.*
1645
-
1646
- > *"Faça meu vídeo parecer um arquivo corrompido que borra e derrete a cada corte
1647
- > seco — datamosh pesado."*
1648
-
1649
- <video :src="withBase('/examples/datamosh-pixel-melt.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1650
-
1651
- *Um borrão de deslocamento de pixels guiado por feedback que sangra vetores de
1652
- movimento entre quadros, com controles de Quantidade/Decay — o clássico look de
1653
- "codec quebrado" que floresce e derrete, numa fonte de teste padrão (troque pelo seu
1654
- clipe).*
1655
-
1656
- > *"Transforme isto em pontos de meio-tom âmbar quentes, como impressão de jornal
1657
- > antigo, e mostre o preview."*
1658
-
1659
- <video :src="withBase('/examples/halftone-amber-print.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1660
-
1661
- *Uma tela de meio-tom em GLSL converte a imagem numa grade de pontos de tinta cujo
1662
- tamanho acompanha o brilho; expõe a escala dos pontos / Ângulo / matiz. O tom âmbar
1663
- mais o fundo branco-papel dão uma sensação de impressão retrô.*
1664
-
1665
- > *"Deixe esta fonte como um sonho febril de Game Boy: dither ordenado de 4 cores,
1666
- > pixels crocantes, threshold animado e controle Mix ao vivo."*
1667
-
1668
- <video :src="withBase('/examples/dither-gameboy-poster.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1669
-
1670
- *`create_dither` monta dither Bayer / checker / noise / error-diffusion com
1671
- quantização mono, duotone ou RGB. É um look, não só um filtro utilitário.*
1672
-
1673
- > *"Gere um campo Voronoi de vitral com sementes animadas, linhas escuras grossas e
1674
- > controles de paleta para Color A / Color B."*
1675
-
1676
- <video :src="withBase('/examples/jfa-voronoi-stained-glass.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1677
-
1678
- *`create_jfa_voronoi` usa uma cadeia Jump-Flooding (seed init, passes por metade,
1679
- color pass) para criar mosaicos / vitrais animados com controles ao vivo de sementes
1680
- e bordas.*
1681
-
1682
- > *"Distorça esta filmagem com uma distorção líquida fluida que ondula como calor
1683
- > sobre o quadro inteiro."*
1684
-
1685
- <video :src="withBase('/examples/displacement-warp-liquid.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1686
-
1687
- *Guia um Displace TOP a partir de um campo de ruído animado, então a fonte ondula e
1688
- flui, com controles de Quantidade/Velocidade — uma distorção de calor / submersa
1689
- sobre qualquer entrada.*
1690
-
1691
- > *"Transforme este feed de câmera em linhas de tinta fluindo, como um frame de
1692
- > videoclipe desenhado com edge tangent flow e carvão animado."*
1693
-
1694
- <video :src="withBase('/examples/flow-abstraction-ink-lines.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1695
-
1696
- *`create_flow_abstraction` monta o caminho ETF / FDoG painterly: fluxo coerente de
1697
- linhas em vez de bordas Sobel simples, bom para looks de quadrinho, tinta e câmera
1698
- gravada em metal.*
1699
-
1700
- > *"Dê a este shot um filtro Kuwahara de pintura a óleo, e me deixe alternar entre
1701
- > oil, pencil e watercolor durante o set."*
1702
-
1703
- <video :src="withBase('/examples/npr-kuwahara-paint.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1704
-
1705
- *`create_npr_filter` expõe o look não-fotorrealista como componente controlável;
1706
- `apply_post_processing` também entende `npr_oil`, `npr_pencil` e `npr_watercolor`
1707
- para cadeias rápidas.*
1708
-
1709
- > *"Dê a isto uma correção de cor cinematográfica teal-and-orange — afunde um pouco
1710
- > os pretos e levante as altas-luzes."*
1711
-
1712
- <video :src="withBase('/examples/cinematic-color-grade.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1713
-
1714
- *Uma correção de lift/gamma/gain + saturação/matiz (com LUT opcional) sobre qualquer
1715
- fonte, expondo as rodas como botões — o look teal/laranja de Hollywood como uma
1716
- camada de finalização.*
1717
-
1718
- > *"Dê a esta câmera uma correção de três rodas de verdade: sombras frias, altas-luzes
1719
- > quentes, um pequeno black offset e controles ao vivo de Lift/Gamma/Gain por canal."*
1720
-
1721
- <video :src="withBase('/examples/color-wheels-lift-gamma-gain.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1722
-
1723
- *`create_color_wheels` monta a superfície clássica de colorista: três Level TOPs
1724
- tingidos para sombras/médios/altas, offset preto master e saturação. Use quando
1725
- sliders simples de grade não forem expressivos o bastante.*
1726
-
1727
- > *"Aplique este LUT .cube ao feed de câmera, mostre um split antes/depois e caia
1728
- > para GLSL se OCIO não estiver disponível."*
1729
-
1730
- <video :src="withBase('/examples/lut-film-grade.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1731
-
1732
- *`apply_lut` escolhe a melhor rota disponível: OCIO quando existe, lookup por imagem
1733
- para previews de LUT, ou fallback GLSL a partir de `.cube` parseado quando a máquina
1734
- está sem dependências extras.*
1735
-
1736
- > *"Quando eu mover este slider, faça um corte com glitch do primeiro clipe para o
1737
- > segundo, com um estouro de ruído digital."*
1738
-
1739
- <video :src="withBase('/examples/transition-glitch-cut.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1740
-
1741
- *Uma transição A→B sobre um único botão de Progresso de 0–1 com estilos selecionáveis
1742
- (dissolve / luma_wipe / slide / zoom / glitch_cut) — arraste o fader para fazer um
1743
- wipe entre duas fontes no meio do show.*
1744
-
1745
- > *"Renderize minha câmera como ASCII verde-fósforo brilhante, com cor da fonte nas
1746
- > áreas claras e um botão Mix para voltar ao original."*
1747
-
1748
- <video :src="withBase('/examples/ascii-phosphor-camera.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1749
-
1750
- *`create_ascii_render` reduz a fonte para células, cria um atlas de glifos em Text
1751
- TOP e renderiza uma grade de caracteres em GLSL. Os modos mono, source-color e
1752
- two-color cobrem terminal fósforo, câmera posterizada e palco duotone.*
1753
-
1754
- > *"Faça um slit-scan vertical da dançarina: cada linha deve ser um momento
1755
- > diferente no tempo, 120 frames de profundidade, subindo como fitas de tempo."*
1756
-
1757
-
1758
- *`create_slit_scan` grava a fonte num ring buffer de Cache TOP e amostra isso em
1759
- GLSL para que cada linha ou coluna venha de um frame passado diferente. O controle
1760
- Depth define quanto tempo é esticado pela saída.*
1761
-
1762
- > *"Dê a este feed glitch gerado um time echo: rastros fantasmas recursivos em modo
1763
- > echo no verso, depois um derretimento time-displace guiado por ramp vertical no
1764
- > breakdown."*
1765
-
1766
- <video :src="withBase('/examples/time-echo-glitch.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1767
-
1768
- *`create_time_echo` é o container mais amplo de efeitos de tempo: `echo` para
1769
- trails recursivos por feedback, `slit_scan` para fatias de tempo por linha/coluna e
1770
- `time_displace` para offsets de frame por pixel guiados por ramp ou noise TOP. Peça
1771
- resolução fixa e warnings porque nomes de operador cache/time-machine variam entre
1772
- builds do TD.*
1773
-
1774
- > *"Gere blobs de cromo líquido num fundo preto de estúdio, metal azulado,
1775
- > movimento lento e controle de Speed para aquele momento de logo Y2K."*
1776
-
1777
- <video :src="withBase('/examples/chrome-blobs-y2k.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1778
-
1779
- *`create_chrome_blobs` transforma noise animado em metaballs borrados/thresholded e
1780
- sombreia tudo com um passe GLSL de chrome por environment-map falso. Tints de metal
1781
- e presets de fundo tornam isso útil como vinheta de logo, não só teste de textura.*
1782
-
1783
- > *"Crie um look Gray-Scott de reaction-diffusion com cores coral, manchas tipo
1784
- > labirinto e controles ao vivo de Feed/Kill/Diffusion para morph biológico lento."*
1785
-
1786
- <video :src="withBase('/examples/reaction-diffusion-coral-maze.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1787
-
1788
- *`create_reaction_diffusion` parte da receita Gray-Scott incluída, corrige os
1789
- uniforms GLSL de Feed/Kill/Diffusion A/B, aplica opcionalmente um ramp de LUT e
1790
- expõe os parâmetros químicos como controles performáveis.*
1791
-
1792
- > *"Pixel-sort este feed ao vivo em rastros verticais de chuva: ordene por
1793
- > luminância acima do threshold, descendente, 96 iterações, com Mix em 0.8."*
1794
-
1795
-
1796
- *`create_pixel_sort` usa um loop GLSL de odd-even sort com Feedback TOP, Switch TOP
1797
- e máscara de threshold. Axis, SortBy, Direction, Threshold, Iterations e Mix ficam
1798
- ao vivo para ajustar o smear estilo Asendorf em vez de colar um shader uma vez.*
1799
-
1800
- ## Mixagem e camadas
1801
-
1802
- > *"Empilhe quatro camadas com modos de mistura e opacidade, cada uma com mute e
1803
- > solo, para eu mixar um look na hora."*
1804
-
1805
- <video :src="withBase('/examples/layer-stack-mute-solo.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1806
-
1807
- *Um compositor de N camadas com modo de mistura + opacidade + mute/solo por camada e
1808
- uma faixa de controle gerada — uma pilha de camadas estilo Photoshop/After Effects
1809
- que você pode tocar.*
1810
-
1811
- > *"Monta um rig de quatro decks com FX sends por deck pra um bus de retorno
1812
- > compartilhado e um switch de hard cut que eu posso mesclar de volta."*
1813
-
1814
- <video :src="withBase('/examples/nchan-decks-fx-bus.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1815
-
1816
- *O modo `decks[]` monta rigs de 2 a 8 decks com ganho por deck, branches de FX-send
1817
- por deck num bus / retorno aditivo, um mix de programa contínuo via Cross TOP e um
1818
- hard-cut Switch TOP mesclado de volta no programa com `cut_mix`. O mixer A/B
1819
- antigo continua compatível.*
1820
-
1821
- ## Visuais orientados a dados
1822
-
1823
- > *"Puxe o preço do BTC ao vivo de uma API web e controle a cor e a velocidade do
1824
- > visual pela rapidez com que ele se move."*
1825
-
1826
- <video :src="withBase('/examples/live-data-btc-feed.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1827
-
1828
- *O create_data_source puxa um feed JSON/web ao vivo para canais CHOP; o
1829
- create_data_reactive mapeia esses canais nos parâmetros de um visual com remapeamento
1830
- de faixa por mapeamento — a contraparte de dados da reatividade ao áudio.*
1831
-
1832
- > *"Prototipe um dashboard visual guiado por WebSocket a partir deste stream de
1833
- > eventos, mas rode em modo dry-run / experimental primeiro e relate erros de bridge
1834
- > antes de ligar no show."*
1835
-
1836
- <video :src="withBase('/examples/data-source-http-ws-hotfix.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1837
-
1838
- *`create_data_source_http_ws` é a ponte HTTP/WebSocket para transformar seletores JSON
1839
- em canais CHOP. O corte público v0.7.0 inclui o hotfix de HTTP-poll, então o prompt
1840
- já pode pedir status, seletores, nomes de canais e warnings como parte do relatório
1841
- de build.*
1842
-
1843
- > *"Transforme esta planilha de vendas mensais em barras 3D animadas que crescem, com
1844
- > rótulos de valor."*
1845
-
1846
- <video :src="withBase('/examples/table-3d-bars.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1847
-
1848
- *Uma rede de visualização orientada a dados (barras/gráfico a partir de uma tabela)
1849
- com um botão de Escala e uma entrada animada — um infográfico em tempo real e
1850
- tocável, não um gráfico estático.*
1851
-
1852
- > *"Clone este cartãozinho uma vez por linha da minha tabela, cada um com o nome
1853
- > daquela linha."*
1854
-
1855
- <video :src="withBase('/examples/replicator-table-cards.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1856
-
1857
- *Um Replicator COMP que clona um COMP de template por linha de um Table DAT,
1858
- parametrizando cada clone a partir da sua linha — instanciamento orientado a dados de
1859
- sub-redes inteiras, não só de geometria.*
1860
-
1861
- > *"Monte uma cadeia LLM offline com Ollama dentro do TouchDesigner: prompt DAT
1862
- > entrando, response DAT saindo, botão Send exposto e JSON mode pronto para notas
1863
- > de cue."*
1864
-
1865
- <video :src="withBase('/examples/llm-chain-stage-notes.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
1866
-
1867
- *`create_llm_chain` cria um wrapper LLM baseado em webclientDAT para Ollama, OpenAI,
1868
- Anthropic ou endpoint custom compatível com OpenAI. Prompt e Response DATs, canal de
1869
- status e controles de provider/model/temperature/max-token ficam dentro do TD,
1870
- enquanto as chaves de API são lidas por variáveis de ambiente e nunca aparecem via Node.*
1871
-
1872
- ## Checagens de ensaio & feedback artístico
1873
-
1874
- Use estes quando quiser que o tdmcp teste o trabalho como um artista testaria:
1875
- consigo ver, consigo tocar, reage direito e é seguro continuar ensaiando?
1876
-
1877
- > *"Antes do ensaio, abra meu output principal, tire um snapshot rápido do preview e
1878
- > me diga se está preto, em baixa resolução, congelado ou com erro."*
1879
-
1880
-
1881
- *`get_inline_preview` transforma "isso está vivo?" em uma checagem: thumbnail,
1882
- resolução, formato de pixel, metadados de cook e erros recentes. A resposta deve
1883
- vir primeiro como imagem e linguagem simples.*
1884
-
1885
- > *"Observe o analyze CHOP do grave por cinco segundos e me diga o min/max real para
1886
- > eu ajustar a faixa do visual antes do DJ chegar."*
1887
-
1888
-
1889
- *`watch_node` é útil quando lê um sinal do jeito que performer precisa: faixa real,
1890
- picos, momentos quietos e se o canal está estável o bastante para ligar num look.*
1891
-
1892
- > *"Cheque o perfil de venue `club` sem mostrar segredos: o TouchDesigner está
1893
- > alcançável, a bridge está na porta esperada e o que eu preciso corrigir antes da
1894
- > abertura da casa?"*
1895
-
1896
-
1897
- *Checagem de venue/perfil só pertence ao cookbook quando responde uma pergunta de
1898
- show: para qual sala estou configurado, a bridge ao vivo responde e qual ação
1899
- concreta mantém o ensaio andando?*
1900
-
1901
- > *"Leia o mapa compacto de `/project1/hero` e explique os controles visíveis em
1902
- > linguagem simples: o que muda cor, movimento, intensidade e reset?"*
1903
-
1904
-
1905
- *`compact_graph_digest` resume uma rede sem afogar o artista em nós: contagens, fios
1906
- e parâmetros-chave viram um mapa curto do que o look sabe fazer.*
1907
-
1908
- > *"Durante o soundcheck, escute eventos de beat e onset por dez segundos e me diga
1909
- > se o fluxo de cues está estável o bastante para guiar cortes; não dispare nada no
1910
- > palco."*
1911
-
1912
-
1913
- *Observar eventos da bridge pode continuar read-only: use para provar que tempo,
1914
- batida ou gesto estão chegando antes de mapear isso para mudanças visíveis.*
1915
-
1916
- > *"Me ensine TouchDesigner o suficiente para mexer neste patch com segurança:
1917
- > mostre o caminho do operador que devo abrir, um parâmetro para testar primeiro e
1918
- > um fallback se quebrar."*
1919
-
1920
-
1921
- *Recursos de aprendizado e cheatsheets ficam artist-facing quando reduzem medo no
1922
- patch: um operador, um parâmetro seguro, um caminho de volta.*
1923
-
1924
- > *"Olhe para a saída atual e critique como motion designer: paleta, contraste,
1925
- > ritmo, legibilidade e um próximo ajuste concreto."*
1926
-
1927
-
1928
- *O copiloto local deve fechar o ciclo entre rede gerada e resultado visível:
1929
- descrever o que está na tela, nomear a escolha artística mais fraca e propor uma
1930
- mudança pequena para o artista aprovar.*
1931
-
1932
- ## Conhecimento TD offline & rascunhos de receita
1933
-
1934
- Use estes prompts quando quiser que o agente leia conhecimento TouchDesigner
1935
- embutido antes de criar nós. As tools desta seção são read-only e funcionam sem
1936
- bridge TD ao vivo; qualquer cook ou checagem de projetor continua
1937
- **UNVERIFIED-pending-td** até você rodar o rascunho contra uma instância
1938
- TouchDesigner conectada.
1939
-
1940
- > *"Antes de escolher o estágio de blur, busque operadores TOP embutidos no
1941
- > TouchDesigner 2023 com busca por parâmetros ligada. Mostre quais operadores
1942
- > expõem controles ligados a borda, raio ou feedback, e ainda não crie nós."*
1943
-
1944
- ```bash
1945
- tdmcp-agent operators \
1946
- --params '{"query":"edge radius feedback blur","category":"TOP","version":"2023","parameter_search":true,"limit":8}'
1947
- ```
1948
-
1949
- *O `search_operators` expandido filtra por categoria, versão do TouchDesigner e
1950
- metadados de parâmetros antes de o agente mexer no projeto. Use quando a pergunta
1951
- é "qual operador expõe o controle de que preciso?", não só "como chama este op?".*
1952
-
1953
- > *"Estou migrando um patch de feedback de 2022 para 2024 e quero uma cadeia de
1954
- > trails segura para câmera. Planeje primeiro a migração de versão do TD, depois
1955
- > sugira uma cadeia TOP e valide antes de rascunhar a receita."*
1956
-
1957
- ```bash
1958
- tdmcp-agent versions migration-plan \
1959
- --params '{"from_version":"2022","to_version":"2024","query":"TOP feedback camera trails"}'
1960
- tdmcp-agent operators suggest-chain \
1961
- --params '{"goal":"camera-safe feedback trails","family":"TOP","max_steps":5}'
1962
- tdmcp-agent operators validate-chain \
1963
- --params '{"chain":["Video Device In TOP","Feedback TOP","Transform TOP","Level TOP","Null TOP"],"family":"TOP"}'
1964
- tdmcp-agent recipes draft-chain \
1965
- --params '{"chain":["Video Device In TOP","Feedback TOP","Transform TOP","Level TOP","Null TOP"],"id":"camera_feedback_trails_draft","tags":["draft","feedback","migration"]}'
1966
- ```
1967
-
1968
- *Este é um preflight atento à versão: notas de release e registros de
1969
- compatibilidade orientam a sugestão de cadeia, `validate_operator_chain` checa as
1970
- adjacências de operadores e o rascunho de receita continua offline até um
1971
- `apply_recipe` posterior com cook ao vivo no TD.*
1972
-
1973
- > *"Abra o pacote embutido de técnicas GLSL, inspecione uma técnica de
1974
- > reaction-diffusion com notas de setup e código, então gere um rascunho de
1975
- > receita válido no schema em modo non-strict. Deixe aplicar isso para uma passada
1976
- > ao vivo no TD depois."*
1977
-
1978
- ```bash
1979
- tdmcp-agent techniques get \
1980
- --params '{"category":"glsl","technique_id":"reaction_diffusion_gs","include_code":true,"include_setup":true}'
1981
- tdmcp-agent techniques draft-recipe \
1982
- --params '{"category":"glsl","technique_id":"reaction_diffusion_gs","id":"reaction_diffusion_gs_technique_draft","strict":false}'
1983
- ```
1984
-
1985
- *`get_technique_detail` e `draft_recipe_from_technique` transformam pacotes
1986
- embutidos de técnicas TouchDesigner em candidatos `RecipeSchema` sem afirmar que a
1987
- rede já cozinhou. Preserve warnings e próximos passos sugeridos, então valide o
1988
- rascunho no TouchDesigner antes de virar receita de show.*
1989
-
1990
- > *"Encontre o tutorial embutido para escrever um GLSL TOP, tente um rascunho de
1991
- > tutorial em modo de triagem non-strict e me mostre por que ele é ou não é seguro
1992
- > antes de aplicar qualquer coisa."*
1993
-
1994
- ```bash
1995
- tdmcp-agent tutorials get \
1996
- --params '{"name":"write_a_glsl_top","include_content":true}'
1997
- tdmcp-agent tutorials draft-recipe \
1998
- --params '{"name":"write_a_glsl_top","strict":false,"max_steps":5}'
1999
- ```
2000
-
2001
- *`get_tutorial` recupera o texto estruturado do tutorial e os blocos de código; a
2002
- tool `draft_recipe_from_tutorial` valida a cadeia extraída com checagens de
2003
- conexões documentadas. Para o tutorial embutido `write_a_glsl_top`, o resultado
2004
- esperado é continuar sem rascunho: a cadeia extraída de texto/TOC inclui links
2005
- adjacentes sem documentação, como `GLSL TOP -> GLSL Multi TOP`; o relatório deve
2006
- incluir `undocumented_connection`, omitir `apply_recipe` e deixar o grafo TD
2007
- intocado.*
2008
-
2009
- > *"Antes de criar uma cadeia de post com feedback, compare os docs de operator de
2010
- > Blur TOP e Level TOP, valide `Noise TOP -> Blur TOP -> Level TOP -> Null TOP`,
2011
- > então gere uma receita dessa cadeia sem tocar no projeto."*
2012
-
2013
- ```bash
2014
- tdmcp-agent operators compare-docs \
2015
- --params '{"operator_a":"Blur TOP","operator_b":"Level TOP"}'
2016
- tdmcp-agent operators validate-chain \
2017
- --params '{"chain":["Noise TOP","Blur TOP","Level TOP","Null TOP"],"family":"TOP"}'
2018
- tdmcp-agent recipes draft-chain \
2019
- --params '{"chain":["Noise TOP","Blur TOP","Level TOP","Null TOP"],"id":"feedback_post_draft","tags":["draft","feedback"]}'
2020
- ```
2021
-
2022
- *Este é o loop seguro de "ler, comparar, validar e rascunhar": o agente explica os
2023
- tradeoffs dos operadores e entrega um rascunho de receita válido no schema enquanto
2024
- o grafo TouchDesigner real permanece inalterado.*
2025
-
2026
- > *"Busque tutoriais embutidos sobre fluxos CHOP, copie um id de tutorial dos
2027
- > resultados, tente `draft_recipe_from_tutorial` em modo non-strict e, se não der
2028
- > para gerar uma receita, explique o motivo. Use os operadores extraídos como
2029
- > entrada para `validate_operator_chain` e só gere uma receita quando a cadeia
2030
- > corrigida não tiver erros. Trate `apply_recipe` como handoff posterior, não como
2031
- > parte desta execução."*
2032
-
2033
- ```bash
2034
- tdmcp-agent tutorials get \
2035
- --params '{"query":"CHOP","include_content":true,"limit":3}'
2036
- tdmcp-agent tutorials draft-recipe \
2037
- --params '{"name":"anatomy_of_a_chop","strict":false,"max_steps":5}'
2038
- ```
2039
-
2040
- *Esse é o modo de falha útil: um tutorial ainda pode ensinar o que o agente deve
2041
- inspecionar ou validar, mesmo quando não vira uma receita segura automaticamente.
2042
- `draft_recipe_from_tutorial` recebe um id de tutorial ou nome exato, não uma busca
2043
- livre; substitua pelo id escolhido no resultado anterior.*
2044
-
2045
- ## Biblioteca criativa (Creative RAG)
2046
-
2047
- O repertório criativo é um índice local opt-in de referências artísticas com
2048
- licença aberta. O CLI é `tdmcp creative-rag <sync|index|search>`; tanto
2049
- `tdmcp://creative/cards/{id}` quanto
2050
- `tdmcp://creative/search{?q,k,license,type,tags}` são recursos MCP somente
2051
- leitura. A RAG fornece obras de fonte, paletas, linguagem de movimento e
2052
- affordances de tools; o build TouchDesigner continua acontecendo pelas tools
2053
- normais do tdmcp.
2054
-
2055
- > *"Use a Creative RAG para encontrar o card CC0 da Cleveland `The Biglin Brothers
2056
- > Turning the Stake`. Use a própria pintura como material de origem: estique a
2057
- > linha d'água em trilhas horizontais, detecte bordas nos remos e corpos, e
2058
- > transforme isso num visual de movimento de remo com grade fria de palco."*
2059
-
2060
- <video :src="withBase('/examples/creative-rag-rowing-motion-remix.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
2061
-
2062
- *Uma obra da RAG vira material de entrada, não uma linha de resultado: a imagem
2063
- CC0 do card é remixada em um novo estudo de trilhas cinéticas usando água, ritmo
2064
- dos remos e silhuetas da pintura como partitura visual.*
2065
-
2066
- > *"Busque na Creative RAG o card CC0 de retrato `Nathaniel Hurd`. Crie um novo
2067
- > look de máscara ao vivo a partir dele: extraia uma paleta quente do retrato,
2068
- > pixelize o rosto em blocos, adicione contornos e faça um drift sutil de dupla
2069
- > exposição para backdrop performável."*
2070
-
2071
- <video :src="withBase('/examples/creative-rag-portrait-mask-remix.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
2072
-
2073
- *O retrato recuperado dirige o look: cor, luz e estrutura do rosto viram um novo
2074
- sistema de máscara/mosaico que pode ser recriado com `create_palette`,
2075
- `create_pixel_sort` e passes de post-processing.*
2076
-
2077
- > *"Abra o card `Composition` de Wassily Kandinsky na Creative RAG. Use sua
2078
- > geometria hard-edged, a paleta de tríade primária e os affordances
2079
- > `create_generative_art` / `create_color_grade` para construir um sistema TD
2080
- > geométrico novo, não uma cópia da pintura."*
2081
-
2082
- <video :src="withBase('/examples/creative-rag-kandinsky-remix.mp4')" autoplay loop muted playsinline style="width:100%;max-width:480px;border-radius:8px;display:block"></video>
2083
-
2084
- *O card passa paleta e linguagem visual; o resultado é uma composição procedural
2085
- nova com grid animado, círculos e planos de cor, mantendo a obra original como
2086
- contexto de repertório em vez de algo que a RAG executa diretamente.*
2087
-
2088
- ### Busca e filtros de licença
2089
-
2090
- O repertório criativo é um índice local opt-in de referências artísticas com
2091
- licença aberta. O CLI é `tdmcp creative-rag <sync|index|search>`; tanto
2092
- `tdmcp://creative/cards/{id}` quanto
2093
- `tdmcp://creative/search{?q,k,license,type,tags}` são recursos MCP somente
2094
- leitura. A allowlist padrão (`TDMCP_RAG_LICENSE_ALLOWLIST`, default
2095
- `CC0,PublicDomain`) só barra **download de binários** no `sync` — o `search`
2096
- continua devolvendo qualquer card do índice. Passe `--license` explicitamente
2097
- quando precisar de garantia firme sobre o que vai reusar.
2098
-
2099
- > *"Busque na biblioteca criativa referências kinéticas em monocromático —
2100
- > muito movimento, preto e branco, geométrico. Limite a CC0 + domínio público
2101
- > para eu poder reusar tudo que vier."*
2102
-
2103
- ```bash
2104
- tdmcp creative-rag search "kinetic monochrome geometric" \
2105
- --license CC0,PublicDomain --k 5 --json
2106
- ```
2107
-
2108
- ```json
2109
- [
2110
- {
2111
- "id": "a1b2c3d4...",
2112
- "score": 0.78,
2113
- "title": "Composition with Black Lines",
2114
- "sourceUrl": "https://www.artic.edu/...",
2115
- "license": "PublicDomain",
2116
- "type": "artwork",
2117
- "tags": ["geometric", "monochrome", "motion-study"]
2118
- },
2119
- {
2120
- "id": "e5f6a7b8...",
2121
- "score": 0.74,
2122
- "title": "Rhythm of a Russian Dance",
2123
- "sourceUrl": "https://www.rijksmuseum.nl/...",
2124
- "license": "CC0",
2125
- "type": "artwork",
2126
- "tags": ["kinetic", "dance", "geometry"]
2127
- }
2128
- ]
2129
- ```
2130
-
2131
- *Use `--json` quando precisar dos ids para o próximo passo. A tabela humana é mais
2132
- curta de propósito e imprime score, título, tipo/licença e source URL; o payload
2133
- estruturado adiciona `id`, `tags` e outros campos do card para agentes ou scripts.*
2134
-
2135
- > *"Me mostre só obras de arquitetura com licença CC0 da biblioteca criativa."*
2136
-
2137
- ```bash
2138
- tdmcp creative-rag search "architecture facade" \
2139
- --license CC0 --type artwork --tags architecture --k 5 --json
2140
- ```
2141
-
2142
- ```json
2143
- [
2144
- {
2145
- "id": "3f4d5e6a...",
2146
- "score": 0.81,
2147
- "title": "Facade Study, Rietveld Schroder House",
2148
- "sourceUrl": "https://www.rijksmuseum.nl/...",
2149
- "license": "CC0",
2150
- "type": "artwork",
2151
- "tags": ["architecture", "de-stijl", "geometric"]
2152
- },
2153
- {
2154
- "id": "c7d8e9f0...",
2155
- "score": 0.77,
2156
- "title": "Steel Frame, Construction Series",
2157
- "sourceUrl": "https://www.clevelandart.org/...",
2158
- "license": "CC0",
2159
- "type": "artwork",
2160
- "tags": ["architecture", "structure", "grid"]
2161
- }
2162
- ]
2163
- ```
2164
-
2165
- *`--license CC0` estreita mais que o padrão (descarta PublicDomain), então o
2166
- resultado é estritamente CC0. `--type` aceita o enum da CLI
2167
- (`project|artist|artwork|technique|cue_reference`); use `--tags` (CSV) para
2168
- filtros mais finos como `architecture`, `geometric`, `sculpture`. Todos os
2169
- filtros empilham.*
2170
-
2171
- > *"Abra o card `3f4d5e6a…` da biblioteca criativa e resuma a intenção do artista
2172
- > para eu construir uma cena no TD a partir dela."*
2173
-
2174
- O cliente MCP busca `tdmcp://creative/cards/3f4d5e6a…` (onde `id =
2175
- sha256(sourceUrl)`) e recebe o card completo em JSON:
2176
-
2177
- ```json
2178
- {
2179
- "id": "3f4d5e6a...",
2180
- "schemaVersion": 1,
2181
- "type": "artwork",
2182
- "title": "Facade Study, Rietveld Schroder House",
2183
- "sourceUrl": "https://www.rijksmuseum.nl/...",
2184
- "sourceName": "rijksmuseum",
2185
- "license": "CC0",
2186
- "body": "Frontal study of a De Stijl facade with rigid planes and window-grid rhythm.",
2187
- "tags": ["architecture", "de-stijl", "geometric", "primary-colors"],
2188
- "palette": ["#E63946", "#F1FAEE", "#1D3557", "#FFD166"],
2189
- "visualLanguage": "rigid orthogonal grid, flat planes",
2190
- "tdmcpAffordances": ["create_glsl_shader", "create_grid_layout"],
2191
- "contentHash": "sha256:..."
2192
- }
2193
- ```
2194
-
2195
- *A shape real do card é plana: `body`, `palette` e `visualLanguage` são campos
2196
- opcionais de primeiro nível, `type` precisa ser um dos valores do enum da Creative
2197
- RAG, e `tdmcpAffordances` é `string[]` com nomes de tools sugeridas (veja
2198
- `src/creativeRag/schema.ts`). Leia o card, destile a intenção em prosa e então
2199
- repasse os affordances + paleta para a tool de Layer 1 que se encaixar — por
2200
- exemplo, "usa essa paleta e o `visualLanguage` em grade pra montar uma cena GLSL
2201
- monocromática kinética". O cookbook para aqui; o build real fica para a tool de
2202
- Layer 1 que os affordances indicam.*
2203
-
2204
- ## Biblioteca de projetos (Project RAG)
2205
-
2206
- O **repertório de projetos** é o primo dev da Creative RAG: um índice local
2207
- opt-in de *projetos, componentes e snippets* de TouchDesigner sob licença
2208
- aberta — arquivos `.toe`/`.tox` e trechos de shader puxados de fontes
2209
- curadas no GitHub — para que o agente possa basear um efeito em **código
2210
- TD real** antes de escrever qualquer node novo. O CLI é
2211
- `tdmcp project-rag <sync|index|search>`; `tdmcp://project/cards/{id}`,
2212
- `tdmcp://project/search{?q,k,license,type,operator,tags}` e o novo
2213
- `tdmcp://project/sources` são resources MCP read-only. O prompt MCP
2214
- `project_rag_context` e a tool de copiloto `project_rag_search` expõem o
2215
- mesmo índice para clientes LLM — ambos gated por
2216
- `TDMCP_RAG_ENABLED=1 && TDMCP_PROJECT_RAG_ENABLED=1`.
2217
-
2218
- ### Quando usar Project RAG vs Creative RAG
2219
-
2220
- Duas RAGs, duas perguntas. A Creative RAG responde *"como isso deveria
2221
- parecer?"* — ela traz obras, paletas e linguagem visual. A Project RAG
2222
- responde *"como isso é de fato construído no TD?"* — ela traz networks
2223
- `.toe`/`.tox` funcionais e o wiring de operators que você pode ler ou
2224
- adaptar. Misturar as duas é a ideia.
2225
-
2226
- > *"Quero montar uma peça de feedback com hand tracking. Primeiro rode o
2227
- > prompt `project_rag_context` com `query: 'hand tracking mediapipe feedback'`
2228
- > para eu ver como projetos TD reais fazem o wiring; depois escolha o de
2229
- > licença mais permissiva e adapte a cadeia de operators para uma network
2230
- > nova."*
2231
-
2232
- ```text
2233
- tdmcp://project/search?q=hand+tracking+mediapipe+feedback&k=5
2234
- →
2235
- 0.823 MediaPipe Hand Pose Demo [project] — MIT — tdmcp://project/cards/abc123…
2236
- 0.781 Real-time Hand Tracker [project] — CC-BY-4.0 — tdmcp://project/cards/def456…
2237
- 0.704 Feedback Optical Flow Hands [snippet] — Apache-2.0 — tdmcp://project/cards/789abc…
2238
- ```
2239
-
2240
- *O prompt retorna títulos, licenças e URIs `tdmcp://project/cards/{id}` —
2241
- não embeddings opacos. Inspecione cada card via `read_resource` para ver a
2242
- lista completa de operators e o caminho do binário que dá para abrir no TD.
2243
- Use a Creative RAG para **paleta/clima**; use a Project RAG para **o wiring
2244
- TD que faz a coisa se mover**.*
2245
-
2246
- ### Buscando exemplos reais antes de codar um efeito
2247
-
2248
- Quando o modelo vai *gerar* um efeito novo, o primeiro passo mais seguro é
2249
- **buscar antes de sintetizar** — descobrir o que já existe, em código, sob
2250
- uma licença que dá para reaproveitar.
2251
-
2252
- > *"Vou montar uma network de trails audio-reactive. Antes de criar qualquer
2253
- > op, rode `tdmcp project-rag search 'audio reactive trails feedback'
2254
- > --license CC0,MIT,Apache-2.0 --k 5` e cite os três cards do topo
2255
- > (título + licença + URI). Abra o de licença mais permissiva via
2256
- > `tdmcp://project/cards/{id}` e me diga quais operators ele usa. Aí a
2257
- > gente decide se copia, adapta ou constrói do zero."*
2258
-
2259
- ```bash
2260
- tdmcp project-rag search "audio reactive trails feedback" \
2261
- --license CC0,MIT,Apache-2.0 --k 5
2262
- ```
2263
-
2264
- *O CLI espelha `tdmcp creative-rag search` — mesmo layout de flags, mesma
2265
- história de reuso gated por licença. A diferença é que os cards aqui apontam
2266
- para networks TD executáveis em vez de obras estáticas, e
2267
- `--operator AudioSpectrumCHOP` filtra ainda mais para cards que de fato wirem
2268
- um op específico. Quando a busca do lado creative volta com poucos
2269
- resultados, o CLI também imprime no stderr uma dica sugerindo
2270
- `tdmcp project-rag search "<q>"` como cross-link, então o agente pivota
2271
- entre as duas bibliotecas sem perder a query.*
2272
-
2273
- > *"Hoje à noite preciso de um look rápido de organismo de neblina. Liste
2274
- > primeiro as fontes Project RAG configuradas via `tdmcp://project/sources`
2275
- > — quero saber quais estão ready vs planned antes de buscar, para não
2276
- > caçar cards que ainda não foram indexados."*
2277
-
2278
- ```json
2279
- [
2280
- { "name": "github-repo", "displayName": "GitHub seed repos", "status": "ready" },
2281
- { "name": "github-topic", "displayName": "GitHub topic scanner", "status": "ready" },
2282
- { "name": "matthewragan", "displayName": "Matthew Ragan", "status": "planned" }
2283
- ]
2284
- ```
2285
-
2286
- *`tdmcp://project/sources` é o mapa honesto do que está indexado localmente.
2287
- Uma fonte com `status: "planned"` significa que o adapter existe mas não está
2288
- wired no seu sync atual — contexto útil quando os resultados de busca vêm
2289
- mais finos do que você esperava. Combine com o prompt `project_rag_context`
2290
- para deixar o agente raciocinar sobre cobertura antes de comprometer com
2291
- um caminho de build.*
2292
-
2293
- ### Habilitando o manual do Interactive & Immersive HQ (não comercial)
2294
-
2295
- Um manual inteiro de TouchDesigner está disponível como cards `tutorial`
2296
- pesquisáveis — mas vem **desligado por padrão** porque sua licença é
2297
- **CC-BY-NC-SA-4.0** (não comercial, share-alike, atribuição obrigatória).
2298
- Ative-o apenas para uso pessoal/aprendizado:
2299
-
2300
- ```bash
2301
- export TDMCP_PROJECT_RAG_IIHQ=1
2302
- tdmcp project-rag sync --source iihq
2303
- tdmcp project-rag search "otimizar uma rede de CHOP lenta" --type tutorial --k 3
2304
- ```
2305
-
2306
- > *"Habilite a fonte de tutoriais IIHQ e encontre capítulos que expliquem GLSL
2307
- > TOPs. Cite a licença de cada card e me lembre dos termos de reuso antes de eu
2308
- > copiar qualquer coisa para um show comercial."*
2309
-
2310
- *Todo card IIHQ é carimbado de forma rígida como `CC-BY-NC-SA · não comercial` e
2311
- carrega notas de direitos dizendo para atribuir **The Interactive & Immersive
2312
- HQ**, manter o uso não comercial e compartilhar sob a mesma licença. Apenas o
2313
- **texto** do manual é indexado — nenhum binário `.tox`/`.toe`/exemplo é baixado
2314
- (a política de licença nega binários CC-BY-NC-SA por completo). Se você está
2315
- construindo para um trabalho pago, trate esses cards como leitura de referência,
2316
- não como assets para distribuir.*
2317
-
2318
- ## Trabalhando a partir das suas notas (vault Obsidian)
2319
-
2320
- Se você mantém um [vault Obsidian](/reference/tools#obsidian-vault) conectado:
2321
-
2322
- > *"Monte o set de hoje a partir da minha nota de setlist 'Sexta'."*
2323
-
2324
- > *"Gere um visual a partir do meu moodboard 'fundo do oceano'."*
2325
-
2326
- > *"Salve este visual como uma receita no meu vault, rode auto-tagging e registre no
2327
- > meu diário de shows."*
2328
-
2329
- > *"Lembre que meu estilo de show evita gradientes arco-íris chapados, prefere névoa
2330
- > fria, luz de borda âmbar e câmera lenta, e use essa memória no próximo look."*
2331
-
2332
- > *"Ache trabalhos anteriores no meu vault parecidos com 'catedral submersa, névoa
2333
- > azul, strobes lentos' e use o mais próximo como ponto de partida."*
2334
-
2335
- > *"Faça lint da minha biblioteca de receitas antes do show e me diga quais notas
2336
- > têm assets ausentes, ids duplicados ou operadores desconhecidos."*
2337
-
2338
- **O que você recebe:** uma biblioteca local de show, amigável a git.
2339
- `scaffold_vault` cria as pastas iniciais, incluindo `Memory/style.md`; as ferramentas
2340
- de salvar podem usar auto-tags determinísticas; `recall_similar_work` busca seus
2341
- próprios looks anteriores; e `lint_recipe_library` pega notas ruins antes delas
2342
- chegarem ao projetor.