constellai 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1993) hide show
  1. package/.next/BUILD_ID +1 -0
  2. package/.next/app-path-routes-manifest.json +54 -0
  3. package/.next/build-manifest.json +20 -0
  4. package/.next/diagnostics/build-diagnostics.json +6 -0
  5. package/.next/diagnostics/framework.json +1 -0
  6. package/.next/export-marker.json +6 -0
  7. package/.next/images-manifest.json +68 -0
  8. package/.next/next-minimal-server.js.nft.json +1 -0
  9. package/.next/next-server.js.nft.json +1 -0
  10. package/.next/package.json +1 -0
  11. package/.next/prerender-manifest.json +36 -0
  12. package/.next/react-loadable-manifest.json +14 -0
  13. package/.next/required-server-files.js +346 -0
  14. package/.next/required-server-files.json +346 -0
  15. package/.next/routes-manifest.json +368 -0
  16. package/.next/server/app/(app)/activity/page.js +2 -0
  17. package/.next/server/app/(app)/activity/page.js.nft.json +1 -0
  18. package/.next/server/app/(app)/activity/page_client-reference-manifest.js +1 -0
  19. package/.next/server/app/(app)/agents/[handle]/page.js +18 -0
  20. package/.next/server/app/(app)/agents/[handle]/page.js.nft.json +1 -0
  21. package/.next/server/app/(app)/agents/[handle]/page_client-reference-manifest.js +1 -0
  22. package/.next/server/app/(app)/code/page.js +2 -0
  23. package/.next/server/app/(app)/code/page.js.nft.json +1 -0
  24. package/.next/server/app/(app)/code/page_client-reference-manifest.js +1 -0
  25. package/.next/server/app/(app)/config/page.js +2 -0
  26. package/.next/server/app/(app)/config/page.js.nft.json +1 -0
  27. package/.next/server/app/(app)/config/page_client-reference-manifest.js +1 -0
  28. package/.next/server/app/(app)/costs/page.js +2 -0
  29. package/.next/server/app/(app)/costs/page.js.nft.json +1 -0
  30. package/.next/server/app/(app)/costs/page_client-reference-manifest.js +1 -0
  31. package/.next/server/app/(app)/cron/page.js +2 -0
  32. package/.next/server/app/(app)/cron/page.js.nft.json +1 -0
  33. package/.next/server/app/(app)/cron/page_client-reference-manifest.js +1 -0
  34. package/.next/server/app/(app)/dashboard/page.js +2 -0
  35. package/.next/server/app/(app)/dashboard/page.js.nft.json +1 -0
  36. package/.next/server/app/(app)/dashboard/page_client-reference-manifest.js +1 -0
  37. package/.next/server/app/(app)/design/page.js +354 -0
  38. package/.next/server/app/(app)/design/page.js.nft.json +1 -0
  39. package/.next/server/app/(app)/design/page_client-reference-manifest.js +1 -0
  40. package/.next/server/app/(app)/docs/[id]/page.js +2 -0
  41. package/.next/server/app/(app)/docs/[id]/page.js.nft.json +1 -0
  42. package/.next/server/app/(app)/docs/[id]/page_client-reference-manifest.js +1 -0
  43. package/.next/server/app/(app)/docs/page.js +2 -0
  44. package/.next/server/app/(app)/docs/page.js.nft.json +1 -0
  45. package/.next/server/app/(app)/docs/page_client-reference-manifest.js +1 -0
  46. package/.next/server/app/(app)/github/page.js +2 -0
  47. package/.next/server/app/(app)/github/page.js.nft.json +1 -0
  48. package/.next/server/app/(app)/github/page_client-reference-manifest.js +1 -0
  49. package/.next/server/app/(app)/goals/page.js +2 -0
  50. package/.next/server/app/(app)/goals/page.js.nft.json +1 -0
  51. package/.next/server/app/(app)/goals/page_client-reference-manifest.js +1 -0
  52. package/.next/server/app/(app)/inbox/page.js +2 -0
  53. package/.next/server/app/(app)/inbox/page.js.nft.json +1 -0
  54. package/.next/server/app/(app)/inbox/page_client-reference-manifest.js +1 -0
  55. package/.next/server/app/(app)/knowledge/page.js +3 -0
  56. package/.next/server/app/(app)/knowledge/page.js.nft.json +1 -0
  57. package/.next/server/app/(app)/knowledge/page_client-reference-manifest.js +1 -0
  58. package/.next/server/app/(app)/models/page.js +2 -0
  59. package/.next/server/app/(app)/models/page.js.nft.json +1 -0
  60. package/.next/server/app/(app)/models/page_client-reference-manifest.js +1 -0
  61. package/.next/server/app/(app)/notifications/page.js +2 -0
  62. package/.next/server/app/(app)/notifications/page.js.nft.json +1 -0
  63. package/.next/server/app/(app)/notifications/page_client-reference-manifest.js +1 -0
  64. package/.next/server/app/(app)/org/page.js +22 -0
  65. package/.next/server/app/(app)/org/page.js.nft.json +1 -0
  66. package/.next/server/app/(app)/org/page_client-reference-manifest.js +1 -0
  67. package/.next/server/app/(app)/organizations/page.js +2 -0
  68. package/.next/server/app/(app)/organizations/page.js.nft.json +1 -0
  69. package/.next/server/app/(app)/organizations/page_client-reference-manifest.js +1 -0
  70. package/.next/server/app/(app)/page.js +3 -0
  71. package/.next/server/app/(app)/page.js.nft.json +1 -0
  72. package/.next/server/app/(app)/page_client-reference-manifest.js +1 -0
  73. package/.next/server/app/(app)/planner/page.js +12 -0
  74. package/.next/server/app/(app)/planner/page.js.nft.json +1 -0
  75. package/.next/server/app/(app)/planner/page_client-reference-manifest.js +1 -0
  76. package/.next/server/app/(app)/plugins/page.js +2 -0
  77. package/.next/server/app/(app)/plugins/page.js.nft.json +1 -0
  78. package/.next/server/app/(app)/plugins/page_client-reference-manifest.js +1 -0
  79. package/.next/server/app/(app)/pm/page.js +2 -0
  80. package/.next/server/app/(app)/pm/page.js.nft.json +1 -0
  81. package/.next/server/app/(app)/pm/page_client-reference-manifest.js +1 -0
  82. package/.next/server/app/(app)/prepare-deploy/page.js +19 -0
  83. package/.next/server/app/(app)/prepare-deploy/page.js.nft.json +1 -0
  84. package/.next/server/app/(app)/prepare-deploy/page_client-reference-manifest.js +1 -0
  85. package/.next/server/app/(app)/profile/page.js +2 -0
  86. package/.next/server/app/(app)/profile/page.js.nft.json +1 -0
  87. package/.next/server/app/(app)/profile/page_client-reference-manifest.js +1 -0
  88. package/.next/server/app/(app)/pulse/page.js +2 -0
  89. package/.next/server/app/(app)/pulse/page.js.nft.json +1 -0
  90. package/.next/server/app/(app)/pulse/page_client-reference-manifest.js +1 -0
  91. package/.next/server/app/(app)/reports/[id]/page.js +3 -0
  92. package/.next/server/app/(app)/reports/[id]/page.js.nft.json +1 -0
  93. package/.next/server/app/(app)/reports/[id]/page_client-reference-manifest.js +1 -0
  94. package/.next/server/app/(app)/reports/page.js +5 -0
  95. package/.next/server/app/(app)/reports/page.js.nft.json +1 -0
  96. package/.next/server/app/(app)/reports/page_client-reference-manifest.js +1 -0
  97. package/.next/server/app/(app)/routines/page.js +2 -0
  98. package/.next/server/app/(app)/routines/page.js.nft.json +1 -0
  99. package/.next/server/app/(app)/routines/page_client-reference-manifest.js +1 -0
  100. package/.next/server/app/(app)/search/page.js +2 -0
  101. package/.next/server/app/(app)/search/page.js.nft.json +1 -0
  102. package/.next/server/app/(app)/search/page_client-reference-manifest.js +1 -0
  103. package/.next/server/app/(app)/security/page.js +2 -0
  104. package/.next/server/app/(app)/security/page.js.nft.json +1 -0
  105. package/.next/server/app/(app)/security/page_client-reference-manifest.js +1 -0
  106. package/.next/server/app/(app)/skills/page.js +18 -0
  107. package/.next/server/app/(app)/skills/page.js.nft.json +1 -0
  108. package/.next/server/app/(app)/skills/page_client-reference-manifest.js +1 -0
  109. package/.next/server/app/(app)/tasks/page.js +2 -0
  110. package/.next/server/app/(app)/tasks/page.js.nft.json +1 -0
  111. package/.next/server/app/(app)/tasks/page_client-reference-manifest.js +1 -0
  112. package/.next/server/app/(app)/test-dev/page.js +2 -0
  113. package/.next/server/app/(app)/test-dev/page.js.nft.json +1 -0
  114. package/.next/server/app/(app)/test-dev/page_client-reference-manifest.js +1 -0
  115. package/.next/server/app/(app)/update/page.js +13 -0
  116. package/.next/server/app/(app)/update/page.js.nft.json +1 -0
  117. package/.next/server/app/(app)/update/page_client-reference-manifest.js +1 -0
  118. package/.next/server/app/(auth)/login/page.js +2 -0
  119. package/.next/server/app/(auth)/login/page.js.nft.json +1 -0
  120. package/.next/server/app/(auth)/login/page_client-reference-manifest.js +1 -0
  121. package/.next/server/app/(auth)/onboarding/page.js +2 -0
  122. package/.next/server/app/(auth)/onboarding/page.js.nft.json +1 -0
  123. package/.next/server/app/(auth)/onboarding/page_client-reference-manifest.js +1 -0
  124. package/.next/server/app/_global-error/page.js +32 -0
  125. package/.next/server/app/_global-error/page.js.nft.json +1 -0
  126. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -0
  127. package/.next/server/app/_global-error.html +1 -0
  128. package/.next/server/app/_global-error.meta +16 -0
  129. package/.next/server/app/_global-error.rsc +15 -0
  130. package/.next/server/app/_global-error.segments/_full.segment.rsc +15 -0
  131. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +5 -0
  132. package/.next/server/app/_global-error.segments/_global-error.segment.rsc +5 -0
  133. package/.next/server/app/_global-error.segments/_head.segment.rsc +5 -0
  134. package/.next/server/app/_global-error.segments/_index.segment.rsc +6 -0
  135. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -0
  136. package/.next/server/app/_not-found/page.js +2 -0
  137. package/.next/server/app/_not-found/page.js.nft.json +1 -0
  138. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -0
  139. package/.next/server/app/api/auth/[...all]/route.js +1 -0
  140. package/.next/server/app/api/auth/[...all]/route.js.nft.json +1 -0
  141. package/.next/server/app/api/auth/[...all]/route_client-reference-manifest.js +1 -0
  142. package/.next/server/app/api/cron/tick/route.js +53 -0
  143. package/.next/server/app/api/cron/tick/route.js.nft.json +1 -0
  144. package/.next/server/app/api/cron/tick/route_client-reference-manifest.js +1 -0
  145. package/.next/server/app/api/health/route.js +1 -0
  146. package/.next/server/app/api/health/route.js.nft.json +1 -0
  147. package/.next/server/app/api/health/route_client-reference-manifest.js +1 -0
  148. package/.next/server/app/api/locks/acquire/route.js +1 -0
  149. package/.next/server/app/api/locks/acquire/route.js.nft.json +1 -0
  150. package/.next/server/app/api/locks/acquire/route_client-reference-manifest.js +1 -0
  151. package/.next/server/app/api/models/progress/route.js +1 -0
  152. package/.next/server/app/api/models/progress/route.js.nft.json +1 -0
  153. package/.next/server/app/api/models/progress/route_client-reference-manifest.js +1 -0
  154. package/.next/server/app/api/passkey/authenticate/options/route.js +1 -0
  155. package/.next/server/app/api/passkey/authenticate/options/route.js.nft.json +1 -0
  156. package/.next/server/app/api/passkey/authenticate/options/route_client-reference-manifest.js +1 -0
  157. package/.next/server/app/api/passkey/authenticate/verify/route.js +1 -0
  158. package/.next/server/app/api/passkey/authenticate/verify/route.js.nft.json +1 -0
  159. package/.next/server/app/api/passkey/authenticate/verify/route_client-reference-manifest.js +1 -0
  160. package/.next/server/app/api/passkey/register/options/route.js +1 -0
  161. package/.next/server/app/api/passkey/register/options/route.js.nft.json +1 -0
  162. package/.next/server/app/api/passkey/register/options/route_client-reference-manifest.js +1 -0
  163. package/.next/server/app/api/passkey/register/verify/route.js +1 -0
  164. package/.next/server/app/api/passkey/register/verify/route.js.nft.json +1 -0
  165. package/.next/server/app/api/passkey/register/verify/route_client-reference-manifest.js +1 -0
  166. package/.next/server/app/api/stream/route.js +4 -0
  167. package/.next/server/app/api/stream/route.js.nft.json +1 -0
  168. package/.next/server/app/api/stream/route_client-reference-manifest.js +1 -0
  169. package/.next/server/app/api/sync/file/route.js +2 -0
  170. package/.next/server/app/api/sync/file/route.js.nft.json +1 -0
  171. package/.next/server/app/api/sync/file/route_client-reference-manifest.js +1 -0
  172. package/.next/server/app/api/telegram/poll/route.js +133 -0
  173. package/.next/server/app/api/telegram/poll/route.js.nft.json +1 -0
  174. package/.next/server/app/api/telegram/poll/route_client-reference-manifest.js +1 -0
  175. package/.next/server/app/api/upload/route.js +1 -0
  176. package/.next/server/app/api/upload/route.js.nft.json +1 -0
  177. package/.next/server/app/api/upload/route_client-reference-manifest.js +1 -0
  178. package/.next/server/app/api/v1/[[...path]]/route.js +1 -0
  179. package/.next/server/app/api/v1/[[...path]]/route.js.nft.json +1 -0
  180. package/.next/server/app/api/v1/[[...path]]/route_client-reference-manifest.js +1 -0
  181. package/.next/server/app-paths-manifest.json +54 -0
  182. package/.next/server/chunks/1249.js +910 -0
  183. package/.next/server/chunks/1388.js +1 -0
  184. package/.next/server/chunks/1572.js +1 -0
  185. package/.next/server/chunks/1591.js +24 -0
  186. package/.next/server/chunks/1619.js +188 -0
  187. package/.next/server/chunks/162.js +1 -0
  188. package/.next/server/chunks/1845.js +462 -0
  189. package/.next/server/chunks/2341.js +1 -0
  190. package/.next/server/chunks/2517.js +1 -0
  191. package/.next/server/chunks/259.js +119 -0
  192. package/.next/server/chunks/2599.js +1 -0
  193. package/.next/server/chunks/260.js +1 -0
  194. package/.next/server/chunks/2867.js +147 -0
  195. package/.next/server/chunks/288.js +1 -0
  196. package/.next/server/chunks/2939.js +12 -0
  197. package/.next/server/chunks/2960.js +14 -0
  198. package/.next/server/chunks/3050.js +18 -0
  199. package/.next/server/chunks/3056.js +1 -0
  200. package/.next/server/chunks/3131.js +1 -0
  201. package/.next/server/chunks/3234.js +869 -0
  202. package/.next/server/chunks/3243.js +67 -0
  203. package/.next/server/chunks/3266.js +15 -0
  204. package/.next/server/chunks/3440.js +1 -0
  205. package/.next/server/chunks/3550.js +1 -0
  206. package/.next/server/chunks/3609.js +2 -0
  207. package/.next/server/chunks/3882.js +417 -0
  208. package/.next/server/chunks/4302.js +26 -0
  209. package/.next/server/chunks/4616.js +479 -0
  210. package/.next/server/chunks/4619.js +1 -0
  211. package/.next/server/chunks/4679.js +1 -0
  212. package/.next/server/chunks/4804.js +1 -0
  213. package/.next/server/chunks/4832.js +2 -0
  214. package/.next/server/chunks/4979.js +67 -0
  215. package/.next/server/chunks/5060.js +1 -0
  216. package/.next/server/chunks/5181.js +1 -0
  217. package/.next/server/chunks/5278.js +1 -0
  218. package/.next/server/chunks/5614.js +1 -0
  219. package/.next/server/chunks/6431.js +1 -0
  220. package/.next/server/chunks/6479.js +1 -0
  221. package/.next/server/chunks/658.js +14 -0
  222. package/.next/server/chunks/6658.js +1 -0
  223. package/.next/server/chunks/6706.js +1 -0
  224. package/.next/server/chunks/6719.js +1 -0
  225. package/.next/server/chunks/683.js +1 -0
  226. package/.next/server/chunks/6873.js +1 -0
  227. package/.next/server/chunks/7037.js +1 -0
  228. package/.next/server/chunks/73.js +17 -0
  229. package/.next/server/chunks/7336.js +1 -0
  230. package/.next/server/chunks/7514.js +1 -0
  231. package/.next/server/chunks/7589.js +22 -0
  232. package/.next/server/chunks/7622.js +1 -0
  233. package/.next/server/chunks/7778.js +1 -0
  234. package/.next/server/chunks/7912.js +1 -0
  235. package/.next/server/chunks/7949.js +1 -0
  236. package/.next/server/chunks/7971.js +1 -0
  237. package/.next/server/chunks/7976.js +1 -0
  238. package/.next/server/chunks/7989.js +1 -0
  239. package/.next/server/chunks/834.js +4 -0
  240. package/.next/server/chunks/8497.js +1 -0
  241. package/.next/server/chunks/850.js +1 -0
  242. package/.next/server/chunks/8561.js +22 -0
  243. package/.next/server/chunks/8623.js +1 -0
  244. package/.next/server/chunks/8762.js +15 -0
  245. package/.next/server/chunks/8823.js +85 -0
  246. package/.next/server/chunks/9459.js +21 -0
  247. package/.next/server/chunks/9676.js +1 -0
  248. package/.next/server/chunks/9680.js +1 -0
  249. package/.next/server/chunks/9783.js +22 -0
  250. package/.next/server/chunks/9969.js +3 -0
  251. package/.next/server/functions-config-manifest.json +18 -0
  252. package/.next/server/instrumentation.js +1 -0
  253. package/.next/server/instrumentation.js.nft.json +1 -0
  254. package/.next/server/interception-route-rewrite-manifest.js +1 -0
  255. package/.next/server/middleware-build-manifest.js +1 -0
  256. package/.next/server/middleware-manifest.json +6 -0
  257. package/.next/server/middleware-react-loadable-manifest.js +1 -0
  258. package/.next/server/middleware.js +18 -0
  259. package/.next/server/middleware.js.nft.json +1 -0
  260. package/.next/server/next-font-manifest.js +1 -0
  261. package/.next/server/next-font-manifest.json +1 -0
  262. package/.next/server/pages/500.html +1 -0
  263. package/.next/server/pages-manifest.json +3 -0
  264. package/.next/server/prefetch-hints.json +1 -0
  265. package/.next/server/server-reference-manifest.js +1 -0
  266. package/.next/server/server-reference-manifest.json +1 -0
  267. package/.next/server/webpack-runtime.js +1 -0
  268. package/.next/static/T0ETI55t9tc9pi5i_CGOe/_buildManifest.js +1 -0
  269. package/.next/static/T0ETI55t9tc9pi5i_CGOe/_ssgManifest.js +1 -0
  270. package/.next/static/chunks/2237-2a30470119df8616.js +1 -0
  271. package/.next/static/chunks/2320-fc8b39380e69d465.js +2 -0
  272. package/.next/static/chunks/23550918-ff694f70f4b0648c.js +1 -0
  273. package/.next/static/chunks/3219-9684aa1c634212de.js +1 -0
  274. package/.next/static/chunks/4263-adecb5b466380b6e.js +1 -0
  275. package/.next/static/chunks/5920.6451a68b63918988.js +1 -0
  276. package/.next/static/chunks/6834-4759af1ce7d95fb6.js +32 -0
  277. package/.next/static/chunks/7268-ac23e9901bf535af.js +4 -0
  278. package/.next/static/chunks/7509.721cd47a931c5518.js +1 -0
  279. package/.next/static/chunks/7555-d2209e697b0a798e.js +1 -0
  280. package/.next/static/chunks/8370-db3280cb1ba67bcd.js +12 -0
  281. package/.next/static/chunks/9219-4a39a98b5502d9d1.js +1 -0
  282. package/.next/static/chunks/9562-4b50b4e408bc0a42.js +1 -0
  283. package/.next/static/chunks/9690-53d5222618cbeddb.js +1 -0
  284. package/.next/static/chunks/9846-c853e71d4d8fbb80.js +1 -0
  285. package/.next/static/chunks/9950-703805abe4653068.js +1 -0
  286. package/.next/static/chunks/app/(app)/activity/page-f06add40c3785686.js +1 -0
  287. package/.next/static/chunks/app/(app)/agents/[handle]/page-2ddf1f9908c73eb1.js +1 -0
  288. package/.next/static/chunks/app/(app)/code/page-ef9dceeae728b9d1.js +1 -0
  289. package/.next/static/chunks/app/(app)/config/page-496e569efd86e75c.js +1 -0
  290. package/.next/static/chunks/app/(app)/costs/page-675f542fdd517bee.js +1 -0
  291. package/.next/static/chunks/app/(app)/cron/page-80a87a05492c0ffe.js +1 -0
  292. package/.next/static/chunks/app/(app)/dashboard/page-4bddca6808a3be40.js +1 -0
  293. package/.next/static/chunks/app/(app)/design/page-e0fd071fb7144c46.js +558 -0
  294. package/.next/static/chunks/app/(app)/docs/[id]/page-f05e389793127500.js +1 -0
  295. package/.next/static/chunks/app/(app)/docs/page-f6bbf5c6b9104cbe.js +1 -0
  296. package/.next/static/chunks/app/(app)/error-988cd28480809861.js +1 -0
  297. package/.next/static/chunks/app/(app)/github/page-5297c806ce6afa9b.js +1 -0
  298. package/.next/static/chunks/app/(app)/goals/page-3fa53e8541c8e9fc.js +1 -0
  299. package/.next/static/chunks/app/(app)/inbox/page-a2a74b5f6a6c326e.js +12 -0
  300. package/.next/static/chunks/app/(app)/knowledge/page-fb11b2bfa9ecd9a4.js +1 -0
  301. package/.next/static/chunks/app/(app)/layout-b74cd565406964d5.js +1 -0
  302. package/.next/static/chunks/app/(app)/models/page-c8acfc3d353fd9d0.js +1 -0
  303. package/.next/static/chunks/app/(app)/notifications/page-05a094d02d23f455.js +12 -0
  304. package/.next/static/chunks/app/(app)/org/page-883d6aa98b593c6b.js +12 -0
  305. package/.next/static/chunks/app/(app)/organizations/page-4595e8fa86ca3c01.js +1 -0
  306. package/.next/static/chunks/app/(app)/page-21d47e76fe9a6c63.js +1 -0
  307. package/.next/static/chunks/app/(app)/planner/page-1fc32005d05bbe69.js +1 -0
  308. package/.next/static/chunks/app/(app)/plugins/page-454613b9f5cb1d3d.js +1 -0
  309. package/.next/static/chunks/app/(app)/pm/page-8473da305f4c2880.js +1 -0
  310. package/.next/static/chunks/app/(app)/prepare-deploy/page-3ba948f5557dea38.js +1 -0
  311. package/.next/static/chunks/app/(app)/profile/page-05f25516fea20762.js +1 -0
  312. package/.next/static/chunks/app/(app)/pulse/page-540a80dbaf61453d.js +1 -0
  313. package/.next/static/chunks/app/(app)/reports/[id]/page-80a87a05492c0ffe.js +1 -0
  314. package/.next/static/chunks/app/(app)/reports/page-de1e69ca09d7cabb.js +1 -0
  315. package/.next/static/chunks/app/(app)/routines/page-83085c9ba3584ec9.js +1 -0
  316. package/.next/static/chunks/app/(app)/search/page-8769fd9075e21e36.js +1 -0
  317. package/.next/static/chunks/app/(app)/security/page-1baa88dc61c3fab8.js +1 -0
  318. package/.next/static/chunks/app/(app)/skills/page-fa75c290b456c629.js +1 -0
  319. package/.next/static/chunks/app/(app)/tasks/page-1eb62689244c8a79.js +1 -0
  320. package/.next/static/chunks/app/(app)/test-dev/page-c496b31087389906.js +1 -0
  321. package/.next/static/chunks/app/(app)/update/page-5a217e6479bc5289.js +1 -0
  322. package/.next/static/chunks/app/(auth)/login/page-ad50e3112f35f41c.js +1 -0
  323. package/.next/static/chunks/app/(auth)/onboarding/page-ab05f02e868c9eec.js +1 -0
  324. package/.next/static/chunks/app/_global-error/page-eacef2b697bd0982.js +1 -0
  325. package/.next/static/chunks/app/_not-found/page-dc38b02aebeab535.js +1 -0
  326. package/.next/static/chunks/app/api/auth/[...all]/route-eacef2b697bd0982.js +1 -0
  327. package/.next/static/chunks/app/api/cron/tick/route-eacef2b697bd0982.js +1 -0
  328. package/.next/static/chunks/app/api/health/route-eacef2b697bd0982.js +1 -0
  329. package/.next/static/chunks/app/api/locks/acquire/route-eacef2b697bd0982.js +1 -0
  330. package/.next/static/chunks/app/api/models/progress/route-eacef2b697bd0982.js +1 -0
  331. package/.next/static/chunks/app/api/passkey/authenticate/options/route-eacef2b697bd0982.js +1 -0
  332. package/.next/static/chunks/app/api/passkey/authenticate/verify/route-eacef2b697bd0982.js +1 -0
  333. package/.next/static/chunks/app/api/passkey/register/options/route-eacef2b697bd0982.js +1 -0
  334. package/.next/static/chunks/app/api/passkey/register/verify/route-eacef2b697bd0982.js +1 -0
  335. package/.next/static/chunks/app/api/stream/route-eacef2b697bd0982.js +1 -0
  336. package/.next/static/chunks/app/api/sync/file/route-eacef2b697bd0982.js +1 -0
  337. package/.next/static/chunks/app/api/telegram/poll/route-eacef2b697bd0982.js +1 -0
  338. package/.next/static/chunks/app/api/upload/route-eacef2b697bd0982.js +1 -0
  339. package/.next/static/chunks/app/api/v1/[[...path]]/route-eacef2b697bd0982.js +1 -0
  340. package/.next/static/chunks/app/error-09899a13c38b6e89.js +1 -0
  341. package/.next/static/chunks/app/global-error-c2ea8fef715f226d.js +1 -0
  342. package/.next/static/chunks/app/layout-e6008e66aea1a849.js +1 -0
  343. package/.next/static/chunks/framework-4b2c6b6043dd203f.js +1 -0
  344. package/.next/static/chunks/main-722e16032e7764d1.js +5 -0
  345. package/.next/static/chunks/main-app-761880af2b6f1962.js +1 -0
  346. package/.next/static/chunks/next/dist/client/components/builtin/app-error-eacef2b697bd0982.js +1 -0
  347. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-eacef2b697bd0982.js +1 -0
  348. package/.next/static/chunks/next/dist/client/components/builtin/not-found-eacef2b697bd0982.js +1 -0
  349. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-eacef2b697bd0982.js +1 -0
  350. package/.next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
  351. package/.next/static/chunks/webpack-222e3894b78c67db.js +1 -0
  352. package/.next/static/css/e7b568809d5d9c72.css +1 -0
  353. package/.next/trace-build +1 -0
  354. package/.next/types/app/(app)/activity/page.ts +87 -0
  355. package/.next/types/app/(app)/agents/[handle]/page.ts +87 -0
  356. package/.next/types/app/(app)/code/page.ts +87 -0
  357. package/.next/types/app/(app)/config/page.ts +87 -0
  358. package/.next/types/app/(app)/costs/page.ts +87 -0
  359. package/.next/types/app/(app)/cron/page.ts +87 -0
  360. package/.next/types/app/(app)/dashboard/page.ts +87 -0
  361. package/.next/types/app/(app)/design/page.ts +87 -0
  362. package/.next/types/app/(app)/docs/[id]/page.ts +87 -0
  363. package/.next/types/app/(app)/docs/page.ts +87 -0
  364. package/.next/types/app/(app)/github/page.ts +87 -0
  365. package/.next/types/app/(app)/goals/page.ts +87 -0
  366. package/.next/types/app/(app)/inbox/page.ts +87 -0
  367. package/.next/types/app/(app)/knowledge/page.ts +87 -0
  368. package/.next/types/app/(app)/models/page.ts +87 -0
  369. package/.next/types/app/(app)/notifications/page.ts +87 -0
  370. package/.next/types/app/(app)/org/page.ts +87 -0
  371. package/.next/types/app/(app)/organizations/page.ts +87 -0
  372. package/.next/types/app/(app)/page.ts +87 -0
  373. package/.next/types/app/(app)/planner/page.ts +87 -0
  374. package/.next/types/app/(app)/plugins/page.ts +87 -0
  375. package/.next/types/app/(app)/pm/page.ts +87 -0
  376. package/.next/types/app/(app)/prepare-deploy/page.ts +87 -0
  377. package/.next/types/app/(app)/profile/page.ts +87 -0
  378. package/.next/types/app/(app)/pulse/page.ts +87 -0
  379. package/.next/types/app/(app)/reports/[id]/page.ts +87 -0
  380. package/.next/types/app/(app)/reports/page.ts +87 -0
  381. package/.next/types/app/(app)/routines/page.ts +87 -0
  382. package/.next/types/app/(app)/search/page.ts +87 -0
  383. package/.next/types/app/(app)/security/page.ts +87 -0
  384. package/.next/types/app/(app)/skills/page.ts +87 -0
  385. package/.next/types/app/(app)/tasks/page.ts +87 -0
  386. package/.next/types/app/(app)/test-dev/page.ts +87 -0
  387. package/.next/types/app/(app)/update/page.ts +87 -0
  388. package/.next/types/app/(auth)/login/page.ts +87 -0
  389. package/.next/types/app/(auth)/onboarding/page.ts +87 -0
  390. package/.next/types/app/api/auth/[...all]/route.ts +351 -0
  391. package/.next/types/app/api/cron/tick/route.ts +351 -0
  392. package/.next/types/app/api/health/route.ts +351 -0
  393. package/.next/types/app/api/locks/acquire/route.ts +351 -0
  394. package/.next/types/app/api/models/progress/route.ts +351 -0
  395. package/.next/types/app/api/passkey/authenticate/options/route.ts +351 -0
  396. package/.next/types/app/api/passkey/authenticate/verify/route.ts +351 -0
  397. package/.next/types/app/api/passkey/register/options/route.ts +351 -0
  398. package/.next/types/app/api/passkey/register/verify/route.ts +351 -0
  399. package/.next/types/app/api/stream/route.ts +351 -0
  400. package/.next/types/app/api/sync/file/route.ts +351 -0
  401. package/.next/types/app/api/telegram/poll/route.ts +351 -0
  402. package/.next/types/app/api/upload/route.ts +351 -0
  403. package/.next/types/app/api/v1/[[...path]]/route.ts +351 -0
  404. package/.next/types/cache-life.d.ts +145 -0
  405. package/.next/types/link.d.ts +211 -0
  406. package/.next/types/package.json +1 -0
  407. package/.next/types/routes.d.ts +121 -0
  408. package/.next/types/validator.ts +520 -0
  409. package/CHANGELOG.md +1084 -0
  410. package/LICENSE +21 -0
  411. package/README.md +477 -0
  412. package/README.pt-BR.md +487 -0
  413. package/bin/constella-update.mjs +131 -0
  414. package/bin/constella.mjs +455 -0
  415. package/bin/guard-hook.mjs +44 -0
  416. package/bin/lock-hook.mjs +49 -0
  417. package/bin/worker.mjs +142 -0
  418. package/docs/UPDATE.md +150 -0
  419. package/docs/assets/arch-orbit.svg +56 -0
  420. package/docs/assets/blackhole.svg +37 -0
  421. package/docs/assets/divider-orbit.svg +23 -0
  422. package/docs/assets/hero-constella.svg +72 -0
  423. package/docs/assets/screens/ceo-planner-specs.png +0 -0
  424. package/docs/assets/screens/ceo-planner.png +0 -0
  425. package/docs/assets/screens/dashboard.png +0 -0
  426. package/docs/assets/screens/design.png +0 -0
  427. package/docs/assets/screens/home.png +0 -0
  428. package/docs/assets/screens/knowledge-blocks.png +0 -0
  429. package/docs/assets/screens/knowledge.png +0 -0
  430. package/docs/assets/screens/models.png +0 -0
  431. package/docs/assets/screens/skills.png +0 -0
  432. package/docs/assets/screens/telegram.png +0 -0
  433. package/docs/en/AGENTS.md +279 -0
  434. package/docs/en/AI_ARCHITECTURE.md +373 -0
  435. package/docs/en/ARCHITECTURE.md +334 -0
  436. package/docs/en/CHAT_COMMANDS.md +305 -0
  437. package/docs/en/CONFIGURATION.md +340 -0
  438. package/docs/en/DEPLOY.md +341 -0
  439. package/docs/en/DESIGN.md +214 -0
  440. package/docs/en/DM.md +297 -0
  441. package/docs/en/FAQ.md +259 -0
  442. package/docs/en/GITHUB.md +341 -0
  443. package/docs/en/GOALS_SPECS_ISSUES.md +303 -0
  444. package/docs/en/INBOX.md +340 -0
  445. package/docs/en/INSTALLATION.md +374 -0
  446. package/docs/en/KB_AGENT.md +305 -0
  447. package/docs/en/KB_RAG.md +356 -0
  448. package/docs/en/MCP.md +313 -0
  449. package/docs/en/MEMORY_RAG.md +289 -0
  450. package/docs/en/MODELS.md +341 -0
  451. package/docs/en/ONBOARDING.md +327 -0
  452. package/docs/en/OPERATIONS.md +212 -0
  453. package/docs/en/PLUGINS.md +290 -0
  454. package/docs/en/PORTABLE_MODE.md +391 -0
  455. package/docs/en/PO_AGENT.md +379 -0
  456. package/docs/en/PREPARE_DEPLOY.md +308 -0
  457. package/docs/en/PROJECT_STACKS.md +258 -0
  458. package/docs/en/PUBLIC_API.md +315 -0
  459. package/docs/en/PUBLISHING.md +343 -0
  460. package/docs/en/README.md +98 -0
  461. package/docs/en/RELEASE_SMOKE.md +92 -0
  462. package/docs/en/SECURITY.md +280 -0
  463. package/docs/en/SKILLS.md +349 -0
  464. package/docs/en/START_MODE.md +285 -0
  465. package/docs/en/SYNCED_BLOCKS.md +320 -0
  466. package/docs/en/TEAM_ROOM.md +285 -0
  467. package/docs/en/TELEGRAM.md +294 -0
  468. package/docs/en/TEST_DEV.md +324 -0
  469. package/docs/en/TROUBLESHOOTING.md +294 -0
  470. package/docs/en/UPDATE.md +320 -0
  471. package/docs/en/VPS_MODE.md +405 -0
  472. package/docs/en/WORKFLOW.md +321 -0
  473. package/docs/pt/AGENTS.md +279 -0
  474. package/docs/pt/AI_ARCHITECTURE.md +373 -0
  475. package/docs/pt/ARCHITECTURE.md +334 -0
  476. package/docs/pt/CHAT_COMMANDS.md +307 -0
  477. package/docs/pt/CONFIGURATION.md +340 -0
  478. package/docs/pt/DEPLOY.md +341 -0
  479. package/docs/pt/DESIGN.md +215 -0
  480. package/docs/pt/DM.md +297 -0
  481. package/docs/pt/FAQ.md +259 -0
  482. package/docs/pt/GITHUB.md +341 -0
  483. package/docs/pt/GOALS_SPECS_ISSUES.md +303 -0
  484. package/docs/pt/INBOX.md +340 -0
  485. package/docs/pt/INSTALLATION.md +374 -0
  486. package/docs/pt/KB_AGENT.md +305 -0
  487. package/docs/pt/KB_RAG.md +356 -0
  488. package/docs/pt/MCP.md +313 -0
  489. package/docs/pt/MEMORY_RAG.md +289 -0
  490. package/docs/pt/MODELS.md +341 -0
  491. package/docs/pt/ONBOARDING.md +327 -0
  492. package/docs/pt/OPERATIONS.md +211 -0
  493. package/docs/pt/PLUGINS.md +290 -0
  494. package/docs/pt/PORTABLE_MODE.md +391 -0
  495. package/docs/pt/PO_AGENT.md +379 -0
  496. package/docs/pt/PREPARE_DEPLOY.md +308 -0
  497. package/docs/pt/PROJECT_STACKS.md +258 -0
  498. package/docs/pt/PUBLIC_API.md +315 -0
  499. package/docs/pt/PUBLISHING.md +343 -0
  500. package/docs/pt/README.md +98 -0
  501. package/docs/pt/RELEASE_SMOKE.md +94 -0
  502. package/docs/pt/SECURITY.md +280 -0
  503. package/docs/pt/SKILLS.md +349 -0
  504. package/docs/pt/START_MODE.md +284 -0
  505. package/docs/pt/SYNCED_BLOCKS.md +320 -0
  506. package/docs/pt/TEAM_ROOM.md +285 -0
  507. package/docs/pt/TELEGRAM.md +294 -0
  508. package/docs/pt/TEST_DEV.md +324 -0
  509. package/docs/pt/TROUBLESHOOTING.md +294 -0
  510. package/docs/pt/UPDATE.md +320 -0
  511. package/docs/pt/VPS_MODE.md +405 -0
  512. package/docs/pt/WORKFLOW.md +321 -0
  513. package/drizzle/0000_regular_nightshade.sql +644 -0
  514. package/drizzle/0001_mixed_zombie.sql +106 -0
  515. package/drizzle/0002_flimsy_kree.sql +48 -0
  516. package/drizzle/meta/0000_snapshot.json +4650 -0
  517. package/drizzle/meta/0001_snapshot.json +5418 -0
  518. package/drizzle/meta/0002_snapshot.json +5753 -0
  519. package/drizzle/meta/_journal.json +27 -0
  520. package/drizzle.config.mjs +16 -0
  521. package/next.config.mjs +21 -0
  522. package/package.json +139 -0
  523. package/scripts/clean-repo.mjs +20 -0
  524. package/scripts/dev-all.mjs +46 -0
  525. package/scripts/i18n-parity.mjs +57 -0
  526. package/scripts/install.sh +97 -0
  527. package/scripts/mcp-server.mjs +100 -0
  528. package/scripts/postbuild.mjs +11 -0
  529. package/scripts/postinstall.mjs +14 -0
  530. package/scripts/publish-public.mjs +116 -0
  531. package/scripts/smoke-login.mjs +138 -0
  532. package/scripts/start-all.mjs +45 -0
  533. package/scripts/trim-next.mjs +23 -0
  534. package/scripts/vps-clean.sh +66 -0
  535. package/scripts/vps-install.sh +84 -0
  536. package/scripts/vps-update.sh +28 -0
  537. package/skills/CONTRIBUTING.md +122 -0
  538. package/skills/COVERAGE.md +129 -0
  539. package/skills/INDEX.json +3443 -0
  540. package/skills/README.md +57 -0
  541. package/skills/design/agentic/DESIGN.md +55 -0
  542. package/skills/design/agentic/SKILL.md +89 -0
  543. package/skills/design/ai-audio-collection-playbook/SKILL.md +48 -0
  544. package/skills/design/algorithmic-art/LICENSE.txt +202 -0
  545. package/skills/design/algorithmic-art/SKILL.md +405 -0
  546. package/skills/design/algorithmic-art/templates/generator_template.js +223 -0
  547. package/skills/design/algorithmic-art/templates/viewer.html +599 -0
  548. package/skills/design/animation-motion/SKILL.md +60 -0
  549. package/skills/design/answers-surface-playbook/SKILL.md +102 -0
  550. package/skills/design/answers-surface-playbook/example.html +517 -0
  551. package/skills/design/ant/DESIGN.md +55 -0
  552. package/skills/design/ant/SKILL.md +89 -0
  553. package/skills/design/apple-interface-guidelines-playbook/SKILL.md +48 -0
  554. package/skills/design/application/DESIGN.md +55 -0
  555. package/skills/design/application/SKILL.md +84 -0
  556. package/skills/design/artistic/DESIGN.md +55 -0
  557. package/skills/design/artistic/SKILL.md +89 -0
  558. package/skills/design/bento/DESIGN.md +55 -0
  559. package/skills/design/bento/SKILL.md +83 -0
  560. package/skills/design/bold/DESIGN.md +55 -0
  561. package/skills/design/bold/SKILL.md +83 -0
  562. package/skills/design/brand-guidelines/LICENSE.txt +202 -0
  563. package/skills/design/brand-guidelines/SKILL.md +73 -0
  564. package/skills/design/brutalism/DESIGN.md +55 -0
  565. package/skills/design/brutalism/SKILL.md +97 -0
  566. package/skills/design/cafe/DESIGN.md +55 -0
  567. package/skills/design/cafe/SKILL.md +83 -0
  568. package/skills/design/campaign-concept-playbook/SKILL.md +48 -0
  569. package/skills/design/capture-playbook/SKILL.md +48 -0
  570. package/skills/design/captures-growth-playbook/SKILL.md +48 -0
  571. package/skills/design/claude/DESIGN.md +55 -0
  572. package/skills/design/claude/SKILL.md +81 -0
  573. package/skills/design/claymorphism/DESIGN.md +55 -0
  574. package/skills/design/claymorphism/SKILL.md +84 -0
  575. package/skills/design/clean/DESIGN.md +55 -0
  576. package/skills/design/clean/SKILL.md +84 -0
  577. package/skills/design/codex/DESIGN.md +55 -0
  578. package/skills/design/codex/SKILL.md +81 -0
  579. package/skills/design/color-and-typography/SKILL.md +60 -0
  580. package/skills/design/colorful/DESIGN.md +55 -0
  581. package/skills/design/colorful/SKILL.md +82 -0
  582. package/skills/design/commerce-visual-flow-playbook/SKILL.md +281 -0
  583. package/skills/design/commerce-visual-flow-playbook/example.html +504 -0
  584. package/skills/design/commerce-visual-flow-quality-gate/SKILL.md +78 -0
  585. package/skills/design/commerce-visual-flow-quality-gate/example.html +504 -0
  586. package/skills/design/composition-advisory-playbook/SKILL.md +48 -0
  587. package/skills/design/composition-audit-playbook/SKILL.md +48 -0
  588. package/skills/design/composition-markdown-playbook/SKILL.md +48 -0
  589. package/skills/design/composition-prompt-playbook/SKILL.md +234 -0
  590. package/skills/design/composition-taste-interface-playbook/LICENSE +21 -0
  591. package/skills/design/composition-taste-interface-playbook/SKILL.md +1222 -0
  592. package/skills/design/composition-taste-interface-v1-playbook/LICENSE +21 -0
  593. package/skills/design/composition-taste-interface-v1-playbook/SKILL.md +242 -0
  594. package/skills/design/concept-lead-playbook/SKILL.md +73 -0
  595. package/skills/design/constella-design/SKILL.md +97 -0
  596. package/skills/design/contemporary/DESIGN.md +55 -0
  597. package/skills/design/contemporary/SKILL.md +83 -0
  598. package/skills/design/corporate/DESIGN.md +55 -0
  599. package/skills/design/corporate/SKILL.md +89 -0
  600. package/skills/design/cosmic/DESIGN.md +55 -0
  601. package/skills/design/cosmic/SKILL.md +83 -0
  602. package/skills/design/creative/DESIGN.md +55 -0
  603. package/skills/design/creative/SKILL.md +83 -0
  604. package/skills/design/css-techniques/SKILL.md +58 -0
  605. package/skills/design/d3-visualization-playbook/SKILL.md +56 -0
  606. package/skills/design/dashboard/DESIGN.md +55 -0
  607. package/skills/design/dashboard/SKILL.md +89 -0
  608. package/skills/design/deliverables-assembler-playbook/SKILL.md +48 -0
  609. package/skills/design/delivery-save-diagnostics-playbook/SKILL.md +69 -0
  610. package/skills/design/design-systems/SKILL.md +60 -0
  611. package/skills/design/dithered/DESIGN.md +55 -0
  612. package/skills/design/dithered/SKILL.md +87 -0
  613. package/skills/design/document-paper-scroll-playbook/SKILL.md +54 -0
  614. package/skills/design/document-paper-scroll-playbook/example.html +84 -0
  615. package/skills/design/document-paper-scroll-sample-worked-sample/SKILL.md +45 -0
  616. package/skills/design/document-paper-scroll-sample-worked-sample/example.html +84 -0
  617. package/skills/design/document-playbook/SKILL.md +48 -0
  618. package/skills/design/doodle/DESIGN.md +55 -0
  619. package/skills/design/doodle/SKILL.md +97 -0
  620. package/skills/design/dramatic/DESIGN.md +55 -0
  621. package/skills/design/dramatic/SKILL.md +83 -0
  622. package/skills/design/editorial/DESIGN.md +55 -0
  623. package/skills/design/editorial/SKILL.md +86 -0
  624. package/skills/design/eight-bit-orbital-motion-blueprint/SKILL.md +58 -0
  625. package/skills/design/eight-bit-orbital-motion-blueprint/assets/template.html +506 -0
  626. package/skills/design/eight-bit-orbital-motion-blueprint/example.html +43 -0
  627. package/skills/design/eight-bit-orbital-motion-blueprint-quality-gate/SKILL.md +40 -0
  628. package/skills/design/eight-bit-orbital-motion-blueprint-quality-gate/assets/template.html +506 -0
  629. package/skills/design/eight-bit-orbital-motion-blueprint-quality-gate/example.html +43 -0
  630. package/skills/design/elegant/DESIGN.md +55 -0
  631. package/skills/design/elegant/SKILL.md +83 -0
  632. package/skills/design/energetic/DESIGN.md +51 -0
  633. package/skills/design/energetic/SKILL.md +86 -0
  634. package/skills/design/enterprise/DESIGN.md +55 -0
  635. package/skills/design/enterprise/SKILL.md +88 -0
  636. package/skills/design/expressive/DESIGN.md +55 -0
  637. package/skills/design/expressive/SKILL.md +83 -0
  638. package/skills/design/fal-3d-playbook/SKILL.md +48 -0
  639. package/skills/design/fal-compose-playbook/SKILL.md +48 -0
  640. package/skills/design/fal-enhance-playbook/SKILL.md +48 -0
  641. package/skills/design/fal-kling-o3-playbook/SKILL.md +48 -0
  642. package/skills/design/fal-lip-sync-playbook/SKILL.md +48 -0
  643. package/skills/design/fal-live-playbook/SKILL.md +48 -0
  644. package/skills/design/fal-motion-edit-playbook/SKILL.md +48 -0
  645. package/skills/design/fal-repair-playbook/SKILL.md +48 -0
  646. package/skills/design/fal-train-playbook/SKILL.md +48 -0
  647. package/skills/design/fal-tryon-playbook/SKILL.md +48 -0
  648. package/skills/design/fal-vision-playbook/SKILL.md +48 -0
  649. package/skills/design/fal-visual-edit-playbook/SKILL.md +48 -0
  650. package/skills/design/fantasy/DESIGN.md +55 -0
  651. package/skills/design/fantasy/SKILL.md +83 -0
  652. package/skills/design/fiction/DESIGN.md +55 -0
  653. package/skills/design/fiction/SKILL.md +81 -0
  654. package/skills/design/field-journal-magazine-blueprint/SKILL.md +61 -0
  655. package/skills/design/field-journal-magazine-blueprint/assets/template.html +287 -0
  656. package/skills/design/field-journal-magazine-blueprint/example.html +138 -0
  657. package/skills/design/field-journal-magazine-blueprint-quality-gate/SKILL.md +47 -0
  658. package/skills/design/field-journal-magazine-blueprint-quality-gate/assets/template.html +287 -0
  659. package/skills/design/field-journal-magazine-blueprint-quality-gate/example.html +138 -0
  660. package/skills/design/figma-author-composition-system-rules-playbook/SKILL.md +48 -0
  661. package/skills/design/figma-author-fresh-file-playbook/SKILL.md +48 -0
  662. package/skills/design/figma-build-composition-playbook/SKILL.md +48 -0
  663. package/skills/design/figma-code-bridge-parts-playbook/SKILL.md +48 -0
  664. package/skills/design/figma-compose-composition-playbook/SKILL.md +48 -0
  665. package/skills/design/figma-compose-library-playbook/SKILL.md +48 -0
  666. package/skills/design/figma-operator-playbook/SKILL.md +48 -0
  667. package/skills/design/flat/DESIGN.md +55 -0
  668. package/skills/design/flat/SKILL.md +101 -0
  669. package/skills/design/flutter-motion-apps-playbook/SKILL.md +48 -0
  670. package/skills/design/friendly/DESIGN.md +55 -0
  671. package/skills/design/friendly/SKILL.md +83 -0
  672. package/skills/design/full-delivery-enforcement-playbook/LICENSE +21 -0
  673. package/skills/design/full-delivery-enforcement-playbook/SKILL.md +65 -0
  674. package/skills/design/full-surface-capture-playbook/SKILL.md +48 -0
  675. package/skills/design/futuristic/DESIGN.md +55 -0
  676. package/skills/design/futuristic/SKILL.md +83 -0
  677. package/skills/design/generative-visuals-playbook/SKILL.md +48 -0
  678. package/skills/design/gif-sticker-maker-playbook/SKILL.md +48 -0
  679. package/skills/design/glassmorphism/DESIGN.md +55 -0
  680. package/skills/design/glassmorphism/SKILL.md +86 -0
  681. package/skills/design/gpt-taste-playbook/LICENSE +21 -0
  682. package/skills/design/gpt-taste-playbook/SKILL.md +91 -0
  683. package/skills/design/gradient/DESIGN.md +55 -0
  684. package/skills/design/gradient/SKILL.md +83 -0
  685. package/skills/design/gradients/SKILL.md +59 -0
  686. package/skills/design/graphic-design-basics/SKILL.md +55 -0
  687. package/skills/design/grid-concept-mode-blueprint/SKILL.md +62 -0
  688. package/skills/design/grid-concept-mode-blueprint/assets/template.html +375 -0
  689. package/skills/design/grid-concept-mode-blueprint/example.html +70 -0
  690. package/skills/design/grid-concept-mode-blueprint-quality-gate/SKILL.md +52 -0
  691. package/skills/design/grid-concept-mode-blueprint-quality-gate/assets/template.html +375 -0
  692. package/skills/design/grid-concept-mode-blueprint-quality-gate/example.html +70 -0
  693. package/skills/design/grid-user-research-motion-blueprint/SKILL.md +63 -0
  694. package/skills/design/grid-user-research-motion-blueprint/assets/template.html +265 -0
  695. package/skills/design/grid-user-research-motion-blueprint/example.html +265 -0
  696. package/skills/design/grid-user-research-motion-blueprint-quality-gate/SKILL.md +43 -0
  697. package/skills/design/grid-user-research-motion-blueprint-quality-gate/assets/template.html +265 -0
  698. package/skills/design/grid-user-research-motion-blueprint-quality-gate/example.html +265 -0
  699. package/skills/design/growth-psychology-playbook/SKILL.md +48 -0
  700. package/skills/design/gsap-core-playbook/SKILL.md +271 -0
  701. package/skills/design/gsap-frameworks-playbook/SKILL.md +254 -0
  702. package/skills/design/gsap-plugins-playbook/SKILL.md +450 -0
  703. package/skills/design/gsap-react-playbook/SKILL.md +153 -0
  704. package/skills/design/gsap-scrolltrigger-playbook/SKILL.md +314 -0
  705. package/skills/design/gsap-speed-playbook/SKILL.md +96 -0
  706. package/skills/design/gsap-timeline-playbook/SKILL.md +124 -0
  707. package/skills/design/gsap-utilities-playbook/SKILL.md +301 -0
  708. package/skills/design/hand-sketched-diagrams-playbook/SKILL.md +48 -0
  709. package/skills/design/high-end-visual-composition-playbook/LICENSE +21 -0
  710. package/skills/design/high-end-visual-composition-playbook/SKILL.md +114 -0
  711. package/skills/design/html-slides-retro-quarterly-audit-playbook/SKILL.md +65 -0
  712. package/skills/design/html-slides-retro-quarterly-audit-playbook/assets/template.html +164 -0
  713. package/skills/design/html-slides-retro-quarterly-audit-playbook/example.html +139 -0
  714. package/skills/design/html-slides-retro-quarterly-audit-quality-gate/SKILL.md +42 -0
  715. package/skills/design/html-slides-retro-quarterly-audit-quality-gate/assets/template.html +164 -0
  716. package/skills/design/html-slides-retro-quarterly-audit-quality-gate/example.html +139 -0
  717. package/skills/design/ideation-playbook/SKILL.md +48 -0
  718. package/skills/design/identity-capture-playbook/SKILL.md +222 -0
  719. package/skills/design/identity-capture-playbook/templates/brand-kit.html +757 -0
  720. package/skills/design/identity-kit-playbook/LICENSE +21 -0
  721. package/skills/design/identity-kit-playbook/SKILL.md +814 -0
  722. package/skills/design/identity-standards-playbook/SKILL.md +48 -0
  723. package/skills/design/imagecraft-interface-mobile-playbook/LICENSE +21 -0
  724. package/skills/design/imagecraft-interface-mobile-playbook/SKILL.md +1482 -0
  725. package/skills/design/imagecraft-interface-web-playbook/LICENSE +21 -0
  726. package/skills/design/imagecraft-interface-web-playbook/SKILL.md +1003 -0
  727. package/skills/design/imagecraft-playbook/SKILL.md +48 -0
  728. package/skills/design/imagen-playbook/SKILL.md +48 -0
  729. package/skills/design/immersive/DESIGN.md +55 -0
  730. package/skills/design/immersive/SKILL.md +81 -0
  731. package/skills/design/impeccable/DESIGN.md +55 -0
  732. package/skills/design/impeccable/SKILL.md +81 -0
  733. package/skills/design/improve-prompt-playbook/SKILL.md +48 -0
  734. package/skills/design/industrial-raw-ui-playbook/LICENSE +21 -0
  735. package/skills/design/industrial-raw-ui-playbook/SKILL.md +108 -0
  736. package/skills/design/interface-builder-playbook/SKILL.md +48 -0
  737. package/skills/design/interface-composition-playbook/LICENSE.txt +177 -0
  738. package/skills/design/interface-composition-playbook/SKILL.md +80 -0
  739. package/skills/design/interface-playbook/SKILL.md +48 -0
  740. package/skills/design/interface-slides-playbook/SKILL.md +48 -0
  741. package/skills/design/late-hours-magazine-blueprint/SKILL.md +62 -0
  742. package/skills/design/late-hours-magazine-blueprint/assets/template.html +173 -0
  743. package/skills/design/late-hours-magazine-blueprint/example.html +12 -0
  744. package/skills/design/late-hours-magazine-blueprint-quality-gate/SKILL.md +44 -0
  745. package/skills/design/late-hours-magazine-blueprint-quality-gate/assets/template.html +173 -0
  746. package/skills/design/late-hours-magazine-blueprint-quality-gate/example.html +12 -0
  747. package/skills/design/levels/DESIGN.md +55 -0
  748. package/skills/design/levels/SKILL.md +83 -0
  749. package/skills/design/lingo/DESIGN.md +55 -0
  750. package/skills/design/lingo/SKILL.md +87 -0
  751. package/skills/design/luxury/DESIGN.md +55 -0
  752. package/skills/design/luxury/SKILL.md +83 -0
  753. package/skills/design/magazine-wine-rules-blueprint/SKILL.md +59 -0
  754. package/skills/design/magazine-wine-rules-blueprint/assets/template.html +94 -0
  755. package/skills/design/magazine-wine-rules-blueprint/example.html +49 -0
  756. package/skills/design/magazine-wine-rules-blueprint-quality-gate/SKILL.md +41 -0
  757. package/skills/design/magazine-wine-rules-blueprint-quality-gate/assets/template.html +94 -0
  758. package/skills/design/magazine-wine-rules-blueprint-quality-gate/example.html +49 -0
  759. package/skills/design/market-campaigns-extractor-playbook/SKILL.md +48 -0
  760. package/skills/design/material/DESIGN.md +55 -0
  761. package/skills/design/material/SKILL.md +97 -0
  762. package/skills/design/matrix/DESIGN.md +55 -0
  763. package/skills/design/matrix/SKILL.md +82 -0
  764. package/skills/design/messagecraft-playbook/SKILL.md +48 -0
  765. package/skills/design/metrics-brief-playbook/SKILL.md +33 -0
  766. package/skills/design/metrics-brief-playbook/example.html +175 -0
  767. package/skills/design/metrics-brief-sample-worked-sample/SKILL.md +37 -0
  768. package/skills/design/metrics-brief-sample-worked-sample/example.html +175 -0
  769. package/skills/design/microinteractions/SKILL.md +58 -0
  770. package/skills/design/minimal/DESIGN.md +55 -0
  771. package/skills/design/minimal/SKILL.md +83 -0
  772. package/skills/design/minimal-ui-playbook/LICENSE +21 -0
  773. package/skills/design/minimal-ui-playbook/SKILL.md +101 -0
  774. package/skills/design/minimax-pdf-playbook/SKILL.md +48 -0
  775. package/skills/design/minimax-word-playbook/SKILL.md +48 -0
  776. package/skills/design/mockup-device-3d-playbook/SKILL.md +49 -0
  777. package/skills/design/mockup-device-3d-playbook/example.html +193 -0
  778. package/skills/design/mockup-device-3d-sample-worked-sample/SKILL.md +34 -0
  779. package/skills/design/mockup-device-3d-sample-worked-sample/example.html +193 -0
  780. package/skills/design/modern/DESIGN.md +55 -0
  781. package/skills/design/modern/SKILL.md +83 -0
  782. package/skills/design/mono/DESIGN.md +55 -0
  783. package/skills/design/mono/SKILL.md +88 -0
  784. package/skills/design/motion-craft-motion-playbook/SKILL.md +52 -0
  785. package/skills/design/motion-hyperframes-playbook/SKILL.md +32 -0
  786. package/skills/design/motion-hyperframes-playbook/example.html +140 -0
  787. package/skills/design/motion-hyperframes-sample-worked-sample/SKILL.md +44 -0
  788. package/skills/design/motion-hyperframes-sample-worked-sample/example.html +140 -0
  789. package/skills/design/motion-retriever-playbook/SKILL.md +48 -0
  790. package/skills/design/naming-name-brainstormer-playbook/SKILL.md +48 -0
  791. package/skills/design/nanobanana-slides-playbook/SKILL.md +48 -0
  792. package/skills/design/neobrutalism/DESIGN.md +55 -0
  793. package/skills/design/neobrutalism/SKILL.md +83 -0
  794. package/skills/design/neon-style/DESIGN.md +55 -0
  795. package/skills/design/neon-style/SKILL.md +83 -0
  796. package/skills/design/neumorphism/DESIGN.md +55 -0
  797. package/skills/design/neumorphism/SKILL.md +88 -0
  798. package/skills/design/numbers-finance-grid-blueprint/SKILL.md +56 -0
  799. package/skills/design/numbers-finance-grid-blueprint/assets/template.html +111 -0
  800. package/skills/design/numbers-finance-grid-blueprint/example.html +44 -0
  801. package/skills/design/numbers-finance-grid-blueprint-quality-gate/SKILL.md +42 -0
  802. package/skills/design/numbers-finance-grid-blueprint-quality-gate/assets/template.html +111 -0
  803. package/skills/design/numbers-finance-grid-blueprint-quality-gate/example.html +44 -0
  804. package/skills/design/operator-navigator-playbook/SKILL.md +227 -0
  805. package/skills/design/operators-operator-journal-playbook/SKILL.md +73 -0
  806. package/skills/design/orientation-guide/SKILL.md +44 -0
  807. package/skills/design/pacman/DESIGN.md +55 -0
  808. package/skills/design/pacman/SKILL.md +84 -0
  809. package/skills/design/palette-advisor-playbook/SKILL.md +48 -0
  810. package/skills/design/paper/DESIGN.md +55 -0
  811. package/skills/design/paper/SKILL.md +83 -0
  812. package/skills/design/paywall-upgrade-conversion-playbook/SKILL.md +48 -0
  813. package/skills/design/pdf-playbook/SKILL.md +48 -0
  814. package/skills/design/perspective/DESIGN.md +55 -0
  815. package/skills/design/perspective/SKILL.md +83 -0
  816. package/skills/design/pet-companion-animation-rows-reference-guide/LICENSE.txt +201 -0
  817. package/skills/design/pet-companion-animation-rows-reference-guide/SKILL.md +48 -0
  818. package/skills/design/pet-companion-animation-rows-reference-guide/agents/openai.yaml +4 -0
  819. package/skills/design/pet-companion-animation-rows-reference-guide/scripts/compose_atlas.py +150 -0
  820. package/skills/design/pet-companion-animation-rows-reference-guide/scripts/derive_running_left_from_running_right.py +143 -0
  821. package/skills/design/pet-companion-animation-rows-reference-guide/scripts/extract_strip_frames.py +323 -0
  822. package/skills/design/pet-companion-animation-rows-reference-guide/scripts/finalize_pet_run.py +382 -0
  823. package/skills/design/pet-companion-animation-rows-reference-guide/scripts/generate_pet_images.py +295 -0
  824. package/skills/design/pet-companion-animation-rows-reference-guide/scripts/inspect_frames.py +246 -0
  825. package/skills/design/pet-companion-animation-rows-reference-guide/scripts/make_contact_sheet.py +96 -0
  826. package/skills/design/pet-companion-animation-rows-reference-guide/scripts/package_custom_pet.py +108 -0
  827. package/skills/design/pet-companion-animation-rows-reference-guide/scripts/pet_job_status.py +117 -0
  828. package/skills/design/pet-companion-animation-rows-reference-guide/scripts/prepare_pet_run.py +674 -0
  829. package/skills/design/pet-companion-animation-rows-reference-guide/scripts/queue_pet_repairs.py +172 -0
  830. package/skills/design/pet-companion-animation-rows-reference-guide/scripts/record_imagegen_result.py +250 -0
  831. package/skills/design/pet-companion-animation-rows-reference-guide/scripts/render_animation_videos.py +134 -0
  832. package/skills/design/pet-companion-animation-rows-reference-guide/scripts/render_animation_videos.sh +5 -0
  833. package/skills/design/pet-companion-animation-rows-reference-guide/scripts/test_generate_pet_images.py +136 -0
  834. package/skills/design/pet-companion-animation-rows-reference-guide/scripts/validate_atlas.py +139 -0
  835. package/skills/design/pet-companion-codex-companion-contract-reference-guide/LICENSE.txt +201 -0
  836. package/skills/design/pet-companion-codex-companion-contract-reference-guide/SKILL.md +54 -0
  837. package/skills/design/pet-companion-codex-companion-contract-reference-guide/agents/openai.yaml +4 -0
  838. package/skills/design/pet-companion-codex-companion-contract-reference-guide/scripts/compose_atlas.py +150 -0
  839. package/skills/design/pet-companion-codex-companion-contract-reference-guide/scripts/derive_running_left_from_running_right.py +143 -0
  840. package/skills/design/pet-companion-codex-companion-contract-reference-guide/scripts/extract_strip_frames.py +323 -0
  841. package/skills/design/pet-companion-codex-companion-contract-reference-guide/scripts/finalize_pet_run.py +382 -0
  842. package/skills/design/pet-companion-codex-companion-contract-reference-guide/scripts/generate_pet_images.py +295 -0
  843. package/skills/design/pet-companion-codex-companion-contract-reference-guide/scripts/inspect_frames.py +246 -0
  844. package/skills/design/pet-companion-codex-companion-contract-reference-guide/scripts/make_contact_sheet.py +96 -0
  845. package/skills/design/pet-companion-codex-companion-contract-reference-guide/scripts/package_custom_pet.py +108 -0
  846. package/skills/design/pet-companion-codex-companion-contract-reference-guide/scripts/pet_job_status.py +117 -0
  847. package/skills/design/pet-companion-codex-companion-contract-reference-guide/scripts/prepare_pet_run.py +674 -0
  848. package/skills/design/pet-companion-codex-companion-contract-reference-guide/scripts/queue_pet_repairs.py +172 -0
  849. package/skills/design/pet-companion-codex-companion-contract-reference-guide/scripts/record_imagegen_result.py +250 -0
  850. package/skills/design/pet-companion-codex-companion-contract-reference-guide/scripts/render_animation_videos.py +134 -0
  851. package/skills/design/pet-companion-codex-companion-contract-reference-guide/scripts/render_animation_videos.sh +5 -0
  852. package/skills/design/pet-companion-codex-companion-contract-reference-guide/scripts/test_generate_pet_images.py +136 -0
  853. package/skills/design/pet-companion-codex-companion-contract-reference-guide/scripts/validate_atlas.py +139 -0
  854. package/skills/design/pet-companion-orientation-guide/LICENSE.txt +201 -0
  855. package/skills/design/pet-companion-orientation-guide/SKILL.md +75 -0
  856. package/skills/design/pet-companion-orientation-guide/agents/openai.yaml +4 -0
  857. package/skills/design/pet-companion-orientation-guide/scripts/compose_atlas.py +150 -0
  858. package/skills/design/pet-companion-orientation-guide/scripts/derive_running_left_from_running_right.py +143 -0
  859. package/skills/design/pet-companion-orientation-guide/scripts/extract_strip_frames.py +323 -0
  860. package/skills/design/pet-companion-orientation-guide/scripts/finalize_pet_run.py +382 -0
  861. package/skills/design/pet-companion-orientation-guide/scripts/generate_pet_images.py +295 -0
  862. package/skills/design/pet-companion-orientation-guide/scripts/inspect_frames.py +246 -0
  863. package/skills/design/pet-companion-orientation-guide/scripts/make_contact_sheet.py +96 -0
  864. package/skills/design/pet-companion-orientation-guide/scripts/package_custom_pet.py +108 -0
  865. package/skills/design/pet-companion-orientation-guide/scripts/pet_job_status.py +117 -0
  866. package/skills/design/pet-companion-orientation-guide/scripts/prepare_pet_run.py +674 -0
  867. package/skills/design/pet-companion-orientation-guide/scripts/queue_pet_repairs.py +172 -0
  868. package/skills/design/pet-companion-orientation-guide/scripts/record_imagegen_result.py +250 -0
  869. package/skills/design/pet-companion-orientation-guide/scripts/render_animation_videos.py +134 -0
  870. package/skills/design/pet-companion-orientation-guide/scripts/render_animation_videos.sh +5 -0
  871. package/skills/design/pet-companion-orientation-guide/scripts/test_generate_pet_images.py +136 -0
  872. package/skills/design/pet-companion-orientation-guide/scripts/validate_atlas.py +139 -0
  873. package/skills/design/pet-companion-playbook/LICENSE.txt +201 -0
  874. package/skills/design/pet-companion-playbook/SKILL.md +344 -0
  875. package/skills/design/pet-companion-playbook/agents/openai.yaml +4 -0
  876. package/skills/design/pet-companion-playbook/scripts/compose_atlas.py +150 -0
  877. package/skills/design/pet-companion-playbook/scripts/derive_running_left_from_running_right.py +143 -0
  878. package/skills/design/pet-companion-playbook/scripts/extract_strip_frames.py +323 -0
  879. package/skills/design/pet-companion-playbook/scripts/finalize_pet_run.py +382 -0
  880. package/skills/design/pet-companion-playbook/scripts/generate_pet_images.py +295 -0
  881. package/skills/design/pet-companion-playbook/scripts/inspect_frames.py +246 -0
  882. package/skills/design/pet-companion-playbook/scripts/make_contact_sheet.py +96 -0
  883. package/skills/design/pet-companion-playbook/scripts/package_custom_pet.py +108 -0
  884. package/skills/design/pet-companion-playbook/scripts/pet_job_status.py +117 -0
  885. package/skills/design/pet-companion-playbook/scripts/prepare_pet_run.py +674 -0
  886. package/skills/design/pet-companion-playbook/scripts/queue_pet_repairs.py +172 -0
  887. package/skills/design/pet-companion-playbook/scripts/record_imagegen_result.py +250 -0
  888. package/skills/design/pet-companion-playbook/scripts/render_animation_videos.py +134 -0
  889. package/skills/design/pet-companion-playbook/scripts/render_animation_videos.sh +5 -0
  890. package/skills/design/pet-companion-playbook/scripts/test_generate_pet_images.py +136 -0
  891. package/skills/design/pet-companion-playbook/scripts/validate_atlas.py +139 -0
  892. package/skills/design/pet-companion-qa-rubric-reference-guide/LICENSE.txt +201 -0
  893. package/skills/design/pet-companion-qa-rubric-reference-guide/SKILL.md +79 -0
  894. package/skills/design/pet-companion-qa-rubric-reference-guide/agents/openai.yaml +4 -0
  895. package/skills/design/pet-companion-qa-rubric-reference-guide/scripts/compose_atlas.py +150 -0
  896. package/skills/design/pet-companion-qa-rubric-reference-guide/scripts/derive_running_left_from_running_right.py +143 -0
  897. package/skills/design/pet-companion-qa-rubric-reference-guide/scripts/extract_strip_frames.py +323 -0
  898. package/skills/design/pet-companion-qa-rubric-reference-guide/scripts/finalize_pet_run.py +382 -0
  899. package/skills/design/pet-companion-qa-rubric-reference-guide/scripts/generate_pet_images.py +295 -0
  900. package/skills/design/pet-companion-qa-rubric-reference-guide/scripts/inspect_frames.py +246 -0
  901. package/skills/design/pet-companion-qa-rubric-reference-guide/scripts/make_contact_sheet.py +96 -0
  902. package/skills/design/pet-companion-qa-rubric-reference-guide/scripts/package_custom_pet.py +108 -0
  903. package/skills/design/pet-companion-qa-rubric-reference-guide/scripts/pet_job_status.py +117 -0
  904. package/skills/design/pet-companion-qa-rubric-reference-guide/scripts/prepare_pet_run.py +674 -0
  905. package/skills/design/pet-companion-qa-rubric-reference-guide/scripts/queue_pet_repairs.py +172 -0
  906. package/skills/design/pet-companion-qa-rubric-reference-guide/scripts/record_imagegen_result.py +250 -0
  907. package/skills/design/pet-companion-qa-rubric-reference-guide/scripts/render_animation_videos.py +134 -0
  908. package/skills/design/pet-companion-qa-rubric-reference-guide/scripts/render_animation_videos.sh +5 -0
  909. package/skills/design/pet-companion-qa-rubric-reference-guide/scripts/test_generate_pet_images.py +136 -0
  910. package/skills/design/pet-companion-qa-rubric-reference-guide/scripts/validate_atlas.py +139 -0
  911. package/skills/design/pixelbin-media-playbook/SKILL.md +48 -0
  912. package/skills/design/planning-composition-audit-playbook/SKILL.md +48 -0
  913. package/skills/design/platform-composition-playbook/SKILL.md +48 -0
  914. package/skills/design/polish-composition-finish-playbook/SKILL.md +54 -0
  915. package/skills/design/poster-hero-playbook/SKILL.md +31 -0
  916. package/skills/design/poster-hero-playbook/example.html +88 -0
  917. package/skills/design/poster-hero-sample-worked-sample/SKILL.md +32 -0
  918. package/skills/design/poster-hero-sample-worked-sample/example.html +88 -0
  919. package/skills/design/pr-feedback-quality-gate/SKILL.md +57 -0
  920. package/skills/design/premium/DESIGN.md +55 -0
  921. package/skills/design/premium/SKILL.md +83 -0
  922. package/skills/design/presentation-composer-playbook/SKILL.md +48 -0
  923. package/skills/design/presentation-html-fidelity-audit-font-discipline-aa2caa/SKILL.md +382 -0
  924. package/skills/design/presentation-html-fidelity-audit-font-discipline-aa2caa/scripts/extract_pptx.py +134 -0
  925. package/skills/design/presentation-html-fidelity-audit-font-discipline-aa2caa/scripts/verify_layout.py +144 -0
  926. package/skills/design/presentation-html-fidelity-audit-layout-discipline-d5a323/SKILL.md +390 -0
  927. package/skills/design/presentation-html-fidelity-audit-layout-discipline-d5a323/scripts/extract_pptx.py +134 -0
  928. package/skills/design/presentation-html-fidelity-audit-layout-discipline-d5a323/scripts/verify_layout.py +144 -0
  929. package/skills/design/presentation-html-fidelity-audit-playbook/SKILL.md +257 -0
  930. package/skills/design/presentation-html-fidelity-audit-playbook/scripts/extract_pptx.py +134 -0
  931. package/skills/design/presentation-html-fidelity-audit-playbook/scripts/verify_layout.py +144 -0
  932. package/skills/design/presentation-html-fidelity-audit-table-blueprint-1ad2ac/SKILL.md +77 -0
  933. package/skills/design/presentation-html-fidelity-audit-table-blueprint-1ad2ac/scripts/extract_pptx.py +134 -0
  934. package/skills/design/presentation-html-fidelity-audit-table-blueprint-1ad2ac/scripts/verify_layout.py +144 -0
  935. package/skills/design/presentation-playbook/SKILL.md +48 -0
  936. package/skills/design/professional/DESIGN.md +55 -0
  937. package/skills/design/professional/SKILL.md +83 -0
  938. package/skills/design/publication/DESIGN.md +55 -0
  939. package/skills/design/publication/SKILL.md +89 -0
  940. package/skills/design/reading-year-in-audit-motion-blueprint/SKILL.md +76 -0
  941. package/skills/design/reading-year-in-audit-motion-blueprint/assets/template.html +714 -0
  942. package/skills/design/reading-year-in-audit-motion-blueprint/example.html +63 -0
  943. package/skills/design/reading-year-in-audit-motion-blueprint-quality-gate/SKILL.md +45 -0
  944. package/skills/design/reading-year-in-audit-motion-blueprint-quality-gate/assets/template.html +714 -0
  945. package/skills/design/reading-year-in-audit-motion-blueprint-quality-gate/example.html +63 -0
  946. package/skills/design/reference-composition-contract-playbook/SKILL.md +97 -0
  947. package/skills/design/reference-composition-contract-playbook/example.html +236 -0
  948. package/skills/design/reference-composition-contract-quality-gate/SKILL.md +45 -0
  949. package/skills/design/reference-composition-contract-quality-gate/example.html +236 -0
  950. package/skills/design/refined/DESIGN.md +55 -0
  951. package/skills/design/refined/SKILL.md +83 -0
  952. package/skills/design/refresh-existing-projects-playbook/LICENSE +21 -0
  953. package/skills/design/refresh-existing-projects-playbook/SKILL.md +194 -0
  954. package/skills/design/release-journal-single-page-layouts-reference-guide/SKILL.md +318 -0
  955. package/skills/design/release-journal-single-page-layouts-reference-guide/assets/template.html +342 -0
  956. package/skills/design/release-journal-single-page-layouts-reference-guide/example.html +156 -0
  957. package/skills/design/release-journal-single-page-playbook/SKILL.md +100 -0
  958. package/skills/design/release-journal-single-page-playbook/assets/template.html +342 -0
  959. package/skills/design/release-journal-single-page-playbook/example.html +156 -0
  960. package/skills/design/release-journal-single-page-quality-gate/SKILL.md +60 -0
  961. package/skills/design/release-journal-single-page-quality-gate/assets/template.html +342 -0
  962. package/skills/design/release-journal-single-page-quality-gate/example.html +156 -0
  963. package/skills/design/remotion-playbook/SKILL.md +48 -0
  964. package/skills/design/replicate-playbook/SKILL.md +48 -0
  965. package/skills/design/research-decision-room-evidence-model-reference-guide/SKILL.md +96 -0
  966. package/skills/design/research-decision-room-evidence-model-reference-guide/example.html +890 -0
  967. package/skills/design/research-decision-room-playbook/SKILL.md +164 -0
  968. package/skills/design/research-decision-room-playbook/example.html +890 -0
  969. package/skills/design/research-decision-room-quality-gate/SKILL.md +66 -0
  970. package/skills/design/research-decision-room-quality-gate/example.html +890 -0
  971. package/skills/design/responsive-layout/SKILL.md +59 -0
  972. package/skills/design/resume-modern-playbook/SKILL.md +31 -0
  973. package/skills/design/resume-modern-playbook/example.html +122 -0
  974. package/skills/design/resume-modern-sample-worked-sample/SKILL.md +59 -0
  975. package/skills/design/resume-modern-sample-worked-sample/example.html +122 -0
  976. package/skills/design/retro/DESIGN.md +55 -0
  977. package/skills/design/retro/SKILL.md +83 -0
  978. package/skills/design/riso/DESIGN.md +55 -0
  979. package/skills/design/riso/SKILL.md +81 -0
  980. package/skills/design/scene-distortion-headline-playbook/SKILL.md +52 -0
  981. package/skills/design/scene-distortion-headline-playbook/example.html +99 -0
  982. package/skills/design/scene-distortion-headline-sample-worked-sample/SKILL.md +31 -0
  983. package/skills/design/scene-distortion-headline-sample-worked-sample/example.html +99 -0
  984. package/skills/design/scene-flow-notes/SKILL.md +51 -0
  985. package/skills/design/scene-flow-notes/example.html +137 -0
  986. package/skills/design/scene-flow-notes-sample-worked-sample/SKILL.md +32 -0
  987. package/skills/design/scene-flow-notes-sample-worked-sample/example.html +137 -0
  988. package/skills/design/scene-fluid-background-hero-playbook/SKILL.md +58 -0
  989. package/skills/design/scene-fluid-background-hero-playbook/example.html +64 -0
  990. package/skills/design/scene-fluid-background-hero-sample-worked-sample/SKILL.md +28 -0
  991. package/skills/design/scene-fluid-background-hero-sample-worked-sample/example.html +64 -0
  992. package/skills/design/scene-light-flare-cinema-playbook/SKILL.md +53 -0
  993. package/skills/design/scene-light-flare-cinema-playbook/example.html +81 -0
  994. package/skills/design/scene-light-flare-cinema-sample-worked-sample/SKILL.md +31 -0
  995. package/skills/design/scene-light-flare-cinema-sample-worked-sample/example.html +81 -0
  996. package/skills/design/scene-macos-alert-playbook/SKILL.md +57 -0
  997. package/skills/design/scene-macos-alert-playbook/example.html +60 -0
  998. package/skills/design/scene-macos-alert-sample-worked-sample/SKILL.md +29 -0
  999. package/skills/design/scene-macos-alert-sample-worked-sample/example.html +60 -0
  1000. package/skills/design/scene-mark-ending-playbook/SKILL.md +49 -0
  1001. package/skills/design/scene-mark-ending-playbook/example.html +80 -0
  1002. package/skills/design/scene-mark-ending-sample-worked-sample/SKILL.md +31 -0
  1003. package/skills/design/scene-mark-ending-sample-worked-sample/example.html +80 -0
  1004. package/skills/design/scene-metrics-chart-nyt-playbook/SKILL.md +46 -0
  1005. package/skills/design/scene-metrics-chart-nyt-playbook/example.html +101 -0
  1006. package/skills/design/scene-metrics-chart-nyt-sample-worked-sample/SKILL.md +37 -0
  1007. package/skills/design/scene-metrics-chart-nyt-sample-worked-sample/example.html +101 -0
  1008. package/skills/design/sega/DESIGN.md +55 -0
  1009. package/skills/design/sega/SKILL.md +81 -0
  1010. package/skills/design/shadcn/DESIGN.md +55 -0
  1011. package/skills/design/shadcn/SKILL.md +83 -0
  1012. package/skills/design/shadcn-ui-playbook/SKILL.md +48 -0
  1013. package/skills/design/shader-builder-playbook/SKILL.md +48 -0
  1014. package/skills/design/signin-flow-playbook/SKILL.md +51 -0
  1015. package/skills/design/signin-flow-playbook/example.html +362 -0
  1016. package/skills/design/signin-flow-quality-gate/SKILL.md +38 -0
  1017. package/skills/design/signin-flow-quality-gate/example.html +362 -0
  1018. package/skills/design/simple/DESIGN.md +55 -0
  1019. package/skills/design/simple/SKILL.md +83 -0
  1020. package/skills/design/sketch/DESIGN.md +55 -0
  1021. package/skills/design/sketch/SKILL.md +81 -0
  1022. package/skills/design/skeumorphism/DESIGN.md +55 -0
  1023. package/skills/design/skeumorphism/SKILL.md +97 -0
  1024. package/skills/design/slack-gif-creator-playbook/SKILL.md +48 -0
  1025. package/skills/design/sleek/DESIGN.md +55 -0
  1026. package/skills/design/sleek/SKILL.md +83 -0
  1027. package/skills/design/slides-grid-global-playbook/SKILL.md +65 -0
  1028. package/skills/design/slides-grid-global-playbook/example.html +117 -0
  1029. package/skills/design/slides-grid-global-sample-worked-sample/SKILL.md +34 -0
  1030. package/skills/design/slides-grid-global-sample-worked-sample/example.html +117 -0
  1031. package/skills/design/slides-guizang-magazine-playbook/SKILL.md +51 -0
  1032. package/skills/design/slides-guizang-magazine-playbook/example.html +92 -0
  1033. package/skills/design/slides-guizang-magazine-sample-worked-sample/SKILL.md +31 -0
  1034. package/skills/design/slides-guizang-magazine-sample-worked-sample/example.html +92 -0
  1035. package/skills/design/slides-keynote-playbook/SKILL.md +32 -0
  1036. package/skills/design/slides-keynote-playbook/example.html +130 -0
  1037. package/skills/design/slides-keynote-sample-worked-sample/SKILL.md +44 -0
  1038. package/skills/design/slides-keynote-sample-worked-sample/example.html +130 -0
  1039. package/skills/design/slides-live-canvas-workspace-playbook/SKILL.md +55 -0
  1040. package/skills/design/slides-live-canvas-workspace-playbook/example.html +51 -0
  1041. package/skills/design/slides-live-canvas-workspace-sample-worked-sample/SKILL.md +25 -0
  1042. package/skills/design/slides-live-canvas-workspace-sample-worked-sample/example.html +51 -0
  1043. package/skills/design/slides-playbook/SKILL.md +48 -0
  1044. package/skills/design/social-reddit-tile-playbook/SKILL.md +54 -0
  1045. package/skills/design/social-reddit-tile-playbook/example.html +56 -0
  1046. package/skills/design/social-reddit-tile-sample-worked-sample/SKILL.md +27 -0
  1047. package/skills/design/social-reddit-tile-sample-worked-sample/example.html +56 -0
  1048. package/skills/design/social-spotify-tile-playbook/SKILL.md +53 -0
  1049. package/skills/design/social-spotify-tile-playbook/example.html +70 -0
  1050. package/skills/design/social-spotify-tile-sample-worked-sample/SKILL.md +29 -0
  1051. package/skills/design/social-spotify-tile-sample-worked-sample/example.html +70 -0
  1052. package/skills/design/social-x-post-tile-playbook/SKILL.md +51 -0
  1053. package/skills/design/social-x-post-tile-playbook/example.html +53 -0
  1054. package/skills/design/social-x-post-tile-sample-worked-sample/SKILL.md +30 -0
  1055. package/skills/design/social-x-post-tile-sample-worked-sample/example.html +53 -0
  1056. package/skills/design/sora-playbook/SKILL.md +48 -0
  1057. package/skills/design/spacious/DESIGN.md +55 -0
  1058. package/skills/design/spacious/SKILL.md +89 -0
  1059. package/skills/design/speech-playbook/SKILL.md +48 -0
  1060. package/skills/design/stitch-composition-taste-playbook/LICENSE +21 -0
  1061. package/skills/design/stitch-composition-taste-playbook/SKILL.md +200 -0
  1062. package/skills/design/stitch-loop-playbook/SKILL.md +48 -0
  1063. package/skills/design/stitch-playbook-composition-journal/LICENSE +21 -0
  1064. package/skills/design/stitch-playbook-composition-journal/SKILL.md +141 -0
  1065. package/skills/design/story-publication-playbook/SKILL.md +32 -0
  1066. package/skills/design/story-publication-playbook/example.html +81 -0
  1067. package/skills/design/story-publication-sample-worked-sample/SKILL.md +57 -0
  1068. package/skills/design/story-publication-sample-worked-sample/example.html +81 -0
  1069. package/skills/design/storytelling/DESIGN.md +55 -0
  1070. package/skills/design/storytelling/SKILL.md +83 -0
  1071. package/skills/design/swiftui-composition-playbook/SKILL.md +48 -0
  1072. package/skills/design/terracotta/DESIGN.md +55 -0
  1073. package/skills/design/terracotta/SKILL.md +81 -0
  1074. package/skills/design/tetris/DESIGN.md +55 -0
  1075. package/skills/design/tetris/SKILL.md +83 -0
  1076. package/skills/design/theme-factory/LICENSE.txt +202 -0
  1077. package/skills/design/theme-factory/SKILL.md +59 -0
  1078. package/skills/design/theme-factory/theme-showcase.pdf +0 -0
  1079. package/skills/design/theme-factory/themes/arctic-frost.md +19 -0
  1080. package/skills/design/theme-factory/themes/botanical-garden.md +19 -0
  1081. package/skills/design/theme-factory/themes/desert-rose.md +19 -0
  1082. package/skills/design/theme-factory/themes/forest-canopy.md +19 -0
  1083. package/skills/design/theme-factory/themes/golden-hour.md +19 -0
  1084. package/skills/design/theme-factory/themes/midnight-galaxy.md +19 -0
  1085. package/skills/design/theme-factory/themes/modern-minimalist.md +19 -0
  1086. package/skills/design/theme-factory/themes/ocean-depths.md +19 -0
  1087. package/skills/design/theme-factory/themes/sunset-boulevard.md +19 -0
  1088. package/skills/design/theme-factory/themes/tech-innovation.md +19 -0
  1089. package/skills/design/theme-factory-playbook/SKILL.md +48 -0
  1090. package/skills/design/threejs-playbook/SKILL.md +48 -0
  1091. package/skills/design/tile-rednote-playbook/SKILL.md +31 -0
  1092. package/skills/design/tile-rednote-playbook/example.html +98 -0
  1093. package/skills/design/tile-rednote-sample-worked-sample/SKILL.md +46 -0
  1094. package/skills/design/tile-rednote-sample-worked-sample/example.html +98 -0
  1095. package/skills/design/tile-x-playbook/SKILL.md +31 -0
  1096. package/skills/design/tile-x-playbook/example.html +58 -0
  1097. package/skills/design/tile-x-sample-worked-sample/SKILL.md +24 -0
  1098. package/skills/design/tile-x-sample-worked-sample/example.html +58 -0
  1099. package/skills/design/ui-playbooks-playbook/SKILL.md +48 -0
  1100. package/skills/design/ui-ux-principles/SKILL.md +58 -0
  1101. package/skills/design/ui-ux-pro-max-playbook/SKILL.md +63 -0
  1102. package/skills/design/uupm-banner-design/SKILL.md +196 -0
  1103. package/skills/design/uupm-banner-design/references/banner-sizes-and-styles.md +118 -0
  1104. package/skills/design/uupm-brand/SKILL.md +97 -0
  1105. package/skills/design/uupm-brand/references/approval-checklist.md +169 -0
  1106. package/skills/design/uupm-brand/references/asset-organization.md +157 -0
  1107. package/skills/design/uupm-brand/references/brand-guideline-template.md +140 -0
  1108. package/skills/design/uupm-brand/references/color-palette-management.md +186 -0
  1109. package/skills/design/uupm-brand/references/consistency-checklist.md +94 -0
  1110. package/skills/design/uupm-brand/references/logo-usage-rules.md +185 -0
  1111. package/skills/design/uupm-brand/references/messaging-framework.md +85 -0
  1112. package/skills/design/uupm-brand/references/typography-specifications.md +214 -0
  1113. package/skills/design/uupm-brand/references/update.md +118 -0
  1114. package/skills/design/uupm-brand/references/visual-identity.md +96 -0
  1115. package/skills/design/uupm-brand/references/voice-framework.md +88 -0
  1116. package/skills/design/uupm-brand/scripts/extract-colors.cjs +341 -0
  1117. package/skills/design/uupm-brand/scripts/inject-brand-context.cjs +349 -0
  1118. package/skills/design/uupm-brand/scripts/sync-brand-to-tokens.cjs +266 -0
  1119. package/skills/design/uupm-brand/scripts/validate-asset.cjs +387 -0
  1120. package/skills/design/uupm-brand/templates/brand-guidelines-starter.md +275 -0
  1121. package/skills/design/uupm-design/SKILL.md +313 -0
  1122. package/skills/design/uupm-design/data/cip/deliverables.csv +51 -0
  1123. package/skills/design/uupm-design/data/cip/industries.csv +21 -0
  1124. package/skills/design/uupm-design/data/cip/mockup-contexts.csv +21 -0
  1125. package/skills/design/uupm-design/data/cip/styles.csv +21 -0
  1126. package/skills/design/uupm-design/data/icon/styles.csv +16 -0
  1127. package/skills/design/uupm-design/data/logo/colors.csv +56 -0
  1128. package/skills/design/uupm-design/data/logo/industries.csv +56 -0
  1129. package/skills/design/uupm-design/data/logo/styles.csv +56 -0
  1130. package/skills/design/uupm-design/references/banner-sizes-and-styles.md +118 -0
  1131. package/skills/design/uupm-design/references/cip-deliverable-guide.md +95 -0
  1132. package/skills/design/uupm-design/references/cip-design.md +121 -0
  1133. package/skills/design/uupm-design/references/cip-prompt-engineering.md +84 -0
  1134. package/skills/design/uupm-design/references/cip-style-guide.md +68 -0
  1135. package/skills/design/uupm-design/references/design-routing.md +207 -0
  1136. package/skills/design/uupm-design/references/icon-design.md +122 -0
  1137. package/skills/design/uupm-design/references/logo-color-psychology.md +101 -0
  1138. package/skills/design/uupm-design/references/logo-design.md +92 -0
  1139. package/skills/design/uupm-design/references/logo-prompt-engineering.md +158 -0
  1140. package/skills/design/uupm-design/references/logo-style-guide.md +109 -0
  1141. package/skills/design/uupm-design/references/slides-copywriting-formulas.md +84 -0
  1142. package/skills/design/uupm-design/references/slides-create.md +4 -0
  1143. package/skills/design/uupm-design/references/slides-html-template.md +295 -0
  1144. package/skills/design/uupm-design/references/slides-layout-patterns.md +137 -0
  1145. package/skills/design/uupm-design/references/slides-strategies.md +94 -0
  1146. package/skills/design/uupm-design/references/slides.md +42 -0
  1147. package/skills/design/uupm-design/references/social-photos-design.md +329 -0
  1148. package/skills/design/uupm-design/scripts/cip/core.py +215 -0
  1149. package/skills/design/uupm-design/scripts/cip/generate.py +484 -0
  1150. package/skills/design/uupm-design/scripts/cip/render-html.py +424 -0
  1151. package/skills/design/uupm-design/scripts/cip/search.py +127 -0
  1152. package/skills/design/uupm-design/scripts/icon/generate.py +487 -0
  1153. package/skills/design/uupm-design/scripts/logo/core.py +175 -0
  1154. package/skills/design/uupm-design/scripts/logo/generate.py +362 -0
  1155. package/skills/design/uupm-design/scripts/logo/search.py +114 -0
  1156. package/skills/design/uupm-design-system/SKILL.md +244 -0
  1157. package/skills/design/uupm-design-system/data/slide-backgrounds.csv +11 -0
  1158. package/skills/design/uupm-design-system/data/slide-charts.csv +26 -0
  1159. package/skills/design/uupm-design-system/data/slide-color-logic.csv +14 -0
  1160. package/skills/design/uupm-design-system/data/slide-copy.csv +26 -0
  1161. package/skills/design/uupm-design-system/data/slide-layout-logic.csv +16 -0
  1162. package/skills/design/uupm-design-system/data/slide-layouts.csv +26 -0
  1163. package/skills/design/uupm-design-system/data/slide-strategies.csv +16 -0
  1164. package/skills/design/uupm-design-system/data/slide-typography.csv +15 -0
  1165. package/skills/design/uupm-design-system/references/component-specs.md +236 -0
  1166. package/skills/design/uupm-design-system/references/component-tokens.md +214 -0
  1167. package/skills/design/uupm-design-system/references/primitive-tokens.md +203 -0
  1168. package/skills/design/uupm-design-system/references/semantic-tokens.md +215 -0
  1169. package/skills/design/uupm-design-system/references/states-and-variants.md +241 -0
  1170. package/skills/design/uupm-design-system/references/tailwind-integration.md +251 -0
  1171. package/skills/design/uupm-design-system/references/token-architecture.md +224 -0
  1172. package/skills/design/uupm-design-system/scripts/embed-tokens.cjs +99 -0
  1173. package/skills/design/uupm-design-system/scripts/fetch-background.py +317 -0
  1174. package/skills/design/uupm-design-system/scripts/generate-slide.py +770 -0
  1175. package/skills/design/uupm-design-system/scripts/generate-tokens.cjs +205 -0
  1176. package/skills/design/uupm-design-system/scripts/html-token-validator.py +327 -0
  1177. package/skills/design/uupm-design-system/scripts/search-slides.py +218 -0
  1178. package/skills/design/uupm-design-system/scripts/slide-token-validator.py +35 -0
  1179. package/skills/design/uupm-design-system/scripts/slide_search_core.py +453 -0
  1180. package/skills/design/uupm-design-system/scripts/validate-tokens.cjs +251 -0
  1181. package/skills/design/uupm-design-system/templates/design-tokens-starter.json +143 -0
  1182. package/skills/design/uupm-slides/SKILL.md +40 -0
  1183. package/skills/design/uupm-slides/references/copywriting-formulas.md +84 -0
  1184. package/skills/design/uupm-slides/references/create.md +4 -0
  1185. package/skills/design/uupm-slides/references/html-template.md +295 -0
  1186. package/skills/design/uupm-slides/references/layout-patterns.md +137 -0
  1187. package/skills/design/uupm-slides/references/slide-strategies.md +94 -0
  1188. package/skills/design/uupm-ui-styling/LICENSE.txt +202 -0
  1189. package/skills/design/uupm-ui-styling/SKILL.md +324 -0
  1190. package/skills/design/uupm-ui-styling/canvas-fonts/ArsenalSC-OFL.txt +93 -0
  1191. package/skills/design/uupm-ui-styling/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
  1192. package/skills/design/uupm-ui-styling/canvas-fonts/BigShoulders-Bold.ttf +0 -0
  1193. package/skills/design/uupm-ui-styling/canvas-fonts/BigShoulders-OFL.txt +93 -0
  1194. package/skills/design/uupm-ui-styling/canvas-fonts/BigShoulders-Regular.ttf +0 -0
  1195. package/skills/design/uupm-ui-styling/canvas-fonts/Boldonse-OFL.txt +93 -0
  1196. package/skills/design/uupm-ui-styling/canvas-fonts/Boldonse-Regular.ttf +0 -0
  1197. package/skills/design/uupm-ui-styling/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
  1198. package/skills/design/uupm-ui-styling/canvas-fonts/BricolageGrotesque-OFL.txt +93 -0
  1199. package/skills/design/uupm-ui-styling/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
  1200. package/skills/design/uupm-ui-styling/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
  1201. package/skills/design/uupm-ui-styling/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
  1202. package/skills/design/uupm-ui-styling/canvas-fonts/CrimsonPro-OFL.txt +93 -0
  1203. package/skills/design/uupm-ui-styling/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
  1204. package/skills/design/uupm-ui-styling/canvas-fonts/DMMono-OFL.txt +93 -0
  1205. package/skills/design/uupm-ui-styling/canvas-fonts/DMMono-Regular.ttf +0 -0
  1206. package/skills/design/uupm-ui-styling/canvas-fonts/EricaOne-OFL.txt +94 -0
  1207. package/skills/design/uupm-ui-styling/canvas-fonts/EricaOne-Regular.ttf +0 -0
  1208. package/skills/design/uupm-ui-styling/canvas-fonts/GeistMono-Bold.ttf +0 -0
  1209. package/skills/design/uupm-ui-styling/canvas-fonts/GeistMono-OFL.txt +93 -0
  1210. package/skills/design/uupm-ui-styling/canvas-fonts/GeistMono-Regular.ttf +0 -0
  1211. package/skills/design/uupm-ui-styling/canvas-fonts/Gloock-OFL.txt +93 -0
  1212. package/skills/design/uupm-ui-styling/canvas-fonts/Gloock-Regular.ttf +0 -0
  1213. package/skills/design/uupm-ui-styling/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
  1214. package/skills/design/uupm-ui-styling/canvas-fonts/IBMPlexMono-OFL.txt +93 -0
  1215. package/skills/design/uupm-ui-styling/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
  1216. package/skills/design/uupm-ui-styling/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
  1217. package/skills/design/uupm-ui-styling/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
  1218. package/skills/design/uupm-ui-styling/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
  1219. package/skills/design/uupm-ui-styling/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
  1220. package/skills/design/uupm-ui-styling/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
  1221. package/skills/design/uupm-ui-styling/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
  1222. package/skills/design/uupm-ui-styling/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
  1223. package/skills/design/uupm-ui-styling/canvas-fonts/InstrumentSans-OFL.txt +93 -0
  1224. package/skills/design/uupm-ui-styling/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
  1225. package/skills/design/uupm-ui-styling/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
  1226. package/skills/design/uupm-ui-styling/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
  1227. package/skills/design/uupm-ui-styling/canvas-fonts/Italiana-OFL.txt +93 -0
  1228. package/skills/design/uupm-ui-styling/canvas-fonts/Italiana-Regular.ttf +0 -0
  1229. package/skills/design/uupm-ui-styling/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
  1230. package/skills/design/uupm-ui-styling/canvas-fonts/JetBrainsMono-OFL.txt +93 -0
  1231. package/skills/design/uupm-ui-styling/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
  1232. package/skills/design/uupm-ui-styling/canvas-fonts/Jura-Light.ttf +0 -0
  1233. package/skills/design/uupm-ui-styling/canvas-fonts/Jura-Medium.ttf +0 -0
  1234. package/skills/design/uupm-ui-styling/canvas-fonts/Jura-OFL.txt +93 -0
  1235. package/skills/design/uupm-ui-styling/canvas-fonts/LibreBaskerville-OFL.txt +93 -0
  1236. package/skills/design/uupm-ui-styling/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
  1237. package/skills/design/uupm-ui-styling/canvas-fonts/Lora-Bold.ttf +0 -0
  1238. package/skills/design/uupm-ui-styling/canvas-fonts/Lora-BoldItalic.ttf +0 -0
  1239. package/skills/design/uupm-ui-styling/canvas-fonts/Lora-Italic.ttf +0 -0
  1240. package/skills/design/uupm-ui-styling/canvas-fonts/Lora-OFL.txt +93 -0
  1241. package/skills/design/uupm-ui-styling/canvas-fonts/Lora-Regular.ttf +0 -0
  1242. package/skills/design/uupm-ui-styling/canvas-fonts/NationalPark-Bold.ttf +0 -0
  1243. package/skills/design/uupm-ui-styling/canvas-fonts/NationalPark-OFL.txt +93 -0
  1244. package/skills/design/uupm-ui-styling/canvas-fonts/NationalPark-Regular.ttf +0 -0
  1245. package/skills/design/uupm-ui-styling/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -0
  1246. package/skills/design/uupm-ui-styling/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
  1247. package/skills/design/uupm-ui-styling/canvas-fonts/Outfit-Bold.ttf +0 -0
  1248. package/skills/design/uupm-ui-styling/canvas-fonts/Outfit-OFL.txt +93 -0
  1249. package/skills/design/uupm-ui-styling/canvas-fonts/Outfit-Regular.ttf +0 -0
  1250. package/skills/design/uupm-ui-styling/canvas-fonts/PixelifySans-Medium.ttf +0 -0
  1251. package/skills/design/uupm-ui-styling/canvas-fonts/PixelifySans-OFL.txt +93 -0
  1252. package/skills/design/uupm-ui-styling/canvas-fonts/PoiretOne-OFL.txt +93 -0
  1253. package/skills/design/uupm-ui-styling/canvas-fonts/PoiretOne-Regular.ttf +0 -0
  1254. package/skills/design/uupm-ui-styling/canvas-fonts/RedHatMono-Bold.ttf +0 -0
  1255. package/skills/design/uupm-ui-styling/canvas-fonts/RedHatMono-OFL.txt +93 -0
  1256. package/skills/design/uupm-ui-styling/canvas-fonts/RedHatMono-Regular.ttf +0 -0
  1257. package/skills/design/uupm-ui-styling/canvas-fonts/Silkscreen-OFL.txt +93 -0
  1258. package/skills/design/uupm-ui-styling/canvas-fonts/Silkscreen-Regular.ttf +0 -0
  1259. package/skills/design/uupm-ui-styling/canvas-fonts/SmoochSans-Medium.ttf +0 -0
  1260. package/skills/design/uupm-ui-styling/canvas-fonts/SmoochSans-OFL.txt +93 -0
  1261. package/skills/design/uupm-ui-styling/canvas-fonts/Tektur-Medium.ttf +0 -0
  1262. package/skills/design/uupm-ui-styling/canvas-fonts/Tektur-OFL.txt +93 -0
  1263. package/skills/design/uupm-ui-styling/canvas-fonts/Tektur-Regular.ttf +0 -0
  1264. package/skills/design/uupm-ui-styling/canvas-fonts/WorkSans-Bold.ttf +0 -0
  1265. package/skills/design/uupm-ui-styling/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
  1266. package/skills/design/uupm-ui-styling/canvas-fonts/WorkSans-Italic.ttf +0 -0
  1267. package/skills/design/uupm-ui-styling/canvas-fonts/WorkSans-OFL.txt +93 -0
  1268. package/skills/design/uupm-ui-styling/canvas-fonts/WorkSans-Regular.ttf +0 -0
  1269. package/skills/design/uupm-ui-styling/canvas-fonts/YoungSerif-OFL.txt +93 -0
  1270. package/skills/design/uupm-ui-styling/canvas-fonts/YoungSerif-Regular.ttf +0 -0
  1271. package/skills/design/uupm-ui-styling/references/canvas-design-system.md +320 -0
  1272. package/skills/design/uupm-ui-styling/references/shadcn-accessibility.md +471 -0
  1273. package/skills/design/uupm-ui-styling/references/shadcn-components.md +424 -0
  1274. package/skills/design/uupm-ui-styling/references/shadcn-theming.md +373 -0
  1275. package/skills/design/uupm-ui-styling/references/tailwind-customization.md +483 -0
  1276. package/skills/design/uupm-ui-styling/references/tailwind-responsive.md +382 -0
  1277. package/skills/design/uupm-ui-styling/references/tailwind-utilities.md +455 -0
  1278. package/skills/design/uupm-ui-styling/scripts/.coverage +0 -0
  1279. package/skills/design/uupm-ui-styling/scripts/requirements.txt +17 -0
  1280. package/skills/design/uupm-ui-styling/scripts/shadcn_add.py +308 -0
  1281. package/skills/design/uupm-ui-styling/scripts/tailwind_config_gen.py +473 -0
  1282. package/skills/design/uupm-ui-styling/scripts/tests/coverage-ui.json +1 -0
  1283. package/skills/design/uupm-ui-styling/scripts/tests/requirements.txt +3 -0
  1284. package/skills/design/uupm-ui-styling/scripts/tests/test_shadcn_add.py +266 -0
  1285. package/skills/design/uupm-ui-styling/scripts/tests/test_tailwind_config_gen.py +336 -0
  1286. package/skills/design/uupm-ui-ux-pro-max/SKILL.md +661 -0
  1287. package/skills/design/uupm-ui-ux-pro-max/data +1 -0
  1288. package/skills/design/uupm-ui-ux-pro-max/scripts +1 -0
  1289. package/skills/design/venice-audio-playbook/SKILL.md +48 -0
  1290. package/skills/design/venice-audio-speech-playbook/SKILL.md +48 -0
  1291. package/skills/design/venice-motion-playbook/SKILL.md +48 -0
  1292. package/skills/design/venice-visual-compose-playbook/SKILL.md +48 -0
  1293. package/skills/design/venice-visual-edit-playbook/SKILL.md +48 -0
  1294. package/skills/design/vfx-text-cursor-playbook/SKILL.md +49 -0
  1295. package/skills/design/vfx-text-cursor-playbook/example.html +65 -0
  1296. package/skills/design/vfx-text-cursor-sample-worked-sample/SKILL.md +31 -0
  1297. package/skills/design/vfx-text-cursor-sample-worked-sample/example.html +65 -0
  1298. package/skills/design/vibrant/DESIGN.md +55 -0
  1299. package/skills/design/vibrant/SKILL.md +83 -0
  1300. package/skills/design/vintage/DESIGN.md +55 -0
  1301. package/skills/design/vintage/SKILL.md +83 -0
  1302. package/skills/design/visual-enhancer-playbook/SKILL.md +48 -0
  1303. package/skills/design/visual-to-code-playbook/LICENSE +21 -0
  1304. package/skills/design/visual-to-code-playbook/SKILL.md +1245 -0
  1305. package/skills/design/web-composition-standards-playbook/SKILL.md +48 -0
  1306. package/skills/design/web-deliverables-assembler-playbook/SKILL.md +48 -0
  1307. package/skills/design/word-playbook/SKILL.md +48 -0
  1308. package/skills/design/workspace-composition-playbook/SKILL.md +48 -0
  1309. package/skills/design/wpds-playbook/SKILL.md +48 -0
  1310. package/skills/design/youtube-clipper-playbook/SKILL.md +48 -0
  1311. package/skills/engineering/architecture/api-design-rest-graphql/SKILL.md +67 -0
  1312. package/skills/engineering/architecture/caching-strategies/SKILL.md +59 -0
  1313. package/skills/engineering/architecture/data-modeling/SKILL.md +64 -0
  1314. package/skills/engineering/architecture/message-queues-async/SKILL.md +58 -0
  1315. package/skills/engineering/architecture/scalability-reliability/SKILL.md +62 -0
  1316. package/skills/engineering/architecture/software-architecture-patterns/SKILL.md +56 -0
  1317. package/skills/engineering/architecture/system-design-fundamentals/SKILL.md +56 -0
  1318. package/skills/engineering/backend/auth-and-authorization/SKILL.md +62 -0
  1319. package/skills/engineering/backend/backend-fundamentals/SKILL.md +65 -0
  1320. package/skills/engineering/backend/observability-logging/SKILL.md +60 -0
  1321. package/skills/engineering/frontend/accessibility-wcag/SKILL.md +57 -0
  1322. package/skills/engineering/frontend/frontend-architecture/SKILL.md +65 -0
  1323. package/skills/engineering/frontend/rendering-strategies-ssr-csr/SKILL.md +60 -0
  1324. package/skills/engineering/frontend/state-management/SKILL.md +69 -0
  1325. package/skills/engineering/performance/backend-performance/SKILL.md +69 -0
  1326. package/skills/engineering/performance/database-query-optimization/SKILL.md +64 -0
  1327. package/skills/engineering/performance/profiling-and-benchmarking/SKILL.md +60 -0
  1328. package/skills/engineering/performance/web-performance-core-vitals/SKILL.md +72 -0
  1329. package/skills/engineering/practices/clean-code/SKILL.md +61 -0
  1330. package/skills/engineering/practices/code-optimization/SKILL.md +60 -0
  1331. package/skills/engineering/practices/code-review-practices/SKILL.md +58 -0
  1332. package/skills/engineering/practices/git-workflow/SKILL.md +62 -0
  1333. package/skills/engineering/practices/refactoring/SKILL.md +58 -0
  1334. package/skills/engineering/security/appsec-fundamentals/SKILL.md +70 -0
  1335. package/skills/engineering/security/dependency-supply-chain/SKILL.md +77 -0
  1336. package/skills/engineering/security/owasp-asvs/SKILL.md +54 -0
  1337. package/skills/engineering/security/owasp-top-10/SKILL.md +63 -0
  1338. package/skills/engineering/security/secrets-management/SKILL.md +58 -0
  1339. package/skills/engineering/security/secure-auth-sessions/SKILL.md +56 -0
  1340. package/skills/engineering/testing/tdd-and-coverage/SKILL.md +62 -0
  1341. package/skills/engineering/testing/testing-strategy-pyramid/SKILL.md +56 -0
  1342. package/skills/engineering/testing/unit-integration-e2e/SKILL.md +75 -0
  1343. package/skills/front-end/canvas-design/LICENSE.txt +202 -0
  1344. package/skills/front-end/canvas-design/SKILL.md +130 -0
  1345. package/skills/front-end/canvas-design/canvas-fonts/ArsenalSC-OFL.txt +93 -0
  1346. package/skills/front-end/canvas-design/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
  1347. package/skills/front-end/canvas-design/canvas-fonts/BigShoulders-Bold.ttf +0 -0
  1348. package/skills/front-end/canvas-design/canvas-fonts/BigShoulders-OFL.txt +93 -0
  1349. package/skills/front-end/canvas-design/canvas-fonts/BigShoulders-Regular.ttf +0 -0
  1350. package/skills/front-end/canvas-design/canvas-fonts/Boldonse-OFL.txt +93 -0
  1351. package/skills/front-end/canvas-design/canvas-fonts/Boldonse-Regular.ttf +0 -0
  1352. package/skills/front-end/canvas-design/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
  1353. package/skills/front-end/canvas-design/canvas-fonts/BricolageGrotesque-OFL.txt +93 -0
  1354. package/skills/front-end/canvas-design/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
  1355. package/skills/front-end/canvas-design/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
  1356. package/skills/front-end/canvas-design/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
  1357. package/skills/front-end/canvas-design/canvas-fonts/CrimsonPro-OFL.txt +93 -0
  1358. package/skills/front-end/canvas-design/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
  1359. package/skills/front-end/canvas-design/canvas-fonts/DMMono-OFL.txt +93 -0
  1360. package/skills/front-end/canvas-design/canvas-fonts/DMMono-Regular.ttf +0 -0
  1361. package/skills/front-end/canvas-design/canvas-fonts/EricaOne-OFL.txt +94 -0
  1362. package/skills/front-end/canvas-design/canvas-fonts/EricaOne-Regular.ttf +0 -0
  1363. package/skills/front-end/canvas-design/canvas-fonts/GeistMono-Bold.ttf +0 -0
  1364. package/skills/front-end/canvas-design/canvas-fonts/GeistMono-OFL.txt +93 -0
  1365. package/skills/front-end/canvas-design/canvas-fonts/GeistMono-Regular.ttf +0 -0
  1366. package/skills/front-end/canvas-design/canvas-fonts/Gloock-OFL.txt +93 -0
  1367. package/skills/front-end/canvas-design/canvas-fonts/Gloock-Regular.ttf +0 -0
  1368. package/skills/front-end/canvas-design/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
  1369. package/skills/front-end/canvas-design/canvas-fonts/IBMPlexMono-OFL.txt +93 -0
  1370. package/skills/front-end/canvas-design/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
  1371. package/skills/front-end/canvas-design/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
  1372. package/skills/front-end/canvas-design/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
  1373. package/skills/front-end/canvas-design/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
  1374. package/skills/front-end/canvas-design/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
  1375. package/skills/front-end/canvas-design/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
  1376. package/skills/front-end/canvas-design/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
  1377. package/skills/front-end/canvas-design/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
  1378. package/skills/front-end/canvas-design/canvas-fonts/InstrumentSans-OFL.txt +93 -0
  1379. package/skills/front-end/canvas-design/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
  1380. package/skills/front-end/canvas-design/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
  1381. package/skills/front-end/canvas-design/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
  1382. package/skills/front-end/canvas-design/canvas-fonts/Italiana-OFL.txt +93 -0
  1383. package/skills/front-end/canvas-design/canvas-fonts/Italiana-Regular.ttf +0 -0
  1384. package/skills/front-end/canvas-design/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
  1385. package/skills/front-end/canvas-design/canvas-fonts/JetBrainsMono-OFL.txt +93 -0
  1386. package/skills/front-end/canvas-design/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
  1387. package/skills/front-end/canvas-design/canvas-fonts/Jura-Light.ttf +0 -0
  1388. package/skills/front-end/canvas-design/canvas-fonts/Jura-Medium.ttf +0 -0
  1389. package/skills/front-end/canvas-design/canvas-fonts/Jura-OFL.txt +93 -0
  1390. package/skills/front-end/canvas-design/canvas-fonts/LibreBaskerville-OFL.txt +93 -0
  1391. package/skills/front-end/canvas-design/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
  1392. package/skills/front-end/canvas-design/canvas-fonts/Lora-Bold.ttf +0 -0
  1393. package/skills/front-end/canvas-design/canvas-fonts/Lora-BoldItalic.ttf +0 -0
  1394. package/skills/front-end/canvas-design/canvas-fonts/Lora-Italic.ttf +0 -0
  1395. package/skills/front-end/canvas-design/canvas-fonts/Lora-OFL.txt +93 -0
  1396. package/skills/front-end/canvas-design/canvas-fonts/Lora-Regular.ttf +0 -0
  1397. package/skills/front-end/canvas-design/canvas-fonts/NationalPark-Bold.ttf +0 -0
  1398. package/skills/front-end/canvas-design/canvas-fonts/NationalPark-OFL.txt +93 -0
  1399. package/skills/front-end/canvas-design/canvas-fonts/NationalPark-Regular.ttf +0 -0
  1400. package/skills/front-end/canvas-design/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -0
  1401. package/skills/front-end/canvas-design/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
  1402. package/skills/front-end/canvas-design/canvas-fonts/Outfit-Bold.ttf +0 -0
  1403. package/skills/front-end/canvas-design/canvas-fonts/Outfit-OFL.txt +93 -0
  1404. package/skills/front-end/canvas-design/canvas-fonts/Outfit-Regular.ttf +0 -0
  1405. package/skills/front-end/canvas-design/canvas-fonts/PixelifySans-Medium.ttf +0 -0
  1406. package/skills/front-end/canvas-design/canvas-fonts/PixelifySans-OFL.txt +93 -0
  1407. package/skills/front-end/canvas-design/canvas-fonts/PoiretOne-OFL.txt +93 -0
  1408. package/skills/front-end/canvas-design/canvas-fonts/PoiretOne-Regular.ttf +0 -0
  1409. package/skills/front-end/canvas-design/canvas-fonts/RedHatMono-Bold.ttf +0 -0
  1410. package/skills/front-end/canvas-design/canvas-fonts/RedHatMono-OFL.txt +93 -0
  1411. package/skills/front-end/canvas-design/canvas-fonts/RedHatMono-Regular.ttf +0 -0
  1412. package/skills/front-end/canvas-design/canvas-fonts/Silkscreen-OFL.txt +93 -0
  1413. package/skills/front-end/canvas-design/canvas-fonts/Silkscreen-Regular.ttf +0 -0
  1414. package/skills/front-end/canvas-design/canvas-fonts/SmoochSans-Medium.ttf +0 -0
  1415. package/skills/front-end/canvas-design/canvas-fonts/SmoochSans-OFL.txt +93 -0
  1416. package/skills/front-end/canvas-design/canvas-fonts/Tektur-Medium.ttf +0 -0
  1417. package/skills/front-end/canvas-design/canvas-fonts/Tektur-OFL.txt +93 -0
  1418. package/skills/front-end/canvas-design/canvas-fonts/Tektur-Regular.ttf +0 -0
  1419. package/skills/front-end/canvas-design/canvas-fonts/WorkSans-Bold.ttf +0 -0
  1420. package/skills/front-end/canvas-design/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
  1421. package/skills/front-end/canvas-design/canvas-fonts/WorkSans-Italic.ttf +0 -0
  1422. package/skills/front-end/canvas-design/canvas-fonts/WorkSans-OFL.txt +93 -0
  1423. package/skills/front-end/canvas-design/canvas-fonts/WorkSans-Regular.ttf +0 -0
  1424. package/skills/front-end/canvas-design/canvas-fonts/YoungSerif-OFL.txt +93 -0
  1425. package/skills/front-end/canvas-design/canvas-fonts/YoungSerif-Regular.ttf +0 -0
  1426. package/skills/front-end/claude-api/LICENSE.txt +202 -0
  1427. package/skills/front-end/claude-api/SKILL.md +356 -0
  1428. package/skills/front-end/claude-api/csharp/claude-api.md +447 -0
  1429. package/skills/front-end/claude-api/curl/examples.md +216 -0
  1430. package/skills/front-end/claude-api/curl/managed-agents.md +338 -0
  1431. package/skills/front-end/claude-api/go/claude-api.md +440 -0
  1432. package/skills/front-end/claude-api/go/managed-agents/README.md +561 -0
  1433. package/skills/front-end/claude-api/java/claude-api.md +461 -0
  1434. package/skills/front-end/claude-api/java/managed-agents/README.md +442 -0
  1435. package/skills/front-end/claude-api/php/claude-api.md +402 -0
  1436. package/skills/front-end/claude-api/php/managed-agents/README.md +435 -0
  1437. package/skills/front-end/claude-api/python/claude-api/README.md +536 -0
  1438. package/skills/front-end/claude-api/python/claude-api/batches.md +198 -0
  1439. package/skills/front-end/claude-api/python/claude-api/files-api.md +170 -0
  1440. package/skills/front-end/claude-api/python/claude-api/streaming.md +179 -0
  1441. package/skills/front-end/claude-api/python/claude-api/tool-use.md +590 -0
  1442. package/skills/front-end/claude-api/python/managed-agents/README.md +334 -0
  1443. package/skills/front-end/claude-api/ruby/claude-api.md +140 -0
  1444. package/skills/front-end/claude-api/ruby/managed-agents/README.md +389 -0
  1445. package/skills/front-end/claude-api/shared/agent-design.md +101 -0
  1446. package/skills/front-end/claude-api/shared/anthropic-cli.md +246 -0
  1447. package/skills/front-end/claude-api/shared/claude-platform-on-aws.md +59 -0
  1448. package/skills/front-end/claude-api/shared/error-codes.md +233 -0
  1449. package/skills/front-end/claude-api/shared/live-sources.md +143 -0
  1450. package/skills/front-end/claude-api/shared/managed-agents-api-reference.md +422 -0
  1451. package/skills/front-end/claude-api/shared/managed-agents-client-patterns.md +211 -0
  1452. package/skills/front-end/claude-api/shared/managed-agents-core.md +252 -0
  1453. package/skills/front-end/claude-api/shared/managed-agents-environments.md +219 -0
  1454. package/skills/front-end/claude-api/shared/managed-agents-events.md +220 -0
  1455. package/skills/front-end/claude-api/shared/managed-agents-memory.md +197 -0
  1456. package/skills/front-end/claude-api/shared/managed-agents-multiagent.md +99 -0
  1457. package/skills/front-end/claude-api/shared/managed-agents-onboarding.md +144 -0
  1458. package/skills/front-end/claude-api/shared/managed-agents-outcomes.md +106 -0
  1459. package/skills/front-end/claude-api/shared/managed-agents-overview.md +71 -0
  1460. package/skills/front-end/claude-api/shared/managed-agents-scheduled-deployments.md +144 -0
  1461. package/skills/front-end/claude-api/shared/managed-agents-self-hosted-sandboxes.md +174 -0
  1462. package/skills/front-end/claude-api/shared/managed-agents-tools.md +358 -0
  1463. package/skills/front-end/claude-api/shared/managed-agents-webhooks.md +110 -0
  1464. package/skills/front-end/claude-api/shared/model-migration.md +1135 -0
  1465. package/skills/front-end/claude-api/shared/models.md +132 -0
  1466. package/skills/front-end/claude-api/shared/prompt-caching.md +223 -0
  1467. package/skills/front-end/claude-api/shared/token-counting.md +56 -0
  1468. package/skills/front-end/claude-api/shared/tool-use-concepts.md +347 -0
  1469. package/skills/front-end/claude-api/typescript/claude-api/README.md +372 -0
  1470. package/skills/front-end/claude-api/typescript/claude-api/batches.md +106 -0
  1471. package/skills/front-end/claude-api/typescript/claude-api/files-api.md +98 -0
  1472. package/skills/front-end/claude-api/typescript/claude-api/streaming.md +178 -0
  1473. package/skills/front-end/claude-api/typescript/claude-api/tool-use.md +527 -0
  1474. package/skills/front-end/claude-api/typescript/managed-agents/README.md +357 -0
  1475. package/skills/front-end/doc-coauthoring/SKILL.md +375 -0
  1476. package/skills/front-end/docx/LICENSE.txt +30 -0
  1477. package/skills/front-end/docx/SKILL.md +590 -0
  1478. package/skills/front-end/docx/scripts/__init__.py +1 -0
  1479. package/skills/front-end/docx/scripts/accept_changes.py +135 -0
  1480. package/skills/front-end/docx/scripts/comment.py +318 -0
  1481. package/skills/front-end/docx/scripts/office/helpers/__init__.py +0 -0
  1482. package/skills/front-end/docx/scripts/office/helpers/merge_runs.py +199 -0
  1483. package/skills/front-end/docx/scripts/office/helpers/simplify_redlines.py +197 -0
  1484. package/skills/front-end/docx/scripts/office/pack.py +159 -0
  1485. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  1486. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  1487. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  1488. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  1489. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  1490. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  1491. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  1492. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  1493. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  1494. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  1495. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  1496. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  1497. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  1498. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  1499. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  1500. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  1501. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  1502. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  1503. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  1504. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  1505. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  1506. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  1507. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  1508. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  1509. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  1510. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  1511. package/skills/front-end/docx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  1512. package/skills/front-end/docx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  1513. package/skills/front-end/docx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  1514. package/skills/front-end/docx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  1515. package/skills/front-end/docx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  1516. package/skills/front-end/docx/scripts/office/schemas/mce/mc.xsd +75 -0
  1517. package/skills/front-end/docx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
  1518. package/skills/front-end/docx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
  1519. package/skills/front-end/docx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
  1520. package/skills/front-end/docx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
  1521. package/skills/front-end/docx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
  1522. package/skills/front-end/docx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  1523. package/skills/front-end/docx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
  1524. package/skills/front-end/docx/scripts/office/soffice.py +183 -0
  1525. package/skills/front-end/docx/scripts/office/unpack.py +132 -0
  1526. package/skills/front-end/docx/scripts/office/validate.py +111 -0
  1527. package/skills/front-end/docx/scripts/office/validators/__init__.py +15 -0
  1528. package/skills/front-end/docx/scripts/office/validators/base.py +847 -0
  1529. package/skills/front-end/docx/scripts/office/validators/docx.py +446 -0
  1530. package/skills/front-end/docx/scripts/office/validators/pptx.py +275 -0
  1531. package/skills/front-end/docx/scripts/office/validators/redlining.py +247 -0
  1532. package/skills/front-end/docx/scripts/templates/comments.xml +3 -0
  1533. package/skills/front-end/docx/scripts/templates/commentsExtended.xml +3 -0
  1534. package/skills/front-end/docx/scripts/templates/commentsExtensible.xml +3 -0
  1535. package/skills/front-end/docx/scripts/templates/commentsIds.xml +3 -0
  1536. package/skills/front-end/docx/scripts/templates/people.xml +3 -0
  1537. package/skills/front-end/frontend-design/LICENSE.txt +177 -0
  1538. package/skills/front-end/frontend-design/SKILL.md +55 -0
  1539. package/skills/front-end/frontend-slides/SKILL.md +380 -0
  1540. package/skills/front-end/frontend-slides/STYLE_PRESETS.md +346 -0
  1541. package/skills/front-end/frontend-slides/animation-patterns.md +110 -0
  1542. package/skills/front-end/frontend-slides/bold-template-pack/README.md +77 -0
  1543. package/skills/front-end/frontend-slides/bold-template-pack/deck-stage.js +619 -0
  1544. package/skills/front-end/frontend-slides/bold-template-pack/selection-index.json +858 -0
  1545. package/skills/front-end/frontend-slides/bold-template-pack/templates/8-bit-orbit/design.md +573 -0
  1546. package/skills/front-end/frontend-slides/bold-template-pack/templates/8-bit-orbit/preview.md +55 -0
  1547. package/skills/front-end/frontend-slides/bold-template-pack/templates/biennale-yellow/design.md +579 -0
  1548. package/skills/front-end/frontend-slides/bold-template-pack/templates/biennale-yellow/preview.md +55 -0
  1549. package/skills/front-end/frontend-slides/bold-template-pack/templates/block-frame/design.md +609 -0
  1550. package/skills/front-end/frontend-slides/bold-template-pack/templates/block-frame/preview.md +55 -0
  1551. package/skills/front-end/frontend-slides/bold-template-pack/templates/blue-professional/design.md +712 -0
  1552. package/skills/front-end/frontend-slides/bold-template-pack/templates/blue-professional/preview.md +55 -0
  1553. package/skills/front-end/frontend-slides/bold-template-pack/templates/bold-poster/design.md +713 -0
  1554. package/skills/front-end/frontend-slides/bold-template-pack/templates/bold-poster/preview.md +55 -0
  1555. package/skills/front-end/frontend-slides/bold-template-pack/templates/broadside/design.md +504 -0
  1556. package/skills/front-end/frontend-slides/bold-template-pack/templates/broadside/preview.md +55 -0
  1557. package/skills/front-end/frontend-slides/bold-template-pack/templates/capsule/design.md +569 -0
  1558. package/skills/front-end/frontend-slides/bold-template-pack/templates/capsule/preview.md +55 -0
  1559. package/skills/front-end/frontend-slides/bold-template-pack/templates/cartesian/design.md +524 -0
  1560. package/skills/front-end/frontend-slides/bold-template-pack/templates/cartesian/preview.md +55 -0
  1561. package/skills/front-end/frontend-slides/bold-template-pack/templates/cobalt-grid/design.md +564 -0
  1562. package/skills/front-end/frontend-slides/bold-template-pack/templates/cobalt-grid/preview.md +55 -0
  1563. package/skills/front-end/frontend-slides/bold-template-pack/templates/coral/design.md +615 -0
  1564. package/skills/front-end/frontend-slides/bold-template-pack/templates/coral/preview.md +55 -0
  1565. package/skills/front-end/frontend-slides/bold-template-pack/templates/creative-mode/design.md +566 -0
  1566. package/skills/front-end/frontend-slides/bold-template-pack/templates/creative-mode/preview.md +55 -0
  1567. package/skills/front-end/frontend-slides/bold-template-pack/templates/daisy-days/design.md +510 -0
  1568. package/skills/front-end/frontend-slides/bold-template-pack/templates/daisy-days/preview.md +55 -0
  1569. package/skills/front-end/frontend-slides/bold-template-pack/templates/editorial-forest/design.md +508 -0
  1570. package/skills/front-end/frontend-slides/bold-template-pack/templates/editorial-forest/preview.md +55 -0
  1571. package/skills/front-end/frontend-slides/bold-template-pack/templates/editorial-tri-tone/design.md +601 -0
  1572. package/skills/front-end/frontend-slides/bold-template-pack/templates/editorial-tri-tone/preview.md +55 -0
  1573. package/skills/front-end/frontend-slides/bold-template-pack/templates/emerald-editorial/design.md +613 -0
  1574. package/skills/front-end/frontend-slides/bold-template-pack/templates/emerald-editorial/preview.md +55 -0
  1575. package/skills/front-end/frontend-slides/bold-template-pack/templates/grove/design.md +570 -0
  1576. package/skills/front-end/frontend-slides/bold-template-pack/templates/grove/preview.md +55 -0
  1577. package/skills/front-end/frontend-slides/bold-template-pack/templates/long-table/design.md +594 -0
  1578. package/skills/front-end/frontend-slides/bold-template-pack/templates/long-table/preview.md +55 -0
  1579. package/skills/front-end/frontend-slides/bold-template-pack/templates/mat/design.md +474 -0
  1580. package/skills/front-end/frontend-slides/bold-template-pack/templates/mat/preview.md +55 -0
  1581. package/skills/front-end/frontend-slides/bold-template-pack/templates/monochrome/design.md +493 -0
  1582. package/skills/front-end/frontend-slides/bold-template-pack/templates/monochrome/preview.md +55 -0
  1583. package/skills/front-end/frontend-slides/bold-template-pack/templates/neo-grid-bold/design.md +564 -0
  1584. package/skills/front-end/frontend-slides/bold-template-pack/templates/neo-grid-bold/preview.md +55 -0
  1585. package/skills/front-end/frontend-slides/bold-template-pack/templates/peoples-platform/design.md +701 -0
  1586. package/skills/front-end/frontend-slides/bold-template-pack/templates/peoples-platform/preview.md +55 -0
  1587. package/skills/front-end/frontend-slides/bold-template-pack/templates/pin-and-paper/design.md +641 -0
  1588. package/skills/front-end/frontend-slides/bold-template-pack/templates/pin-and-paper/preview.md +55 -0
  1589. package/skills/front-end/frontend-slides/bold-template-pack/templates/pink-script/design.md +673 -0
  1590. package/skills/front-end/frontend-slides/bold-template-pack/templates/pink-script/preview.md +55 -0
  1591. package/skills/front-end/frontend-slides/bold-template-pack/templates/playful/design.md +491 -0
  1592. package/skills/front-end/frontend-slides/bold-template-pack/templates/playful/preview.md +55 -0
  1593. package/skills/front-end/frontend-slides/bold-template-pack/templates/raw-grid/design.md +487 -0
  1594. package/skills/front-end/frontend-slides/bold-template-pack/templates/raw-grid/preview.md +55 -0
  1595. package/skills/front-end/frontend-slides/bold-template-pack/templates/retro-windows/design.md +578 -0
  1596. package/skills/front-end/frontend-slides/bold-template-pack/templates/retro-windows/preview.md +55 -0
  1597. package/skills/front-end/frontend-slides/bold-template-pack/templates/retro-zine/design.md +569 -0
  1598. package/skills/front-end/frontend-slides/bold-template-pack/templates/retro-zine/preview.md +55 -0
  1599. package/skills/front-end/frontend-slides/bold-template-pack/templates/sakura-chroma/design.md +627 -0
  1600. package/skills/front-end/frontend-slides/bold-template-pack/templates/sakura-chroma/preview.md +55 -0
  1601. package/skills/front-end/frontend-slides/bold-template-pack/templates/scatterbrain/design.md +575 -0
  1602. package/skills/front-end/frontend-slides/bold-template-pack/templates/scatterbrain/preview.md +55 -0
  1603. package/skills/front-end/frontend-slides/bold-template-pack/templates/signal/design.md +528 -0
  1604. package/skills/front-end/frontend-slides/bold-template-pack/templates/signal/preview.md +55 -0
  1605. package/skills/front-end/frontend-slides/bold-template-pack/templates/soft-editorial/design.md +626 -0
  1606. package/skills/front-end/frontend-slides/bold-template-pack/templates/soft-editorial/preview.md +55 -0
  1607. package/skills/front-end/frontend-slides/bold-template-pack/templates/stencil-tablet/design.md +678 -0
  1608. package/skills/front-end/frontend-slides/bold-template-pack/templates/stencil-tablet/preview.md +55 -0
  1609. package/skills/front-end/frontend-slides/bold-template-pack/templates/studio/design.md +497 -0
  1610. package/skills/front-end/frontend-slides/bold-template-pack/templates/studio/preview.md +55 -0
  1611. package/skills/front-end/frontend-slides/bold-template-pack/templates/vellum/design.md +547 -0
  1612. package/skills/front-end/frontend-slides/bold-template-pack/templates/vellum/preview.md +55 -0
  1613. package/skills/front-end/frontend-slides/html-template.md +350 -0
  1614. package/skills/front-end/frontend-slides/scripts/deploy.sh +218 -0
  1615. package/skills/front-end/frontend-slides/scripts/export-pdf.sh +418 -0
  1616. package/skills/front-end/frontend-slides/scripts/extract-pptx.py +96 -0
  1617. package/skills/front-end/frontend-slides/viewport-base.css +133 -0
  1618. package/skills/front-end/internal-comms/LICENSE.txt +202 -0
  1619. package/skills/front-end/internal-comms/SKILL.md +32 -0
  1620. package/skills/front-end/internal-comms/examples/3p-updates.md +47 -0
  1621. package/skills/front-end/internal-comms/examples/company-newsletter.md +65 -0
  1622. package/skills/front-end/internal-comms/examples/faq-answers.md +30 -0
  1623. package/skills/front-end/internal-comms/examples/general-comms.md +16 -0
  1624. package/skills/front-end/mcp-builder/LICENSE.txt +202 -0
  1625. package/skills/front-end/mcp-builder/SKILL.md +236 -0
  1626. package/skills/front-end/mcp-builder/reference/evaluation.md +602 -0
  1627. package/skills/front-end/mcp-builder/reference/mcp_best_practices.md +249 -0
  1628. package/skills/front-end/mcp-builder/reference/node_mcp_server.md +970 -0
  1629. package/skills/front-end/mcp-builder/reference/python_mcp_server.md +719 -0
  1630. package/skills/front-end/mcp-builder/scripts/connections.py +151 -0
  1631. package/skills/front-end/mcp-builder/scripts/evaluation.py +373 -0
  1632. package/skills/front-end/mcp-builder/scripts/example_evaluation.xml +22 -0
  1633. package/skills/front-end/mcp-builder/scripts/requirements.txt +2 -0
  1634. package/skills/front-end/pdf/LICENSE.txt +30 -0
  1635. package/skills/front-end/pdf/SKILL.md +314 -0
  1636. package/skills/front-end/pdf/forms.md +294 -0
  1637. package/skills/front-end/pdf/reference.md +612 -0
  1638. package/skills/front-end/pdf/scripts/check_bounding_boxes.py +65 -0
  1639. package/skills/front-end/pdf/scripts/check_fillable_fields.py +11 -0
  1640. package/skills/front-end/pdf/scripts/convert_pdf_to_images.py +33 -0
  1641. package/skills/front-end/pdf/scripts/create_validation_image.py +37 -0
  1642. package/skills/front-end/pdf/scripts/extract_form_field_info.py +122 -0
  1643. package/skills/front-end/pdf/scripts/extract_form_structure.py +115 -0
  1644. package/skills/front-end/pdf/scripts/fill_fillable_fields.py +98 -0
  1645. package/skills/front-end/pdf/scripts/fill_pdf_form_with_annotations.py +107 -0
  1646. package/skills/front-end/pptx/LICENSE.txt +30 -0
  1647. package/skills/front-end/pptx/SKILL.md +232 -0
  1648. package/skills/front-end/pptx/editing.md +205 -0
  1649. package/skills/front-end/pptx/pptxgenjs.md +420 -0
  1650. package/skills/front-end/pptx/scripts/__init__.py +0 -0
  1651. package/skills/front-end/pptx/scripts/add_slide.py +195 -0
  1652. package/skills/front-end/pptx/scripts/clean.py +286 -0
  1653. package/skills/front-end/pptx/scripts/office/helpers/__init__.py +0 -0
  1654. package/skills/front-end/pptx/scripts/office/helpers/merge_runs.py +199 -0
  1655. package/skills/front-end/pptx/scripts/office/helpers/simplify_redlines.py +197 -0
  1656. package/skills/front-end/pptx/scripts/office/pack.py +159 -0
  1657. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  1658. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  1659. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  1660. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  1661. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  1662. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  1663. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  1664. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  1665. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  1666. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  1667. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  1668. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  1669. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  1670. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  1671. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  1672. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  1673. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  1674. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  1675. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  1676. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  1677. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  1678. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  1679. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  1680. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  1681. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  1682. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  1683. package/skills/front-end/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  1684. package/skills/front-end/pptx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  1685. package/skills/front-end/pptx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  1686. package/skills/front-end/pptx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  1687. package/skills/front-end/pptx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  1688. package/skills/front-end/pptx/scripts/office/schemas/mce/mc.xsd +75 -0
  1689. package/skills/front-end/pptx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
  1690. package/skills/front-end/pptx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
  1691. package/skills/front-end/pptx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
  1692. package/skills/front-end/pptx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
  1693. package/skills/front-end/pptx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
  1694. package/skills/front-end/pptx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  1695. package/skills/front-end/pptx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
  1696. package/skills/front-end/pptx/scripts/office/soffice.py +183 -0
  1697. package/skills/front-end/pptx/scripts/office/unpack.py +132 -0
  1698. package/skills/front-end/pptx/scripts/office/validate.py +111 -0
  1699. package/skills/front-end/pptx/scripts/office/validators/__init__.py +15 -0
  1700. package/skills/front-end/pptx/scripts/office/validators/base.py +847 -0
  1701. package/skills/front-end/pptx/scripts/office/validators/docx.py +446 -0
  1702. package/skills/front-end/pptx/scripts/office/validators/pptx.py +275 -0
  1703. package/skills/front-end/pptx/scripts/office/validators/redlining.py +247 -0
  1704. package/skills/front-end/pptx/scripts/thumbnail.py +289 -0
  1705. package/skills/front-end/skill-creator/LICENSE.txt +202 -0
  1706. package/skills/front-end/skill-creator/SKILL.md +485 -0
  1707. package/skills/front-end/skill-creator/agents/analyzer.md +274 -0
  1708. package/skills/front-end/skill-creator/agents/comparator.md +202 -0
  1709. package/skills/front-end/skill-creator/agents/grader.md +223 -0
  1710. package/skills/front-end/skill-creator/assets/eval_review.html +146 -0
  1711. package/skills/front-end/skill-creator/eval-viewer/generate_review.py +471 -0
  1712. package/skills/front-end/skill-creator/eval-viewer/viewer.html +1325 -0
  1713. package/skills/front-end/skill-creator/references/schemas.md +430 -0
  1714. package/skills/front-end/skill-creator/scripts/__init__.py +0 -0
  1715. package/skills/front-end/skill-creator/scripts/aggregate_benchmark.py +401 -0
  1716. package/skills/front-end/skill-creator/scripts/generate_report.py +326 -0
  1717. package/skills/front-end/skill-creator/scripts/improve_description.py +247 -0
  1718. package/skills/front-end/skill-creator/scripts/package_skill.py +136 -0
  1719. package/skills/front-end/skill-creator/scripts/quick_validate.py +103 -0
  1720. package/skills/front-end/skill-creator/scripts/run_eval.py +310 -0
  1721. package/skills/front-end/skill-creator/scripts/run_loop.py +328 -0
  1722. package/skills/front-end/skill-creator/scripts/utils.py +47 -0
  1723. package/skills/front-end/slack-gif-creator/LICENSE.txt +202 -0
  1724. package/skills/front-end/slack-gif-creator/SKILL.md +254 -0
  1725. package/skills/front-end/slack-gif-creator/core/easing.py +234 -0
  1726. package/skills/front-end/slack-gif-creator/core/frame_composer.py +176 -0
  1727. package/skills/front-end/slack-gif-creator/core/gif_builder.py +269 -0
  1728. package/skills/front-end/slack-gif-creator/core/validators.py +136 -0
  1729. package/skills/front-end/slack-gif-creator/requirements.txt +4 -0
  1730. package/skills/front-end/web-artifacts-builder/LICENSE.txt +202 -0
  1731. package/skills/front-end/web-artifacts-builder/SKILL.md +74 -0
  1732. package/skills/front-end/web-artifacts-builder/scripts/bundle-artifact.sh +54 -0
  1733. package/skills/front-end/web-artifacts-builder/scripts/init-artifact.sh +322 -0
  1734. package/skills/front-end/web-artifacts-builder/scripts/shadcn-components.tar.gz +0 -0
  1735. package/skills/front-end/webapp-testing/LICENSE.txt +202 -0
  1736. package/skills/front-end/webapp-testing/SKILL.md +96 -0
  1737. package/skills/front-end/webapp-testing/examples/console_logging.py +35 -0
  1738. package/skills/front-end/webapp-testing/examples/element_discovery.py +40 -0
  1739. package/skills/front-end/webapp-testing/examples/static_html_automation.py +33 -0
  1740. package/skills/front-end/webapp-testing/scripts/with_server.py +106 -0
  1741. package/skills/front-end/xlsx/LICENSE.txt +30 -0
  1742. package/skills/front-end/xlsx/SKILL.md +292 -0
  1743. package/skills/front-end/xlsx/scripts/office/helpers/__init__.py +0 -0
  1744. package/skills/front-end/xlsx/scripts/office/helpers/merge_runs.py +199 -0
  1745. package/skills/front-end/xlsx/scripts/office/helpers/simplify_redlines.py +197 -0
  1746. package/skills/front-end/xlsx/scripts/office/pack.py +159 -0
  1747. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  1748. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  1749. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  1750. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  1751. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  1752. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  1753. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  1754. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  1755. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  1756. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  1757. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  1758. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  1759. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  1760. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  1761. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  1762. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  1763. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  1764. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  1765. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  1766. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  1767. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  1768. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  1769. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  1770. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  1771. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  1772. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  1773. package/skills/front-end/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  1774. package/skills/front-end/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  1775. package/skills/front-end/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  1776. package/skills/front-end/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  1777. package/skills/front-end/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  1778. package/skills/front-end/xlsx/scripts/office/schemas/mce/mc.xsd +75 -0
  1779. package/skills/front-end/xlsx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
  1780. package/skills/front-end/xlsx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
  1781. package/skills/front-end/xlsx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
  1782. package/skills/front-end/xlsx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
  1783. package/skills/front-end/xlsx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
  1784. package/skills/front-end/xlsx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  1785. package/skills/front-end/xlsx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
  1786. package/skills/front-end/xlsx/scripts/office/soffice.py +183 -0
  1787. package/skills/front-end/xlsx/scripts/office/unpack.py +132 -0
  1788. package/skills/front-end/xlsx/scripts/office/validate.py +111 -0
  1789. package/skills/front-end/xlsx/scripts/office/validators/__init__.py +15 -0
  1790. package/skills/front-end/xlsx/scripts/office/validators/base.py +847 -0
  1791. package/skills/front-end/xlsx/scripts/office/validators/docx.py +446 -0
  1792. package/skills/front-end/xlsx/scripts/office/validators/pptx.py +275 -0
  1793. package/skills/front-end/xlsx/scripts/office/validators/redlining.py +247 -0
  1794. package/skills/front-end/xlsx/scripts/recalc.py +184 -0
  1795. package/skills/languages/c/SKILL.md +74 -0
  1796. package/skills/languages/clojure/SKILL.md +73 -0
  1797. package/skills/languages/cpp/SKILL.md +75 -0
  1798. package/skills/languages/csharp/SKILL.md +75 -0
  1799. package/skills/languages/dart/SKILL.md +82 -0
  1800. package/skills/languages/elixir/SKILL.md +74 -0
  1801. package/skills/languages/erlang/SKILL.md +76 -0
  1802. package/skills/languages/go/SKILL.md +83 -0
  1803. package/skills/languages/haskell/SKILL.md +70 -0
  1804. package/skills/languages/java/SKILL.md +71 -0
  1805. package/skills/languages/javascript/SKILL.md +62 -0
  1806. package/skills/languages/kotlin/SKILL.md +68 -0
  1807. package/skills/languages/lua/SKILL.md +79 -0
  1808. package/skills/languages/objectivec/SKILL.md +83 -0
  1809. package/skills/languages/php/SKILL.md +74 -0
  1810. package/skills/languages/python/SKILL.md +68 -0
  1811. package/skills/languages/r/SKILL.md +70 -0
  1812. package/skills/languages/ruby/SKILL.md +67 -0
  1813. package/skills/languages/rust/SKILL.md +72 -0
  1814. package/skills/languages/scala/SKILL.md +73 -0
  1815. package/skills/languages/swift/SKILL.md +73 -0
  1816. package/skills/languages/typescript/SKILL.md +69 -0
  1817. package/skills/meta/authoring-agent-skills/SKILL.md +73 -0
  1818. package/skills/meta/progressive-disclosure/SKILL.md +65 -0
  1819. package/skills/meta/skill-frontmatter-spec/SKILL.md +65 -0
  1820. package/skills/process/adr-technical-decisions/SKILL.md +59 -0
  1821. package/skills/process/app-planning/SKILL.md +63 -0
  1822. package/skills/process/architecture-before-code/SKILL.md +52 -0
  1823. package/skills/process/breaking-work-into-sprints/SKILL.md +53 -0
  1824. package/skills/process/idea-to-product/SKILL.md +50 -0
  1825. package/skills/process/mocks-and-screen-flows/SKILL.md +52 -0
  1826. package/skills/process/prioritization-moscow-rice/SKILL.md +64 -0
  1827. package/skills/process/problem-framing/SKILL.md +51 -0
  1828. package/skills/process/product-discovery/SKILL.md +53 -0
  1829. package/skills/process/readme-generation/SKILL.md +90 -0
  1830. package/skills/process/requirements-to-specs/SKILL.md +53 -0
  1831. package/skills/process/research-official-docs/SKILL.md +58 -0
  1832. package/skills/process/review-code-perf-security/SKILL.md +65 -0
  1833. package/skills/process/security-by-design/SKILL.md +68 -0
  1834. package/skills/process/specs-to-issues/SKILL.md +53 -0
  1835. package/skills/process/testing-before-done/SKILL.md +61 -0
  1836. package/skills/process/validating-ux-navigation/SKILL.md +63 -0
  1837. package/skills/references/ai-attachments-ui/SKILL.md +66 -0
  1838. package/skills/references/ai-in-browser-webllm/SKILL.md +74 -0
  1839. package/skills/references/ai-tool-ui-patterns/SKILL.md +63 -0
  1840. package/skills/references/component-patterns-gallery/SKILL.md +62 -0
  1841. package/skills/references/gradient-resources/SKILL.md +66 -0
  1842. package/skills/references/react-component-libraries/SKILL.md +61 -0
  1843. package/skills/references/saas-landing-patterns/SKILL.md +67 -0
  1844. package/skills/references/shadcn-tailwind-theming/SKILL.md +74 -0
  1845. package/skills/references/vercel-ai-sdk-elements/SKILL.md +66 -0
  1846. package/skills/references/web-animation-codrops/SKILL.md +68 -0
  1847. package/skills/stacks/aiml/jupyter/SKILL.md +68 -0
  1848. package/skills/stacks/aiml/keras/SKILL.md +77 -0
  1849. package/skills/stacks/aiml/numpy/SKILL.md +69 -0
  1850. package/skills/stacks/aiml/pandas/SKILL.md +72 -0
  1851. package/skills/stacks/aiml/pytorch/SKILL.md +77 -0
  1852. package/skills/stacks/aiml/scikit-learn/SKILL.md +74 -0
  1853. package/skills/stacks/aiml/tensorflow/SKILL.md +79 -0
  1854. package/skills/stacks/auth/auth0/SKILL.md +63 -0
  1855. package/skills/stacks/auth/authjs/SKILL.md +69 -0
  1856. package/skills/stacks/auth/clerk/SKILL.md +72 -0
  1857. package/skills/stacks/auth/keycloak/SKILL.md +63 -0
  1858. package/skills/stacks/auth/lucia/SKILL.md +56 -0
  1859. package/skills/stacks/auth/passport/SKILL.md +70 -0
  1860. package/skills/stacks/auth/supabase-auth/SKILL.md +66 -0
  1861. package/skills/stacks/baas/amplify/SKILL.md +71 -0
  1862. package/skills/stacks/baas/appwrite/SKILL.md +79 -0
  1863. package/skills/stacks/baas/firebase/SKILL.md +73 -0
  1864. package/skills/stacks/baas/heroku/SKILL.md +71 -0
  1865. package/skills/stacks/backend/actix/SKILL.md +77 -0
  1866. package/skills/stacks/backend/adonisjs/SKILL.md +65 -0
  1867. package/skills/stacks/backend/aspnet-core/SKILL.md +75 -0
  1868. package/skills/stacks/backend/codeigniter/SKILL.md +76 -0
  1869. package/skills/stacks/backend/django/SKILL.md +62 -0
  1870. package/skills/stacks/backend/express/SKILL.md +65 -0
  1871. package/skills/stacks/backend/fastapi/SKILL.md +64 -0
  1872. package/skills/stacks/backend/fastify/SKILL.md +64 -0
  1873. package/skills/stacks/backend/fiber/SKILL.md +68 -0
  1874. package/skills/stacks/backend/flask/SKILL.md +71 -0
  1875. package/skills/stacks/backend/gin/SKILL.md +68 -0
  1876. package/skills/stacks/backend/graphql/SKILL.md +70 -0
  1877. package/skills/stacks/backend/hono/SKILL.md +64 -0
  1878. package/skills/stacks/backend/koa/SKILL.md +63 -0
  1879. package/skills/stacks/backend/laravel/SKILL.md +73 -0
  1880. package/skills/stacks/backend/nestjs/SKILL.md +70 -0
  1881. package/skills/stacks/backend/nginx/SKILL.md +77 -0
  1882. package/skills/stacks/backend/phoenix/SKILL.md +68 -0
  1883. package/skills/stacks/backend/rails/SKILL.md +67 -0
  1884. package/skills/stacks/backend/spring/SKILL.md +70 -0
  1885. package/skills/stacks/backend/spring-boot/SKILL.md +70 -0
  1886. package/skills/stacks/backend/symfony/SKILL.md +77 -0
  1887. package/skills/stacks/container/containerd/SKILL.md +75 -0
  1888. package/skills/stacks/container/docker/SKILL.md +90 -0
  1889. package/skills/stacks/container/podman/SKILL.md +93 -0
  1890. package/skills/stacks/database/cassandra/SKILL.md +74 -0
  1891. package/skills/stacks/database/cockroachdb/SKILL.md +69 -0
  1892. package/skills/stacks/database/dynamodb/SKILL.md +62 -0
  1893. package/skills/stacks/database/mariadb/SKILL.md +71 -0
  1894. package/skills/stacks/database/mongodb/SKILL.md +71 -0
  1895. package/skills/stacks/database/mysql/SKILL.md +72 -0
  1896. package/skills/stacks/database/neon/SKILL.md +68 -0
  1897. package/skills/stacks/database/planetscale/SKILL.md +70 -0
  1898. package/skills/stacks/database/postgresql/SKILL.md +81 -0
  1899. package/skills/stacks/database/redis/SKILL.md +78 -0
  1900. package/skills/stacks/database/sqlite/SKILL.md +70 -0
  1901. package/skills/stacks/database/supabase/SKILL.md +79 -0
  1902. package/skills/stacks/dataviz/chart-js/SKILL.md +72 -0
  1903. package/skills/stacks/dataviz/d3/SKILL.md +77 -0
  1904. package/skills/stacks/dataviz/grafana/SKILL.md +69 -0
  1905. package/skills/stacks/dataviz/plotly/SKILL.md +71 -0
  1906. package/skills/stacks/frontend/alpine/SKILL.md +75 -0
  1907. package/skills/stacks/frontend/angular/SKILL.md +75 -0
  1908. package/skills/stacks/frontend/backbone/SKILL.md +82 -0
  1909. package/skills/stacks/frontend/ember/SKILL.md +85 -0
  1910. package/skills/stacks/frontend/htmx/SKILL.md +73 -0
  1911. package/skills/stacks/frontend/lit/SKILL.md +76 -0
  1912. package/skills/stacks/frontend/preact/SKILL.md +74 -0
  1913. package/skills/stacks/frontend/qwik/SKILL.md +65 -0
  1914. package/skills/stacks/frontend/react/SKILL.md +77 -0
  1915. package/skills/stacks/frontend/solidjs/SKILL.md +75 -0
  1916. package/skills/stacks/frontend/svelte/SKILL.md +70 -0
  1917. package/skills/stacks/frontend/vue/SKILL.md +69 -0
  1918. package/skills/stacks/infra/ansible/SKILL.md +76 -0
  1919. package/skills/stacks/infra/aws/SKILL.md +66 -0
  1920. package/skills/stacks/infra/azure/SKILL.md +72 -0
  1921. package/skills/stacks/infra/circleci/SKILL.md +78 -0
  1922. package/skills/stacks/infra/cloudflare/SKILL.md +65 -0
  1923. package/skills/stacks/infra/fly-io/SKILL.md +63 -0
  1924. package/skills/stacks/infra/gcp/SKILL.md +66 -0
  1925. package/skills/stacks/infra/jenkins/SKILL.md +73 -0
  1926. package/skills/stacks/infra/kubernetes/SKILL.md +64 -0
  1927. package/skills/stacks/infra/netlify/SKILL.md +60 -0
  1928. package/skills/stacks/infra/railway/SKILL.md +63 -0
  1929. package/skills/stacks/infra/tailscale/SKILL.md +65 -0
  1930. package/skills/stacks/infra/terraform/SKILL.md +75 -0
  1931. package/skills/stacks/infra/vagrant/SKILL.md +70 -0
  1932. package/skills/stacks/infra/vercel/SKILL.md +60 -0
  1933. package/skills/stacks/meta/astro/SKILL.md +64 -0
  1934. package/skills/stacks/meta/docusaurus/SKILL.md +71 -0
  1935. package/skills/stacks/meta/eleventy/SKILL.md +69 -0
  1936. package/skills/stacks/meta/gatsby/SKILL.md +63 -0
  1937. package/skills/stacks/meta/hugo/SKILL.md +73 -0
  1938. package/skills/stacks/meta/jekyll/SKILL.md +70 -0
  1939. package/skills/stacks/meta/nextjs/SKILL.md +62 -0
  1940. package/skills/stacks/meta/nuxt/SKILL.md +66 -0
  1941. package/skills/stacks/meta/remix/SKILL.md +67 -0
  1942. package/skills/stacks/meta/sveltekit/SKILL.md +70 -0
  1943. package/skills/stacks/meta/vite/SKILL.md +63 -0
  1944. package/skills/stacks/mobile/android/SKILL.md +77 -0
  1945. package/skills/stacks/mobile/flutter/SKILL.md +77 -0
  1946. package/skills/stacks/mobile/ionic/SKILL.md +72 -0
  1947. package/skills/stacks/mobile/nativescript/SKILL.md +71 -0
  1948. package/skills/stacks/mobile/react-native/SKILL.md +75 -0
  1949. package/skills/stacks/mobile/xamarin/SKILL.md +73 -0
  1950. package/skills/stacks/orm/diesel/SKILL.md +72 -0
  1951. package/skills/stacks/orm/django-orm/SKILL.md +58 -0
  1952. package/skills/stacks/orm/drizzle/SKILL.md +67 -0
  1953. package/skills/stacks/orm/gorm/SKILL.md +73 -0
  1954. package/skills/stacks/orm/knex/SKILL.md +64 -0
  1955. package/skills/stacks/orm/mongoose/SKILL.md +64 -0
  1956. package/skills/stacks/orm/prisma/SKILL.md +64 -0
  1957. package/skills/stacks/orm/sequelize/SKILL.md +65 -0
  1958. package/skills/stacks/orm/sqlalchemy/SKILL.md +71 -0
  1959. package/skills/stacks/orm/typeorm/SKILL.md +70 -0
  1960. package/skills/stacks/queue/bullmq/SKILL.md +69 -0
  1961. package/skills/stacks/queue/celery/SKILL.md +68 -0
  1962. package/skills/stacks/queue/kafka/SKILL.md +66 -0
  1963. package/skills/stacks/queue/nats/SKILL.md +66 -0
  1964. package/skills/stacks/queue/rabbitmq/SKILL.md +64 -0
  1965. package/skills/stacks/queue/redis/SKILL.md +66 -0
  1966. package/skills/stacks/runtime/beam/SKILL.md +72 -0
  1967. package/skills/stacks/runtime/bun/SKILL.md +80 -0
  1968. package/skills/stacks/runtime/deno/SKILL.md +74 -0
  1969. package/skills/stacks/runtime/dotnet/SKILL.md +64 -0
  1970. package/skills/stacks/runtime/jvm/SKILL.md +66 -0
  1971. package/skills/stacks/runtime/node/SKILL.md +70 -0
  1972. package/skills/stacks/runtime/pypy/SKILL.md +69 -0
  1973. package/skills/stacks/runtime/python3/SKILL.md +70 -0
  1974. package/skills/stacks/styling/bootstrap/SKILL.md +74 -0
  1975. package/skills/stacks/styling/bulma/SKILL.md +80 -0
  1976. package/skills/stacks/styling/chakra-ui/SKILL.md +61 -0
  1977. package/skills/stacks/styling/css-modules/SKILL.md +54 -0
  1978. package/skills/stacks/styling/mui/SKILL.md +60 -0
  1979. package/skills/stacks/styling/sass/SKILL.md +63 -0
  1980. package/skills/stacks/styling/shadcn-ui/SKILL.md +58 -0
  1981. package/skills/stacks/styling/styled-components/SKILL.md +62 -0
  1982. package/skills/stacks/styling/tailwind/SKILL.md +59 -0
  1983. package/skills/stacks/styling/unocss/SKILL.md +64 -0
  1984. package/skills/stacks/styling/vanilla-extract/SKILL.md +64 -0
  1985. package/skills/stacks/styling/vuetify/SKILL.md +89 -0
  1986. package/skills/stacks/testing/cypress/SKILL.md +68 -0
  1987. package/skills/stacks/testing/jasmine/SKILL.md +67 -0
  1988. package/skills/stacks/testing/jest/SKILL.md +67 -0
  1989. package/skills/stacks/testing/mocha/SKILL.md +71 -0
  1990. package/skills/stacks/testing/playwright/SKILL.md +68 -0
  1991. package/skills/stacks/testing/puppeteer/SKILL.md +70 -0
  1992. package/skills/stacks/testing/selenium/SKILL.md +70 -0
  1993. package/skills/stacks/testing/vitest/SKILL.md +68 -0
