@jack200714/mafw 4.5.1

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 (631) hide show
  1. package/.opencode/mafw/.backup-v61/parametric/base-skill-manifest.yaml +2 -0
  2. package/.opencode/mafw/STATUS.md +6 -0
  3. package/.opencode/mafw/ledger.md +20 -0
  4. package/.opencode/mafw/memory/.harmonic_index.json +28 -0
  5. package/.opencode/mafw/memory/.review_queue.json +1 -0
  6. package/.opencode/mafw/memory/tier3/parametric.json +13 -0
  7. package/.opencode/mafw/memory/tier3/test-goal.json +19 -0
  8. package/.opencode/mafw/memory-index.json +6 -0
  9. package/.opencode/mafw/parametric/base-skill-manifest.yaml +2 -0
  10. package/.opencode/mafw/waves.json +4 -0
  11. package/.opencode/opencode.json +3 -0
  12. package/.opencode/plugins/mafw-plugin.ts +8 -0
  13. package/.opencode/skills/banner-design/SKILL.md +196 -0
  14. package/.opencode/skills/banner-design/references/banner-sizes-and-styles.md +118 -0
  15. package/.opencode/skills/brand/SKILL.md +97 -0
  16. package/.opencode/skills/brand/references/approval-checklist.md +169 -0
  17. package/.opencode/skills/brand/references/asset-organization.md +157 -0
  18. package/.opencode/skills/brand/references/brand-guideline-template.md +140 -0
  19. package/.opencode/skills/brand/references/color-palette-management.md +186 -0
  20. package/.opencode/skills/brand/references/consistency-checklist.md +94 -0
  21. package/.opencode/skills/brand/references/logo-usage-rules.md +185 -0
  22. package/.opencode/skills/brand/references/messaging-framework.md +85 -0
  23. package/.opencode/skills/brand/references/typography-specifications.md +214 -0
  24. package/.opencode/skills/brand/references/update.md +118 -0
  25. package/.opencode/skills/brand/references/visual-identity.md +96 -0
  26. package/.opencode/skills/brand/references/voice-framework.md +88 -0
  27. package/.opencode/skills/brand/scripts/extract-colors.cjs +341 -0
  28. package/.opencode/skills/brand/scripts/inject-brand-context.cjs +349 -0
  29. package/.opencode/skills/brand/scripts/sync-brand-to-tokens.cjs +248 -0
  30. package/.opencode/skills/brand/scripts/tests/test_sync_brand_to_tokens.py +52 -0
  31. package/.opencode/skills/brand/scripts/validate-asset.cjs +387 -0
  32. package/.opencode/skills/brand/templates/brand-guidelines-starter.md +275 -0
  33. package/.opencode/skills/design/SKILL.md +313 -0
  34. package/.opencode/skills/design/data/cip/deliverables.csv +51 -0
  35. package/.opencode/skills/design/data/cip/industries.csv +21 -0
  36. package/.opencode/skills/design/data/cip/mockup-contexts.csv +21 -0
  37. package/.opencode/skills/design/data/cip/styles.csv +21 -0
  38. package/.opencode/skills/design/data/icon/styles.csv +16 -0
  39. package/.opencode/skills/design/data/logo/colors.csv +56 -0
  40. package/.opencode/skills/design/data/logo/industries.csv +56 -0
  41. package/.opencode/skills/design/data/logo/styles.csv +56 -0
  42. package/.opencode/skills/design/references/banner-sizes-and-styles.md +118 -0
  43. package/.opencode/skills/design/references/cip-deliverable-guide.md +95 -0
  44. package/.opencode/skills/design/references/cip-design.md +121 -0
  45. package/.opencode/skills/design/references/cip-prompt-engineering.md +84 -0
  46. package/.opencode/skills/design/references/cip-style-guide.md +68 -0
  47. package/.opencode/skills/design/references/design-routing.md +207 -0
  48. package/.opencode/skills/design/references/icon-design.md +122 -0
  49. package/.opencode/skills/design/references/logo-color-psychology.md +101 -0
  50. package/.opencode/skills/design/references/logo-design.md +92 -0
  51. package/.opencode/skills/design/references/logo-prompt-engineering.md +158 -0
  52. package/.opencode/skills/design/references/logo-style-guide.md +109 -0
  53. package/.opencode/skills/design/references/slides-copywriting-formulas.md +84 -0
  54. package/.opencode/skills/design/references/slides-create.md +4 -0
  55. package/.opencode/skills/design/references/slides-html-template.md +295 -0
  56. package/.opencode/skills/design/references/slides-layout-patterns.md +137 -0
  57. package/.opencode/skills/design/references/slides-strategies.md +94 -0
  58. package/.opencode/skills/design/references/slides.md +42 -0
  59. package/.opencode/skills/design/references/social-photos-design.md +329 -0
  60. package/.opencode/skills/design/scripts/cip/core.py +215 -0
  61. package/.opencode/skills/design/scripts/cip/generate.py +484 -0
  62. package/.opencode/skills/design/scripts/cip/render-html.py +424 -0
  63. package/.opencode/skills/design/scripts/cip/search.py +127 -0
  64. package/.opencode/skills/design/scripts/icon/generate.py +487 -0
  65. package/.opencode/skills/design/scripts/logo/core.py +175 -0
  66. package/.opencode/skills/design/scripts/logo/generate.py +362 -0
  67. package/.opencode/skills/design/scripts/logo/search.py +114 -0
  68. package/.opencode/skills/design-system/SKILL.md +244 -0
  69. package/.opencode/skills/design-system/data/slide-backgrounds.csv +11 -0
  70. package/.opencode/skills/design-system/data/slide-charts.csv +26 -0
  71. package/.opencode/skills/design-system/data/slide-color-logic.csv +14 -0
  72. package/.opencode/skills/design-system/data/slide-copy.csv +26 -0
  73. package/.opencode/skills/design-system/data/slide-layout-logic.csv +16 -0
  74. package/.opencode/skills/design-system/data/slide-layouts.csv +26 -0
  75. package/.opencode/skills/design-system/data/slide-strategies.csv +16 -0
  76. package/.opencode/skills/design-system/data/slide-typography.csv +15 -0
  77. package/.opencode/skills/design-system/references/component-specs.md +236 -0
  78. package/.opencode/skills/design-system/references/component-tokens.md +214 -0
  79. package/.opencode/skills/design-system/references/primitive-tokens.md +203 -0
  80. package/.opencode/skills/design-system/references/semantic-tokens.md +215 -0
  81. package/.opencode/skills/design-system/references/states-and-variants.md +241 -0
  82. package/.opencode/skills/design-system/references/tailwind-integration.md +251 -0
  83. package/.opencode/skills/design-system/references/token-architecture.md +224 -0
  84. package/.opencode/skills/design-system/scripts/embed-tokens.cjs +99 -0
  85. package/.opencode/skills/design-system/scripts/fetch-background.py +317 -0
  86. package/.opencode/skills/design-system/scripts/generate-slide.py +770 -0
  87. package/.opencode/skills/design-system/scripts/generate-tokens.cjs +205 -0
  88. package/.opencode/skills/design-system/scripts/html-token-validator.py +327 -0
  89. package/.opencode/skills/design-system/scripts/search-slides.py +218 -0
  90. package/.opencode/skills/design-system/scripts/slide-token-validator.py +35 -0
  91. package/.opencode/skills/design-system/scripts/slide_search_core.py +453 -0
  92. package/.opencode/skills/design-system/scripts/tests/test_validate_tokens.py +48 -0
  93. package/.opencode/skills/design-system/scripts/validate-tokens.cjs +246 -0
  94. package/.opencode/skills/design-system/templates/design-tokens-starter.json +143 -0
  95. package/.opencode/skills/frontend-design/LICENSE.txt +21 -0
  96. package/.opencode/skills/frontend-design/SKILL.md +115 -0
  97. package/.opencode/skills/mafw-automation-interview/SKILL.md +43 -0
  98. package/.opencode/skills/mafw-cli-scanner/SKILL.md +37 -0
  99. package/.opencode/skills/mafw-compression-verifier/SKILL.md +52 -0
  100. package/.opencode/skills/mafw-desktop-inspector/SKILL.md +170 -0
  101. package/.opencode/skills/mafw-execute/SKILL.md +62 -0
  102. package/.opencode/skills/mafw-gateway-restart/SKILL.md +87 -0
  103. package/.opencode/skills/mafw-github-scanner/SKILL.md +38 -0
  104. package/.opencode/skills/mafw-goal/SKILL.md +76 -0
  105. package/.opencode/skills/mafw-interview/SKILL.md +68 -0
  106. package/.opencode/skills/mafw-memory-extractor/SKILL.md +65 -0
  107. package/.opencode/skills/mafw-plan/SKILL.md +58 -0
  108. package/.opencode/skills/mafw-review/SKILL.md +85 -0
  109. package/.opencode/skills/runtime-plugin-authoring/SKILL.md +791 -0
  110. package/.opencode/skills/slides/SKILL.md +40 -0
  111. package/.opencode/skills/slides/references/copywriting-formulas.md +84 -0
  112. package/.opencode/skills/slides/references/create.md +4 -0
  113. package/.opencode/skills/slides/references/html-template.md +295 -0
  114. package/.opencode/skills/slides/references/layout-patterns.md +137 -0
  115. package/.opencode/skills/slides/references/slide-strategies.md +94 -0
  116. package/.opencode/skills/ui-styling/LICENSE.txt +202 -0
  117. package/.opencode/skills/ui-styling/SKILL.md +324 -0
  118. package/.opencode/skills/ui-styling/references/canvas-design-system.md +320 -0
  119. package/.opencode/skills/ui-styling/references/shadcn-accessibility.md +471 -0
  120. package/.opencode/skills/ui-styling/references/shadcn-components.md +424 -0
  121. package/.opencode/skills/ui-styling/references/shadcn-theming.md +373 -0
  122. package/.opencode/skills/ui-styling/references/tailwind-customization.md +483 -0
  123. package/.opencode/skills/ui-styling/references/tailwind-responsive.md +382 -0
  124. package/.opencode/skills/ui-styling/references/tailwind-utilities.md +455 -0
  125. package/.opencode/skills/ui-styling/scripts/requirements.txt +17 -0
  126. package/.opencode/skills/ui-styling/scripts/shadcn_add.py +308 -0
  127. package/.opencode/skills/ui-styling/scripts/tailwind_config_gen.py +473 -0
  128. package/.opencode/skills/ui-styling/scripts/tests/coverage-ui.json +1 -0
  129. package/.opencode/skills/ui-styling/scripts/tests/requirements.txt +3 -0
  130. package/.opencode/skills/ui-styling/scripts/tests/test_shadcn_add.py +266 -0
  131. package/.opencode/skills/ui-styling/scripts/tests/test_tailwind_config_gen.py +394 -0
  132. package/.opencode/skills/ui-ux-pro-max/SKILL.md +388 -0
  133. package/.opencode/skills/ui-ux-pro-max/data/app-interface.csv +31 -0
  134. package/.opencode/skills/ui-ux-pro-max/data/charts.csv +26 -0
  135. package/.opencode/skills/ui-ux-pro-max/data/colors.csv +193 -0
  136. package/.opencode/skills/ui-ux-pro-max/data/google-fonts.csv +1924 -0
  137. package/.opencode/skills/ui-ux-pro-max/data/icons.csv +106 -0
  138. package/.opencode/skills/ui-ux-pro-max/data/landing.csv +35 -0
  139. package/.opencode/skills/ui-ux-pro-max/data/motion.csv +17 -0
  140. package/.opencode/skills/ui-ux-pro-max/data/products.csv +193 -0
  141. package/.opencode/skills/ui-ux-pro-max/data/react-performance.csv +45 -0
  142. package/.opencode/skills/ui-ux-pro-max/data/stacks/angular.csv +51 -0
  143. package/.opencode/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -0
  144. package/.opencode/skills/ui-ux-pro-max/data/stacks/avalonia.csv +57 -0
  145. package/.opencode/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
  146. package/.opencode/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
  147. package/.opencode/skills/ui-ux-pro-max/data/stacks/javafx.csv +76 -0
  148. package/.opencode/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -0
  149. package/.opencode/skills/ui-ux-pro-max/data/stacks/laravel.csv +51 -0
  150. package/.opencode/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
  151. package/.opencode/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +71 -0
  152. package/.opencode/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
  153. package/.opencode/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
  154. package/.opencode/skills/ui-ux-pro-max/data/stacks/react.csv +54 -0
  155. package/.opencode/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
  156. package/.opencode/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
  157. package/.opencode/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
  158. package/.opencode/skills/ui-ux-pro-max/data/stacks/threejs.csv +54 -0
  159. package/.opencode/skills/ui-ux-pro-max/data/stacks/uno.csv +60 -0
  160. package/.opencode/skills/ui-ux-pro-max/data/stacks/uwp.csv +56 -0
  161. package/.opencode/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -0
  162. package/.opencode/skills/ui-ux-pro-max/data/stacks/winui.csv +60 -0
  163. package/.opencode/skills/ui-ux-pro-max/data/stacks/wpf.csv +57 -0
  164. package/.opencode/skills/ui-ux-pro-max/data/styles.csv +85 -0
  165. package/.opencode/skills/ui-ux-pro-max/data/typography.csv +75 -0
  166. package/.opencode/skills/ui-ux-pro-max/data/ui-reasoning.csv +162 -0
  167. package/.opencode/skills/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
  168. package/.opencode/skills/ui-ux-pro-max/scripts/core.py +464 -0
  169. package/.opencode/skills/ui-ux-pro-max/scripts/design_system.py +1479 -0
  170. package/.opencode/skills/ui-ux-pro-max/scripts/search.py +162 -0
  171. package/.opencode/skills/ui-ux-pro-max/scripts/tests/test_core.py +134 -0
  172. package/.opencode/skills/ui-ux-pro-max/scripts/tests/test_design_system_mode.py +159 -0
  173. package/.opencode/skills/ui-ux-pro-max/scripts/validate_data.py +114 -0
  174. package/LICENSE +21 -0
  175. package/README.md +199 -0
  176. package/bin/mafw.js +436 -0
  177. package/dist/hooks/bash-python-guide.d.ts +4 -0
  178. package/dist/hooks/bash-python-guide.d.ts.map +1 -0
  179. package/dist/hooks/bash-python-guide.js +67 -0
  180. package/dist/hooks/bash-python-guide.js.map +1 -0
  181. package/dist/hooks/handoff.d.ts +9 -0
  182. package/dist/hooks/handoff.d.ts.map +1 -0
  183. package/dist/hooks/handoff.js +8 -0
  184. package/dist/hooks/handoff.js.map +1 -0
  185. package/dist/hooks/hook-manager.d.ts +32 -0
  186. package/dist/hooks/hook-manager.d.ts.map +1 -0
  187. package/dist/hooks/hook-manager.js +91 -0
  188. package/dist/hooks/hook-manager.js.map +1 -0
  189. package/dist/hooks/llm-after.d.ts +8 -0
  190. package/dist/hooks/llm-after.d.ts.map +1 -0
  191. package/dist/hooks/llm-after.js +8 -0
  192. package/dist/hooks/llm-after.js.map +1 -0
  193. package/dist/hooks/media-ingest.d.ts +43 -0
  194. package/dist/hooks/media-ingest.d.ts.map +1 -0
  195. package/dist/hooks/media-ingest.js +269 -0
  196. package/dist/hooks/media-ingest.js.map +1 -0
  197. package/dist/hooks/memory-guide.d.ts +3 -0
  198. package/dist/hooks/memory-guide.d.ts.map +1 -0
  199. package/dist/hooks/memory-guide.js +47 -0
  200. package/dist/hooks/memory-guide.js.map +1 -0
  201. package/dist/hooks/observation-capture.d.ts +17 -0
  202. package/dist/hooks/observation-capture.d.ts.map +1 -0
  203. package/dist/hooks/observation-capture.js +20 -0
  204. package/dist/hooks/observation-capture.js.map +1 -0
  205. package/dist/hooks/session-compacting.d.ts +6 -0
  206. package/dist/hooks/session-compacting.d.ts.map +1 -0
  207. package/dist/hooks/session-compacting.js +6 -0
  208. package/dist/hooks/session-compacting.js.map +1 -0
  209. package/dist/hooks/session-ending.d.ts +20 -0
  210. package/dist/hooks/session-ending.d.ts.map +1 -0
  211. package/dist/hooks/session-ending.js +113 -0
  212. package/dist/hooks/session-ending.js.map +1 -0
  213. package/dist/hooks/session-recall.d.ts +2 -0
  214. package/dist/hooks/session-recall.d.ts.map +1 -0
  215. package/dist/hooks/session-recall.js +103 -0
  216. package/dist/hooks/session-recall.js.map +1 -0
  217. package/dist/hooks/session-start.d.ts +9 -0
  218. package/dist/hooks/session-start.d.ts.map +1 -0
  219. package/dist/hooks/session-start.js +42 -0
  220. package/dist/hooks/session-start.js.map +1 -0
  221. package/dist/hooks/tool-before.d.ts +10 -0
  222. package/dist/hooks/tool-before.d.ts.map +1 -0
  223. package/dist/hooks/tool-before.js +6 -0
  224. package/dist/hooks/tool-before.js.map +1 -0
  225. package/dist/hooks/tool-executed.d.ts +19 -0
  226. package/dist/hooks/tool-executed.d.ts.map +1 -0
  227. package/dist/hooks/tool-executed.js +12 -0
  228. package/dist/hooks/tool-executed.js.map +1 -0
  229. package/dist/hooks/user-profile.d.ts +2 -0
  230. package/dist/hooks/user-profile.d.ts.map +1 -0
  231. package/dist/hooks/user-profile.js +30 -0
  232. package/dist/hooks/user-profile.js.map +1 -0
  233. package/dist/hooks/user-prompt.d.ts +9 -0
  234. package/dist/hooks/user-prompt.d.ts.map +1 -0
  235. package/dist/hooks/user-prompt.js +8 -0
  236. package/dist/hooks/user-prompt.js.map +1 -0
  237. package/dist/hooks/voice-guide.d.ts +8 -0
  238. package/dist/hooks/voice-guide.d.ts.map +1 -0
  239. package/dist/hooks/voice-guide.js +101 -0
  240. package/dist/hooks/voice-guide.js.map +1 -0
  241. package/dist/plugin.d.ts +55 -0
  242. package/dist/plugin.d.ts.map +1 -0
  243. package/dist/plugin.js +342 -0
  244. package/dist/plugin.js.map +1 -0
  245. package/dist/tools/add-memory.d.ts +17 -0
  246. package/dist/tools/add-memory.d.ts.map +1 -0
  247. package/dist/tools/add-memory.js +60 -0
  248. package/dist/tools/add-memory.js.map +1 -0
  249. package/dist/tools/media-ask.d.ts +14 -0
  250. package/dist/tools/media-ask.d.ts.map +1 -0
  251. package/dist/tools/media-ask.js +224 -0
  252. package/dist/tools/media-ask.js.map +1 -0
  253. package/dist/tools/media-speak.d.ts +16 -0
  254. package/dist/tools/media-speak.d.ts.map +1 -0
  255. package/dist/tools/media-speak.js +78 -0
  256. package/dist/tools/media-speak.js.map +1 -0
  257. package/dist/tools/media-upload.d.ts +14 -0
  258. package/dist/tools/media-upload.d.ts.map +1 -0
  259. package/dist/tools/media-upload.js +155 -0
  260. package/dist/tools/media-upload.js.map +1 -0
  261. package/dist/tools/python-exec.d.ts +13 -0
  262. package/dist/tools/python-exec.d.ts.map +1 -0
  263. package/dist/tools/python-exec.js +99 -0
  264. package/dist/tools/python-exec.js.map +1 -0
  265. package/dist/tools/python-restart.d.ts +11 -0
  266. package/dist/tools/python-restart.d.ts.map +1 -0
  267. package/dist/tools/python-restart.js +33 -0
  268. package/dist/tools/python-restart.js.map +1 -0
  269. package/dist/utils/circuit-breaker.d.ts +23 -0
  270. package/dist/utils/circuit-breaker.d.ts.map +1 -0
  271. package/dist/utils/circuit-breaker.js +75 -0
  272. package/dist/utils/circuit-breaker.js.map +1 -0
  273. package/dist/utils/config-loader.d.ts +20 -0
  274. package/dist/utils/config-loader.d.ts.map +1 -0
  275. package/dist/utils/config-loader.js +194 -0
  276. package/dist/utils/config-loader.js.map +1 -0
  277. package/dist/utils/fallback.d.ts +7 -0
  278. package/dist/utils/fallback.d.ts.map +1 -0
  279. package/dist/utils/fallback.js +20 -0
  280. package/dist/utils/fallback.js.map +1 -0
  281. package/dist/utils/git.d.ts +24 -0
  282. package/dist/utils/git.d.ts.map +1 -0
  283. package/dist/utils/git.js +71 -0
  284. package/dist/utils/git.js.map +1 -0
  285. package/dist/utils/github.d.ts +37 -0
  286. package/dist/utils/github.d.ts.map +1 -0
  287. package/dist/utils/github.js +53 -0
  288. package/dist/utils/github.js.map +1 -0
  289. package/dist/utils/global-path.d.ts +2 -0
  290. package/dist/utils/global-path.d.ts.map +1 -0
  291. package/dist/utils/global-path.js +32 -0
  292. package/dist/utils/global-path.js.map +1 -0
  293. package/dist/utils/logger.d.ts +6 -0
  294. package/dist/utils/logger.d.ts.map +1 -0
  295. package/dist/utils/logger.js +69 -0
  296. package/dist/utils/logger.js.map +1 -0
  297. package/dist/utils/obs-capture.d.ts +7 -0
  298. package/dist/utils/obs-capture.d.ts.map +1 -0
  299. package/dist/utils/obs-capture.js +49 -0
  300. package/dist/utils/obs-capture.js.map +1 -0
  301. package/dist/utils/retry.d.ts +11 -0
  302. package/dist/utils/retry.d.ts.map +1 -0
  303. package/dist/utils/retry.js +45 -0
  304. package/dist/utils/retry.js.map +1 -0
  305. package/dist/utils/self-wiring.d.ts +13 -0
  306. package/dist/utils/self-wiring.d.ts.map +1 -0
  307. package/dist/utils/self-wiring.js +86 -0
  308. package/dist/utils/self-wiring.js.map +1 -0
  309. package/dist/utils/state.d.ts +106 -0
  310. package/dist/utils/state.d.ts.map +1 -0
  311. package/dist/utils/state.js +166 -0
  312. package/dist/utils/state.js.map +1 -0
  313. package/dist/utils/status.d.ts +47 -0
  314. package/dist/utils/status.d.ts.map +1 -0
  315. package/dist/utils/status.js +147 -0
  316. package/dist/utils/status.js.map +1 -0
  317. package/dist/utils/ttl-map.d.ts +17 -0
  318. package/dist/utils/ttl-map.d.ts.map +1 -0
  319. package/dist/utils/ttl-map.js +67 -0
  320. package/dist/utils/ttl-map.js.map +1 -0
  321. package/gateway/dist/automation-engine.js +729 -0
  322. package/gateway/dist/chat/chat-sessions.js +95 -0
  323. package/gateway/dist/chat/graph-runner.js +76 -0
  324. package/gateway/dist/chat/index.js +7 -0
  325. package/gateway/dist/chat/intent-classifier.js +23 -0
  326. package/gateway/dist/config.js +416 -0
  327. package/gateway/dist/core/auth.js +96 -0
  328. package/gateway/dist/core/budget-guard.js +52 -0
  329. package/gateway/dist/core/compression/bm25-index.js +176 -0
  330. package/gateway/dist/core/compression/compression-pipeline.js +157 -0
  331. package/gateway/dist/core/compression/compression-strategy-selector.js +32 -0
  332. package/gateway/dist/core/compression/compression-verifier.js +79 -0
  333. package/gateway/dist/core/compression/diff-compressor.js +69 -0
  334. package/gateway/dist/core/compression/hybrid-compressor.js +104 -0
  335. package/gateway/dist/core/compression/lesson-compactor.js +114 -0
  336. package/gateway/dist/core/compression/memory-index.js +190 -0
  337. package/gateway/dist/core/compression/observation-classifier.js +41 -0
  338. package/gateway/dist/core/compression/observation-deduplicator.js +43 -0
  339. package/gateway/dist/core/compression/rrf-fusion.js +63 -0
  340. package/gateway/dist/core/compression/session-pruner.js +137 -0
  341. package/gateway/dist/core/compression/token-budget-allocator.js +141 -0
  342. package/gateway/dist/core/compression/vector-index.js +117 -0
  343. package/gateway/dist/core/compression/zero-token-compressor.js +80 -0
  344. package/gateway/dist/core/cost/cognitive-router.js +41 -0
  345. package/gateway/dist/core/cost/cost-estimator.js +63 -0
  346. package/gateway/dist/core/cost/types.js +19 -0
  347. package/gateway/dist/core/engine/degradation.js +159 -0
  348. package/gateway/dist/core/engine/goal-worktree-manager.js +131 -0
  349. package/gateway/dist/core/engine/lesson-manager.js +222 -0
  350. package/gateway/dist/core/engine/optimistic-sync.js +100 -0
  351. package/gateway/dist/core/engine/phase-orchestrator.js +153 -0
  352. package/gateway/dist/core/engine/report-generator.js +131 -0
  353. package/gateway/dist/core/engine/state-lock.js +91 -0
  354. package/gateway/dist/core/engine/task-branch-manager.js +102 -0
  355. package/gateway/dist/core/engine/wave-dependency.js +67 -0
  356. package/gateway/dist/core/engine/wave-executor.js +112 -0
  357. package/gateway/dist/core/goal-budget.js +63 -0
  358. package/gateway/dist/core/graph/entity-extractor.js +53 -0
  359. package/gateway/dist/core/graph/graph-searcher.js +120 -0
  360. package/gateway/dist/core/graph/knowledge-graph-manager.js +138 -0
  361. package/gateway/dist/core/graph/relation-inferencer.js +67 -0
  362. package/gateway/dist/core/graph/types.js +2 -0
  363. package/gateway/dist/core/hooks/handoff.js +7 -0
  364. package/gateway/dist/core/hooks/hook-manager.js +91 -0
  365. package/gateway/dist/core/hooks/llm-after.js +7 -0
  366. package/gateway/dist/core/hooks/observation-capture.js +19 -0
  367. package/gateway/dist/core/hooks/session-compacting.js +5 -0
  368. package/gateway/dist/core/hooks/session-ending.js +123 -0
  369. package/gateway/dist/core/hooks/session-start.js +51 -0
  370. package/gateway/dist/core/hooks/tool-before.js +5 -0
  371. package/gateway/dist/core/hooks/tool-executed.js +11 -0
  372. package/gateway/dist/core/hooks/user-prompt.js +7 -0
  373. package/gateway/dist/core/index.js +119 -0
  374. package/gateway/dist/core/langchain/agent-adapter.js +39 -0
  375. package/gateway/dist/core/langchain/index.js +12 -0
  376. package/gateway/dist/core/langchain/memory.js +35 -0
  377. package/gateway/dist/core/langchain/node-runner.js +115 -0
  378. package/gateway/dist/core/langchain/retriever.js +28 -0
  379. package/gateway/dist/core/langgraph/checkpointer.js +200 -0
  380. package/gateway/dist/core/langgraph/graph.js +57 -0
  381. package/gateway/dist/core/langgraph/index.js +25 -0
  382. package/gateway/dist/core/langgraph/loop-state.js +71 -0
  383. package/gateway/dist/core/langgraph/nodes/archive.node.js +27 -0
  384. package/gateway/dist/core/langgraph/nodes/execute.node.js +5 -0
  385. package/gateway/dist/core/langgraph/nodes/plan.node.js +101 -0
  386. package/gateway/dist/core/langgraph/nodes/review.node.js +89 -0
  387. package/gateway/dist/core/langgraph/nodes/sync.node.js +70 -0
  388. package/gateway/dist/core/langgraph/review-parser.js +35 -0
  389. package/gateway/dist/core/langgraph/signature-detector.js +23 -0
  390. package/gateway/dist/core/manager/goal-snapshot.js +73 -0
  391. package/gateway/dist/core/manager/milestone-push.js +81 -0
  392. package/gateway/dist/core/manager/question-ledger.js +121 -0
  393. package/gateway/dist/core/manager/system-rule-templates.js +76 -0
  394. package/gateway/dist/core/mcp/tools.js +562 -0
  395. package/gateway/dist/core/mcp/validator.js +165 -0
  396. package/gateway/dist/core/mcp-server.js +86 -0
  397. package/gateway/dist/core/memory/abstraction-distiller.js +44 -0
  398. package/gateway/dist/core/memory/cognitive-graph.js +103 -0
  399. package/gateway/dist/core/memory/energy-system.js +69 -0
  400. package/gateway/dist/core/memory/extractor.js +164 -0
  401. package/gateway/dist/core/memory/harmonic-index.js +530 -0
  402. package/gateway/dist/core/memory/harmonic-types.js +6 -0
  403. package/gateway/dist/core/memory/injector.js +111 -0
  404. package/gateway/dist/core/memory/l5-store.js +141 -0
  405. package/gateway/dist/core/memory/matcher.js +66 -0
  406. package/gateway/dist/core/memory/merger.js +95 -0
  407. package/gateway/dist/core/memory/migrate-v6.1.js +133 -0
  408. package/gateway/dist/core/memory/minhash-merger.js +195 -0
  409. package/gateway/dist/core/memory/observation-service.js +87 -0
  410. package/gateway/dist/core/memory/privacy-filter.js +163 -0
  411. package/gateway/dist/core/memory/reranker.js +208 -0
  412. package/gateway/dist/core/memory/review-scheduler.js +100 -0
  413. package/gateway/dist/core/memory/salience-perceptor.js +24 -0
  414. package/gateway/dist/core/memory/store.js +284 -0
  415. package/gateway/dist/core/memory/t1-store.js +183 -0
  416. package/gateway/dist/core/memory/t1-to-t2-compressor.js +119 -0
  417. package/gateway/dist/core/memory/validator.js +66 -0
  418. package/gateway/dist/core/plugin.js +902 -0
  419. package/gateway/dist/core/skills/mafw-execute/entry.js +226 -0
  420. package/gateway/dist/core/skills/mafw-goal/entry.js +203 -0
  421. package/gateway/dist/core/skills/mafw-plan/entry.js +184 -0
  422. package/gateway/dist/core/skills/mafw-review/entry.js +200 -0
  423. package/gateway/dist/core/storage/file-storage.js +120 -0
  424. package/gateway/dist/core/storage/sqlite-storage.js +205 -0
  425. package/gateway/dist/core/storage/types.js +2 -0
  426. package/gateway/dist/core/tools/archive-worktree.js +208 -0
  427. package/gateway/dist/core/tools/remote-cli.js +106 -0
  428. package/gateway/dist/core/tools/run-ask-user.js +79 -0
  429. package/gateway/dist/core/tools/run-execute-wave.js +32 -0
  430. package/gateway/dist/core/tools/run-plan.js +42 -0
  431. package/gateway/dist/core/tools/run-record-feedback.js +55 -0
  432. package/gateway/dist/core/tools/run-review.js +46 -0
  433. package/gateway/dist/core/tools/write-lesson.js +97 -0
  434. package/gateway/dist/core/utils/circuit-breaker.js +74 -0
  435. package/gateway/dist/core/utils/config-loader.js +203 -0
  436. package/gateway/dist/core/utils/fallback.js +19 -0
  437. package/gateway/dist/core/utils/git.js +70 -0
  438. package/gateway/dist/core/utils/github.js +52 -0
  439. package/gateway/dist/core/utils/global-path.js +41 -0
  440. package/gateway/dist/core/utils/logger.js +71 -0
  441. package/gateway/dist/core/utils/retry.js +44 -0
  442. package/gateway/dist/core/utils/state.js +175 -0
  443. package/gateway/dist/core/utils/status.js +156 -0
  444. package/gateway/dist/cost/service.js +17 -0
  445. package/gateway/dist/dashboard/api.js +1156 -0
  446. package/gateway/dist/dashboard/public/assets/index-DOXm39dm.css +1 -0
  447. package/gateway/dist/dashboard/public/index.html +13 -0
  448. package/gateway/dist/dashboard/server.js +140 -0
  449. package/gateway/dist/dashboard/types.js +2 -0
  450. package/gateway/dist/desktop-client.js +124 -0
  451. package/gateway/dist/eval-endpoint.js +219 -0
  452. package/gateway/dist/event-bus.js +7 -0
  453. package/gateway/dist/feedback/anchor-promotion.js +99 -0
  454. package/gateway/dist/feedback/deferred-memory.js +13 -0
  455. package/gateway/dist/feedback/miss-attribution.js +20 -0
  456. package/gateway/dist/graph/anchor-graph-store.js +113 -0
  457. package/gateway/dist/graph/anchor-graph.js +48 -0
  458. package/gateway/dist/health.js +53 -0
  459. package/gateway/dist/heartbeat.js +109 -0
  460. package/gateway/dist/index.js +6377 -0
  461. package/gateway/dist/interceptors/memory-injector.js +79 -0
  462. package/gateway/dist/ledger.js +121 -0
  463. package/gateway/dist/loop-monitor.js +74 -0
  464. package/gateway/dist/mcp/handlers/add-memory.js +113 -0
  465. package/gateway/dist/mcp/handlers/ask-user.js +63 -0
  466. package/gateway/dist/mcp/handlers/commit-heuristic.js +19 -0
  467. package/gateway/dist/mcp/handlers/create-goal.js +83 -0
  468. package/gateway/dist/mcp/handlers/desktop-click.js +18 -0
  469. package/gateway/dist/mcp/handlers/desktop-get-state.js +15 -0
  470. package/gateway/dist/mcp/handlers/desktop-navigate.js +18 -0
  471. package/gateway/dist/mcp/handlers/desktop-screenshot.js +16 -0
  472. package/gateway/dist/mcp/handlers/desktop-scroll.js +19 -0
  473. package/gateway/dist/mcp/handlers/desktop-type.js +19 -0
  474. package/gateway/dist/mcp/handlers/draft-automation-rule.js +45 -0
  475. package/gateway/dist/mcp/handlers/get-automation-history.js +15 -0
  476. package/gateway/dist/mcp/handlers/get-automation-rule.js +26 -0
  477. package/gateway/dist/mcp/handlers/get-axioms.js +14 -0
  478. package/gateway/dist/mcp/handlers/get-deltas.js +77 -0
  479. package/gateway/dist/mcp/handlers/get-memory.js +67 -0
  480. package/gateway/dist/mcp/handlers/get-model-route.js +16 -0
  481. package/gateway/dist/mcp/handlers/get-triage-item.js +17 -0
  482. package/gateway/dist/mcp/handlers/list-automation-rules.js +24 -0
  483. package/gateway/dist/mcp/handlers/list-triage-items.js +14 -0
  484. package/gateway/dist/mcp/handlers/load-state.js +54 -0
  485. package/gateway/dist/mcp/handlers/manager-answer-question.js +67 -0
  486. package/gateway/dist/mcp/handlers/manager-cancel-goal.js +58 -0
  487. package/gateway/dist/mcp/handlers/manager-get-evidence.js +57 -0
  488. package/gateway/dist/mcp/handlers/manager-get-goal-status.js +58 -0
  489. package/gateway/dist/mcp/handlers/manager-list-goals.js +60 -0
  490. package/gateway/dist/mcp/handlers/manager-list-pending-questions.js +67 -0
  491. package/gateway/dist/mcp/handlers/manager-set-goal.js +78 -0
  492. package/gateway/dist/mcp/handlers/merge-memory.js +184 -0
  493. package/gateway/dist/mcp/handlers/pin-memory.js +53 -0
  494. package/gateway/dist/mcp/handlers/propose-triage-decision.js +38 -0
  495. package/gateway/dist/mcp/handlers/record-feedback.js +59 -0
  496. package/gateway/dist/mcp/handlers/resolve-merge.js +92 -0
  497. package/gateway/dist/mcp/handlers/restart-agent.js +22 -0
  498. package/gateway/dist/mcp/handlers/run-automation.js +28 -0
  499. package/gateway/dist/mcp/handlers/search-hybrid.js +181 -0
  500. package/gateway/dist/mcp/handlers/supersede-memory.js +47 -0
  501. package/gateway/dist/mcp/handlers/update-state.js +59 -0
  502. package/gateway/dist/mcp/handlers/validate-rule.js +39 -0
  503. package/gateway/dist/mcp/sse-transport.js +97 -0
  504. package/gateway/dist/mcp/streamable-endpoint.js +98 -0
  505. package/gateway/dist/mcp/tool-registry.js +630 -0
  506. package/gateway/dist/media/media-agent.js +755 -0
  507. package/gateway/dist/media/media-plugin-loader.js +254 -0
  508. package/gateway/dist/media/media-runtime-executor.js +227 -0
  509. package/gateway/dist/media/media-service.js +199 -0
  510. package/gateway/dist/media/pi-adapter.js +159 -0
  511. package/gateway/dist/media/plugin-context.js +14 -0
  512. package/gateway/dist/media/tts-service.js +173 -0
  513. package/gateway/dist/memory/abstraction-matcher.js +28 -0
  514. package/gateway/dist/memory/consolidation-service.js +209 -0
  515. package/gateway/dist/memory/derived-terms.js +50 -0
  516. package/gateway/dist/memory/embedding-provider.js +330 -0
  517. package/gateway/dist/memory/embedding-runtime.js +174 -0
  518. package/gateway/dist/memory/event-log.js +84 -0
  519. package/gateway/dist/memory/gateway-db.js +465 -0
  520. package/gateway/dist/memory/harmonic-file-store.js +338 -0
  521. package/gateway/dist/memory/llamacpp-provider.js +370 -0
  522. package/gateway/dist/memory/okf-index-renderer.js +61 -0
  523. package/gateway/dist/memory/okf-migrator.js +71 -0
  524. package/gateway/dist/memory/okf-parser.js +57 -0
  525. package/gateway/dist/memory/okf-writer.js +107 -0
  526. package/gateway/dist/memory/service.js +81 -0
  527. package/gateway/dist/memory/t1-db.js +139 -0
  528. package/gateway/dist/memory/unmerge-cleanup.js +82 -0
  529. package/gateway/dist/memory/vector-store.js +246 -0
  530. package/gateway/dist/memory/write-queue.js +31 -0
  531. package/gateway/dist/metrics/collector.js +28 -0
  532. package/gateway/dist/mobile/device-store.js +123 -0
  533. package/gateway/dist/mobile/mdns-advertiser.js +55 -0
  534. package/gateway/dist/mobile/media-proxy.js +292 -0
  535. package/gateway/dist/mobile/pairing.js +139 -0
  536. package/gateway/dist/mobile/push-gateway.js +126 -0
  537. package/gateway/dist/mobile/tts-artifact.js +43 -0
  538. package/gateway/dist/opencode-adapter.js +241 -0
  539. package/gateway/dist/orchestration/outcome-recorder.js +218 -0
  540. package/gateway/dist/orchestration/policy.js +57 -0
  541. package/gateway/dist/orchestration/registry.js +47 -0
  542. package/gateway/dist/plugins/hub.js +188 -0
  543. package/gateway/dist/poll.js +110 -0
  544. package/gateway/dist/python/kernel-service.js +762 -0
  545. package/gateway/dist/recall/constraints-migrate.js +108 -0
  546. package/gateway/dist/recall/data-dir-migrate.js +120 -0
  547. package/gateway/dist/recall/gateway-db-migrate.js +134 -0
  548. package/gateway/dist/recall/index-scan.js +437 -0
  549. package/gateway/dist/recall/inject-format.js +222 -0
  550. package/gateway/dist/recall/legacy-t1-archive.js +86 -0
  551. package/gateway/dist/recall/memory-worker.js +128 -0
  552. package/gateway/dist/recall/pipeline-rules.js +76 -0
  553. package/gateway/dist/recall/recall-context.js +297 -0
  554. package/gateway/dist/recall/reflect-cursor.js +50 -0
  555. package/gateway/dist/recall/reflection.js +318 -0
  556. package/gateway/dist/recall/session-worker-pool.js +100 -0
  557. package/gateway/dist/recall/stale-verify.js +72 -0
  558. package/gateway/dist/recall/step-inject.js +173 -0
  559. package/gateway/dist/recall/time-anchor.js +143 -0
  560. package/gateway/dist/recall/ttl-map.js +72 -0
  561. package/gateway/dist/recall/turn-completion.js +44 -0
  562. package/gateway/dist/recall/turn-pipeline.js +150 -0
  563. package/gateway/dist/recovery.js +158 -0
  564. package/gateway/dist/resources/sdk-session.js +202 -0
  565. package/gateway/dist/retrieval/guided-retriever.js +131 -0
  566. package/gateway/dist/retrieval/idf-stats.js +31 -0
  567. package/gateway/dist/routes/embedding-config.js +100 -0
  568. package/gateway/dist/routes/goal-sessions.js +45 -0
  569. package/gateway/dist/routes/manager-rotate.js +55 -0
  570. package/gateway/dist/routes/media-switch.js +78 -0
  571. package/gateway/dist/routes/model-config.js +132 -0
  572. package/gateway/dist/routes/note-board.js +51 -0
  573. package/gateway/dist/routes/permission.js +43 -0
  574. package/gateway/dist/routes/pinned-recall.js +36 -0
  575. package/gateway/dist/routes/plugins.js +77 -0
  576. package/gateway/dist/routes/restart-agent.js +28 -0
  577. package/gateway/dist/routes/runtime-switch.js +80 -0
  578. package/gateway/dist/routes/session-branch.js +63 -0
  579. package/gateway/dist/routes/session-mutations.js +58 -0
  580. package/gateway/dist/routes/session-summarize.js +49 -0
  581. package/gateway/dist/routes/usage-plugins.js +251 -0
  582. package/gateway/dist/runtime/agent-definition.js +2 -0
  583. package/gateway/dist/runtime/auth.js +80 -0
  584. package/gateway/dist/runtime/completion-http.js +97 -0
  585. package/gateway/dist/runtime/contract.js +37 -0
  586. package/gateway/dist/runtime/loader.js +240 -0
  587. package/gateway/dist/runtime/normalize.js +59 -0
  588. package/gateway/dist/runtime/opencode-runtime.js +336 -0
  589. package/gateway/dist/runtime/pi/pi-agent-config.js +294 -0
  590. package/gateway/dist/runtime/pi/pi-approval-bridge.js +44 -0
  591. package/gateway/dist/runtime/pi/pi-approval-extension.js +62 -0
  592. package/gateway/dist/runtime/pi/pi-events.js +122 -0
  593. package/gateway/dist/runtime/pi/pi-messages.js +20 -0
  594. package/gateway/dist/runtime/pi/pi-provider.js +19 -0
  595. package/gateway/dist/runtime/pi/pi-session-storage.js +44 -0
  596. package/gateway/dist/runtime/pi/pi-session.js +328 -0
  597. package/gateway/dist/runtime/plugins/pi-runtime.js +285 -0
  598. package/gateway/dist/runtime/serve-for-runtime.js +22 -0
  599. package/gateway/dist/runtime/serve-sidecar.js +164 -0
  600. package/gateway/dist/runtime/serve-supervisor.js +80 -0
  601. package/gateway/dist/self-update.js +309 -0
  602. package/gateway/dist/skills/manager-agent-config.js +37 -0
  603. package/gateway/dist/skills/manager-identity.js +11 -0
  604. package/gateway/dist/skills/memory-curator-agent.js +55 -0
  605. package/gateway/dist/trajectory/api.js +154 -0
  606. package/gateway/dist/trajectory/backfill-provider.js +41 -0
  607. package/gateway/dist/trajectory/collector.js +337 -0
  608. package/gateway/dist/trajectory/trajectory-store.js +336 -0
  609. package/gateway/dist/trajectory/types.js +17 -0
  610. package/gateway/dist/tray/index.js +131 -0
  611. package/gateway/dist/tray/tray.ps1 +96 -0
  612. package/gateway/dist/types.js +2 -0
  613. package/gateway/dist/usage/builtin-plugins/commandcode.js +71 -0
  614. package/gateway/dist/usage/builtin-plugins/deepseek.js +56 -0
  615. package/gateway/dist/usage/builtin-plugins/gateway.js +127 -0
  616. package/gateway/dist/usage/builtin-plugins/kimi-for-coding.js +93 -0
  617. package/gateway/dist/usage/builtin-plugins/kimi.js +48 -0
  618. package/gateway/dist/usage/builtin-plugins/opencode-go.js +54 -0
  619. package/gateway/dist/usage/builtin-plugins/openrouter.js +48 -0
  620. package/gateway/dist/usage/builtin-plugins/siliconflow-cn.js +49 -0
  621. package/gateway/dist/usage/builtin-plugins/zhipuai-coding-plan.js +44 -0
  622. package/gateway/dist/usage/model-prices.js +39 -0
  623. package/gateway/dist/usage/model-stats.js +21 -0
  624. package/gateway/dist/usage/plugin-context.js +79 -0
  625. package/gateway/dist/usage/plugin-loader.js +280 -0
  626. package/gateway/dist/usage/templates.js +227 -0
  627. package/gateway/dist/usage/types.js +2 -0
  628. package/gateway/dist/usage/usage-poller.js +216 -0
  629. package/gateway/package.json +37 -0
  630. package/package.json +78 -0
  631. package/packages/tui/dist/cli.js +4664 -0
