opencode-skills-collection 3.1.0 → 3.1.2

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 (291) hide show
  1. package/bundled-skills/.antigravity-install-manifest.json +84 -1
  2. package/bundled-skills/2slides-ppt-generator/SKILL.md +8 -7
  3. package/bundled-skills/android-cli/SKILL.md +19 -7
  4. package/bundled-skills/android-ui-journey-testing/SKILL.md +191 -0
  5. package/bundled-skills/apple-notes-search/SKILL.md +12 -2
  6. package/bundled-skills/ask-matt/SKILL.md +92 -0
  7. package/bundled-skills/atlas-ledger/SKILL.md +8 -0
  8. package/bundled-skills/bugs-are-annoying/SKILL.md +137 -0
  9. package/bundled-skills/codebase-design/DEEPENING.md +37 -0
  10. package/bundled-skills/codebase-design/DESIGN-IT-TWICE.md +44 -0
  11. package/bundled-skills/codebase-design/SKILL.md +145 -0
  12. package/bundled-skills/codex-fable5/SKILL.md +10 -2
  13. package/bundled-skills/competitor-analysis/LICENSE.txt +21 -0
  14. package/bundled-skills/competitor-analysis/SKILL.md +434 -0
  15. package/bundled-skills/competitor-analysis/references/battle-card-subagent.md +127 -0
  16. package/bundled-skills/competitor-analysis/references/battle-card.md +91 -0
  17. package/bundled-skills/competitor-analysis/references/example-research.md +130 -0
  18. package/bundled-skills/competitor-analysis/references/report-template.html +127 -0
  19. package/bundled-skills/competitor-analysis/references/research-patterns.md +217 -0
  20. package/bundled-skills/competitor-analysis/references/workflow.md +434 -0
  21. package/bundled-skills/competitor-analysis/scripts/capture_screenshots.mjs +142 -0
  22. package/bundled-skills/competitor-analysis/scripts/compile_report.mjs +929 -0
  23. package/bundled-skills/competitor-analysis/scripts/extract_vs_names.mjs +140 -0
  24. package/bundled-skills/competitor-analysis/scripts/gate_candidates.mjs +224 -0
  25. package/bundled-skills/competitor-analysis/scripts/list_urls.mjs +90 -0
  26. package/bundled-skills/competitor-analysis/scripts/md_utils.mjs +50 -0
  27. package/bundled-skills/competitor-analysis/scripts/merge_partials.mjs +291 -0
  28. package/bundled-skills/competitor-analysis/scripts/package.json +6 -0
  29. package/bundled-skills/design-it/3d-ui/SKILL.md +259 -0
  30. package/bundled-skills/design-it/SKILL.md +170 -0
  31. package/bundled-skills/design-it/ai-native-ui/SKILL.md +295 -0
  32. package/bundled-skills/design-it/aurora-ui/SKILL.md +307 -0
  33. package/bundled-skills/design-it/bento-ui/SKILL.md +314 -0
  34. package/bundled-skills/design-it/brutalism/SKILL.md +270 -0
  35. package/bundled-skills/design-it/brutalist-typography/SKILL.md +287 -0
  36. package/bundled-skills/design-it/card-based-design/SKILL.md +262 -0
  37. package/bundled-skills/design-it/claymorphism/SKILL.md +287 -0
  38. package/bundled-skills/design-it/color-blocking/SKILL.md +278 -0
  39. package/bundled-skills/design-it/command-center-ui/SKILL.md +345 -0
  40. package/bundled-skills/design-it/cyber-y2k/SKILL.md +312 -0
  41. package/bundled-skills/design-it/cyberpunk-ui/SKILL.md +262 -0
  42. package/bundled-skills/design-it/dark-mode/SKILL.md +289 -0
  43. package/bundled-skills/design-it/dashboard-design/SKILL.md +331 -0
  44. package/bundled-skills/design-it/data-dense-design/SKILL.md +322 -0
  45. package/bundled-skills/design-it/duotone-design/SKILL.md +248 -0
  46. package/bundled-skills/design-it/editorial-design/SKILL.md +328 -0
  47. package/bundled-skills/design-it/flat-design/SKILL.md +221 -0
  48. package/bundled-skills/design-it/flat-design-2/SKILL.md +240 -0
  49. package/bundled-skills/design-it/floating-ui/SKILL.md +299 -0
  50. package/bundled-skills/design-it/frutiger-aero/SKILL.md +274 -0
  51. package/bundled-skills/design-it/glassmorphism/SKILL.md +272 -0
  52. package/bundled-skills/design-it/gradient-design/SKILL.md +309 -0
  53. package/bundled-skills/design-it/high-contrast/SKILL.md +288 -0
  54. package/bundled-skills/design-it/holographic-ui/SKILL.md +310 -0
  55. package/bundled-skills/design-it/isometric-design/SKILL.md +228 -0
  56. package/bundled-skills/design-it/layered-design/SKILL.md +247 -0
  57. package/bundled-skills/design-it/material-design/SKILL.md +275 -0
  58. package/bundled-skills/design-it/maximalism/SKILL.md +297 -0
  59. package/bundled-skills/design-it/minimalism/SKILL.md +267 -0
  60. package/bundled-skills/design-it/monochromatic-ui/SKILL.md +296 -0
  61. package/bundled-skills/design-it/neo-brutalism/SKILL.md +270 -0
  62. package/bundled-skills/design-it/neumorphism/SKILL.md +248 -0
  63. package/bundled-skills/design-it/retro-design/SKILL.md +283 -0
  64. package/bundled-skills/design-it/retro-futurism/SKILL.md +259 -0
  65. package/bundled-skills/design-it/sci-fi-interface/SKILL.md +309 -0
  66. package/bundled-skills/design-it/skeuomorphism/SKILL.md +280 -0
  67. package/bundled-skills/design-it/soft-pastel/SKILL.md +307 -0
  68. package/bundled-skills/design-it/spatial-computing-ui/SKILL.md +300 -0
  69. package/bundled-skills/design-it/spatial-design/SKILL.md +268 -0
  70. package/bundled-skills/design-it/swiss-design/SKILL.md +293 -0
  71. package/bundled-skills/design-it/synthwave/SKILL.md +257 -0
  72. package/bundled-skills/design-it/tile-design/SKILL.md +297 -0
  73. package/bundled-skills/design-it/typography-first/SKILL.md +247 -0
  74. package/bundled-skills/design-it/vaporwave/SKILL.md +331 -0
  75. package/bundled-skills/design-it/vibrant-maximalism/SKILL.md +291 -0
  76. package/bundled-skills/design-it/widget-based-design/SKILL.md +274 -0
  77. package/bundled-skills/design-it/y2k-design/SKILL.md +268 -0
  78. package/bundled-skills/diagnosing-bugs/SKILL.md +165 -0
  79. package/bundled-skills/diagnosing-bugs/scripts/hitl-loop.template.sh +41 -0
  80. package/bundled-skills/docs/contributors/skill-scoring.md +235 -0
  81. package/bundled-skills/docs/integrations/jetski-cortex.md +3 -3
  82. package/bundled-skills/docs/integrations/jetski-gemini-loader/README.md +1 -1
  83. package/bundled-skills/docs/maintainers/repo-growth-seo.md +3 -3
  84. package/bundled-skills/docs/maintainers/skills-update-guide.md +1 -1
  85. package/bundled-skills/docs/users/bundles.md +145 -1
  86. package/bundled-skills/docs/users/claude-code-skills.md +1 -1
  87. package/bundled-skills/docs/users/gemini-cli-skills.md +1 -1
  88. package/bundled-skills/docs/users/getting-started.md +1 -1
  89. package/bundled-skills/docs/users/kiro-integration.md +1 -1
  90. package/bundled-skills/docs/users/specialized-plugin-roadmap.md +11 -4
  91. package/bundled-skills/docs/users/usage.md +4 -4
  92. package/bundled-skills/docs/users/visual-guide.md +4 -4
  93. package/bundled-skills/domain-modeling/ADR-FORMAT.md +47 -0
  94. package/bundled-skills/domain-modeling/CONTEXT-FORMAT.md +60 -0
  95. package/bundled-skills/domain-modeling/SKILL.md +105 -0
  96. package/bundled-skills/dos-verify-done-claims/SKILL.md +16 -4
  97. package/bundled-skills/ecl-harness-engineer/agents/creator-config.md +1 -1
  98. package/bundled-skills/ecl-harness-engineer/references/environment-config-guide.md +2 -2
  99. package/bundled-skills/ecl-harness-engineer/references/environment-detection-guide.md +4 -4
  100. package/bundled-skills/event-staffing-ordering/SKILL.md +4 -0
  101. package/bundled-skills/grill-me/SKILL.md +36 -0
  102. package/bundled-skills/grill-with-docs/SKILL.md +36 -0
  103. package/bundled-skills/grilling/SKILL.md +39 -0
  104. package/bundled-skills/handoff/SKILL.md +45 -0
  105. package/bundled-skills/image-generator/.env.example +7 -0
  106. package/bundled-skills/image-generator/SKILL.md +509 -0
  107. package/bundled-skills/improve-codebase-architecture/HTML-REPORT.md +123 -0
  108. package/bundled-skills/improve-codebase-architecture/SKILL.md +97 -0
  109. package/bundled-skills/learn/SKILL.md +156 -0
  110. package/bundled-skills/lesson-generator/SKILL.md +90 -0
  111. package/bundled-skills/llm-council/.env.example +7 -0
  112. package/bundled-skills/llm-council/SKILL.md +602 -0
  113. package/bundled-skills/loop-library/SKILL.md +208 -0
  114. package/bundled-skills/loop-library/agents/openai.yaml +4 -0
  115. package/bundled-skills/loop-library/references/catalog.md +270 -0
  116. package/bundled-skills/lovable-cleanup/SKILL.md +9 -7
  117. package/bundled-skills/macos-screen-recorder/SKILL.md +9 -1
  118. package/bundled-skills/mailtrap-managing-contacts/SKILL.md +112 -0
  119. package/bundled-skills/mailtrap-sending-emails/SKILL.md +167 -0
  120. package/bundled-skills/mailtrap-setting-up-sending-domain/SKILL.md +77 -0
  121. package/bundled-skills/mailtrap-testing-with-sandbox/SKILL.md +110 -0
  122. package/bundled-skills/prototype/LOGIC.md +79 -0
  123. package/bundled-skills/prototype/SKILL.md +62 -0
  124. package/bundled-skills/prototype/UI.md +112 -0
  125. package/bundled-skills/screenstudio-alt/SKILL.md +9 -1
  126. package/bundled-skills/setup-matt-pocock-skills/SKILL.md +158 -0
  127. package/bundled-skills/setup-matt-pocock-skills/domain.md +51 -0
  128. package/bundled-skills/setup-matt-pocock-skills/issue-tracker-github.md +34 -0
  129. package/bundled-skills/setup-matt-pocock-skills/issue-tracker-gitlab.md +35 -0
  130. package/bundled-skills/setup-matt-pocock-skills/issue-tracker-local.md +19 -0
  131. package/bundled-skills/setup-matt-pocock-skills/triage-labels.md +15 -0
  132. package/bundled-skills/survey-generator/LICENSE +21 -0
  133. package/bundled-skills/survey-generator/SKILL.md +143 -0
  134. package/bundled-skills/survey-generator/build_artifact.py +208 -0
  135. package/bundled-skills/survey-generator/examples/agentic-engineering/research_bundle.json +1196 -0
  136. package/bundled-skills/survey-generator/examples/agentic-engineering/survey.html +706 -0
  137. package/bundled-skills/survey-generator/style_spec.json +85 -0
  138. package/bundled-skills/survey-generator/templates/research_bundle_template.json +69 -0
  139. package/bundled-skills/tdd/SKILL.md +139 -0
  140. package/bundled-skills/tdd/mocking.md +59 -0
  141. package/bundled-skills/tdd/refactoring.md +10 -0
  142. package/bundled-skills/tdd/tests.md +61 -0
  143. package/bundled-skills/teach/GLOSSARY-FORMAT.md +35 -0
  144. package/bundled-skills/teach/LEARNING-RECORD-FORMAT.md +46 -0
  145. package/bundled-skills/teach/MISSION-FORMAT.md +31 -0
  146. package/bundled-skills/teach/RESOURCES-FORMAT.md +32 -0
  147. package/bundled-skills/teach/SKILL.md +169 -0
  148. package/bundled-skills/to-issues/SKILL.md +115 -0
  149. package/bundled-skills/to-prd/SKILL.md +104 -0
  150. package/bundled-skills/tools-page-seo-optimizer/SKILL.md +616 -0
  151. package/bundled-skills/triage/AGENT-BRIEF.md +207 -0
  152. package/bundled-skills/triage/OUT-OF-SCOPE.md +105 -0
  153. package/bundled-skills/triage/SKILL.md +143 -0
  154. package/bundled-skills/vibecode-production-qa-validator/SKILL.md +371 -141
  155. package/bundled-skills/wiki-builder/SKILL.md +157 -0
  156. package/bundled-skills/wiki-builder/agents/openai.yaml +5 -0
  157. package/bundled-skills/wiki-builder/references/wiki-flavors.md +98 -0
  158. package/bundled-skills/wiki-builder/scripts/init_wiki.sh +105 -0
  159. package/bundled-skills/wiki-builder/templates/index.md +20 -0
  160. package/bundled-skills/wiki-builder/templates/maintenance-log.md +7 -0
  161. package/bundled-skills/wiki-builder/templates/prompts/compile-concept-page.md +12 -0
  162. package/bundled-skills/wiki-builder/templates/prompts/compile-index.md +11 -0
  163. package/bundled-skills/wiki-builder/templates/prompts/compile-source-page.md +12 -0
  164. package/bundled-skills/wiki-builder/templates/prompts/lint-wiki.md +10 -0
  165. package/bundled-skills/wiki-builder/templates/prompts/query-and-file.md +11 -0
  166. package/bundled-skills/wiki-builder/templates/sources.md +9 -0
  167. package/bundled-skills/wiki-builder/templates/wiki.config.md +53 -0
  168. package/bundled-skills/writing-great-skills/GLOSSARY.md +181 -0
  169. package/bundled-skills/writing-great-skills/SKILL.md +111 -0
  170. package/bundled-skills/yao-meta-skill/SKILL.md +86 -0
  171. package/bundled-skills/yao-meta-skill/agents/interface.yaml +26 -0
  172. package/bundled-skills/yao-meta-skill/manifest.json +24 -0
  173. package/bundled-skills/yao-meta-skill/references/artifact-design-doctrine.md +49 -0
  174. package/bundled-skills/yao-meta-skill/references/authoring-discipline.md +78 -0
  175. package/bundled-skills/yao-meta-skill/references/autonomous-adaptation.md +65 -0
  176. package/bundled-skills/yao-meta-skill/references/distribution-registry-method.md +60 -0
  177. package/bundled-skills/yao-meta-skill/references/eval-playbook.md +69 -0
  178. package/bundled-skills/yao-meta-skill/references/gate-selection.md +68 -0
  179. package/bundled-skills/yao-meta-skill/references/governance.md +134 -0
  180. package/bundled-skills/yao-meta-skill/references/human-review-template.md +54 -0
  181. package/bundled-skills/yao-meta-skill/references/intent-dialogue.md +138 -0
  182. package/bundled-skills/yao-meta-skill/references/iteration-philosophy.md +30 -0
  183. package/bundled-skills/yao-meta-skill/references/non-skill-decision-tree.md +39 -0
  184. package/bundled-skills/yao-meta-skill/references/operating-modes.md +107 -0
  185. package/bundled-skills/yao-meta-skill/references/output-eval-method.md +113 -0
  186. package/bundled-skills/yao-meta-skill/references/output-quality-risk.md +41 -0
  187. package/bundled-skills/yao-meta-skill/references/output-visual-quality.md +53 -0
  188. package/bundled-skills/yao-meta-skill/references/packaging-contracts.md +70 -0
  189. package/bundled-skills/yao-meta-skill/references/pattern-extraction-doctrine.md +76 -0
  190. package/bundled-skills/yao-meta-skill/references/platform-capability-matrix.md +49 -0
  191. package/bundled-skills/yao-meta-skill/references/prompt-engineering-doctrine.md +76 -0
  192. package/bundled-skills/yao-meta-skill/references/qa-ladder.md +57 -0
  193. package/bundled-skills/yao-meta-skill/references/reference-scan.md +126 -0
  194. package/bundled-skills/yao-meta-skill/references/regression-cause-taxonomy.md +80 -0
  195. package/bundled-skills/yao-meta-skill/references/resource-boundaries.md +120 -0
  196. package/bundled-skills/yao-meta-skill/references/review-studio-method.md +87 -0
  197. package/bundled-skills/yao-meta-skill/references/review-waiver-method.md +76 -0
  198. package/bundled-skills/yao-meta-skill/references/runtime-conformance-method.md +21 -0
  199. package/bundled-skills/yao-meta-skill/references/skill-archetypes.md +86 -0
  200. package/bundled-skills/yao-meta-skill/references/skill-atlas-method.md +35 -0
  201. package/bundled-skills/yao-meta-skill/references/skill-engineering-method.md +210 -0
  202. package/bundled-skills/yao-meta-skill/references/skill-ir-method.md +41 -0
  203. package/bundled-skills/yao-meta-skill/references/skillops-decision-policy.md +53 -0
  204. package/bundled-skills/yao-meta-skill/references/systems-thinking-doctrine.md +75 -0
  205. package/bundled-skills/yao-meta-skill/references/telemetry-drift-method.md +182 -0
  206. package/bundled-skills/yao-meta-skill/references/trust-security-method.md +79 -0
  207. package/bundled-skills/yao-meta-skill/references/user-memory-policy.md +35 -0
  208. package/bundled-skills/youtube-notetaker/SKILL.md +209 -0
  209. package/bundled-skills/youtube-notetaker/reference/artifact.html +269 -0
  210. package/bundled-skills/youtube-notetaker/scripts/contact_sheet.py +53 -0
  211. package/bundled-skills/youtube-notetaker/scripts/detect_slides.sh +19 -0
  212. package/bundled-skills/youtube-notetaker/scripts/download.sh +24 -0
  213. package/bundled-skills/youtube-notetaker/scripts/extract_slides.py +43 -0
  214. package/bundled-skills/youtube-notetaker/scripts/serve.py +222 -0
  215. package/bundled-skills/youtube-notetaker/scripts/setup.sh +27 -0
  216. package/bundled-skills/youtube-notetaker/scripts/verify.sh +31 -0
  217. package/bundled-skills/youtube-notetaker/scripts/vtt_to_transcript.py +59 -0
  218. package/bundled-skills/youtube-notetaker/scripts/write_library_item.py +69 -0
  219. package/package.json +1 -1
  220. package/skills_index.json +2013 -330
  221. package/bundled-skills/ai-md/SKILL.md +0 -523
  222. package/bundled-skills/atlas-contract/SKILL.md +0 -650
  223. package/bundled-skills/busybox-on-windows/SKILL.md +0 -40
  224. package/bundled-skills/monte-carlo-prevent/SKILL.md +0 -257
  225. package/bundled-skills/monte-carlo-prevent/references/TROUBLESHOOTING.md +0 -23
  226. package/bundled-skills/monte-carlo-prevent/references/parameters.md +0 -32
  227. package/bundled-skills/monte-carlo-prevent/references/workflows.md +0 -478
  228. package/bundled-skills/monte-carlo-push-ingestion/SKILL.md +0 -372
  229. package/bundled-skills/monte-carlo-push-ingestion/references/anomaly-detection.md +0 -87
  230. package/bundled-skills/monte-carlo-push-ingestion/references/custom-lineage.md +0 -203
  231. package/bundled-skills/monte-carlo-push-ingestion/references/direct-http-api.md +0 -207
  232. package/bundled-skills/monte-carlo-push-ingestion/references/prerequisites.md +0 -150
  233. package/bundled-skills/monte-carlo-push-ingestion/references/push-lineage.md +0 -160
  234. package/bundled-skills/monte-carlo-push-ingestion/references/push-metadata.md +0 -158
  235. package/bundled-skills/monte-carlo-push-ingestion/references/push-query-logs.md +0 -219
  236. package/bundled-skills/monte-carlo-push-ingestion/references/validation.md +0 -257
  237. package/bundled-skills/monte-carlo-push-ingestion/scripts/sample_verify.py +0 -357
  238. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery/collect_and_push_lineage.py +0 -70
  239. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery/collect_and_push_metadata.py +0 -65
  240. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery/collect_and_push_query_logs.py +0 -70
  241. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery/collect_lineage.py +0 -214
  242. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery/collect_metadata.py +0 -160
  243. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery/collect_query_logs.py +0 -164
  244. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery/push_lineage.py +0 -198
  245. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery/push_metadata.py +0 -193
  246. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery/push_query_logs.py +0 -207
  247. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery-iceberg/collect_and_push_metadata.py +0 -71
  248. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery-iceberg/collect_and_push_query_logs.py +0 -64
  249. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery-iceberg/collect_metadata.py +0 -253
  250. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery-iceberg/collect_query_logs.py +0 -149
  251. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery-iceberg/push_metadata.py +0 -190
  252. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/bigquery-iceberg/push_query_logs.py +0 -208
  253. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/databricks/collect_and_push_lineage.py +0 -83
  254. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/databricks/collect_and_push_metadata.py +0 -77
  255. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/databricks/collect_and_push_query_logs.py +0 -83
  256. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/databricks/collect_lineage.py +0 -240
  257. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/databricks/collect_metadata.py +0 -212
  258. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/databricks/collect_query_logs.py +0 -204
  259. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/databricks/push_lineage.py +0 -192
  260. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/databricks/push_metadata.py +0 -178
  261. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/databricks/push_query_logs.py +0 -200
  262. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/hive/collect_and_push_lineage.py +0 -119
  263. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/hive/collect_and_push_metadata.py +0 -119
  264. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/hive/collect_and_push_query_logs.py +0 -117
  265. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/hive/collect_lineage.py +0 -265
  266. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/hive/collect_metadata.py +0 -313
  267. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/hive/collect_query_logs.py +0 -284
  268. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/hive/push_lineage.py +0 -309
  269. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/hive/push_metadata.py +0 -245
  270. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/hive/push_query_logs.py +0 -255
  271. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/redshift/collect_and_push_lineage.py +0 -78
  272. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/redshift/collect_and_push_metadata.py +0 -80
  273. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/redshift/collect_and_push_query_logs.py +0 -88
  274. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/redshift/collect_lineage.py +0 -235
  275. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/redshift/collect_metadata.py +0 -219
  276. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/redshift/collect_query_logs.py +0 -239
  277. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/redshift/push_lineage.py +0 -178
  278. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/redshift/push_metadata.py +0 -178
  279. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/redshift/push_query_logs.py +0 -196
  280. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/snowflake/collect_and_push_lineage.py +0 -154
  281. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/snowflake/collect_and_push_metadata.py +0 -137
  282. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/snowflake/collect_and_push_query_logs.py +0 -137
  283. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/snowflake/collect_lineage.py +0 -349
  284. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/snowflake/collect_metadata.py +0 -329
  285. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/snowflake/collect_query_logs.py +0 -254
  286. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/snowflake/push_lineage.py +0 -307
  287. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/snowflake/push_metadata.py +0 -228
  288. package/bundled-skills/monte-carlo-push-ingestion/scripts/templates/snowflake/push_query_logs.py +0 -248
  289. package/bundled-skills/monte-carlo-push-ingestion/scripts/test_template_sdk_usage.py +0 -340
  290. package/bundled-skills/skill-optimizer/SKILL.md +0 -271
  291. package/bundled-skills/using-superpowers/SKILL.md +0 -98