@@ -0,0 +1,757 @@
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
6
+ <title>Brand Kit</title>
7
+ <!--
8
+ Self-contained brand-kit page. The daemon's brand-kit renderer replaces the
9
+ payload token in the script tag below with a JSON blob { status, brand,
10
+ assets }. Everything renders from that single embedded object — no external
11
+ requests, so it works under the FileViewer's sandboxed URL-load iframe.
12
+ While status is "extracting" the page softly reloads itself so the user
13
+ watches the kit fill in as the agent writes brand.json and re-renders.
14
+ -->
15
+ <script id="od-brand-payload" type="application/json">__OD_BRAND_PAYLOAD__</script>
16
+ <!-- Self-hosted @font-face rules (replaced with the brand's fonts/ manifest, or
17
+ emptied when no webfonts were harvested) so specimens render for real. -->
18
+ <style data-brand-fonts>__OD_BRAND_FONTFACE__</style>
19
+ <style>
20
+ :root {
21
+ --paper: #faf9f5;
22
+ --surface: #ffffff;
23
+ --ink: #1a1a18;
24
+ --ink-mute: #57564f;
25
+ --ink-faint: #8a887f;
26
+ --line: #e7e5dc;
27
+ --line-soft: #efeee7;
28
+ --accent: #c96442;
29
+ --ok: #3d7a4f;
30
+ --err: #b4453a;
31
+ --radius: 14px;
32
+ --font-display: ui-serif, Georgia, 'Times New Roman', serif;
33
+ --font-body: ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
34
+ --font-mono: ui-monospace, 'SF Mono', Menlo, Consolas, monospace;
35
+ }
36
+ * { box-sizing: border-box; }
37
+ html, body { margin: 0; }
38
+ body {
39
+ background: var(--paper);
40
+ color: var(--ink);
41
+ font-family: var(--font-body);
42
+ font-size: 15px;
43
+ line-height: 1.5;
44
+ -webkit-font-smoothing: antialiased;
45
+ }
46
+ .wrap { max-width: 1040px; margin: 0 auto; padding: 40px 28px 96px; }
47
+ a { color: inherit; }
48
+
49
+ header.kit-head { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 16px; }
50
+ .kit-title { font-family: var(--font-display); font-size: 40px; line-height: 1.05; font-weight: 600; letter-spacing: -0.02em; margin: 0; }
51
+ .kit-tagline { margin: 6px 0 0; font-size: 18px; color: var(--ink-mute); }
52
+ .kit-source { margin-top: 6px; display: inline-flex; align-items: center; gap: 5px; font-size: 12px; color: var(--ink-faint); text-decoration: none; }
53
+ .kit-source:hover { color: var(--accent); }
54
+ .head-actions { display: flex; align-items: center; gap: 8px; }
55
+ .btn { display: inline-flex; align-items: center; gap: 6px; border: 1px solid var(--line); background: var(--surface); color: var(--ink); border-radius: 10px; padding: 7px 12px; font-size: 13px; text-decoration: none; cursor: pointer; transition: border-color .14s ease; }
56
+ .btn:hover { border-color: var(--accent); }
57
+
58
+ .status-pill { display: inline-flex; align-items: center; gap: 7px; border-radius: 999px; padding: 4px 11px 4px 9px; font-size: 12px; font-weight: 500; border: 1px solid var(--line); background: var(--surface); color: var(--ink-mute); }
59
+ .status-pill .dot { width: 7px; height: 7px; border-radius: 50%; background: var(--accent); }
60
+ .status-pill.extracting .dot { animation: pulse 1.1s ease-in-out infinite; }
61
+ .status-pill.ready .dot { background: var(--ok); }
62
+ @keyframes pulse { 0%,100% { opacity: 1; transform: scale(1);} 50% { opacity: .35; transform: scale(.7);} }
63
+
64
+ .sec { margin-top: 40px; }
65
+ .sec-title { font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.14em; color: var(--ink-faint); margin: 0 0 12px; }
66
+ .grid-2 { display: grid; gap: 28px; grid-template-columns: 1fr; }
67
+ .grid-top { display: grid; gap: 28px; grid-template-columns: 1fr; }
68
+ @media (min-width: 860px) {
69
+ .grid-2 { grid-template-columns: 1fr 1fr; }
70
+ .grid-top { grid-template-columns: 1fr 2fr; }
71
+ }
72
+ .card { border: 1px solid var(--line-soft); background: var(--surface); border-radius: var(--radius); padding: 18px; box-shadow: 0 1px 2px rgba(0,0,0,.03); }
73
+
74
+ /* Logo */
75
+ .logo-stage { display: flex; min-height: 158px; align-items: center; justify-content: center; border: 1px solid var(--line-soft); border-radius: var(--radius); padding: 28px; }
76
+ .logo-stage img { max-height: 92px; max-width: 100%; object-fit: contain; }
77
+ .logo-empty { display: flex; min-height: 158px; flex-direction: column; align-items: center; justify-content: center; gap: 6px; border: 1px dashed var(--line); border-radius: var(--radius); color: var(--ink-faint); font-size: 14px; }
78
+ .logo-thumbs { margin-top: 10px; display: flex; gap: 8px; flex-wrap: wrap; }
79
+ .logo-thumb { width: 42px; height: 42px; display: flex; align-items: center; justify-content: center; border: 1px solid var(--line-soft); border-radius: 9px; padding: 6px; cursor: pointer; }
80
+ .logo-thumb.active { border-color: var(--accent); }
81
+ .logo-thumb img { max-width: 100%; max-height: 100%; object-fit: contain; }
82
+ .logo-notes { margin-top: 10px; font-size: 12px; color: var(--ink-faint); }
83
+
84
+ /* Type */
85
+ .type-row { border: 1px solid var(--line-soft); border-radius: 12px; background: var(--surface); padding: 16px 18px; }
86
+ .type-row + .type-row { margin-top: 12px; }
87
+ .type-meta { display: flex; align-items: baseline; justify-content: space-between; gap: 14px; }
88
+ .type-label { font-size: 11px; text-transform: uppercase; letter-spacing: .08em; color: var(--ink-faint); }
89
+ .type-font { font-size: 12px; color: var(--ink-mute); text-align: right; }
90
+ .type-font .dim { color: var(--ink-faint); }
91
+ .type-sample { margin: 8px 0 0; line-height: 1.1; }
92
+
93
+ /* Palette */
94
+ .palette { display: grid; gap: 12px; grid-template-columns: repeat(2, 1fr); }
95
+ @media (min-width: 560px) { .palette { grid-template-columns: repeat(4, 1fr); } }
96
+ @media (min-width: 920px) { .palette { grid-template-columns: repeat(7, 1fr); } }
97
+ .swatch { overflow: hidden; border: 1px solid var(--line-soft); border-radius: 12px; background: var(--surface); box-shadow: 0 1px 2px rgba(0,0,0,.03); }
98
+ .swatch-chip { height: 92px; display: flex; align-items: flex-end; padding: 8px; }
99
+ .swatch-chip .hex { font-family: var(--font-mono); font-size: 11px; }
100
+ .swatch-body { padding: 9px 10px 11px; }
101
+ .swatch-name { font-size: 13px; font-weight: 500; line-height: 1.2; }
102
+ .swatch-role { font-size: 11px; color: var(--ink-faint); margin-top: 1px; }
103
+ .swatch-usage { font-size: 11px; color: var(--ink-mute); margin-top: 5px; line-height: 1.35; }
104
+
105
+ /* Voice */
106
+ .chips { display: flex; flex-wrap: wrap; gap: 6px; }
107
+ .chip { border-radius: 999px; padding: 2px 10px; font-size: 12px; font-weight: 500; }
108
+ .voice-tone { margin: 12px 0 0; font-size: 14px; color: var(--ink-mute); line-height: 1.55; }
109
+ .pillars { margin: 12px 0 0; padding: 0; list-style: none; font-size: 14px; }
110
+ .pillars li { display: flex; gap: 8px; margin-top: 4px; }
111
+ .vocab { margin-top: 14px; display: grid; grid-template-columns: 1fr 1fr; gap: 16px; border-top: 1px solid var(--line-soft); padding-top: 12px; font-size: 12px; }
112
+ .vocab .k { font-weight: 600; }
113
+ .vocab .use .k { color: var(--ok); }
114
+ .vocab .avoid .k { color: var(--err); }
115
+ .vocab .v { margin-top: 4px; color: var(--ink-mute); }
116
+
117
+ /* Imagery */
118
+ .imagery p { margin: 0; font-size: 14px; }
119
+ .imagery p + p { margin-top: 6px; color: var(--ink-mute); }
120
+ .imagery .k { font-weight: 600; color: var(--ink); }
121
+ .posture { margin-top: 12px; border-top: 1px solid var(--line-soft); padding-top: 12px; }
122
+ .posture ul { margin: 6px 0 0; padding-left: 18px; font-size: 12px; color: var(--ink-mute); }
123
+ .posture ul li { margin-top: 2px; }
124
+
125
+ /* Design system */
126
+ .ds-head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 10px; }
127
+ .ds-sub { margin: 2px 0 0; font-size: 13px; color: var(--ink-mute); }
128
+ .ds-frame-wrap { margin-top: 14px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); overflow: hidden; box-shadow: 0 1px 2px rgba(0,0,0,.03); }
129
+ .ds-bar { display: flex; align-items: center; justify-content: space-between; gap: 10px; border-bottom: 1px solid var(--line-soft); padding: 7px 10px; }
130
+ .ds-tabs { display: flex; gap: 4px; }
131
+ .ds-tab { border: 0; background: transparent; cursor: pointer; border-radius: 8px; padding: 4px 11px; font-size: 13px; color: var(--ink-mute); font-family: inherit; }
132
+ .ds-tab.active { background: var(--surface); color: var(--accent); font-weight: 600; box-shadow: inset 0 0 0 1px var(--line); }
133
+ .ds-cap { font-size: 11px; color: var(--ink-faint); }
134
+ .ds-frame { width: 100%; height: 520px; border: 0; display: block; background: #fff; }
135
+ .ds-tokens { margin-top: 12px; display: flex; flex-wrap: wrap; gap: 8px; }
136
+ .tok { display: flex; align-items: center; gap: 8px; border: 1px solid var(--line-soft); background: var(--surface); border-radius: 10px; padding: 5px 11px 5px 5px; box-shadow: 0 1px 2px rgba(0,0,0,.03); }
137
+ .tok .sw { width: 26px; height: 26px; border-radius: 7px; border: 1px solid rgba(0,0,0,.1); }
138
+ .tok .val { display: flex; min-width: 26px; height: 26px; align-items: center; justify-content: center; padding: 0 6px; border-radius: 7px; background: color-mix(in srgb, var(--accent) 14%, transparent); color: var(--accent); font-family: var(--font-mono); font-size: 11px; font-weight: 600; }
139
+ .tok .k { font-size: 11px; font-weight: 600; line-height: 1.1; }
140
+ .tok .h { font-family: var(--font-mono); font-size: 10px; color: var(--ink-faint); line-height: 1.1; }
141
+
142
+ /* Brand assets */
143
+ .assets { display: grid; gap: 16px; grid-template-columns: 1fr; }
144
+ @media (min-width: 620px) { .assets { grid-template-columns: 1fr 1fr; } }
145
+ @media (min-width: 920px) { .assets { grid-template-columns: 1fr 1fr 1fr; } }
146
+ .asset { border: 1px solid var(--line-soft); border-radius: 12px; background: var(--surface); overflow: hidden; text-decoration: none; color: inherit; display: flex; flex-direction: column; transition: border-color .14s ease, transform .14s ease; }
147
+ .asset:hover { border-color: var(--accent); transform: translateY(-1px); }
148
+ .asset.pending { opacity: .55; pointer-events: none; }
149
+ .asset-frame { aspect-ratio: 16 / 10; background: var(--line-soft); position: relative; overflow: hidden; }
150
+ .asset-frame iframe { position: absolute; top: 0; left: 0; width: 200%; height: 200%; border: 0; transform: scale(.5); transform-origin: top left; pointer-events: none; background: #fff; }
151
+ .asset-meta { padding: 11px 13px; }
152
+ .asset-name { font-size: 13px; font-weight: 600; display: flex; align-items: center; justify-content: space-between; gap: 8px; }
153
+ .asset-name .open { font-size: 11px; color: var(--accent); }
154
+ .asset-desc { font-size: 11px; color: var(--ink-faint); margin-top: 2px; }
155
+
156
+ /* Hero banner — surfaces the first harvested brand image for visual richness */
157
+ .kit-hero { margin-top: 22px; border: 1px solid var(--line-soft); border-radius: var(--radius); overflow: hidden; background: var(--line-soft); aspect-ratio: 16 / 5; box-shadow: 0 1px 2px rgba(0,0,0,.03); }
158
+ .kit-hero img { width: 100%; height: 100%; object-fit: cover; display: block; }
159
+
160
+ /* Font specimen tiles — a big "Ag" glyph per real family, in its own face */
161
+ .fonts { display: grid; gap: 12px; grid-template-columns: repeat(2, 1fr); margin-bottom: 14px; }
162
+ @media (min-width: 560px) { .fonts { grid-template-columns: repeat(3, 1fr); } }
163
+ .font-tile { border: 1px solid var(--line-soft); border-radius: 12px; background: var(--surface); overflow: hidden; box-shadow: 0 1px 2px rgba(0,0,0,.03); }
164
+ .font-tile .ag { display: flex; align-items: center; justify-content: center; height: 104px; font-size: 56px; line-height: 1; color: var(--ink); background: var(--line-soft); }
165
+ .font-tile .ft-meta { padding: 9px 11px 11px; }
166
+ .font-tile .ft-name { font-size: 13px; font-weight: 600; line-height: 1.2; }
167
+ .font-tile .ft-role { font-size: 11px; color: var(--ink-faint); margin-top: 1px; text-transform: uppercase; letter-spacing: .06em; }
168
+
169
+ /* Images gallery — a thumbnail grid of representative brand imagery */
170
+ .gallery { display: grid; gap: 12px; grid-template-columns: repeat(2, 1fr); }
171
+ @media (min-width: 560px) { .gallery { grid-template-columns: repeat(3, 1fr); } }
172
+ @media (min-width: 920px) { .gallery { grid-template-columns: repeat(4, 1fr); } }
173
+ .shot { border: 1px solid var(--line-soft); border-radius: 12px; background: var(--surface); overflow: hidden; box-shadow: 0 1px 2px rgba(0,0,0,.03); transition: border-color .14s ease, transform .14s ease; }
174
+ .shot:hover { border-color: var(--accent); transform: translateY(-1px); }
175
+ .shot-frame { aspect-ratio: 4 / 3; background: var(--line-soft); }
176
+ .shot-frame img { width: 100%; height: 100%; object-fit: cover; display: block; }
177
+ .shot-meta { padding: 8px 10px 10px; }
178
+ .shot-cap { font-size: 12px; font-weight: 500; line-height: 1.25; }
179
+ .shot-kind { font-size: 11px; color: var(--ink-faint); margin-top: 1px; }
180
+ .shot { cursor: pointer; }
181
+ .shot:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
182
+ .gallery-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
183
+ .view-all { border: 1px solid var(--line); background: var(--surface); color: var(--ink-mute); border-radius: 999px; padding: 4px 12px; font-size: 12px; font-weight: 500; cursor: pointer; font-family: inherit; transition: border-color .2s cubic-bezier(.23,1,.32,1), color .2s cubic-bezier(.23,1,.32,1); }
184
+ .view-all:hover { border-color: var(--accent); color: var(--accent); }
185
+
186
+ /* Brand-asset tiles are clickable (open an in-page preview modal). */
187
+ .asset[data-asset-href] { cursor: pointer; }
188
+ .asset:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
189
+
190
+ /* In-page preview overlays — the kit runs in a sandboxed iframe (no top
191
+ navigation), so image enlargement and asset previews happen as DOM
192
+ overlays. Ease-out cubic-bezier(.23,1,.32,1); enter ~200ms / exit ~140ms. */
193
+ .ov { position: fixed; inset: 0; z-index: 60; display: none; }
194
+ .ov.open { display: block; }
195
+ .ov-back { position: absolute; inset: 0; background: rgba(20,19,17,.74); opacity: 0; transition: opacity .14s cubic-bezier(.23,1,.32,1); }
196
+ .ov.in .ov-back { opacity: 1; transition-duration: .2s; }
197
+ .ov-panel { position: absolute; opacity: 0; transform: scale(.92); transition: opacity .14s cubic-bezier(.23,1,.32,1), transform .14s cubic-bezier(.23,1,.32,1); }
198
+ .ov.in .ov-panel { opacity: 1; transform: scale(1); transition-duration: .2s; }
199
+ .ov-close { position: absolute; top: 14px; right: 16px; z-index: 2; width: 36px; height: 36px; display: flex; align-items: center; justify-content: center; border: 0; border-radius: 999px; background: rgba(255,255,255,.92); color: #1a1a18; font-size: 22px; line-height: 1; cursor: pointer; box-shadow: 0 2px 10px rgba(0,0,0,.22); }
200
+ .ov-close:hover { background: #fff; }
201
+ .icon-x { border: 0; background: transparent; font-size: 22px; line-height: 1; cursor: pointer; color: var(--ink-mute); padding: 4px 9px; border-radius: 8px; }
202
+ .icon-x:hover { background: var(--line-soft); color: var(--ink); }
203
+
204
+ /* Lightbox */
205
+ #ov-light { z-index: 70; }
206
+ #ov-light .ov-panel { top: 50%; left: 50%; transform: translate(-50%,-50%) scale(.92); display: flex; flex-direction: column; align-items: center; }
207
+ #ov-light.in .ov-panel { transform: translate(-50%,-50%) scale(1); }
208
+ #ov-light img { max-width: 92vw; max-height: 82vh; object-fit: contain; border-radius: 12px; box-shadow: 0 12px 48px rgba(0,0,0,.5); background: #fff; }
209
+ .light-cap { margin-top: 12px; color: rgba(255,255,255,.92); font-size: 13px; text-align: center; max-width: 80vw; }
210
+ .light-nav { position: absolute; top: 50%; transform: translateY(-50%); width: 44px; height: 44px; border: 0; border-radius: 999px; background: rgba(255,255,255,.88); color: #1a1a18; font-size: 24px; cursor: pointer; display: flex; align-items: center; justify-content: center; box-shadow: 0 2px 12px rgba(0,0,0,.28); }
211
+ .light-nav:hover { background: #fff; }
212
+ .light-prev { left: 3vw; }
213
+ .light-next { right: 3vw; }
214
+
215
+ /* Masonry "view all" modal */
216
+ #ov-grid .ov-panel { top: 4vh; left: 50%; transform: translate(-50%,0) scale(.96); width: min(980px, 92vw); height: 92vh; background: var(--paper); border-radius: var(--radius); overflow: hidden; display: flex; flex-direction: column; box-shadow: 0 16px 60px rgba(0,0,0,.42); }
217
+ #ov-grid.in .ov-panel { transform: translate(-50%,0) scale(1); }
218
+ .grid-bar { display: flex; align-items: center; justify-content: space-between; padding: 14px 20px; border-bottom: 1px solid var(--line); }
219
+ .grid-bar h3 { margin: 0; font-family: var(--font-display); font-size: 18px; }
220
+ .grid-scroll { overflow-y: auto; padding: 16px 20px 28px; }
221
+ .masonry { columns: 2; column-gap: 12px; }
222
+ @media (min-width: 560px) { .masonry { columns: 3; } }
223
+ @media (min-width: 860px) { .masonry { columns: 4; } }
224
+ .masonry .m-item { break-inside: avoid; margin: 0 0 12px; border-radius: 10px; overflow: hidden; border: 1px solid var(--line-soft); background: var(--surface); cursor: pointer; transition: transform .2s cubic-bezier(.23,1,.32,1); }
225
+ .masonry .m-item:hover { transform: translateY(-2px); }
226
+ .masonry .m-item img { width: 100%; display: block; }
227
+
228
+ /* Asset preview modal */
229
+ #ov-asset .ov-panel { top: 4vh; left: 50%; transform: translate(-50%,0) scale(.96); width: min(1120px, 94vw); height: 92vh; background: #fff; border-radius: var(--radius); overflow: hidden; display: flex; flex-direction: column; box-shadow: 0 16px 60px rgba(0,0,0,.42); }
230
+ #ov-asset.in .ov-panel { transform: translate(-50%,0) scale(1); }
231
+ .asset-bar { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 12px 18px; border-bottom: 1px solid var(--line); background: var(--surface); }
232
+ .asset-bar .ab-title { font-size: 14px; font-weight: 600; }
233
+ .asset-bar .ab-sub { font-size: 12px; color: var(--ink-faint); margin-left: 8px; font-weight: 400; }
234
+ .asset-modal-frame { flex: 1; width: 100%; border: 0; display: block; background: #fff; }
235
+
236
+ /* skeleton */
237
+ .skel { background: linear-gradient(90deg, var(--line-soft) 25%, #f6f5ef 37%, var(--line-soft) 63%); background-size: 400% 100%; animation: shimmer 1.4s ease infinite; border-radius: 8px; }
238
+ @keyframes shimmer { 0% { background-position: 100% 0; } 100% { background-position: -100% 0; } }
239
+ .skel-line { height: 12px; margin-top: 8px; }
240
+ .muted { color: var(--ink-faint); font-size: 13px; }
241
+ </style>
242
+ </head>
243
+ <body>
244
+ <div class="wrap" id="root"></div>
245
+ <script>
246
+ (function () {
247
+ function payload() {
248
+ var el = document.getElementById('od-brand-payload');
249
+ try { return JSON.parse(el && el.textContent ? el.textContent : '{}'); }
250
+ catch (e) { return {}; }
251
+ }
252
+ function esc(s) {
253
+ return String(s == null ? '' : s).replace(/[&<>"']/g, function (c) {
254
+ return { '&':'&amp;','<':'&lt;','>':'&gt;','"':'&quot;',"'":'&#39;' }[c];
255
+ });
256
+ }
257
+ function arr(v) { return Array.isArray(v) ? v : []; }
258
+ function role(brand, r, fb) {
259
+ var c = arr(brand.colors).find(function (x) { return x && x.role === r; });
260
+ return c && c.hex ? c.hex : fb;
261
+ }
262
+ function isLight(hex) {
263
+ if (!/^#[0-9a-fA-F]{6}$/.test(hex || '')) return true;
264
+ var r = parseInt(hex.slice(1,3),16), g = parseInt(hex.slice(3,5),16), b = parseInt(hex.slice(5,7),16);
265
+ return (r*0.299 + g*0.587 + b*0.114) > 150;
266
+ }
267
+ function fontStack(spec) {
268
+ var fams = [spec && spec.family].concat(arr(spec && spec.fallbacks)).filter(Boolean);
269
+ if (!fams.length) fams = ['ui-sans-serif','system-ui','sans-serif'];
270
+ return fams.map(function (f) { return /\s/.test(f) ? '"' + f + '"' : f; }).join(', ');
271
+ }
272
+
273
+ var data = payload();
274
+ var brand = data.brand || {};
275
+ var status = data.status || 'extracting';
276
+ var assets = arr(data.assets);
277
+ var extracting = status === 'extracting';
278
+
279
+ var colors = arr(brand.colors);
280
+ var bg = role(brand, 'background', '#ffffff');
281
+ var fg = role(brand, 'foreground', '#1a1a18');
282
+ var muted = role(brand, 'muted', '#57564f');
283
+ var accent = role(brand, 'accent', '#c96442');
284
+
285
+ // Apply brand accent/ink to the page chrome so the kit feels on-brand.
286
+ document.documentElement.style.setProperty('--accent', accent);
287
+
288
+ var typo = brand.typography || {};
289
+ var googleLinks = [typo.display, typo.body, typo.mono]
290
+ .map(function (s) { return s && s.googleFontsUrl; })
291
+ .filter(function (u, i, a) { return u && a.indexOf(u) === i; });
292
+ googleLinks.forEach(function (u) {
293
+ var l = document.createElement('link'); l.rel = 'stylesheet'; l.href = u; document.head.appendChild(l);
294
+ });
295
+
296
+ function sectionTitle(t) { return '<h2 class="sec-title">' + esc(t) + '</h2>'; }
297
+
298
+ function logoHtml() {
299
+ // Resilient candidate list: primary first when present, otherwise fall back
300
+ // to the alternates so a populated `alternates` still renders a real mark.
301
+ // De-dupe so the primary doesn't double up as a thumbnail.
302
+ var primary = brand.logo && brand.logo.primary;
303
+ var cands = [primary].concat(arr(brand.logo && brand.logo.alternates))
304
+ .filter(Boolean)
305
+ .filter(function (c, i, a) { return a.indexOf(c) === i; });
306
+ if (!cands.length) {
307
+ return '<div class="logo-empty">' + (extracting
308
+ ? '<div class="skel" style="width:60%;height:48px"></div><span class="muted">Looking for a logo…</span>'
309
+ : 'No logo found') + '</div>';
310
+ }
311
+ var thumbs = cands.length > 1 ? '<div class="logo-thumbs">' + cands.map(function (c, i) {
312
+ return '<button class="logo-thumb' + (i===0?' active':'') + '" data-src="' + esc(c) + '" style="background:' + esc(bg) + '"><img src="' + esc(c) + '" alt=""></button>';
313
+ }).join('') + '</div>' : '';
314
+ var notes = brand.logo && brand.logo.notes ? '<p class="logo-notes">' + esc(brand.logo.notes) + '</p>' : '';
315
+ return '<div class="logo-stage" id="logo-stage" style="background:' + esc(bg) + '">' +
316
+ '<img id="logo-img" src="' + esc(cands[0]) + '" alt="' + esc(brand.name || 'logo') + '"></div>' + thumbs + notes;
317
+ }
318
+
319
+ // Big "Ag" specimen tile per real family (display / body / mono), each set in
320
+ // its own face via the injected @font-face / googleFontsUrl — matches the
321
+ // Lovart 字体 tiles. Empty until at least one family is known.
322
+ function fontTilesHtml() {
323
+ var tiles = [
324
+ { role: 'Display', spec: typo.display },
325
+ { role: 'Body', spec: typo.body },
326
+ ];
327
+ if (typo.mono) tiles.push({ role: 'Mono', spec: typo.mono });
328
+ tiles = tiles.filter(function (t) { return t.spec && t.spec.family; });
329
+ if (!tiles.length) return '';
330
+ return '<div class="fonts">' + tiles.map(function (t) {
331
+ return '<div class="font-tile">' +
332
+ '<div class="ag" style="font-family:' + fontStack(t.spec) + '">Ag</div>' +
333
+ '<div class="ft-meta"><div class="ft-name">' + esc(t.spec.family) + '</div>' +
334
+ '<div class="ft-role">' + esc(t.role) + '</div></div></div>';
335
+ }).join('') + '</div>';
336
+ }
337
+
338
+ function imagerySamples() {
339
+ return arr(brand.imagery && brand.imagery.samples).filter(function (s) { return s && s.file; });
340
+ }
341
+
342
+ // Thumbnail grid of representative imagery harvested from the site. Relative
343
+ // `imagery/<file>` paths resolve under the FileViewer raw URL. Every thumb is
344
+ // clickable to open the lightbox; a "View all" entry opens a masonry modal
345
+ // with the full set. Empty (so the text-only imagery card stays) when no
346
+ // samples were saved.
347
+ function galleryHtml() {
348
+ var samples = imagerySamples();
349
+ if (!samples.length) return '';
350
+ var viewAll = samples.length > 6
351
+ ? '<button class="view-all" id="gallery-view-all" type="button">View all (' + samples.length + ') →</button>'
352
+ : '';
353
+ return '<section class="sec">' +
354
+ '<div class="gallery-head"><h2 class="sec-title" style="margin:0">Images</h2>' + viewAll + '</div>' +
355
+ '<div class="gallery">' + samples.map(function (s, i) {
356
+ var cap = s.caption || s.kind || '';
357
+ var sub = (s.caption && s.kind) ? s.kind : '';
358
+ var meta = cap ? '<div class="shot-meta"><div class="shot-cap">' + esc(cap) + '</div>' +
359
+ (sub ? '<div class="shot-kind">' + esc(sub) + '</div>' : '') + '</div>' : '';
360
+ return '<div class="shot" data-idx="' + i + '" tabindex="0" role="button" aria-label="' + esc(cap || 'Image') + '"><div class="shot-frame">' +
361
+ '<img src="' + esc(s.file) + '" alt="' + esc(cap || brand.name || '') + '" loading="lazy"></div>' + meta + '</div>';
362
+ }).join('') + '</div></section>';
363
+ }
364
+
365
+ // Optional hero band: surfaces the first harvested image for visual richness.
366
+ function heroHtml() {
367
+ var samples = imagerySamples();
368
+ if (!samples.length) return '';
369
+ return '<div class="kit-hero"><img src="' + esc(samples[0].file) + '" alt="' + esc(brand.name || '') + '" loading="lazy"></div>';
370
+ }
371
+
372
+ function typeHtml() {
373
+ var rows = [
374
+ { label: 'Display', spec: typo.display, sample: brand.name || 'Aa', size: '40px', weight: 600, color: fg },
375
+ { label: 'Body', spec: typo.body, sample: brand.tagline || brand.description || 'The quick brown fox jumps over the lazy dog.', size: '17px', weight: 400, color: muted },
376
+ ];
377
+ if (typo.mono) rows.push({ label: 'Mono', spec: typo.mono, sample: 'const brand = await extract(url);', size: '14px', weight: 400, color: fg });
378
+ if (!typo.display && !typo.body) {
379
+ return '<div class="type-row"><div class="skel skel-line" style="width:50%"></div><div class="skel" style="height:34px;margin-top:10px;width:70%"></div></div>';
380
+ }
381
+ return rows.map(function (r) {
382
+ var spec = r.spec || {};
383
+ var note = spec.googleFontsUrl ? '' : ' <span class="dim">· proprietary, shown via fallback</span>';
384
+ var weights = arr(spec.weights).length ? ' · ' + arr(spec.weights).join('/') : '';
385
+ return '<div class="type-row"><div class="type-meta">' +
386
+ '<span class="type-label">' + esc(r.label) + '</span>' +
387
+ '<span class="type-font">' + esc(spec.family || '—') + esc(weights) + note + '</span></div>' +
388
+ '<p class="type-sample" style="font-family:' + fontStack(spec) + ';font-size:' + r.size + ';font-weight:' + r.weight + ';color:' + esc(r.color) + '">' + esc(r.sample) + '</p></div>';
389
+ }).join('');
390
+ }
391
+
392
+ function paletteHtml() {
393
+ if (!colors.length) {
394
+ var sk = '';
395
+ for (var i = 0; i < 7; i++) sk += '<div class="swatch"><div class="skel" style="height:92px"></div><div class="swatch-body"><div class="skel skel-line" style="width:70%"></div></div></div>';
396
+ return '<div class="palette">' + sk + '</div>';
397
+ }
398
+ return '<div class="palette">' + colors.map(function (c) {
399
+ var light = isLight(c.hex);
400
+ return '<div class="swatch"><div class="swatch-chip" style="background:' + esc(c.hex) + '">' +
401
+ '<span class="hex" style="color:' + (light ? 'rgba(0,0,0,.65)' : 'rgba(255,255,255,.9)') + '">' + esc(c.hex) + '</span></div>' +
402
+ '<div class="swatch-body"><div class="swatch-name">' + esc(c.name || c.role) + '</div>' +
403
+ '<div class="swatch-role">' + esc(c.role || '') + '</div>' +
404
+ (c.usage ? '<div class="swatch-usage">' + esc(c.usage) + '</div>' : '') + '</div></div>';
405
+ }).join('') + '</div>';
406
+ }
407
+
408
+ function voiceHtml() {
409
+ var v = brand.voice || {};
410
+ if (!arr(v.adjectives).length && !v.tone) {
411
+ return '<div class="card"><div class="skel skel-line" style="width:40%"></div><div class="skel skel-line" style="width:85%"></div><div class="skel skel-line" style="width:75%"></div></div>';
412
+ }
413
+ var chips = arr(v.adjectives).map(function (a) {
414
+ return '<span class="chip" style="background:' + esc(accent) + '1f;color:' + esc(accent) + '">' + esc(a) + '</span>';
415
+ }).join('');
416
+ var pillars = arr(v.messagingPillars).length ? '<ul class="pillars">' + arr(v.messagingPillars).map(function (p) {
417
+ return '<li><span style="color:' + esc(accent) + '">—</span><span>' + esc(p) + '</span></li>';
418
+ }).join('') + '</ul>' : '';
419
+ var vocab = (v.vocabulary && (arr(v.vocabulary.use).length || arr(v.vocabulary.avoid).length))
420
+ ? '<div class="vocab"><div class="use"><div class="k">Use</div><div class="v">' + esc(arr(v.vocabulary.use).join(' · ')) + '</div></div>' +
421
+ '<div class="avoid"><div class="k">Avoid</div><div class="v">' + esc(arr(v.vocabulary.avoid).join(' · ')) + '</div></div></div>' : '';
422
+ return '<div class="card"><div class="chips">' + chips + '</div>' +
423
+ (v.tone ? '<p class="voice-tone">' + esc(v.tone) + '</p>' : '') + pillars + vocab + '</div>';
424
+ }
425
+
426
+ function imageryHtml() {
427
+ var im = brand.imagery || {};
428
+ var lay = brand.layout || {};
429
+ if (!im.style && !arr(lay.postureRules).length) {
430
+ return '<div class="card"><div class="skel skel-line" style="width:90%"></div><div class="skel skel-line" style="width:70%"></div></div>';
431
+ }
432
+ var posture = arr(lay.postureRules).length ? '<div class="posture"><div class="type-label">Layout posture</div><ul>' +
433
+ arr(lay.postureRules).map(function (r) { return '<li>' + esc(r) + '</li>'; }).join('') + '</ul></div>' : '';
434
+ return '<div class="card imagery">' +
435
+ (im.style ? '<p>' + esc(im.style) + '</p>' : '') +
436
+ (arr(im.subjects).length ? '<p><span class="k">Subjects:</span> ' + esc(arr(im.subjects).join(', ')) + '</p>' : '') +
437
+ (im.treatment ? '<p><span class="k">Treatment:</span> ' + esc(im.treatment) + '</p>' : '') +
438
+ (arr(im.avoid).length ? '<p><span class="k" style="color:var(--err)">Avoid:</span> ' + esc(arr(im.avoid).join(', ')) + '</p>' : '') +
439
+ posture + '</div>';
440
+ }
441
+
442
+ function tokenChip(label, hex) {
443
+ return '<div class="tok"><span class="sw" style="background:' + esc(hex) + '"></span>' +
444
+ '<span><span class="k">' + esc(label) + '</span><span class="h">' + esc(hex) + '</span></span></div>';
445
+ }
446
+ function valueChip(label, value) {
447
+ return '<div class="tok"><span class="val">' + esc(value) + '</span><span class="k">' + esc(label) + '</span></div>';
448
+ }
449
+
450
+ function designSystemHtml() {
451
+ var sys = data.system;
452
+ if (!sys || !sys.kitHref) return '';
453
+ var t = sys.tokens || {};
454
+ var tokens = '';
455
+ if (t.colorPrimary) {
456
+ tokens = '<div class="ds-tokens">' +
457
+ tokenChip('colorPrimary', t.colorPrimary) +
458
+ (t.colorPrimaryBg ? tokenChip('colorPrimaryBg', t.colorPrimaryBg) : '') +
459
+ (t.colorPrimaryHover ? tokenChip('colorPrimaryHover', t.colorPrimaryHover) : '') +
460
+ (t.colorPrimaryActive ? tokenChip('colorPrimaryActive', t.colorPrimaryActive) : '') +
461
+ (t.fontSize != null ? valueChip('fontSize', String(t.fontSize)) : '') +
462
+ (t.borderRadius != null ? valueChip('borderRadius', String(t.borderRadius)) : '') +
463
+ '</div>';
464
+ }
465
+ var themes = arr(sys.themes).length ? arr(sys.themes).join(' · ') : 'default · dark · compact';
466
+ var openLink = sys.indexHref ? '<a class="btn" href="' + esc(sys.indexHref) + '" target="_top">Open full system ↗</a>' : '';
467
+ return '<section class="sec"><div class="ds-head"><div>' +
468
+ '<h2 class="sec-title">Design system</h2>' +
469
+ '<p class="ds-sub">Deterministic light / dark / compact tokens and a component kit derived from this one brand seed.</p>' +
470
+ '</div>' + openLink + '</div>' +
471
+ '<div class="ds-frame-wrap"><div class="ds-bar">' +
472
+ '<div class="ds-tabs" id="ds-tabs">' +
473
+ '<button class="ds-tab active" data-kit="' + esc(sys.kitHref) + '">Light</button>' +
474
+ (sys.kitDarkHref ? '<button class="ds-tab" data-kit="' + esc(sys.kitDarkHref) + '">Dark</button>' : '') +
475
+ '</div>' +
476
+ '<span class="ds-cap">system/kit.html · themes: ' + esc(themes) + '</span>' +
477
+ '</div>' +
478
+ '<iframe id="ds-frame" class="ds-frame" src="' + esc(sys.kitHref) + '" loading="lazy" sandbox="" title="Component kit"></iframe></div>' +
479
+ tokens + '</section>';
480
+ }
481
+
482
+ function assetsHtml() {
483
+ if (!assets.length) return '';
484
+ return '<section class="sec">' + sectionTitle('Brand assets') +
485
+ '<p class="muted" style="margin:-6px 0 14px">' + (extracting
486
+ ? 'Generated once extraction finishes — click any tile to preview the full page.'
487
+ : 'Click any tile to preview the full page; everything is colored from this one brand.') + '</p>' +
488
+ '<div class="assets">' + assets.map(function (a) {
489
+ var pending = !a.available;
490
+ var inner = pending
491
+ ? '<div class="asset-frame"><div class="skel" style="position:absolute;inset:0"></div></div>'
492
+ : '<div class="asset-frame"><iframe src="' + esc(a.href) + '" loading="lazy" tabindex="-1" aria-hidden="true"></iframe></div>';
493
+ // Clicking a tile opens its full page in an in-page modal iframe — the
494
+ // kit is sandboxed with no top navigation, so a plain link cannot
495
+ // navigate. Data attributes carry what the modal needs.
496
+ var attrs = pending
497
+ ? ''
498
+ : ' data-asset-href="' + esc(a.href) + '" data-asset-label="' + esc(a.label) +
499
+ '" data-asset-desc="' + esc(a.desc || '') + '" tabindex="0" role="button"';
500
+ return '<div class="asset' + (pending ? ' pending' : '') + '"' + attrs + '>' + inner +
501
+ '<div class="asset-meta"><div class="asset-name">' + esc(a.label) + (pending ? '' : '<span class="open">Preview →</span>') + '</div>' +
502
+ (a.desc ? '<div class="asset-desc">' + esc(a.desc) + '</div>' : '') + '</div></div>';
503
+ }).join('') + '</div></section>';
504
+ }
505
+
506
+ var systemHref = (data.system && data.system.indexHref) || null;
507
+ var brandMdHref = (data.brandMd && data.brandMd.href) || null;
508
+
509
+ var html = '' +
510
+ '<header class="kit-head"><div>' +
511
+ '<h1 class="kit-title" style="font-family:' + fontStack(typo.display || {}) + '">' + esc(brand.name || (data.host || 'Brand')) + '</h1>' +
512
+ (brand.tagline ? '<p class="kit-tagline">' + esc(brand.tagline) + '</p>' : '') +
513
+ (brand.sourceUrl ? '<a class="kit-source" href="' + esc(brand.sourceUrl) + '" target="_top">' + esc(brand.sourceUrl) + ' ↗</a>' : '') +
514
+ '</div><div class="head-actions">' +
515
+ '<span class="status-pill ' + (extracting ? 'extracting' : 'ready') + '"><span class="dot"></span>' + (extracting ? 'Extracting…' : 'Brand ready') + '</span>' +
516
+ (brandMdHref ? '<a class="btn" href="' + esc(brandMdHref) + '" target="_top">BRAND.md</a>' : '') +
517
+ (systemHref ? '<a class="btn" href="' + esc(systemHref) + '" target="_top">Design system ↗</a>' : '') +
518
+ '</div></header>' +
519
+ heroHtml() +
520
+ '<div class="sec grid-top"><section><h2 class="sec-title">Logo</h2>' + logoHtml() + '</section>' +
521
+ '<section><h2 class="sec-title">Typography</h2>' + fontTilesHtml() + typeHtml() + '</section></div>' +
522
+ '<section class="sec">' + sectionTitle('Palette') + paletteHtml() + '</section>' +
523
+ '<div class="sec grid-2"><section><h2 class="sec-title">Voice &amp; tone</h2>' + voiceHtml() + '</section>' +
524
+ '<section><h2 class="sec-title">Imagery &amp; layout</h2>' + imageryHtml() + '</section></div>' +
525
+ galleryHtml() +
526
+ designSystemHtml() +
527
+ assetsHtml();
528
+
529
+ document.getElementById('root').innerHTML = html;
530
+
531
+ // Logo thumbnail switcher.
532
+ var img = document.getElementById('logo-img');
533
+ Array.prototype.forEach.call(document.querySelectorAll('.logo-thumb'), function (b) {
534
+ b.addEventListener('click', function () {
535
+ if (img) img.src = b.getAttribute('data-src');
536
+ Array.prototype.forEach.call(document.querySelectorAll('.logo-thumb'), function (x) { x.classList.remove('active'); });
537
+ b.classList.add('active');
538
+ });
539
+ });
540
+
541
+ // Design-system Light/Dark kit toggle — swaps the iframe src in place.
542
+ var dsTabs = document.getElementById('ds-tabs');
543
+ var dsFrame = document.getElementById('ds-frame');
544
+ if (dsTabs && dsFrame) {
545
+ Array.prototype.forEach.call(dsTabs.querySelectorAll('.ds-tab'), function (b) {
546
+ b.addEventListener('click', function () {
547
+ dsFrame.src = b.getAttribute('data-kit');
548
+ Array.prototype.forEach.call(dsTabs.querySelectorAll('.ds-tab'), function (x) { x.classList.remove('active'); });
549
+ b.classList.add('active');
550
+ });
551
+ });
552
+ }
553
+
554
+ // ---- In-page preview overlays (lightbox / masonry / asset modal) ----
555
+ // The kit runs in a sandboxed iframe with no top-navigation, so enlarging an
556
+ // image and previewing a brand asset's full page must happen as in-page DOM
557
+ // overlays rather than real navigation.
558
+ var SAMPLES = imagerySamples();
559
+ var ovStack = [];
560
+
561
+ function mkOverlay(id) {
562
+ var ov = document.createElement('div');
563
+ ov.className = 'ov';
564
+ ov.id = id;
565
+ var back = document.createElement('div');
566
+ back.className = 'ov-back';
567
+ ov.appendChild(back);
568
+ back.addEventListener('click', function () { closeOverlay(ov); });
569
+ document.body.appendChild(ov);
570
+ return ov;
571
+ }
572
+ function openOverlay(ov) {
573
+ if (ovStack.indexOf(ov) === -1) ovStack.push(ov);
574
+ ov.classList.add('open');
575
+ // Two frames so the browser registers the pre-transition state first.
576
+ requestAnimationFrame(function () { requestAnimationFrame(function () { ov.classList.add('in'); }); });
577
+ }
578
+ function closeOverlay(ov) {
579
+ ov.classList.remove('in');
580
+ var i = ovStack.indexOf(ov);
581
+ if (i !== -1) ovStack.splice(i, 1);
582
+ setTimeout(function () { if (!ov.classList.contains('in')) ov.classList.remove('open'); }, 160);
583
+ }
584
+ document.addEventListener('keydown', function (e) {
585
+ if (e.key === 'Escape' && ovStack.length) closeOverlay(ovStack[ovStack.length - 1]);
586
+ });
587
+
588
+ // Lightbox: a single enlarged image with optional prev/next + caption.
589
+ var lightOv = null, lightImg = null, lightCap = null, lightIdx = 0;
590
+ function buildLight() {
591
+ if (lightOv) return;
592
+ lightOv = mkOverlay('ov-light');
593
+ var panel = document.createElement('div');
594
+ panel.className = 'ov-panel';
595
+ lightImg = document.createElement('img');
596
+ lightCap = document.createElement('div');
597
+ lightCap.className = 'light-cap';
598
+ panel.appendChild(lightImg);
599
+ panel.appendChild(lightCap);
600
+ lightOv.appendChild(panel);
601
+ var close = document.createElement('button');
602
+ close.className = 'ov-close';
603
+ close.type = 'button';
604
+ close.innerHTML = '&times;';
605
+ close.setAttribute('aria-label', 'Close');
606
+ close.addEventListener('click', function () { closeOverlay(lightOv); });
607
+ lightOv.appendChild(close);
608
+ if (SAMPLES.length > 1) {
609
+ var prev = document.createElement('button');
610
+ prev.className = 'light-nav light-prev';
611
+ prev.type = 'button';
612
+ prev.innerHTML = '\u2039';
613
+ prev.setAttribute('aria-label', 'Previous image');
614
+ prev.addEventListener('click', function (e) { e.stopPropagation(); showLight(lightIdx - 1); });
615
+ var next = document.createElement('button');
616
+ next.className = 'light-nav light-next';
617
+ next.type = 'button';
618
+ next.innerHTML = '\u203a';
619
+ next.setAttribute('aria-label', 'Next image');
620
+ next.addEventListener('click', function (e) { e.stopPropagation(); showLight(lightIdx + 1); });
621
+ lightOv.appendChild(prev);
622
+ lightOv.appendChild(next);
623
+ }
624
+ }
625
+ function showLight(idx) {
626
+ if (!SAMPLES.length) return;
627
+ buildLight();
628
+ lightIdx = (idx % SAMPLES.length + SAMPLES.length) % SAMPLES.length;
629
+ var s = SAMPLES[lightIdx];
630
+ lightImg.src = s.file;
631
+ lightImg.alt = s.caption || brand.name || '';
632
+ lightCap.textContent = s.caption || s.kind || '';
633
+ openOverlay(lightOv);
634
+ }
635
+
636
+ // Masonry "view all" modal: every image in a waterfall (column) layout.
637
+ var gridOv = null;
638
+ function buildGrid() {
639
+ if (gridOv) return;
640
+ gridOv = mkOverlay('ov-grid');
641
+ var panel = document.createElement('div');
642
+ panel.className = 'ov-panel';
643
+ var bar = document.createElement('div');
644
+ bar.className = 'grid-bar';
645
+ var h = document.createElement('h3');
646
+ h.textContent = 'All images · ' + SAMPLES.length;
647
+ var x = document.createElement('button');
648
+ x.className = 'icon-x';
649
+ x.type = 'button';
650
+ x.innerHTML = '&times;';
651
+ x.setAttribute('aria-label', 'Close');
652
+ x.addEventListener('click', function () { closeOverlay(gridOv); });
653
+ bar.appendChild(h);
654
+ bar.appendChild(x);
655
+ var scroll = document.createElement('div');
656
+ scroll.className = 'grid-scroll';
657
+ var mas = document.createElement('div');
658
+ mas.className = 'masonry';
659
+ SAMPLES.forEach(function (s, i) {
660
+ var item = document.createElement('div');
661
+ item.className = 'm-item';
662
+ var im = document.createElement('img');
663
+ im.src = s.file;
664
+ im.alt = s.caption || '';
665
+ im.loading = 'lazy';
666
+ item.appendChild(im);
667
+ item.addEventListener('click', function () { showLight(i); });
668
+ mas.appendChild(item);
669
+ });
670
+ scroll.appendChild(mas);
671
+ panel.appendChild(bar);
672
+ panel.appendChild(scroll);
673
+ gridOv.appendChild(panel);
674
+ }
675
+ function openGrid() { buildGrid(); openOverlay(gridOv); }
676
+
677
+ // Asset preview modal: the asset's full page in an iframe (relative src
678
+ // resolves under the kit's raw URL load).
679
+ var assetOv = null, assetFrame = null, assetTitle = null, assetSub = null;
680
+ function buildAsset() {
681
+ if (assetOv) return;
682
+ assetOv = mkOverlay('ov-asset');
683
+ var panel = document.createElement('div');
684
+ panel.className = 'ov-panel';
685
+ var bar = document.createElement('div');
686
+ bar.className = 'asset-bar';
687
+ var left = document.createElement('div');
688
+ assetTitle = document.createElement('span');
689
+ assetTitle.className = 'ab-title';
690
+ assetSub = document.createElement('span');
691
+ assetSub.className = 'ab-sub';
692
+ left.appendChild(assetTitle);
693
+ left.appendChild(assetSub);
694
+ var x = document.createElement('button');
695
+ x.className = 'icon-x';
696
+ x.type = 'button';
697
+ x.innerHTML = '&times;';
698
+ x.setAttribute('aria-label', 'Close');
699
+ x.addEventListener('click', function () { closeOverlay(assetOv); });
700
+ bar.appendChild(left);
701
+ bar.appendChild(x);
702
+ assetFrame = document.createElement('iframe');
703
+ assetFrame.className = 'asset-modal-frame';
704
+ assetFrame.title = 'Asset preview';
705
+ panel.appendChild(bar);
706
+ panel.appendChild(assetFrame);
707
+ assetOv.appendChild(panel);
708
+ }
709
+ function openAsset(href, label, desc) {
710
+ if (!href) return;
711
+ buildAsset();
712
+ assetTitle.textContent = label || 'Preview';
713
+ assetSub.textContent = desc || '';
714
+ assetFrame.src = href;
715
+ openOverlay(assetOv);
716
+ }
717
+
718
+ // Wire imagery thumbnails → lightbox (click + keyboard).
719
+ Array.prototype.forEach.call(document.querySelectorAll('.shot[data-idx]'), function (el) {
720
+ var idx = Number(el.getAttribute('data-idx')) || 0;
721
+ el.addEventListener('click', function () { showLight(idx); });
722
+ el.addEventListener('keydown', function (e) {
723
+ if (e.key === 'Enter' || e.key === ' ') { e.preventDefault(); showLight(idx); }
724
+ });
725
+ });
726
+ var viewAllBtn = document.getElementById('gallery-view-all');
727
+ if (viewAllBtn) viewAllBtn.addEventListener('click', openGrid);
728
+
729
+ // Wire brand-asset tiles → in-page full preview modal (click + keyboard).
730
+ Array.prototype.forEach.call(document.querySelectorAll('.asset[data-asset-href]'), function (el) {
731
+ var open = function () {
732
+ openAsset(el.getAttribute('data-asset-href'), el.getAttribute('data-asset-label'), el.getAttribute('data-asset-desc'));
733
+ };
734
+ el.addEventListener('click', open);
735
+ el.addEventListener('keydown', function (e) {
736
+ if (e.key === 'Enter' || e.key === ' ') { e.preventDefault(); open(); }
737
+ });
738
+ });
739
+
740
+ // While extraction is live, softly reload so the page fills in as the agent
741
+ // updates brand.json + re-runs `od brand preview`. Stops the moment the
742
+ // payload reports a ready brand. While a preview overlay is open the reload
743
+ // is deferred (re-armed) so it never yanks the lightbox / asset modal out
744
+ // from under the user mid-interaction.
745
+ if (extracting) {
746
+ var armReload = function () {
747
+ setTimeout(function () {
748
+ if (ovStack.length) { armReload(); return; }
749
+ try { location.reload(); } catch (e) {}
750
+ }, 3500);
751
+ };
752
+ armReload();
753
+ }
754
+ })();
755
+ </script>
756
+ </body>
757
+ </html>