@@ -0,0 +1,169 @@
1
+ # Asset Approval Checklist
2
+
3
+ Comprehensive checklist for reviewing marketing assets before approval.
4
+
5
+ ## Quick Review
6
+
7
+ Before detailed review, verify:
8
+ - [ ] Asset serves stated purpose
9
+ - [ ] Target audience appropriate
10
+ - [ ] No obvious errors or issues
11
+ - [ ] Aligns with campaign goals
12
+
13
+ ## Visual Elements
14
+
15
+ ### Logo Usage
16
+ - [ ] Correct logo variant for context
17
+ - [ ] Proper clear space maintained
18
+ - [ ] Minimum size requirements met
19
+ - [ ] Approved colors only
20
+ - [ ] No unauthorized modifications
21
+ - [ ] Appropriate for background
22
+
23
+ ### Color Compliance
24
+ - [ ] Uses brand palette colors only
25
+ - [ ] Primary/secondary ratio appropriate (60/30/10)
26
+ - [ ] Semantic colors used correctly
27
+ - [ ] No off-brand colors introduced
28
+ - [ ] Consistent across all elements
29
+
30
+ ### Typography
31
+ - [ ] Brand fonts used throughout
32
+ - [ ] Correct font weights applied
33
+ - [ ] Proper type hierarchy
34
+ - [ ] Appropriate sizes for medium
35
+ - [ ] Line heights adequate
36
+ - [ ] No orphans/widows in body text
37
+
38
+ ### Imagery
39
+ - [ ] Matches brand photography style
40
+ - [ ] Appropriate subjects/content
41
+ - [ ] Quality meets requirements
42
+ - [ ] Properly licensed/credited
43
+ - [ ] Optimized for intended use
44
+
45
+ ## Accessibility
46
+
47
+ ### Visual Accessibility
48
+ - [ ] Text contrast ratio >= 4.5:1 (AA)
49
+ - [ ] Large text contrast >= 3:1
50
+ - [ ] Interactive elements have visible focus
51
+ - [ ] Color not sole indicator of meaning
52
+ - [ ] Alt text for all images
53
+
54
+ ### Content Accessibility
55
+ - [ ] Clear and scannable layout
56
+ - [ ] Readable font sizes
57
+ - [ ] Logical reading order
58
+ - [ ] Meaningful headings structure
59
+ - [ ] Links describe destination
60
+
61
+ ## Content Quality
62
+
63
+ ### Copy Review
64
+ - [ ] Matches brand voice
65
+ - [ ] Appropriate tone for context
66
+ - [ ] No prohibited terms used
67
+ - [ ] Value proposition clear
68
+ - [ ] CTA compelling and clear
69
+ - [ ] Proofread for errors
70
+
71
+ ### Messaging
72
+ - [ ] Aligns with key messages
73
+ - [ ] Differentiators highlighted
74
+ - [ ] Benefits over features
75
+ - [ ] Target audience addressed
76
+ - [ ] No conflicting claims
77
+
78
+ ## Technical Requirements
79
+
80
+ ### File Specifications
81
+ - [ ] Correct file format
82
+ - [ ] Appropriate resolution
83
+ - [ ] File size optimized
84
+ - [ ] Proper naming convention
85
+ - [ ] Metadata included
86
+
87
+ ### Platform Requirements
88
+ | Platform | Verified |
89
+ |----------|----------|
90
+ | Instagram | [ ] Correct dimensions |
91
+ | Twitter/X | [ ] Meets requirements |
92
+ | LinkedIn | [ ] Professional standards |
93
+ | Facebook | [ ] Guidelines compliant |
94
+ | Email | [ ] Size under 1MB |
95
+ | Web | [ ] Optimized for web |
96
+
97
+ ## Legal & Compliance
98
+
99
+ ### Intellectual Property
100
+ - [ ] Stock images licensed
101
+ - [ ] Music/audio cleared
102
+ - [ ] No trademark violations
103
+ - [ ] User content authorized
104
+ - [ ] Credits included where needed
105
+
106
+ ### Regulatory
107
+ - [ ] Required disclosures present
108
+ - [ ] No misleading claims
109
+ - [ ] Pricing accurate
110
+ - [ ] Terms linked where needed
111
+ - [ ] Privacy compliant
112
+
113
+ ## Review Status
114
+
115
+ ### Reviewer Sign-off
116
+
117
+ | Review Area | Reviewer | Date | Status |
118
+ |-------------|----------|------|--------|
119
+ | Visual Design | | | [ ] Pass / [ ] Revisions |
120
+ | Copy/Content | | | [ ] Pass / [ ] Revisions |
121
+ | Brand Compliance | | | [ ] Pass / [ ] Revisions |
122
+ | Technical | | | [ ] Pass / [ ] Revisions |
123
+ | Legal | | | [ ] Pass / [ ] Revisions |
124
+
125
+ ### Final Approval
126
+
127
+ - [ ] All review areas passed
128
+ - [ ] Revisions completed (if any)
129
+ - [ ] Final version uploaded
130
+ - [ ] Metadata updated
131
+ - [ ] Ready for publish/use
132
+
133
+ **Approved By:** _______________
134
+
135
+ **Date:** _______________
136
+
137
+ **Version:** _______________
138
+
139
+ ## Common Issues & Fixes
140
+
141
+ | Issue | Fix |
142
+ |-------|-----|
143
+ | Logo too small | Increase to minimum size |
144
+ | Wrong font | Replace with brand font |
145
+ | Low contrast | Adjust colors for accessibility |
146
+ | Off-brand color | Replace with palette color |
147
+ | Blurry image | Use higher resolution source |
148
+ | Missing alt text | Add descriptive alt text |
149
+ | Weak CTA | Strengthen action-oriented copy |
150
+
151
+ ## Automation Support
152
+
153
+ The `validate-asset.cjs` script can auto-check:
154
+ - Color palette compliance
155
+ - Minimum dimensions
156
+ - File format/size
157
+ - Naming convention
158
+ - Basic metadata
159
+
160
+ Run: `node .claude/skills/brand/scripts/validate-asset.cjs <asset-path>`
161
+
162
+ ## Archival
163
+
164
+ After approval:
165
+ 1. Update asset status in manifest.json
166
+ 2. Add approver and timestamp
167
+ 3. Move previous versions to archive
168
+ 4. Update campaign tracking
169
+ 5. Notify relevant teams
@@ -0,0 +1,157 @@
1
+ # Asset Organization Guide
2
+
3
+ Guidelines for organizing marketing assets in a structured, searchable system.
4
+
5
+ ## Directory Structure
6
+
7
+ ```
8
+ project-root/
9
+ ├── .assets/ # Git-tracked metadata
10
+ │ ├── manifest.json # Central asset registry
11
+ │ ├── tags.json # Tagging system
12
+ │ ├── versions/ # Version history
13
+ │ │ └── {asset-id}/
14
+ │ │ └── v{n}.json
15
+ │ └── metadata/ # Type-specific metadata
16
+ │ ├── designs.json
17
+ │ ├── banners.json
18
+ │ ├── logos.json
19
+ │ └── videos.json
20
+ ├── assets/ # Raw files
21
+ │ ├── designs/
22
+ │ │ ├── campaigns/ # Campaign-specific designs
23
+ │ │ ├── web/ # Website graphics
24
+ │ │ └── print/ # Print materials
25
+ │ ├── banners/
26
+ │ │ ├── social-media/ # Platform banners
27
+ │ │ ├── email-headers/ # Email template headers
28
+ │ │ └── landing-pages/ # Hero/section images
29
+ │ ├── logos/
30
+ │ │ ├── full-horizontal/ # Full logo with wordmark
31
+ │ │ ├── icon-only/ # Symbol only
32
+ │ │ ├── monochrome/ # Single color versions
33
+ │ │ └── variations/ # Special versions
34
+ │ ├── videos/
35
+ │ │ ├── ads/ # Promotional videos
36
+ │ │ ├── tutorials/ # How-to content
37
+ │ │ └── testimonials/ # Customer videos
38
+ │ ├── infographics/ # Data visualizations
39
+ │ └── generated/ # AI-generated assets
40
+ │ └── {YYYYMMDD}/ # Date-organized
41
+ ```
42
+
43
+ ## Naming Convention
44
+
45
+ ### Format
46
+ ```
47
+ {type}_{campaign}_{description}_{timestamp}_{variant}.{ext}
48
+ ```
49
+
50
+ ### Components
51
+ | Component | Format | Required | Examples |
52
+ |-----------|--------|----------|----------|
53
+ | type | lowercase | Yes | banner, logo, design, video |
54
+ | campaign | kebab-case | Yes* | claude-launch, q1-promo, evergreen |
55
+ | description | kebab-case | Yes | hero-image, email-header |
56
+ | timestamp | YYYYMMDD | Yes | 20251209 |
57
+ | variant | kebab-case | No | dark-mode, 1x1, mobile |
58
+
59
+ *Use "evergreen" for non-campaign assets
60
+
61
+ ### Examples
62
+ ```
63
+ banner_claude-launch_hero-image_20251209_16-9.png
64
+ logo_brand-refresh_horizontal-full-color_20251209.svg
65
+ design_holiday-campaign_email-hero_20251209_dark-mode.psd
66
+ video_product-demo_feature-walkthrough_20251209.mp4
67
+ infographic_evergreen_pricing-comparison_20251209.png
68
+ ```
69
+
70
+ ## Metadata Schema
71
+
72
+ ### Asset Entry (manifest.json)
73
+ ```json
74
+ {
75
+ "id": "uuid-v4",
76
+ "name": "Campaign Hero Banner",
77
+ "type": "banner",
78
+ "path": "assets/banners/landing-pages/banner_claude-launch_hero-image_20251209.png",
79
+ "dimensions": { "width": 1920, "height": 1080 },
80
+ "fileSize": 245760,
81
+ "mimeType": "image/png",
82
+ "tags": ["campaign", "hero", "launch"],
83
+ "status": "approved",
84
+ "source": {
85
+ "model": "imagen-4",
86
+ "prompt": "...",
87
+ "createdAt": "2025-12-09T10:30:00Z"
88
+ },
89
+ "version": 2,
90
+ "createdBy": "agent:content-creator",
91
+ "approvedBy": "user:john",
92
+ "approvedAt": "2025-12-09T14:00:00Z"
93
+ }
94
+ ```
95
+
96
+ ### Version Entry (versions/{id}/v{n}.json)
97
+ ```json
98
+ {
99
+ "version": 2,
100
+ "previousVersion": 1,
101
+ "path": "assets/banners/landing-pages/banner_claude-launch_hero-image_20251209_v2.png",
102
+ "changes": "Updated CTA button color to match brand refresh",
103
+ "createdAt": "2025-12-09T12:00:00Z",
104
+ "createdBy": "agent:ui-designer"
105
+ }
106
+ ```
107
+
108
+ ## Tagging System
109
+
110
+ ### Standard Tags
111
+ | Category | Values |
112
+ |----------|--------|
113
+ | status | draft, review, approved, archived |
114
+ | platform | instagram, twitter, linkedin, facebook, youtube, email, web |
115
+ | content-type | promotional, educational, brand, product, testimonial |
116
+ | format | 1x1, 4x5, 9x16, 16x9, story, reel, banner |
117
+ | source | imagen-4, veo-3, user-upload, canva, figma |
118
+
119
+ ### Tag Usage
120
+ - Each asset should have: status + platform + content-type
121
+ - Optional: format, source, campaign
122
+
123
+ ## File Organization Best Practices
124
+
125
+ 1. **One file per variant** - Don't combine dark/light in one file
126
+ 2. **Source files separate** - Keep .psd/.fig in same structure
127
+ 3. **AI assets timestamped** - Auto-organize by generation date
128
+ 4. **Archive don't delete** - Move to `archived/` with date prefix
129
+ 5. **Large files external** - Videos > 100MB use cloud storage links
130
+
131
+ ## Search Patterns
132
+
133
+ ### By Type
134
+ ```bash
135
+ # Find all banners
136
+ ls assets/banners/**/*
137
+ ```
138
+
139
+ ### By Campaign
140
+ ```bash
141
+ # Find all assets for specific campaign
142
+ grep -l "claude-launch" .assets/manifest.json
143
+ ```
144
+
145
+ ### By Status
146
+ ```bash
147
+ # Find approved assets only
148
+ jq '.assets[] | select(.status == "approved")' .assets/manifest.json
149
+ ```
150
+
151
+ ## Cleanup Workflow
152
+
153
+ 1. Run `extract-colors.cjs` on new assets
154
+ 2. Validate against brand guidelines
155
+ 3. Update manifest.json with new entries
156
+ 4. Tag appropriately
157
+ 5. Remove duplicates/outdated versions
@@ -0,0 +1,140 @@
1
+ # Brand Guidelines Template
2
+
3
+ Use this template to create comprehensive brand guidelines for any project.
4
+
5
+ ## Document Structure
6
+
7
+ ```markdown
8
+ # Brand Guidelines v{X.Y}
9
+
10
+ ## Quick Reference
11
+ - **Primary Color:** #XXXXXX
12
+ - **Secondary Color:** #XXXXXX
13
+ - **Primary Font:** {font-family}
14
+ - **Voice:** {3 key traits}
15
+
16
+ ## 1. Color Palette
17
+
18
+ ### Primary Colors
19
+ | Name | Hex | RGB | Usage |
20
+ |------|-----|-----|-------|
21
+ | {Name} | #{hex} | rgb({r},{g},{b}) | Primary brand color, CTAs, headers |
22
+ | {Name} | #{hex} | rgb({r},{g},{b}) | Supporting accent |
23
+
24
+ ### Secondary Colors
25
+ | Name | Hex | RGB | Usage |
26
+ |------|-----|-----|-------|
27
+ | {Name} | #{hex} | rgb({r},{g},{b}) | Secondary elements |
28
+ | {Name} | #{hex} | rgb({r},{g},{b}) | Highlights |
29
+
30
+ ### Neutral Palette
31
+ | Name | Hex | RGB | Usage |
32
+ |------|-----|-----|-------|
33
+ | Background | #{hex} | rgb({r},{g},{b}) | Page backgrounds |
34
+ | Text Primary | #{hex} | rgb({r},{g},{b}) | Body text |
35
+ | Text Secondary | #{hex} | rgb({r},{g},{b}) | Captions, muted text |
36
+ | Border | #{hex} | rgb({r},{g},{b}) | Dividers, borders |
37
+
38
+ ### Accessibility
39
+ - Text/Background Contrast: {ratio}:1 (WCAG {level})
40
+ - CTA Contrast: {ratio}:1
41
+ - All interactive elements meet WCAG 2.1 AA
42
+
43
+ ## 2. Typography
44
+
45
+ ### Font Stack
46
+ ```css
47
+ --font-heading: '{Font}', sans-serif;
48
+ --font-body: '{Font}', sans-serif;
49
+ --font-mono: '{Font}', monospace;
50
+ ```
51
+
52
+ ### Type Scale
53
+ | Element | Font | Weight | Size (Desktop/Mobile) | Line Height |
54
+ |---------|------|--------|----------------------|-------------|
55
+ | H1 | {font} | 700 | 48px / 32px | 1.2 |
56
+ | H2 | {font} | 600 | 36px / 28px | 1.25 |
57
+ | H3 | {font} | 600 | 28px / 24px | 1.3 |
58
+ | H4 | {font} | 600 | 24px / 20px | 1.35 |
59
+ | Body | {font} | 400 | 16px / 16px | 1.5 |
60
+ | Small | {font} | 400 | 14px / 14px | 1.5 |
61
+ | Caption | {font} | 400 | 12px / 12px | 1.4 |
62
+
63
+ ## 3. Logo Usage
64
+
65
+ ### Variants
66
+ - **Primary:** Full horizontal logo with wordmark
67
+ - **Stacked:** Vertical arrangement for square spaces
68
+ - **Icon:** Symbol only for favicons, app icons
69
+ - **Monochrome:** Single color for limited palettes
70
+
71
+ ### Clear Space
72
+ Minimum clear space = height of logo mark
73
+
74
+ ### Minimum Size
75
+ - Digital: 80px width minimum
76
+ - Print: 25mm width minimum
77
+
78
+ ### Don'ts
79
+ - Don't rotate or skew
80
+ - Don't change colors outside approved palette
81
+ - Don't add effects (shadows, gradients)
82
+ - Don't crop or modify proportions
83
+ - Don't place on busy backgrounds
84
+
85
+ ## 4. Voice & Tone
86
+
87
+ ### Brand Personality
88
+ {Trait 1}: {Description}
89
+ {Trait 2}: {Description}
90
+ {Trait 3}: {Description}
91
+
92
+ ### Voice Chart
93
+ | Trait | We Are | We Are Not |
94
+ |-------|--------|------------|
95
+ | {Trait} | {Description} | {Anti-description} |
96
+
97
+ ### Tone by Context
98
+ | Context | Tone | Example |
99
+ |---------|------|---------|
100
+ | Marketing | {tone} | "{example}" |
101
+ | Support | {tone} | "{example}" |
102
+ | Error Messages | {tone} | "{example}" |
103
+ | Success | {tone} | "{example}" |
104
+
105
+ ### Prohibited Terms
106
+ - {term 1} (reason)
107
+ - {term 2} (reason)
108
+
109
+ ## 5. Imagery Guidelines
110
+
111
+ ### Photography Style
112
+ - {Lighting preference}
113
+ - {Subject guidelines}
114
+ - {Color treatment}
115
+
116
+ ### Illustrations
117
+ - Style: {description}
118
+ - Colors: Brand palette only
119
+ - Stroke: {weight}px
120
+
121
+ ### Icons
122
+ - Style: {outlined/filled/duotone}
123
+ - Size: 24px base grid
124
+ - Corner radius: {value}px
125
+ ```
126
+
127
+ ## Usage
128
+
129
+ 1. Copy template above
130
+ 2. Fill in brand-specific values
131
+ 3. Save as `docs/brand-guidelines.md`
132
+ 4. Reference in content workflows
133
+
134
+ ## Extractable Fields
135
+
136
+ Scripts can extract:
137
+ - `colors.primary`, `colors.secondary`, `colors.neutral`
138
+ - `typography.heading`, `typography.body`
139
+ - `voice.traits`, `voice.prohibited`
140
+ - `logo.variants`, `logo.minSize`
@@ -0,0 +1,186 @@
1
+ # Color Palette Management
2
+
3
+ Guidelines for defining, extracting, and enforcing brand colors.
4
+
5
+ ## Color System Structure
6
+
7
+ ### Hierarchy
8
+ ```
9
+ Primary Colors (1-2)
10
+ ├── Main brand color - Used for CTAs, headers, key elements
11
+ └── Supporting primary - Secondary emphasis
12
+
13
+ Secondary Colors (2-3)
14
+ ├── Accent colors - Highlights, interactive states
15
+ └── Supporting visuals - Icons, illustrations
16
+
17
+ Neutral Palette (3-5)
18
+ ├── Background colors - Page, card, modal backgrounds
19
+ ├── Text colors - Headings, body, muted text
20
+ └── UI elements - Borders, dividers, shadows
21
+
22
+ Semantic Colors (4)
23
+ ├── Success - #22C55E (green)
24
+ ├── Warning - #F59E0B (amber)
25
+ ├── Error - #EF4444 (red)
26
+ └── Info - #3B82F6 (blue)
27
+ ```
28
+
29
+ ## Color Documentation Format
30
+
31
+ ### Markdown Table
32
+ ```markdown
33
+ | Name | Hex | RGB | HSL | Usage |
34
+ |------|-----|-----|-----|-------|
35
+ | Primary Blue | #2563EB | rgb(37,99,235) | hsl(217,91%,53%) | CTAs, links |
36
+ ```
37
+
38
+ ### CSS Variables
39
+ ```css
40
+ :root {
41
+ /* Primary */
42
+ --color-primary: #2563EB;
43
+ --color-primary-light: #3B82F6;
44
+ --color-primary-dark: #1D4ED8;
45
+
46
+ /* Secondary */
47
+ --color-secondary: #8B5CF6;
48
+ --color-accent: #F59E0B;
49
+
50
+ /* Neutral */
51
+ --color-background: #FFFFFF;
52
+ --color-surface: #F9FAFB;
53
+ --color-text-primary: #111827;
54
+ --color-text-secondary: #6B7280;
55
+ --color-border: #E5E7EB;
56
+ }
57
+ ```
58
+
59
+ ### Tailwind Config
60
+ ```javascript
61
+ colors: {
62
+ primary: {
63
+ DEFAULT: '#2563EB',
64
+ 50: '#EFF6FF',
65
+ 100: '#DBEAFE',
66
+ 500: '#3B82F6',
67
+ 600: '#2563EB',
68
+ 700: '#1D4ED8',
69
+ }
70
+ }
71
+ ```
72
+
73
+ ## Accessibility Requirements
74
+
75
+ ### Contrast Ratios (WCAG 2.1)
76
+ | Level | Normal Text | Large Text | UI Components |
77
+ |-------|-------------|------------|---------------|
78
+ | AA | 4.5:1 | 3:1 | 3:1 |
79
+ | AAA | 7:1 | 4.5:1 | 4.5:1 |
80
+
81
+ ### Checking Contrast
82
+ ```javascript
83
+ // Formula for relative luminance
84
+ function luminance(r, g, b) {
85
+ const [rs, gs, bs] = [r, g, b].map(v => {
86
+ v /= 255;
87
+ return v <= 0.03928 ? v / 12.92 : Math.pow((v + 0.055) / 1.055, 2.4);
88
+ });
89
+ return 0.2126 * rs + 0.7152 * gs + 0.0722 * bs;
90
+ }
91
+
92
+ function contrastRatio(l1, l2) {
93
+ const lighter = Math.max(l1, l2);
94
+ const darker = Math.min(l1, l2);
95
+ return (lighter + 0.05) / (darker + 0.05);
96
+ }
97
+ ```
98
+
99
+ ## Color Extraction
100
+
101
+ ### From Images
102
+ Use `extract-colors.cjs` script to:
103
+ 1. Load image file
104
+ 2. Extract dominant colors using k-means clustering
105
+ 3. Map to nearest brand colors
106
+ 4. Report compliance percentage
107
+
108
+ ### From Brand Guidelines
109
+ Parse markdown to extract:
110
+ - Hex values from tables
111
+ - CSS variable definitions
112
+ - Color names and usage descriptions
113
+
114
+ ## Brand Compliance Validation
115
+
116
+ ### Rules
117
+ 1. **Primary color ratio**: 60-70% of design
118
+ 2. **Secondary color ratio**: 20-30% of design
119
+ 3. **Accent color ratio**: 5-10% of design
120
+ 4. **Off-brand tolerance**: Max 20% non-palette colors
121
+
122
+ ### Validation Output
123
+ ```json
124
+ {
125
+ "compliance": 85,
126
+ "colors": {
127
+ "brand": ["#2563EB", "#8B5CF6", "#FFFFFF"],
128
+ "offBrand": ["#FF5500"],
129
+ "dominant": "#2563EB"
130
+ },
131
+ "issues": [
132
+ "Off-brand color #FF5500 detected (15% coverage)",
133
+ "Primary color underused (45% vs 60% target)"
134
+ ]
135
+ }
136
+ ```
137
+
138
+ ## Color Usage Guidelines
139
+
140
+ ### Do's
141
+ - Use primary for main CTAs and key elements
142
+ - Maintain consistent hover/active states
143
+ - Test all combinations for accessibility
144
+ - Document color decisions
145
+
146
+ ### Don'ts
147
+ - Use more than 2-3 colors in single component
148
+ - Mix warm and cool tones without intent
149
+ - Use pure black (#000) for text (use #111 or similar)
150
+ - Rely solely on color for meaning (use icons/text too)
151
+
152
+ ## Color Palette Examples
153
+
154
+ ### Tech/SaaS
155
+ ```
156
+ Primary: #2563EB (Blue)
157
+ Secondary: #8B5CF6 (Purple)
158
+ Accent: #10B981 (Emerald)
159
+ Background: #F9FAFB
160
+ Text: #111827
161
+ ```
162
+
163
+ ### Marketing/Creative
164
+ ```
165
+ Primary: #F97316 (Orange)
166
+ Secondary: #EC4899 (Pink)
167
+ Accent: #14B8A6 (Teal)
168
+ Background: #FFFFFF
169
+ Text: #1F2937
170
+ ```
171
+
172
+ ### Professional/Corporate
173
+ ```
174
+ Primary: #1E40AF (Navy)
175
+ Secondary: #475569 (Slate)
176
+ Accent: #0EA5E9 (Sky)
177
+ Background: #F8FAFC
178
+ Text: #0F172A
179
+ ```
180
+
181
+ ## Tools & Resources
182
+
183
+ - [Coolors](https://coolors.co) - Palette generation
184
+ - [WebAIM Contrast Checker](https://webaim.org/resources/contrastchecker/)
185
+ - [Tailwind Color Reference](https://tailwindcss.com/docs/customizing-colors)
186
+ - [Color Hunt](https://colorhunt.co) - Curated palettes