@@ -0,0 +1,300 @@
1
+ ---
2
+ name: spatial-computing-ui
3
+ description: Web and App implementation guide for Spatial Computing UI. Trigger when user wants floating elements, environmental awareness, and Apple Vision Pro style.
4
+ date_added: "2026-06-17"
5
+ risk: safe
6
+ source: self
7
+ source_type: self
8
+ ---
9
+
10
+ # Spatial Computing UI
11
+
12
+ > "A step beyond Spatial Design. Fully 3D windows floating in augmented reality."
13
+
14
+
15
+ ## When to Use
16
+ Use this sub-style when the user's request matches the aesthetic described above. This is a child reference of the `design-it` skill and is not meant to be triggered directly.
17
+
18
+ ## Core Principles
19
+ 1. **Z-Space Hierarchy**: Not just drop shadows, but actual 3D distance. Modals float 10px *in front of* the main window.
20
+ 2. **Gaze-Based Interaction Cues**: Elements highlight vividly when hovered, anticipating eye-tracking or precise pointer control.
21
+ 3. **Glass and Light**: Windows are thick sheets of frosted glass that bend light and cast soft shadows onto the physical environment.
22
+
23
+ ## Visual DNA
24
+ - **Colors**: Relies entirely on the background environment. Uses purely translucent whites (`rgba(255,255,255,0.x)`) and blacks.
25
+ - **Typography**: `SF Pro`. Heavy use of varied font weights (Regular, Semibold, Bold) to create hierarchy.
26
+ - **Shapes**: High border radii (`24px`-`32px`). Everything is a rounded rectangle or a perfect circle.
27
+
28
+ ## Web Implementation
29
+ - Best emulated using CSS 3D transforms to simulate the user's perspective.
30
+ - **CSS Example**:
31
+ ```css
32
+ body {
33
+ /* Simulate the physical room */
34
+ background: url('living-room.jpg') center/cover;
35
+ perspective: 1200px;
36
+ display: flex;
37
+ justify-content: center;
38
+ align-items: center;
39
+ height: 100vh;
40
+ }
41
+
42
+ .spatial-window {
43
+ width: 800px;
44
+ height: 600px;
45
+ border-radius: 32px;
46
+
47
+ /* The Glass Material */
48
+ background: rgba(255, 255, 255, 0.15);
49
+ backdrop-filter: blur(50px) saturate(200%);
50
+ -webkit-backdrop-filter: blur(50px) saturate(200%);
51
+
52
+ /* Specular Highlights */
53
+ border: 1px solid rgba(255, 255, 255, 0.4);
54
+ box-shadow:
55
+ inset 0 1px 2px rgba(255, 255, 255, 0.8),
56
+ 0 30px 60px rgba(0, 0, 0, 0.3);
57
+
58
+ /* 3D Positioning */
59
+ transform: translateZ(-100px);
60
+ transform-style: preserve-3d;
61
+ }
62
+
63
+ .spatial-modal {
64
+ /* Floating in front of the main window */
65
+ position: absolute;
66
+ top: 50%; left: 50%;
67
+ transform: translate(-50%, -50%) translateZ(50px);
68
+
69
+ background: rgba(255, 255, 255, 0.6); /* More opaque */
70
+ backdrop-filter: blur(30px);
71
+ border-radius: 24px;
72
+ padding: 30px;
73
+ box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
74
+ }
75
+
76
+ .spatial-btn {
77
+ /* Gaze/Hover interaction */
78
+ background: rgba(0,0,0,0.05);
79
+ transition: all 0.2s cubic-bezier(0.2, 0.8, 0.2, 1);
80
+ }
81
+ .spatial-btn:hover {
82
+ background: rgba(255,255,255,0.4);
83
+ transform: translateZ(10px) scale(1.05);
84
+ box-shadow: 0 10px 20px rgba(0,0,0,0.1);
85
+ }
86
+ ```
87
+
88
+ ## App Implementation
89
+
90
+ ### SwiftUI (visionOS Native / iOS emulation)
91
+ ```swift
92
+ struct SpatialComputingView: View {
93
+ var body: some View {
94
+ ZStack {
95
+ // Simulated room environment
96
+ Image("living-room")
97
+ .resizable()
98
+ .aspectRatio(contentMode: .fill)
99
+ .ignoresSafeArea()
100
+
101
+ // Spatial Window
102
+ VStack(spacing: 24) {
103
+ Text("Spatial Window")
104
+ .font(.title).fontWeight(.bold)
105
+ .foregroundColor(.white)
106
+
107
+ // Gaze-reactive button
108
+ Button(action: {}) {
109
+ Text("Focus Me")
110
+ .fontWeight(.semibold)
111
+ .foregroundColor(.white)
112
+ .padding(.horizontal, 32)
113
+ .padding(.vertical, 16)
114
+ // .hoverEffect() is magic on visionOS/iPadOS
115
+ // .hoverEffect(.highlight)
116
+ }
117
+ .background(Color.black.opacity(0.2))
118
+ .clipShape(Capsule())
119
+ }
120
+ .padding(60)
121
+ // The magic glass material
122
+ .background(.ultraThinMaterial)
123
+ .cornerRadius(32)
124
+ // Specular edge highlight
125
+ .overlay(
126
+ RoundedRectangle(cornerRadius: 32)
127
+ .stroke(Color.white.opacity(0.4), lineWidth: 1)
128
+ )
129
+ // Environmental shadow
130
+ .shadow(color: .black.opacity(0.3), radius: 40, y: 30)
131
+
132
+ // Z-Space Modal simulation (if on iOS)
133
+ // On visionOS, this would be a separate window volume
134
+ Text("Floating Modal")
135
+ .foregroundColor(.white)
136
+ .padding(30)
137
+ .background(.thinMaterial)
138
+ .cornerRadius(24)
139
+ .shadow(color: .black.opacity(0.4), radius: 30, y: 20)
140
+ .offset(x: 100, y: 100)
141
+ }
142
+ }
143
+ }
144
+ ```
145
+ - Use `.ultraThinMaterial` for the base windows and `.thinMaterial` for floating popovers so they feel more opaque as they get closer to the eye.
146
+ - Use `.hoverEffect()` extensively if targeting iPadOS or visionOS.
147
+
148
+ ### Flutter
149
+ ```dart
150
+ import 'dart:ui';
151
+
152
+ class SpatialComputingScreen extends StatelessWidget {
153
+ @override
154
+ Widget build(BuildContext context) {
155
+ return Scaffold(
156
+ body: Stack(
157
+ fit: StackFit.expand,
158
+ children: [
159
+ // Simulated Environment
160
+ Image.asset('assets/living-room.jpg', fit: BoxFit.cover),
161
+
162
+ Center(
163
+ child: ClipRRect(
164
+ borderRadius: BorderRadius.circular(32),
165
+ child: BackdropFilter(
166
+ filter: ImageFilter.blur(sigmaX: 40.0, sigmaY: 40.0), // Heavy blur
167
+ child: Container(
168
+ width: 600, height: 400,
169
+ decoration: BoxDecoration(
170
+ color: Colors.white.withOpacity(0.15), // Glass tint
171
+ borderRadius: BorderRadius.circular(32),
172
+ border: Border.all(color: Colors.white.withOpacity(0.4), width: 1), // Specular highlight
173
+ // Note: BoxShadow won't render under BackdropFilter nicely unless wrapped in a separate PhysicalModel
174
+ ),
175
+ child: Center(
176
+ child: Column(
177
+ mainAxisAlignment: MainAxisAlignment.center,
178
+ children: [
179
+ const Text('Spatial Window', style: TextStyle(color: Colors.white, fontSize: 32, fontWeight: FontWeight.bold)),
180
+ const SizedBox(height: 32),
181
+ // Simulated Gaze Button
182
+ InkWell(
183
+ onTap: () {},
184
+ borderRadius: BorderRadius.circular(50),
185
+ hoverColor: Colors.white.withOpacity(0.4), // Reacts to mouse/gaze
186
+ child: Container(
187
+ padding: const EdgeInsets.symmetric(horizontal: 32, vertical: 16),
188
+ decoration: BoxDecoration(color: Colors.black.withOpacity(0.2), borderRadius: BorderRadius.circular(50)),
189
+ child: const Text('Focus Me', style: TextStyle(color: Colors.white, fontSize: 18)),
190
+ ),
191
+ )
192
+ ],
193
+ ),
194
+ ),
195
+ ),
196
+ ),
197
+ ),
198
+ ),
199
+ ],
200
+ ),
201
+ );
202
+ }
203
+ }
204
+ ```
205
+ - You must wrap `BackdropFilter` inside a `ClipRRect` to give the blurred glass rounded corners.
206
+ - `hoverColor` on `InkWell` simulates the gaze-highlighting.
207
+
208
+ ### React Native
209
+ ```jsx
210
+ // REQUIRES: @react-native-community/blur
211
+ import { BlurView } from '@react-native-community/blur';
212
+
213
+ const SpatialComputingScreen = () => {
214
+ return (
215
+ <ImageBackground source={{uri: 'room_bg'}} style={{ flex: 1, justifyContent: 'center', alignItems: 'center' }}>
216
+
217
+ {/* Spatial Window */}
218
+ <View style={{
219
+ width: '90%', height: 400,
220
+ shadowColor: '#000', shadowOffset: { width: 0, height: 30 },
221
+ shadowOpacity: 0.3, shadowRadius: 40, elevation: 20
222
+ }}>
223
+ <BlurView
224
+ style={{ flex: 1, borderRadius: 32, borderWidth: 1, borderColor: 'rgba(255,255,255,0.4)', padding: 40, justifyContent: 'center', alignItems: 'center' }}
225
+ blurType="light"
226
+ blurAmount={30}
227
+ reducedTransparencyFallbackColor="gray"
228
+ >
229
+ <Text style={{ color: '#FFF', fontSize: 32, fontWeight: 'bold', marginBottom: 32 }}>
230
+ Spatial Window
231
+ </Text>
232
+
233
+ {/* Touchable simulating Gaze */}
234
+ <TouchableOpacity style={{
235
+ backgroundColor: 'rgba(0,0,0,0.2)', paddingVertical: 16, paddingHorizontal: 32, borderRadius: 50
236
+ }}>
237
+ <Text style={{ color: '#FFF', fontSize: 18, fontWeight: '600' }}>Focus Me</Text>
238
+ </TouchableOpacity>
239
+ </BlurView>
240
+ </View>
241
+
242
+ </ImageBackground>
243
+ );
244
+ };
245
+ ```
246
+ - React Native's core cannot do background blur. You *must* install `@react-native-community/blur`.
247
+ - Apply shadows to a wrapper `View`, and put the `BlurView` inside it with `borderRadius` and `borderWidth`.
248
+
249
+ ### Jetpack Compose
250
+ ```kotlin
251
+ @Composable
252
+ fun SpatialComputingScreen() {
253
+ Box(modifier = Modifier.fillMaxSize()) {
254
+ // Environment
255
+ Image(painterResource(R.drawable.living_room), contentDescription = null, contentScale = ContentScale.Crop, modifier = Modifier.fillMaxSize())
256
+
257
+ // Spatial Window
258
+ Box(
259
+ modifier = Modifier
260
+ .align(Alignment.Center)
261
+ .size(600.dp, 400.dp)
262
+ // Note: Native Android background blur requires Android 12+ (RenderEffect)
263
+ .graphicsLayer {
264
+ renderEffect = RenderEffect.createBlurEffect(40f, 40f, Shader.TileMode.DECAL).asComposeRenderEffect()
265
+ clip = true
266
+ shape = RoundedCornerShape(32.dp)
267
+ }
268
+ .background(Color.White.copy(alpha = 0.15f))
269
+ .border(1.dp, Color.White.copy(alpha = 0.4f), RoundedCornerShape(32.dp))
270
+ .padding(40.dp),
271
+ contentAlignment = Alignment.Center
272
+ ) {
273
+ Column(horizontalAlignment = Alignment.CenterHorizontally) {
274
+ Text("Spatial Window", color = Color.White, fontSize = 32.sp, fontWeight = FontWeight.Bold)
275
+ Spacer(Modifier.height(32.dp))
276
+
277
+ // Button
278
+ Box(
279
+ modifier = Modifier
280
+ .background(Color.Black.copy(alpha = 0.2f), CircleShape)
281
+ .clickable { }
282
+ .padding(horizontal = 32.dp, vertical = 16.dp)
283
+ ) {
284
+ Text("Focus Me", color = Color.White, fontSize = 18.sp, fontWeight = FontWeight.SemiBold)
285
+ }
286
+ }
287
+ }
288
+ }
289
+ }
290
+ ```
291
+ - On Android 12+, use `RenderEffect.createBlurEffect` applied to the `graphicsLayer` to blur the UI *behind* the compose element.
292
+ - The `border` modifier applies the bright specular rim-light crucial to glass effects.
293
+
294
+ ## Do's and Don'ts
295
+ - **DO**: Create a distinct visual pop (size increase and shadow depth increase) on hover/focus to simulate the gaze-tracking interaction of Spatial Computing.
296
+ - **DON'T**: Use flat, opaque colors for the main windows. They must be glass.
297
+
298
+ ## Limitations
299
+ - This is a styling reference and does not replace environment-specific validation, accessibility testing, or expert review.
300
+ - Ensure appropriate contrast ratios and responsive behaviors are verified separately.
@@ -0,0 +1,268 @@
1
+ ---
2
+ name: spatial-design
3
+ description: Web and App implementation guide for Spatial Design. Trigger when user wants environment-aware layouts, Apple Vision Pro inspiration, and mixed reality aesthetics.
4
+ date_added: "2026-06-17"
5
+ risk: safe
6
+ source: self
7
+ source_type: self
8
+ ---
9
+
10
+ # Spatial Design
11
+
12
+ > "UI that belongs in the room with you. Transparent, glass-like panels that react to the lighting of the physical space."
13
+
14
+
15
+ ## When to Use
16
+ Use this sub-style when the user's request matches the aesthetic described above. This is a child reference of the `design-it` skill and is not meant to be triggered directly.
17
+
18
+ ## Core Principles
19
+ 1. **Environmental Transparency**: The UI acts like a glass pane. It is deeply reliant on background blur, but specifically aims to let the environment (or a simulated environment image) dictate the mood.
20
+ 2. **Dynamic Lighting**: Elements respond to cursor position as if a flashlight is shining on them.
21
+ 3. **Subtle Volume**: Not flat, but not extremely 3D. Elements have a very thin rim of light around the edge (specular highlight).
22
+
23
+ ## Visual DNA
24
+ - **Colors**: Almost exclusively uses `rgba()` white or black. The actual color comes entirely from the background environment.
25
+ - **Typography**: Extremely sharp, high legibility. Often uses varying font weights to establish hierarchy without relying on color. Apple's `SF Pro` is the gold standard here.
26
+ - **Icons**: Outlined, high-legibility glyphs.
27
+
28
+ ## Web Implementation
29
+ - **CSS Example**:
30
+ ```css
31
+ body {
32
+ /* Needs a complex background to look right */
33
+ background: url('room-environment.jpg') cover;
34
+ }
35
+
36
+ .spatial-panel {
37
+ /* The core material */
38
+ background: rgba(255, 255, 255, 0.2); /* Very sheer */
39
+ backdrop-filter: blur(40px) saturate(150%);
40
+ -webkit-backdrop-filter: blur(40px) saturate(150%);
41
+
42
+ border-radius: 32px;
43
+ padding: 40px;
44
+
45
+ /* The specular rim light */
46
+ box-shadow:
47
+ inset 0 1px 1px rgba(255,255,255,0.6),
48
+ inset 0 0 1px 1px rgba(255,255,255,0.2),
49
+ 0 24px 48px rgba(0,0,0,0.1);
50
+ }
51
+
52
+ .spatial-btn {
53
+ background: rgba(0,0,0,0.1);
54
+ color: white;
55
+ border-radius: 20px;
56
+ padding: 12px 24px;
57
+ backdrop-filter: blur(10px);
58
+ transition: all 0.2s;
59
+ }
60
+
61
+ .spatial-btn:hover {
62
+ background: rgba(255,255,255,0.2);
63
+ /* Highlight effect */
64
+ box-shadow: inset 0 0 20px rgba(255,255,255,0.4);
65
+ }
66
+ ```
67
+
68
+ ## App Implementation
69
+
70
+ ### SwiftUI
71
+ ```swift
72
+ struct SpatialDesignView: View {
73
+ var body: some View {
74
+ ZStack {
75
+ // Environment background
76
+ Image("room-environment")
77
+ .resizable()
78
+ .aspectRatio(contentMode: .fill)
79
+ .ignoresSafeArea()
80
+
81
+ // Spatial Panel
82
+ VStack(spacing: 24) {
83
+ Text("Environmental UI")
84
+ .font(.title).fontWeight(.bold)
85
+ .foregroundColor(.white)
86
+
87
+ Button(action: {}) {
88
+ Text("Interact")
89
+ .foregroundColor(.white)
90
+ .padding(.horizontal, 32)
91
+ .padding(.vertical, 16)
92
+ }
93
+ .background(.ultraThinMaterial)
94
+ .clipShape(Capsule())
95
+ .overlay(Capsule().stroke(Color.white.opacity(0.3), lineWidth: 1))
96
+ }
97
+ .padding(40)
98
+ .background(.ultraThinMaterial) // The core spatial material
99
+ .cornerRadius(32)
100
+ // Specular rim light
101
+ .overlay(
102
+ RoundedRectangle(cornerRadius: 32)
103
+ .stroke(
104
+ LinearGradient(
105
+ colors: [.white.opacity(0.6), .white.opacity(0.1)],
106
+ startPoint: .topLeading, endPoint: .bottomTrailing
107
+ ),
108
+ lineWidth: 1
109
+ )
110
+ )
111
+ // Very soft, diffuse shadow
112
+ .shadow(color: .black.opacity(0.1), radius: 40, y: 20)
113
+ }
114
+ }
115
+ }
116
+ ```
117
+ - `.background(.ultraThinMaterial)` is exactly what Apple uses for this aesthetic.
118
+ - The specular highlight is critical. Use an `.overlay` with a `LinearGradient` stroke to simulate a light source hitting the top-left edge of the glass.
119
+
120
+ ### Flutter
121
+ ```dart
122
+ import 'dart:ui';
123
+
124
+ class SpatialDesignScreen extends StatelessWidget {
125
+ @override
126
+ Widget build(BuildContext context) {
127
+ return Scaffold(
128
+ body: Stack(
129
+ fit: StackFit.expand,
130
+ children: [
131
+ Image.asset('assets/room-environment.jpg', fit: BoxFit.cover),
132
+
133
+ Center(
134
+ child: ClipRRect(
135
+ borderRadius: BorderRadius.circular(32),
136
+ child: BackdropFilter(
137
+ filter: ImageFilter.blur(sigmaX: 30.0, sigmaY: 30.0),
138
+ child: Container(
139
+ width: 350,
140
+ padding: const EdgeInsets.all(40),
141
+ decoration: BoxDecoration(
142
+ color: Colors.white.withOpacity(0.1),
143
+ borderRadius: BorderRadius.circular(32),
144
+ // Specular rim light
145
+ border: Border.all(color: Colors.white.withOpacity(0.4), width: 1),
146
+ ),
147
+ child: Column(
148
+ mainAxisSize: MainAxisSize.min,
149
+ children: [
150
+ const Text('Environmental UI', style: TextStyle(color: Colors.white, fontSize: 28, fontWeight: FontWeight.bold)),
151
+ const SizedBox(height: 32),
152
+
153
+ // Spatial Button
154
+ ClipRRect(
155
+ borderRadius: BorderRadius.circular(50),
156
+ child: BackdropFilter(
157
+ filter: ImageFilter.blur(sigmaX: 10.0, sigmaY: 10.0),
158
+ child: Container(
159
+ padding: const EdgeInsets.symmetric(horizontal: 32, vertical: 16),
160
+ decoration: BoxDecoration(
161
+ color: Colors.black.withOpacity(0.1),
162
+ border: Border.all(color: Colors.white.withOpacity(0.2)),
163
+ borderRadius: BorderRadius.circular(50),
164
+ ),
165
+ child: const Text('Interact', style: TextStyle(color: Colors.white)),
166
+ ),
167
+ ),
168
+ )
169
+ ],
170
+ ),
171
+ ),
172
+ ),
173
+ ),
174
+ ),
175
+ ],
176
+ ),
177
+ );
178
+ }
179
+ }
180
+ ```
181
+ - `BackdropFilter` is required to blur the background.
182
+ - Notice the button *inside* the panel also has a `BackdropFilter`. This creates nested glass, which is a hallmark of Spatial Design.
183
+
184
+ ### React Native
185
+ ```jsx
186
+ // REQUIRES: @react-native-community/blur
187
+ import { BlurView } from '@react-native-community/blur';
188
+
189
+ const SpatialDesignScreen = () => {
190
+ return (
191
+ <ImageBackground source={{uri: 'room_bg'}} style={{ flex: 1, justifyContent: 'center', alignItems: 'center' }}>
192
+
193
+ <View style={{ width: '85%', shadowColor: '#000', shadowOffset: { width: 0, height: 20 }, shadowOpacity: 0.1, shadowRadius: 40, elevation: 10 }}>
194
+ <BlurView
195
+ style={{ borderRadius: 32, borderWidth: 1, borderColor: 'rgba(255,255,255,0.4)', padding: 40, alignItems: 'center' }}
196
+ blurType="light"
197
+ blurAmount={20}
198
+ >
199
+ <Text style={{ color: '#FFF', fontSize: 28, fontWeight: 'bold', marginBottom: 32 }}>
200
+ Environmental UI
201
+ </Text>
202
+
203
+ <View style={{ borderRadius: 50, overflow: 'hidden' }}>
204
+ <BlurView blurType="dark" blurAmount={10} style={{ paddingVertical: 16, paddingHorizontal: 32, borderWidth: 1, borderColor: 'rgba(255,255,255,0.2)' }}>
205
+ <Text style={{ color: '#FFF', fontSize: 16 }}>Interact</Text>
206
+ </BlurView>
207
+ </View>
208
+ </BlurView>
209
+ </View>
210
+
211
+ </ImageBackground>
212
+ );
213
+ };
214
+ ```
215
+ - `BlurView` from `@react-native-community/blur` is the only way to achieve this.
216
+ - Use `blurType="light"` for the main panel and `blurType="dark"` for the buttons to create contrast between the glass layers.
217
+
218
+ ### Jetpack Compose
219
+ ```kotlin
220
+ @Composable
221
+ fun SpatialDesignScreen() {
222
+ Box(modifier = Modifier.fillMaxSize()) {
223
+ Image(painterResource(R.drawable.room_environment), null, contentScale = ContentScale.Crop, modifier = Modifier.fillMaxSize())
224
+
225
+ Box(
226
+ modifier = Modifier
227
+ .align(Alignment.Center)
228
+ .width(350.dp)
229
+ // Shadow goes on the outside
230
+ .shadow(20.dp, RoundedCornerShape(32.dp), spotColor = Color.Black.copy(alpha = 0.1f))
231
+ // Android 12+ Blur
232
+ .graphicsLayer {
233
+ renderEffect = RenderEffect.createBlurEffect(30f, 30f, Shader.TileMode.DECAL).asComposeRenderEffect()
234
+ clip = true
235
+ shape = RoundedCornerShape(32.dp)
236
+ }
237
+ .background(Color.White.copy(alpha = 0.1f))
238
+ .border(1.dp, Brush.linearGradient(listOf(Color.White.copy(alpha = 0.6f), Color.Transparent)), RoundedCornerShape(32.dp))
239
+ .padding(40.dp),
240
+ contentAlignment = Alignment.Center
241
+ ) {
242
+ Column(horizontalAlignment = Alignment.CenterHorizontally) {
243
+ Text("Environmental UI", color = Color.White, fontSize = 28.sp, fontWeight = FontWeight.Bold)
244
+ Spacer(Modifier.height(32.dp))
245
+
246
+ // Button
247
+ Box(
248
+ modifier = Modifier
249
+ .background(Color.Black.copy(alpha = 0.1f), CircleShape)
250
+ .border(1.dp, Color.White.copy(alpha = 0.2f), CircleShape)
251
+ .padding(horizontal = 32.dp, vertical = 16.dp)
252
+ ) {
253
+ Text("Interact", color = Color.White)
254
+ }
255
+ }
256
+ }
257
+ }
258
+ }
259
+ ```
260
+ - The `Brush.linearGradient` applied to the `Modifier.border` perfectly simulates the top-down rim light hitting a thick pane of glass.
261
+
262
+ ## Do's and Don'ts
263
+ - **DO**: Crank up the `saturate()` filter on the backdrop blur to make the background colors pop through the glass.
264
+ - **DON'T**: Use dark, opaque drop shadows. The UI should look like glass, which doesn't cast harsh shadows.
265
+
266
+ ## Limitations
267
+ - This is a styling reference and does not replace environment-specific validation, accessibility testing, or expert review.
268
+ - Ensure appropriate contrast ratios and responsive behaviors are verified separately.