invos 1.0.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 (346) hide show
  1. package/README.md +39 -0
  2. package/bin/invos.js +78 -0
  3. package/kit/.agents/skills/apple/DESCRIPTION.md +2 -0
  4. package/kit/.agents/skills/apple/apple-notes/SKILL.md +90 -0
  5. package/kit/.agents/skills/apple/apple-reminders/SKILL.md +130 -0
  6. package/kit/.agents/skills/audit/SKILL.md +177 -0
  7. package/kit/.agents/skills/design-marca/SKILL.md +92 -0
  8. package/kit/.agents/skills/humanizer/SKILL.md +476 -0
  9. package/kit/.agents/skills/instagram-carrossel/SKILL.md +79 -0
  10. package/kit/.agents/skills/instagram-carrossel/references/fetch-assets.md +77 -0
  11. package/kit/.agents/skills/instagram-carrossel/references/publish.md +48 -0
  12. package/kit/.agents/skills/instagram-carrossel/references/render-png.md +147 -0
  13. package/kit/.agents/skills/instagram-carrossel/scripts/publish.js +165 -0
  14. package/kit/.agents/skills/llm-wiki/SKILL.md +507 -0
  15. package/kit/.agents/skills/onboard/SKILL.md +152 -0
  16. package/kit/.agents/skills/pd-ikigai/SKILL.md +269 -0
  17. package/kit/.agents/skills/popular-web-designs/SKILL.md +214 -0
  18. package/kit/.agents/skills/popular-web-designs/templates/airbnb.md +259 -0
  19. package/kit/.agents/skills/popular-web-designs/templates/airtable.md +102 -0
  20. package/kit/.agents/skills/popular-web-designs/templates/apple.md +326 -0
  21. package/kit/.agents/skills/popular-web-designs/templates/bmw.md +193 -0
  22. package/kit/.agents/skills/popular-web-designs/templates/cal.md +272 -0
  23. package/kit/.agents/skills/popular-web-designs/templates/claude.md +325 -0
  24. package/kit/.agents/skills/popular-web-designs/templates/clay.md +317 -0
  25. package/kit/.agents/skills/popular-web-designs/templates/clickhouse.md +294 -0
  26. package/kit/.agents/skills/popular-web-designs/templates/cohere.md +279 -0
  27. package/kit/.agents/skills/popular-web-designs/templates/coinbase.md +142 -0
  28. package/kit/.agents/skills/popular-web-designs/templates/composio.md +320 -0
  29. package/kit/.agents/skills/popular-web-designs/templates/cursor.md +322 -0
  30. package/kit/.agents/skills/popular-web-designs/templates/elevenlabs.md +278 -0
  31. package/kit/.agents/skills/popular-web-designs/templates/expo.md +294 -0
  32. package/kit/.agents/skills/popular-web-designs/templates/figma.md +233 -0
  33. package/kit/.agents/skills/popular-web-designs/templates/framer.md +259 -0
  34. package/kit/.agents/skills/popular-web-designs/templates/hashicorp.md +291 -0
  35. package/kit/.agents/skills/popular-web-designs/templates/ibm.md +345 -0
  36. package/kit/.agents/skills/popular-web-designs/templates/intercom.md +159 -0
  37. package/kit/.agents/skills/popular-web-designs/templates/kraken.md +138 -0
  38. package/kit/.agents/skills/popular-web-designs/templates/linear.app.md +380 -0
  39. package/kit/.agents/skills/popular-web-designs/templates/lovable.md +311 -0
  40. package/kit/.agents/skills/popular-web-designs/templates/minimax.md +270 -0
  41. package/kit/.agents/skills/popular-web-designs/templates/mintlify.md +339 -0
  42. package/kit/.agents/skills/popular-web-designs/templates/miro.md +121 -0
  43. package/kit/.agents/skills/popular-web-designs/templates/mistral.ai.md +274 -0
  44. package/kit/.agents/skills/popular-web-designs/templates/mongodb.md +279 -0
  45. package/kit/.agents/skills/popular-web-designs/templates/notion.md +322 -0
  46. package/kit/.agents/skills/popular-web-designs/templates/nvidia.md +306 -0
  47. package/kit/.agents/skills/popular-web-designs/templates/ollama.md +280 -0
  48. package/kit/.agents/skills/popular-web-designs/templates/opencode.ai.md +294 -0
  49. package/kit/.agents/skills/popular-web-designs/templates/pinterest.md +243 -0
  50. package/kit/.agents/skills/popular-web-designs/templates/posthog.md +269 -0
  51. package/kit/.agents/skills/popular-web-designs/templates/raycast.md +281 -0
  52. package/kit/.agents/skills/popular-web-designs/templates/replicate.md +274 -0
  53. package/kit/.agents/skills/popular-web-designs/templates/resend.md +316 -0
  54. package/kit/.agents/skills/popular-web-designs/templates/revolut.md +198 -0
  55. package/kit/.agents/skills/popular-web-designs/templates/runwayml.md +257 -0
  56. package/kit/.agents/skills/popular-web-designs/templates/sanity.md +370 -0
  57. package/kit/.agents/skills/popular-web-designs/templates/sentry.md +275 -0
  58. package/kit/.agents/skills/popular-web-designs/templates/spacex.md +207 -0
  59. package/kit/.agents/skills/popular-web-designs/templates/spotify.md +259 -0
  60. package/kit/.agents/skills/popular-web-designs/templates/stripe.md +335 -0
  61. package/kit/.agents/skills/popular-web-designs/templates/supabase.md +268 -0
  62. package/kit/.agents/skills/popular-web-designs/templates/superhuman.md +265 -0
  63. package/kit/.agents/skills/popular-web-designs/templates/together.ai.md +276 -0
  64. package/kit/.agents/skills/popular-web-designs/templates/uber.md +308 -0
  65. package/kit/.agents/skills/popular-web-designs/templates/vercel.md +323 -0
  66. package/kit/.agents/skills/popular-web-designs/templates/voltagent.md +336 -0
  67. package/kit/.agents/skills/popular-web-designs/templates/warp.md +266 -0
  68. package/kit/.agents/skills/popular-web-designs/templates/webflow.md +105 -0
  69. package/kit/.agents/skills/popular-web-designs/templates/wise.md +186 -0
  70. package/kit/.agents/skills/popular-web-designs/templates/x.ai.md +270 -0
  71. package/kit/.agents/skills/popular-web-designs/templates/zapier.md +341 -0
  72. package/kit/.agents/skills/productivity/DESCRIPTION.md +3 -0
  73. package/kit/.agents/skills/productivity/google-workspace/SKILL.md +335 -0
  74. package/kit/.agents/skills/productivity/google-workspace/references/gmail-search-syntax.md +63 -0
  75. package/kit/.agents/skills/productivity/google-workspace/scripts/_hermes_home.py +42 -0
  76. package/kit/.agents/skills/productivity/google-workspace/scripts/google_api.py +1225 -0
  77. package/kit/.agents/skills/productivity/google-workspace/scripts/gws_bridge.py +111 -0
  78. package/kit/.agents/skills/productivity/google-workspace/scripts/setup.py +481 -0
  79. package/kit/.agents/skills/productivity/nano-pdf/SKILL.md +52 -0
  80. package/kit/.agents/skills/productivity/notion/SKILL.md +448 -0
  81. package/kit/.agents/skills/productivity/notion/references/block-types.md +112 -0
  82. package/kit/.agents/skills/productivity/ocr-and-documents/DESCRIPTION.md +3 -0
  83. package/kit/.agents/skills/productivity/ocr-and-documents/SKILL.md +172 -0
  84. package/kit/.agents/skills/productivity/ocr-and-documents/scripts/extract_marker.py +87 -0
  85. package/kit/.agents/skills/productivity/ocr-and-documents/scripts/extract_pymupdf.py +98 -0
  86. package/kit/.agents/skills/productivity/powerpoint/LICENSE.txt +30 -0
  87. package/kit/.agents/skills/productivity/powerpoint/SKILL.md +237 -0
  88. package/kit/.agents/skills/productivity/powerpoint/editing.md +205 -0
  89. package/kit/.agents/skills/productivity/powerpoint/pptxgenjs.md +420 -0
  90. package/kit/.agents/skills/productivity/powerpoint/scripts/__init__.py +0 -0
  91. package/kit/.agents/skills/productivity/powerpoint/scripts/add_slide.py +195 -0
  92. package/kit/.agents/skills/productivity/powerpoint/scripts/clean.py +286 -0
  93. package/kit/.agents/skills/productivity/powerpoint/scripts/office/helpers/__init__.py +0 -0
  94. package/kit/.agents/skills/productivity/powerpoint/scripts/office/helpers/merge_runs.py +199 -0
  95. package/kit/.agents/skills/productivity/powerpoint/scripts/office/helpers/simplify_redlines.py +197 -0
  96. package/kit/.agents/skills/productivity/powerpoint/scripts/office/pack.py +159 -0
  97. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  98. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  99. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  100. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  101. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  102. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  103. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  104. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  105. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  106. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  107. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  108. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  109. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  110. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  111. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  112. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  113. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  114. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  115. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  116. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  117. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  118. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  119. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  120. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  121. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  122. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  123. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  124. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ecma/fourth-edition/opc-contentTypes.xsd +42 -0
  125. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ecma/fourth-edition/opc-coreProperties.xsd +50 -0
  126. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ecma/fourth-edition/opc-digSig.xsd +49 -0
  127. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/ecma/fourth-edition/opc-relationships.xsd +33 -0
  128. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/mce/mc.xsd +75 -0
  129. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
  130. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
  131. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
  132. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
  133. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
  134. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  135. package/kit/.agents/skills/productivity/powerpoint/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
  136. package/kit/.agents/skills/proposta/SKILL.md +159 -0
  137. package/kit/.agents/skills/proposta/references/proposta-avancada.md +17 -0
  138. package/kit/.agents/skills/proposta/references/proposta.html +187 -0
  139. package/kit/.agents/skills/session-checkpoint/SKILL.md +80 -0
  140. package/kit/.agents/skills/session-end/SKILL.md +166 -0
  141. package/kit/.agents/skills/session-start/SKILL.md +149 -0
  142. package/kit/.agents/skills/social-content/SKILL.md +119 -0
  143. package/kit/.agents/skills/stop-slop/CHANGELOG.md +24 -0
  144. package/kit/.agents/skills/stop-slop/LICENSE +21 -0
  145. package/kit/.agents/skills/stop-slop/README.md +62 -0
  146. package/kit/.agents/skills/stop-slop/SKILL.md +68 -0
  147. package/kit/.agents/skills/stop-slop/references/examples.md +59 -0
  148. package/kit/.agents/skills/stop-slop/references/phrases.md +128 -0
  149. package/kit/.agents/skills/stop-slop/references/structures.md +134 -0
  150. package/kit/.agents/squads/advisory-board/README.md +34 -0
  151. package/kit/.agents/squads/advisory-board/agents/board-chair.md +161 -0
  152. package/kit/.agents/squads/advisory-board/agents/brene-brown.md +296 -0
  153. package/kit/.agents/squads/advisory-board/agents/charlie-munger.md +590 -0
  154. package/kit/.agents/squads/advisory-board/agents/derek-sivers.md +268 -0
  155. package/kit/.agents/squads/advisory-board/agents/naval-ravikant.md +251 -0
  156. package/kit/.agents/squads/advisory-board/agents/patrick-lencioni.md +394 -0
  157. package/kit/.agents/squads/advisory-board/agents/peter-thiel.md +269 -0
  158. package/kit/.agents/squads/advisory-board/agents/ray-dalio.md +587 -0
  159. package/kit/.agents/squads/advisory-board/agents/reid-hoffman.md +278 -0
  160. package/kit/.agents/squads/advisory-board/agents/simon-sinek.md +291 -0
  161. package/kit/.agents/squads/advisory-board/agents/yvon-chouinard.md +275 -0
  162. package/kit/.agents/squads/advisory-board/checklists/output-quality.md +73 -0
  163. package/kit/.agents/squads/advisory-board/config/config.yaml +67 -0
  164. package/kit/.agents/squads/advisory-board/data/mental-models-catalog.yaml +178 -0
  165. package/kit/.agents/squads/advisory-board/data/routing-catalog.yaml +89 -0
  166. package/kit/.agents/squads/advisory-board/squad.yaml +50 -0
  167. package/kit/.agents/squads/advisory-board/tasks/convene-board.md +152 -0
  168. package/kit/.agents/squads/advisory-board/tasks/diagnose.md +138 -0
  169. package/kit/.agents/squads/advisory-board/tasks/evaluate-scaling.md +165 -0
  170. package/kit/.agents/squads/advisory-board/tasks/get-founder-counsel.md +169 -0
  171. package/kit/.agents/squads/advisory-board/tasks/resolve-culture-crisis.md +164 -0
  172. package/kit/.agents/squads/advisory-board/tasks/review.md +133 -0
  173. package/kit/.agents/squads/advisory-board/tasks/seek-investment-counsel.md +161 -0
  174. package/kit/.agents/squads/advisory-board/workflows/wf-board-meeting.yaml +115 -0
  175. package/kit/.agents/squads/advisory-board/workflows/wf-decision-framework.yaml +135 -0
  176. package/kit/.agents/squads/brand/README.md +179 -0
  177. package/kit/.agents/squads/brand/agents/alexandra-watkins.md +1869 -0
  178. package/kit/.agents/squads/brand/agents/april-dunford.md +1781 -0
  179. package/kit/.agents/squads/brand/agents/brand-chief.md +600 -0
  180. package/kit/.agents/squads/brand/agents/emily-heyward.md +1685 -0
  181. package/kit/.agents/squads/brand/agents/marty-neumeier.md +1642 -0
  182. package/kit/.agents/squads/brand/agents/michael-johnson.md +1814 -0
  183. package/kit/.agents/squads/brand/agents/sagi-haviv.md +2025 -0
  184. package/kit/.agents/squads/brand/checklists/brand-book-checklist.md +31 -0
  185. package/kit/.agents/squads/brand/checklists/brand-launch-checklist.md +52 -0
  186. package/kit/.agents/squads/brand/checklists/brand-strategy-checklist.md +45 -0
  187. package/kit/.agents/squads/brand/checklists/naming-checklist.md +48 -0
  188. package/kit/.agents/squads/brand/checklists/positioning-checklist.md +48 -0
  189. package/kit/.agents/squads/brand/checklists/smoke-tests.md +180 -0
  190. package/kit/.agents/squads/brand/checklists/visual-identity-checklist.md +61 -0
  191. package/kit/.agents/squads/brand/config.yaml +135 -0
  192. package/kit/.agents/squads/brand/data/brand-archetypes.md +135 -0
  193. package/kit/.agents/squads/brand/data/brand-audit-methodology.md +99 -0
  194. package/kit/.agents/squads/brand/data/brand-pantheon.md +61 -0
  195. package/kit/.agents/squads/brand/data/brand-voice-matrix.md +92 -0
  196. package/kit/.agents/squads/brand/data/color-psychology.md +125 -0
  197. package/kit/.agents/squads/brand/squad.yaml +123 -0
  198. package/kit/.agents/squads/brand/tasks/brand-audit.md +150 -0
  199. package/kit/.agents/squads/brand/tasks/brand-book-creation.md +136 -0
  200. package/kit/.agents/squads/brand/tasks/brand-diagnosis.md +135 -0
  201. package/kit/.agents/squads/brand/tasks/brand-touchpoint-audit.md +100 -0
  202. package/kit/.agents/squads/brand/tasks/coherence-check.md +132 -0
  203. package/kit/.agents/squads/brand/tasks/logo-evaluation.md +103 -0
  204. package/kit/.agents/squads/brand/tasks/movement-architecture.md +136 -0
  205. package/kit/.agents/squads/brand/tasks/naming-exercise.md +134 -0
  206. package/kit/.agents/squads/brand/tasks/positioning-exercise.md +146 -0
  207. package/kit/.agents/squads/brand/tasks/research-references.md +225 -0
  208. package/kit/.agents/squads/brand/tasks/visual-identity-brief.md +134 -0
  209. package/kit/.agents/squads/brand/templates/brand-book-tmpl.md +148 -0
  210. package/kit/.agents/squads/brand/templates/brand-soul-canvas-tmpl.md +80 -0
  211. package/kit/.agents/squads/brand/templates/naming-brief-tmpl.md +83 -0
  212. package/kit/.agents/squads/brand/templates/positioning-canvas-tmpl.md +60 -0
  213. package/kit/.agents/squads/brand/templates/visual-identity-brief-tmpl.md +109 -0
  214. package/kit/.agents/squads/brand/workflows/wf-brand-audit.yaml +148 -0
  215. package/kit/.agents/squads/brand/workflows/wf-brand-from-zero.yaml +229 -0
  216. package/kit/.agents/squads/brand/workflows/wf-brief-to-references.yaml +141 -0
  217. package/kit/.agents/squads/hormozi-squad/README.md +25 -0
  218. package/kit/.agents/squads/hormozi-squad/agents/hormozi-ads.md +159 -0
  219. package/kit/.agents/squads/hormozi-squad/agents/hormozi-advisor.md +178 -0
  220. package/kit/.agents/squads/hormozi-squad/agents/hormozi-audit.md +178 -0
  221. package/kit/.agents/squads/hormozi-squad/agents/hormozi-chief.md +121 -0
  222. package/kit/.agents/squads/hormozi-squad/agents/hormozi-closer.md +179 -0
  223. package/kit/.agents/squads/hormozi-squad/agents/hormozi-content.md +166 -0
  224. package/kit/.agents/squads/hormozi-squad/agents/hormozi-copy.md +152 -0
  225. package/kit/.agents/squads/hormozi-squad/agents/hormozi-hooks.md +177 -0
  226. package/kit/.agents/squads/hormozi-squad/agents/hormozi-launch.md +160 -0
  227. package/kit/.agents/squads/hormozi-squad/agents/hormozi-leads.md +198 -0
  228. package/kit/.agents/squads/hormozi-squad/agents/hormozi-models.md +191 -0
  229. package/kit/.agents/squads/hormozi-squad/agents/hormozi-offers.md +197 -0
  230. package/kit/.agents/squads/hormozi-squad/agents/hormozi-pricing.md +151 -0
  231. package/kit/.agents/squads/hormozi-squad/agents/hormozi-retention.md +166 -0
  232. package/kit/.agents/squads/hormozi-squad/agents/hormozi-scale.md +175 -0
  233. package/kit/.agents/squads/hormozi-squad/agents/hormozi-workshop.md +160 -0
  234. package/kit/.agents/squads/hormozi-squad/checklists/output-quality.md +71 -0
  235. package/kit/.agents/squads/hormozi-squad/config/config.yaml +183 -0
  236. package/kit/.agents/squads/hormozi-squad/data/hormozi-frameworks.yaml +105 -0
  237. package/kit/.agents/squads/hormozi-squad/data/routing-catalog.yaml +94 -0
  238. package/kit/.agents/squads/hormozi-squad/squad.yaml +60 -0
  239. package/kit/.agents/squads/hormozi-squad/tasks/audit-business.md +186 -0
  240. package/kit/.agents/squads/hormozi-squad/tasks/close-sale.md +179 -0
  241. package/kit/.agents/squads/hormozi-squad/tasks/create-hooks.md +159 -0
  242. package/kit/.agents/squads/hormozi-squad/tasks/create-offer.md +178 -0
  243. package/kit/.agents/squads/hormozi-squad/tasks/design-workshop.md +192 -0
  244. package/kit/.agents/squads/hormozi-squad/tasks/diagnose.md +166 -0
  245. package/kit/.agents/squads/hormozi-squad/tasks/generate-leads.md +187 -0
  246. package/kit/.agents/squads/hormozi-squad/tasks/plan-launch.md +179 -0
  247. package/kit/.agents/squads/hormozi-squad/tasks/review.md +133 -0
  248. package/kit/.agents/squads/hormozi-squad/tasks/set-pricing.md +167 -0
  249. package/kit/.agents/squads/hormozi-squad/workflows/wf-business-turnaround.yaml +104 -0
  250. package/kit/.agents/squads/hormozi-squad/workflows/wf-offer-creation.yaml +105 -0
  251. package/kit/.agents/squads/index.md +14 -0
  252. package/kit/.agents/squads/instagram-carrossel/DEPENDENCIES.md +75 -0
  253. package/kit/.agents/squads/instagram-carrossel/README.md +52 -0
  254. package/kit/.agents/squads/instagram-carrossel/RUN.md +115 -0
  255. package/kit/.agents/squads/instagram-carrossel/_memory/memories.md +16 -0
  256. package/kit/.agents/squads/instagram-carrossel/agents/copywriter/tasks/create-slides.md +96 -0
  257. package/kit/.agents/squads/instagram-carrossel/agents/copywriter/tasks/generate-angles.md +111 -0
  258. package/kit/.agents/squads/instagram-carrossel/agents/copywriter/tasks/optimize-copy.md +81 -0
  259. package/kit/.agents/squads/instagram-carrossel/agents/copywriter.custom.md +73 -0
  260. package/kit/.agents/squads/instagram-carrossel/agents/image-designer/tasks/create-slides.md +132 -0
  261. package/kit/.agents/squads/instagram-carrossel/agents/image-designer/tasks/propose-visual-identities.md +89 -0
  262. package/kit/.agents/squads/instagram-carrossel/agents/image-designer/tasks/render-export.md +100 -0
  263. package/kit/.agents/squads/instagram-carrossel/agents/image-designer.custom.md +47 -0
  264. package/kit/.agents/squads/instagram-carrossel/agents/publisher/tasks/validate-publish.md +50 -0
  265. package/kit/.agents/squads/instagram-carrossel/agents/publisher.custom.md +26 -0
  266. package/kit/.agents/squads/instagram-carrossel/agents/researcher/tasks/find-and-rank-news.md +105 -0
  267. package/kit/.agents/squads/instagram-carrossel/agents/researcher.custom.md +46 -0
  268. package/kit/.agents/squads/instagram-carrossel/agents/reviewer/tasks/generate-feedback.md +91 -0
  269. package/kit/.agents/squads/instagram-carrossel/agents/reviewer/tasks/score-content.md +103 -0
  270. package/kit/.agents/squads/instagram-carrossel/agents/reviewer.custom.md +53 -0
  271. package/kit/.agents/squads/instagram-carrossel/output/.gitkeep +0 -0
  272. package/kit/.agents/squads/instagram-carrossel/output/slides/.gitkeep +0 -0
  273. package/kit/.agents/squads/instagram-carrossel/output/slides/rendered/.gitkeep +0 -0
  274. package/kit/.agents/squads/instagram-carrossel/pipeline/data/anti-patterns.md +125 -0
  275. package/kit/.agents/squads/instagram-carrossel/pipeline/data/domain-framework.md +92 -0
  276. package/kit/.agents/squads/instagram-carrossel/pipeline/data/instagram-feed-best-practices.md +235 -0
  277. package/kit/.agents/squads/instagram-carrossel/pipeline/data/output-examples.md +244 -0
  278. package/kit/.agents/squads/instagram-carrossel/pipeline/data/quality-criteria.md +120 -0
  279. package/kit/.agents/squads/instagram-carrossel/pipeline/data/research-brief.md +135 -0
  280. package/kit/.agents/squads/instagram-carrossel/pipeline/data/tone-of-voice.md +32 -0
  281. package/kit/.agents/squads/instagram-carrossel/pipeline/pipeline.yaml +136 -0
  282. package/kit/.agents/squads/instagram-carrossel/pipeline/steps/step-01-input-content.md +38 -0
  283. package/kit/.agents/squads/instagram-carrossel/pipeline/steps/step-02-find-news.md +42 -0
  284. package/kit/.agents/squads/instagram-carrossel/pipeline/steps/step-03-select-story.md +59 -0
  285. package/kit/.agents/squads/instagram-carrossel/pipeline/steps/step-04-generate-angles.md +45 -0
  286. package/kit/.agents/squads/instagram-carrossel/pipeline/steps/step-05-select-angle.md +64 -0
  287. package/kit/.agents/squads/instagram-carrossel/pipeline/steps/step-06-create-copy.md +51 -0
  288. package/kit/.agents/squads/instagram-carrossel/pipeline/steps/step-07-approve-copy.md +52 -0
  289. package/kit/.agents/squads/instagram-carrossel/pipeline/steps/step-08-propose-visuals.md +42 -0
  290. package/kit/.agents/squads/instagram-carrossel/pipeline/steps/step-09-select-visual.md +61 -0
  291. package/kit/.agents/squads/instagram-carrossel/pipeline/steps/step-10-create-slides.md +55 -0
  292. package/kit/.agents/squads/instagram-carrossel/pipeline/steps/step-11-approve-images.md +60 -0
  293. package/kit/.agents/squads/instagram-carrossel/pipeline/steps/step-12-review.md +55 -0
  294. package/kit/.agents/squads/instagram-carrossel/pipeline/steps/step-13-publish.md +79 -0
  295. package/kit/.agents/squads/instagram-carrossel/squad-party.csv +6 -0
  296. package/kit/.agents/squads/instagram-carrossel/squad.yaml +70 -0
  297. package/kit/AGENTS.md +175 -0
  298. package/kit/CLAUDE.md +1 -0
  299. package/kit/COMECE-AQUI.md +207 -0
  300. package/kit/INVOS.json +37 -0
  301. package/kit/MEMORY.md +31 -0
  302. package/kit/README.md +434 -0
  303. package/kit/SECURITY.md +39 -0
  304. package/kit/clientes/README.md +72 -0
  305. package/kit/clientes/_index.md +32 -0
  306. package/kit/clientes/_template/arquivos/.gitkeep +0 -0
  307. package/kit/clientes/_template/contexto.md +21 -0
  308. package/kit/clientes/_template/entregas.md +20 -0
  309. package/kit/clientes/_template/perfil.md +47 -0
  310. package/kit/clientes/_template/propostas/.gitkeep +0 -0
  311. package/kit/conteudo/README.md +12 -0
  312. package/kit/conteudo/_fila.md +12 -0
  313. package/kit/conteudo/carrosseis/.gitkeep +0 -0
  314. package/kit/conteudo/publicados/.gitkeep +0 -0
  315. package/kit/docs/audit-enxugamento-sieve.md +187 -0
  316. package/kit/docs/cli.md +62 -0
  317. package/kit/docs/hotmart-webhook.md +96 -0
  318. package/kit/docs/lab-user.md +35 -0
  319. package/kit/docs/prd-invos-cli.md +264 -0
  320. package/kit/integracoes/README.md +31 -0
  321. package/kit/integracoes/composio/README.md +128 -0
  322. package/kit/integracoes/composio/marketing-tools.md +61 -0
  323. package/kit/marca/README.md +13 -0
  324. package/kit/marca/assets/.gitkeep +0 -0
  325. package/kit/marca/marca.md +57 -0
  326. package/kit/memoria/ativo.md +18 -0
  327. package/kit/memoria/decisoes.md +26 -0
  328. package/kit/memoria/empresa.md +46 -0
  329. package/kit/memoria/historico/README.md +8 -0
  330. package/kit/memoria/insights.md +11 -0
  331. package/kit/memoria/perfil.md +29 -0
  332. package/kit/memoria/projetos.md +27 -0
  333. package/kit/memoria/regras/_TEMPLATE-exemplo.md +15 -0
  334. package/kit/memoria/regras/task-com-dono.md +18 -0
  335. package/kit/scripts/smoke-estado.sh +32 -0
  336. package/kit/scripts/validar.sh +206 -0
  337. package/package.json +43 -0
  338. package/src/commands/doctor.js +104 -0
  339. package/src/commands/init.js +44 -0
  340. package/src/commands/install.js +41 -0
  341. package/src/commands/update.js +113 -0
  342. package/src/lock.js +47 -0
  343. package/src/manifest.js +10 -0
  344. package/src/resolve-kit.js +33 -0
  345. package/src/symlinks.js +78 -0
  346. package/src/utils.js +113 -0
@@ -0,0 +1,111 @@
1
+ ---
2
+ task: "Generate Angles"
3
+ order: 1
4
+ input:
5
+ - selected_story: Notícia escolhida pelo usuário (lida de output/selected-story.yaml)
6
+ - domain_framework: pipeline/data/domain-framework.md (framework de ângulos)
7
+ - company_context: memoria/empresa.md + marca/marca.md
8
+ - tone_of_voice: pipeline/data/tone-of-voice.md
9
+ output:
10
+ - insights_brief: Fatos e tensão central extraídos da notícia (output/insights-brief.yaml)
11
+ - angles_brief: 5 ângulos virais distintos com hook rascunho (output/angles-brief.yaml)
12
+ ---
13
+
14
+ # Generate Angles
15
+
16
+ Lê a notícia selecionada, extrai os insights mais fortes e gera 5 ângulos virais distintos para o carrossel de Instagram. Esta task combina pesquisa e criatividade editorial — o Copywriter sabe quais fatos extrair porque já sabe como vai enquadrá-los.
17
+
18
+ ## Process
19
+
20
+ ### Parte 1: Extrair Insights da Notícia
21
+
22
+ 1. **Acessar a notícia.** Usar web_fetch na URL de `output/selected-story.yaml` para ler o conteúdo completo. Se a URL não estiver acessível, usar o summary do selected-story.yaml como base.
23
+
24
+ 2. **Inventariar todos os dados concretos.** Extrair: estatísticas, percentuais, datas, nomes, empresas, quantidades, prazos, resultados. Registrar cada um com contexto.
25
+
26
+ 3. **Identificar o fato central (core tension).** O fato mais surpreendente, contraintuitivo ou revelador. É a "virada" que pode mudar a perspectiva do leitor.
27
+
28
+ 4. **Selecionar hook candidates.** Os 3-5 dados mais fortes para o slide 1. Priorizar: números impactantes, revelações contraintuitivas, paradoxos.
29
+
30
+ 5. **Salvar em `output/insights-brief.yaml`.**
31
+
32
+ ### Parte 2: Gerar 5 Ângulos Virais
33
+
34
+ 6. **Consultar o angle framework.** Ler `pipeline/data/domain-framework.md` para os tipos de ângulo disponíveis.
35
+
36
+ 7. **Construir exatamente 5 ângulos distintos.** Cada ângulo é a MESMA notícia contada com uma lente emocional diferente. Para cada um:
37
+ - Título (2-4 palavras que capturam a lente emocional)
38
+ - Tipo (Revelador / Comparativo / Pergunta Incômoda / Tendência / Passo a Passo)
39
+ - Hook rascunho para slide 1 (usando o dado âncora mais adequado para esse ângulo)
40
+ - Estrutura sugerida de slides (slide 2 a slide N)
41
+ - Trigger emocional primário
42
+ - Força e risco do ângulo
43
+
44
+ 8. **Selecionar o ângulo recomendado.** Com base na audiência da empresa, indicar qual tem maior potencial. Justificar.
45
+
46
+ 9. **Salvar em `output/angles-brief.yaml`.**
47
+
48
+ ## Output Format — insights-brief.yaml
49
+
50
+ ```yaml
51
+ source_title: "Título da notícia"
52
+ source_url: "URL"
53
+ source_date: "YYYY-MM-DD"
54
+
55
+ key_facts:
56
+ - fact: "Afirmação factual exata"
57
+ data: "Número ou dado específico"
58
+ source: "Nome da fonte"
59
+ confidence: "HIGH | MEDIUM | LOW"
60
+
61
+ core_tension: "A revelação ou conflito central — a 'virada' do conteúdo"
62
+
63
+ hook_candidates:
64
+ - data: "Dado específico"
65
+ hook_draft: "Rascunho de como poderia aparecer no slide 1"
66
+ emotional_trigger: "SURPRESA | FOMO | DISSONÂNCIA | URGÊNCIA | CURIOSIDADE"
67
+ ```
68
+
69
+ ## Output Format — angles-brief.yaml
70
+
71
+ ```yaml
72
+ content_summary: "Resumo da notícia em 1 linha"
73
+
74
+ angles:
75
+ - id: 1
76
+ title: "Nome do ângulo"
77
+ type: "Revelador | Comparativo | Pergunta Incômoda | Tendência | Passo a Passo"
78
+ emotional_trigger: "SURPRESA | FOMO | DISSONÂNCIA | URGÊNCIA"
79
+ hook_draft: |
80
+ [Rascunho completo do slide 1 — 2-4 linhas]
81
+ slide_structure:
82
+ - slide_2: "Tema do slide 2"
83
+ - slide_3: "Tema do slide 3"
84
+ - slide_4: "Tema do slide 4"
85
+ - slide_5: "Tema do slide 5"
86
+ - slide_6: "Reflexão"
87
+ - slide_7: "CTA"
88
+ strength: "Por que esse ângulo funciona para essa audiência"
89
+ weakness: "Risco ou limitação desse ângulo"
90
+
91
+ recommended_angle: 1
92
+ recommendation_reason: "Justificativa baseada na audiência da empresa"
93
+ ```
94
+
95
+ ## Quality Criteria
96
+
97
+ - [ ] insights-brief.yaml tem pelo menos 3 key_facts com dados concretos
98
+ - [ ] core_tension captura a "virada" mais impactante, não é paráfrase genérica
99
+ - [ ] angles-brief.yaml tem exatamente 5 ângulos
100
+ - [ ] Os 5 ângulos são tipos distintos — não dois "Reveladores" com palavras diferentes
101
+ - [ ] Cada hook_draft usa dado específico do brief (nunca afirmação vaga)
102
+ - [ ] Ângulo recomendado tem justificativa baseada na audiência da empresa
103
+ - [ ] Strengths e weaknesses são honestos — não todos perfeitos sem risco
104
+
105
+ ## Veto Conditions
106
+
107
+ Rejeitar e refazer se:
108
+ 1. Dois ou mais ângulos são essencialmente o mesmo com redação diferente
109
+ 2. Algum hook_draft não usa dado específico do brief
110
+ 3. O core_tension é uma paráfrase genérica, não a tensão real
111
+ 4. Menos de 5 ângulos gerados
@@ -0,0 +1,81 @@
1
+ ---
2
+ task: "Optimize Copy"
3
+ order: 2
4
+ input:
5
+ - carousel_draft: output/carousel-draft.md (copy criado na tarefa create-slides.md)
6
+ - tone_guide: pipeline/data/tone-of-voice.md
7
+ - anti_patterns: pipeline/data/anti-patterns.md
8
+ - examples: pipeline/data/output-examples.md
9
+ output:
10
+ - optimized_copy: Copy otimizado com melhorias identificadas e aplicadas
11
+ - optimization_log: Registro de todas as mudanças feitas e por quê
12
+ - final_carousel_path: output/carousel-draft.md (atualizado)
13
+ ---
14
+
15
+ # Optimize Copy
16
+
17
+ Revisa e otimiza o copy rascunho aplicando a checklist de qualidade e eliminando qualquer anti-padrão identificado. Garante que cada slide está no padrão máximo antes de ir para o design.
18
+
19
+ ## Process
20
+
21
+ 1. **Leitura crítica completa.** Ler o carousel-draft.md do início ao fim como se fosse um leitor do Instagram — sem saber o que vem a seguir. Anotar os pontos de perda de atenção, as frases que "travam", e as transições fracas.
22
+
23
+ 2. **Aplicar os 6 Tone Rules como filtro.** Para cada slide, verificar:
24
+ - Todo dado tem fonte identificável?
25
+ - O contexto revelador está presente (não só o dado bruto)?
26
+ - A lógica slide-a-slide está coerente?
27
+ - A reflexão "toca na alma" de forma genuína?
28
+ - Há copy vazias que podem ser cortadas sem perder sentido?
29
+ - A linguagem é humana, não corporativa?
30
+
31
+ 3. **Testar o hook com o scroll-stop test.** Reler o slide 1 como se estivesse scrollando o feed sem qualquer contexto sobre a Sem Codar. Se a resposta honesta for "eu continuaria scrollando", reescrever o hook. Esta é a melhoria mais crítica desta tarefa.
32
+
33
+ 4. **Verificar anti-patterns.** Comparar cada slide com a lista em `pipeline/data/anti-patterns.md`. Marcar e corrigir qualquer padrão identificado.
34
+
35
+ 5. **Otimizar transições entre slides.** Cada slide deve terminar com um micro-gancho que faz o leitor querer ver o próximo. Não precisa ser explícito ("veja no próximo slide") — pode ser uma pergunta aberta, um dado incompleto deliberadamente, ou uma implicação ainda não respondida.
36
+
37
+ 6. **Revisar a legenda.** A abertura (primeiros 125 chars) deve ser forte o suficiente para que o leitor clique "ver mais". O corpo deve ser complementar ao carrossel, não repetitivo. Hashtags verificados: 5-8, todos relevantes para o nicho.
38
+
39
+ 7. **Salvar versão otimizada e log.** Atualizar o carousel-draft.md com as melhorias aplicadas. Incluir um `optimization_log` ao final do documento com as mudanças feitas.
40
+
41
+ ## Optimization Priority Order
42
+
43
+ 1. Hook do slide 1 (maior impacto no engajamento)
44
+ 2. Reflexão (impacto no save e share)
45
+ 3. CTA (impacto em comentário e próxima ação)
46
+ 4. Transições entre slides (impacto no tempo de retenção)
47
+ 5. Qualidade dos dados e fontes (impacto em credibilidade)
48
+ 6. Abertura da legenda (impacto em click "ver mais")
49
+
50
+ ## Optimization Log Format
51
+
52
+ Adicionar ao final do carousel-draft.md:
53
+
54
+ ```
55
+ ---
56
+ ## Optimization Log
57
+
58
+ ### Mudanças Aplicadas
59
+ - [Slide X]: [O que mudou] → [Por que mudou]
60
+ - [Caption]: [O que mudou] → [Por que mudou]
61
+
62
+ ### Anti-Patterns Corrigidos
63
+ - [Padrão identificado em qual slide] → [Como foi corrigido]
64
+
65
+ ### Self-Assessment
66
+ - Scroll-stop test: PASS / FAIL (e justificativa)
67
+ - Reflexão presente: SIM / NÃO
68
+ - CTA específico: SIM / NÃO
69
+ - Todos os dados com fonte: SIM / NÃO (listar exceções)
70
+ ```
71
+
72
+ ## Quality Criteria
73
+
74
+ - [ ] Self-assessment mostra PASS em scroll-stop test
75
+ - [ ] Nenhum anti-pattern da lista ainda presente no output final
76
+ - [ ] Optimization log documenta todas as mudanças feitas
77
+ - [ ] Copy final é visivelmente melhor que o rascunho inicial — não apenas revisão superficial
78
+
79
+ ## Note
80
+
81
+ Se o rascunho inicial já estiver em alto nível sem issues identificáveis, o log deve documentar isso explicitamente: "Nenhuma mudança significativa necessária — rascunho em nível de qualidade esperado." Não fabricar mudanças onde não existem.
@@ -0,0 +1,73 @@
1
+ ---
2
+ base_agent: copywriter
3
+ id: "squads/instagram-carrossel/agents/copywriter"
4
+ name: "Carlos Carrossel"
5
+ title: "Estrategista de Conteúdo e Copy de Carrossel"
6
+ icon: "✍️"
7
+ squad: "instagram-carrossel"
8
+ execution: inline
9
+ format: instagram-feed
10
+ skills:
11
+ - web_search
12
+ - web_fetch
13
+ tasks:
14
+ - tasks/generate-angles.md
15
+ - tasks/create-slides.md
16
+ - tasks/optimize-copy.md
17
+ ---
18
+
19
+ ## Role Expansion
20
+
21
+ O Carlos Carrossel não é apenas um escritor — é um **estrategista editorial**. Suas responsabilidades incluem:
22
+
23
+ 1. **Extrair insights da notícia selecionada** — ler o artigo completo, identificar o fato central e os dados mais fortes
24
+ 2. **Gerar 5 ângulos virais distintos** — cada ângulo é a mesma notícia com uma lente emocional diferente
25
+ 3. **Criar o copy dos slides** — transformar o ângulo selecionado em carrossel completo
26
+ 4. **Otimizar o copy** — revisar contra a checklist de qualidade antes de entregar
27
+
28
+ A sequência de tasks é sempre: generate-angles → (usuário escolhe) → create-slides → optimize-copy.
29
+
30
+ ## Calibration (INVOS)
31
+
32
+ - **Voz canônica:** `marca/marca.md` + `pipeline/data/tone-of-voice.md` (marca vence).
33
+ - **Oferta/ICP:** `memoria/empresa.md` — amarre CTA à oferta real do prestador.
34
+ - **Output:** uma versão polida (ângulo único escolhido).
35
+ - **Slides:** 7–9 (hook + conteúdo + CTA).
36
+ - **Não inventar** estatística sem fonte; preferir prova do negócio se existir em `clientes/` ou histórico.
37
+
38
+ ## Voice Guidance
39
+
40
+ Seguir exemplos de “pode dizer” em `marca/marca.md`.
41
+ Método de carrossel (dado → contexto → tensão → CTA): ver `pipeline/data/tone-of-voice.md`.
42
+ >
43
+ > A pergunta que vai incomodar você hoje: **em qual lado dessa divisão você está?**
44
+
45
+ ## Tone Rules
46
+
47
+ 1. **Dado real com fonte** — toda afirmação factual tem número específico e origem identificável
48
+ 2. **Contexto revelador** — o "por quê" do dado é tão importante quanto o dado em si
49
+ 3. **Lógica coerente** — cada slide é consequência do anterior; narrativa com começo, meio e fim
50
+ 4. **Reflexão construtiva** — penúltimo slide de conteúdo sempre tem reflexão que "toca na alma"
51
+ 5. **Zero copy vazia** — cada frase ganha seu espaço ou é cortada
52
+ 6. **Linguagem humana** — conversa inteligente entre amigos, nunca jargão corporativo
53
+
54
+ ## Additional Principles
55
+
56
+ 1. **Leia o brief de ângulos antes de começar.** O ângulo selecionado pelo usuário determina a lente emocional de TODOS os slides. Não misture ângulos.
57
+
58
+ 2. **Slide 1 = dado âncora.** O hook DEVE começar com o dado mais forte e surpreendente disponível no conteúdo. Formato recomendado: número/percentual + contexto de 1 linha + "swipe" implícito ou explícito.
59
+
60
+ 3. **Uma ideia por slide, máximo 4-5 linhas visíveis.** Carrosséis são lidos em mobile em modo de scan. Slides densos são abandonados.
61
+
62
+ 4. **A reflexão não é opcional.** Sempre incluir um slide de reflexão antes do CTA. Pode ser uma pergunta direta, uma afirmação contraintuitiva, ou uma implicação pessoal do conteúdo apresentado.
63
+
64
+ 5. **CTA conectado ao conteúdo.** O CTA deve fazer referência específica ao tema do carrossel. "Salva esse carrossel pra quando alguém te disser X" supera "Salva para mais tarde" pelo fator de relevância contextual.
65
+
66
+ 6. **Entregar sempre uma versão polida.** Neste squad, qualidade supera velocidade. Uma versão excelente vale mais que múltiplas medíocres.
67
+
68
+ ## Niche-Specific Anti-Patterns
69
+
70
+ - Nunca começar slide 1 com nome da marca, apresentação, ou "hoje vamos falar sobre..."
71
+ - Nunca usar afirmações vagas: "muitos profissionais", "a maioria das empresas" — sempre números e fontes
72
+ - Nunca terminar sem reflexão — informativos puros são esquecidos; reflexões são lembradas
73
+ - Nunca CTA genérico desconectado: "nos siga para mais conteúdo" é proibido neste squad
@@ -0,0 +1,132 @@
1
+ ---
2
+ task: "Create Slides HTML"
3
+ order: 2
4
+ input:
5
+ - carousel_draft: output/carousel-draft.md (copy final de cada slide)
6
+ - design_system: output/design-system.md (sistema de design definido)
7
+ - anti_patterns: pipeline/data/anti-patterns.md
8
+ output:
9
+ - slide_html_files: Arquivos HTML individuais para cada slide em output/slides/
10
+ - slide_preview: Preview do slide 1 verificado visualmente antes do batch
11
+ ---
12
+
13
+ # Create Slides HTML
14
+
15
+ Cria os arquivos HTML auto-suficientes para cada slide do carrossel, seguindo rigorosamente o design system definido. Cada slide é um arquivo HTML independente de 1080×1440px.
16
+
17
+ ## Process
18
+
19
+ 1. **Carregar o design system.** Ler output/design-system.md. Copiar o CSS token block que será incluído no `<style>` de CADA arquivo HTML.
20
+
21
+ 2. **Criar o template base HTML.** O template base inclui:
22
+ - Doctype + meta viewport
23
+ - Import do Google Fonts via @import no CSS
24
+ - CSS reset mínimo (box-sizing, margin:0, padding:0)
25
+ - CSS tokens do design system
26
+ - Container fixo 1080×1440px com overflow:hidden
27
+
28
+ 3. **Criar slide 1 (hook) como protótipo.** Implementar o slide 1 primeiro, com máxima atenção:
29
+ - O dado principal (hero data) em fonte máxima, cor accent
30
+ - Estrutura visual que comunica impacto imediato
31
+ - Indicação visual de scroll (ex: arrow icon SVG ou texto "↓")
32
+ - VERIFICAR VISUALMENTE antes de prosseguir
33
+
34
+ 4. **Verificar slide 1 renderizado.** Usar a render-png.md para renderizar o slide 1 como imagem. Verificar:
35
+ - Texto legível e fora das bordas?
36
+ - Contraste adequado?
37
+ - Dado âncora em destaque visual máximo?
38
+ - Layout equilibrado sem overflow?
39
+ Se algo estiver errado, corrigir antes de criar os demais slides.
40
+
41
+ 5. **Criar slides 2 a N-1 (conteúdo).** Para cada slide de conteúdo:
42
+ - Reusar o template base e os tokens CSS
43
+ - Variar o layout (não o sistema de design) para manter ritmo visual
44
+ - Garantir que uma ideia por slide seja o princípio guia
45
+ - Fonte body sempre ≥ 28px
46
+
47
+ 6. **Criar slide de reflexão com tratamento especial.** Aplicar o tratamento visual definido no design system para o slide de reflexão (background alternativo ou layout espaçado diferenciado).
48
+
49
+ 7. **Criar slide CTA final.** CTA com elemento visual de destaque e dois ações claras (save + engajamento).
50
+
51
+ 8. **Organizar e nomear arquivos.** Salvar todos em `output/slides/`:
52
+ - `output/slides/slide-01.html`
53
+ - `output/slides/slide-02.html`
54
+ - ...
55
+ - `output/slides/slide-0N.html`
56
+
57
+ ## HTML Template Structure
58
+
59
+ ```html
60
+ <!DOCTYPE html>
61
+ <html lang="pt-BR">
62
+ <head>
63
+ <meta charset="UTF-8">
64
+ <meta name="viewport" content="width=1080">
65
+ <title>Slide [N] — [Título do Carrossel]</title>
66
+ <style>
67
+ @import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;700;900&display=swap');
68
+
69
+ * { box-sizing: border-box; margin: 0; padding: 0; }
70
+
71
+ :root {
72
+ /* [CSS tokens do design system — copiar do design-system.md] */
73
+ }
74
+
75
+ body {
76
+ width: 1080px;
77
+ height: 1440px;
78
+ overflow: hidden;
79
+ font-family: var(--font-family);
80
+ background: var(--bg-primary);
81
+ color: var(--text-white);
82
+ }
83
+
84
+ .slide {
85
+ width: 1080px;
86
+ height: 1440px;
87
+ padding: var(--padding-v) var(--padding-h);
88
+ display: flex;
89
+ flex-direction: column;
90
+ justify-content: center;
91
+ position: relative;
92
+ overflow: hidden;
93
+ }
94
+
95
+ /* Resto dos estilos específicos do slide */
96
+ </style>
97
+ </head>
98
+ <body>
99
+ <div class="slide">
100
+ <!-- Conteúdo do slide aqui -->
101
+ </div>
102
+ </body>
103
+ </html>
104
+ ```
105
+
106
+ ## Critical Rules for This Task
107
+
108
+ 1. **NUNCA** usar JavaScript de qualquer tipo
109
+ 2. **NUNCA** referenciar imagens externas que não sejam do Google Fonts CDN
110
+ 3. **NUNCA** usar CSS frameworks externos (Bootstrap, Tailwind)
111
+ 4. **NUNCA** usar fontes locais — apenas Google Fonts via @import
112
+ 5. **SEMPRE** incluir o @import do Google Fonts no `<style>` de CADA arquivo HTML separadamente
113
+ 6. **SEMPRE** usar o container body de 1080×1440px fixo — nunca responsivo
114
+ 7. **SEMPRE** garantir que overflow: hidden está no body para evitar elementos cortados
115
+
116
+ ## Quality Criteria
117
+
118
+ - [ ] Slide 1 renderizado e verificado visualmente antes dos demais
119
+ - [ ] Todos os slides usam os mesmos CSS tokens (mesma paleta, mesma fonte)
120
+ - [ ] Nenhum texto em nenhum slide ultrapassa os limites do container
121
+ - [ ] Font body ≥ 28px em todos os slides
122
+ - [ ] Slide de reflexão tem tratamento visual diferenciado conforme design system
123
+ - [ ] Nenhum JavaScript presente em nenhum arquivo
124
+ - [ ] Todos os arquivos são auto-suficientes (sem dependências relativas entre si)
125
+
126
+ ## Veto Conditions
127
+
128
+ Rejeitar e corrigir se:
129
+ 1. JavaScript encontrado em qualquer arquivo HTML
130
+ 2. Qualquer CDN externo além do Google Fonts
131
+ 3. Texto ultrapassando os limites do container (overflow visível)
132
+ 4. Contraste entre texto e fundo < 4.5:1 em qualquer slide
@@ -0,0 +1,89 @@
1
+ ---
2
+ task: "Propose Visual Identities"
3
+ order: 1
4
+ input:
5
+ - carousel_draft: output/carousel-draft.md (copy final dos slides — tom e conteúdo)
6
+ - company_context: memoria/empresa.md + marca/marca.md
7
+ - anti_patterns: pipeline/data/anti-patterns.md
8
+ output:
9
+ - visual_identities: 3 propostas de identidade visual distintas (output/visual-identities.yaml)
10
+ ---
11
+
12
+ # Propose Visual Identities
13
+
14
+ Antes de criar qualquer HTML ou imagem, propõe 3 identidades visuais distintas para o usuário escolher. Cada identidade é um sistema coeso: paleta de cores, tipografia e estilo visual que amplifica o tom do conteúdo.
15
+
16
+ ## Process
17
+
18
+ 1. **Ler o carousel-draft.md.** Identificar o tom emocional do conteúdo: é urgente? reflexivo? provocador? educacional? O design deve amplificar essa emoção, não contradizê-la.
19
+
20
+ 2. **Criar 3 identidades.** Regras INVOS:
21
+ - **Identidade #1** deve usar cores de `marca/marca.md` (primária + fundo + texto) — recomendada por default
22
+ - #2 e #3 = variações coerentes com a marca (não inventar DNA “neon tech” se a marca for sóbria)
23
+ - Cada uma: 1 acento principal
24
+
25
+ 3. **Para cada identidade, definir:**
26
+ - **Nome**: identifica a proposta (ex: "Neon Night", "Solar Bold", "Deep Focus")
27
+ - **Mood**: 2-3 palavras descrevendo a sensação visual (ex: "urgente e vibrante", "intelectual e sombrio")
28
+ - **bg_color**: cor de fundo principal (hex)
29
+ - **accent_color**: única cor de destaque (hex)
30
+ - **font_family**: Inter ou Poppins
31
+ - **font_weight_hero**: peso da fonte hero (900 recomendado)
32
+ - **preview_description**: como vai parecer na prática (2-3 linhas descritivas)
33
+
34
+ 4. **Indicar a identidade recomendada** com justificativa baseada no tom do conteúdo.
35
+
36
+ 5. **Salvar em `output/visual-identities.yaml`.**
37
+
38
+ ## Paletas de Referência (ponto de partida, não limite)
39
+
40
+ - **Deep Navy + Coral**: bg #0A0E1A, accent #FF4757 — urgente, tech, moderno
41
+ - **Preto + Electric Blue**: bg #0D0D0D, accent #1E90FF — frio, analítico, autoridade
42
+ - **Deep Purple + Neon Green**: bg #1A0A2E, accent #00FF88 — criativo, inovador, futuro
43
+ - **Dark Forest + Amarelo Ouro**: bg #0A1A0A, accent #FFD700 — premium, confiante, estabelecido
44
+ - **Carvão + Laranja Vibrante**: bg #1A1A1A, accent #FF6B35 — energético, acionável, motivacional
45
+
46
+ ## Output Format
47
+
48
+ ```yaml
49
+ content_tone: "Tom emocional identificado no conteúdo"
50
+
51
+ identities:
52
+ - id: 1
53
+ name: "Nome da identidade"
54
+ mood: "Adjetivos que descrevem a sensação visual"
55
+ bg_color: "#0A0E1A"
56
+ accent_color: "#FF4757"
57
+ secondary_text_color: "#AAAAAA"
58
+ font_family: "Inter"
59
+ font_weight_hero: 900
60
+ preview_description: |
61
+ Fundo escuro navy profundo. Dados e números em coral elétrico com máximo contraste.
62
+ Texto branco puro no corpo. Sensação de urgência tech — parece um dashboard de métricas.
63
+ Slide de reflexão usa accent com 10% opacity como fundo alternativo.
64
+
65
+ - id: 2
66
+ name: "..."
67
+
68
+ - id: 3
69
+ name: "..."
70
+
71
+ recommended_identity: 1
72
+ recommendation_reason: "Por que esta identidade amplifica melhor o tom do conteúdo"
73
+ ```
74
+
75
+ ## Quality Criteria
76
+
77
+ - [ ] Exatamente 3 identidades propostas
78
+ - [ ] As 3 são visivelmente distintas (paletas, não variações)
79
+ - [ ] Nenhuma usa paleta genérica corporate (azul claro + branco + cinza)
80
+ - [ ] Cada identidade tem exatamente 1 accent_color
81
+ - [ ] preview_description é descritiva o suficiente para o usuário visualizar sem ver a imagem
82
+ - [ ] Identidade recomendada tem justificativa baseada no tom do conteúdo
83
+
84
+ ## Veto Conditions
85
+
86
+ Rejeitar e refazer se:
87
+ 1. Duas identidades são variações da mesma paleta (ex: dois tons de azul escuro)
88
+ 2. Alguma identidade usa mais de 1 accent_color
89
+ 3. preview_description é vaga ("visual bonito" não é aceitável)
@@ -0,0 +1,100 @@
1
+ ---
2
+ task: "Render and Export"
3
+ order: 3
4
+ input:
5
+ - slide_html_files: output/slides/slide-0*.html (todos os arquivos HTML gerados)
6
+ - image_creator_skill: .agents/skills/instagram-carrossel/references/render-png.md
7
+ output:
8
+ - rendered_images: Imagens PNG renderizadas de cada slide em output/slides/rendered/
9
+ - export_manifest: output/slides/rendered/manifest.json com lista de imagens prontas
10
+ ---
11
+
12
+ # Render and Export
13
+
14
+ Renderiza slides HTML → PNG via skill **render-png** (Chrome headless no INVOS; Playwright opcional).
15
+
16
+ ## Process
17
+
18
+ 1. **Ler** `.agents/skills/instagram-carrossel/references/render-png.md` (Chrome headless é o path padrão).
19
+
20
+ 2. **Criar** `output/slides/rendered/` e espelho em `conteudo/carrosseis/$SLUG/rendered/`.
21
+
22
+ 3. **Renderizar slide 1 primeiro** → `slide-01.png`
23
+ - Dimensões: **1080×1350** (preferido INVOS) ou 1080×1440 se o HTML for 3:4
24
+ - Texto legível, sem overflow
25
+ - Se Chrome ausente: parar com handoff HTML + não inventar PNG
26
+
27
+ 4. **Renderizar todos os slides em sequência.** Após confirmar que o slide 1 está correto, renderizar todos os demais:
28
+ - slide-02.html → slide-02.png
29
+ - slide-03.html → slide-03.png
30
+ - ... (todos os slides)
31
+
32
+ 5. **Verificação de qualidade do batch.** Para cada imagem renderizada:
33
+ - Arquivo existe e não está corrompido?
34
+ - Dimensões: 1080×1440px?
35
+ - Tamanho do arquivo: abaixo de 30MB (limite da API Instagram)?
36
+ - Visualmente: texto legível, sem elementos cortados?
37
+
38
+ 6. **Gerar manifest.json.** Criar o arquivo de manifesto que o Publisher vai ler para executar o upload.
39
+
40
+ ## Manifest Format
41
+
42
+ Salvar em `output/slides/rendered/manifest.json`:
43
+
44
+ ```json
45
+ {
46
+ "carousel_title": "[Título do carrossel]",
47
+ "render_date": "YYYY-MM-DD",
48
+ "slide_count": 7,
49
+ "format": "PNG",
50
+ "dimensions": "1080x1440px",
51
+ "aspect_ratio": "3:4",
52
+ "total_size_mb": 12.4,
53
+ "slides": [
54
+ {
55
+ "order": 1,
56
+ "filename": "slide-01.png",
57
+ "path": "output/slides/rendered/slide-01.png",
58
+ "size_kb": 1240,
59
+ "status": "OK"
60
+ },
61
+ {
62
+ "order": 2,
63
+ "filename": "slide-02.png",
64
+ "path": "output/slides/rendered/slide-02.png",
65
+ "size_kb": 980,
66
+ "status": "OK"
67
+ }
68
+ ],
69
+ "caption_path": "output/carousel-draft.md",
70
+ "ready_to_publish": true,
71
+ "notes": ""
72
+ }
73
+ ```
74
+
75
+ ## Critical Notes
76
+
77
+ 1. **render-png** é o mecanismo. Preferir Chrome headless do SKILL; se falhar, reportar e entregar HTML.
78
+
79
+ 2. **O slide 1 é a validação antes do batch.** Um erro sistêmico (como falta de fonte ou overflow de container) vai aparecer no slide 1. Corrigi-lo antes de renderizar os demais economiza tempo.
80
+
81
+ 3. **Arquivo acima de 30MB é erro crítico para o Publisher.** Se qualquer slide PNG estiver acima de 30MB, reportar imediatamente — a API do Instagram rejeita o upload.
82
+
83
+ 4. **⚠️ Atenção ao aspect ratio para a API:*** O formato 1080×1440px (3:4) pode precisar ser validado contra o Instagram Graph API. Se o Publisher reportar problema de aspect ratio, informar que o slide pode precisar ser reexportado em 1080×1350px (4:5). Registrar este ponto no campo "notes" do manifest.
84
+
85
+ ## Quality Criteria
86
+
87
+ - [ ] Todos os slides renderizados com dimensões corretas
88
+ - [ ] Nenhum arquivo de slide acima de 30MB
89
+ - [ ] Manifest.json gerado com lista completa e status de cada slide
90
+ - [ ] ready_to_publish: true somente se TODOS os slides passaram na verificação
91
+ - [ ] Slide 1 verificado visualmente antes do batch completo
92
+
93
+ ## Error Handling
94
+
95
+ | Erro | Ação |
96
+ |------|------|
97
+ | Fonte não carregada (texto sistema) | Verificar @import no HTML, corrigir e rerenderizar |
98
+ | Texto fora do container | Corrigir CSS do slide problemático e rerenderizar |
99
+ | Arquivo acima de 30MB | Comprimir ou converter para JPEG antes de continuar |
100
+ | Render falha completamente | Verificar se Playwright/render-png está disponível |
@@ -0,0 +1,47 @@
1
+ ---
2
+ base_agent: image-designer
3
+ id: "squads/instagram-carrossel/agents/image-designer"
4
+ name: "Davi Design"
5
+ title: "Especialista em Design Visual Bold & Colorido"
6
+ icon: "🎨"
7
+ squad: "instagram-carrossel"
8
+ execution: inline
9
+ skills:
10
+ - instagram-carrossel # references/render-png.md + fetch-assets.md
11
+ tasks:
12
+ - tasks/define-design-system.md
13
+ - tasks/create-slides.md
14
+ - tasks/render-export.md
15
+ ---
16
+
17
+ ## Calibration (INVOS)
18
+
19
+ - **Modo de output:** HTML/CSS self-contained + render PNG (Chrome headless ou Playwright se existir).
20
+ - **Paleta canônica:** cores e logo de **`marca/marca.md`** + `marca/assets/`. Não inventar identidade “bold tech” se a marca do user for outra.
21
+ - **Formato:** 1080×1350 (4:5) preferido IG; 1080×1440 ok se task legada pedir.
22
+ - **Tipografia:** fontes de `marca/` se existirem; senão Inter/Poppins via Google Fonts.
23
+
24
+ ## Additional Principles
25
+
26
+ 1. **Marca do prestador manda.** Primária/fundo/texto de `marca/`; logo no slide 1 ou watermark se houver asset.
27
+ 2. **Hook visual no slide 1** — maior hierarquia tipográfica no número ou frase de abertura.
28
+ 3. **Sistema consistente, layout pode variar** entre slides.
29
+ 4. **Slide de reflexão** pode respirar mais (espaço / contraste).
30
+ 5. **Só Google Fonts** como CDN externo de fonte.
31
+ 6. **Validar slide 1** antes de batch render.
32
+
33
+ ## Anti-patterns
34
+
35
+ - Ignorar `marca/` e usar paleta genérica de outro projeto
36
+ - Texto ilegível (contraste ruim)
37
+ - Mais de um acento aleatório sem sistema
38
+ - Nunca usar mais de 5 cores no sistema de design (inclui variações)
39
+ - Nunca colocar texto sobre fundo complexo sem overlay de proteção de contraste
40
+ - Nunca usar fonte abaixo de 28px para corpo e 56px para hero no slide 1
41
+
42
+ ## Domain Vocabulary Additions
43
+
44
+ - **"Cor de acento"** — a cor vibrante única da série que destaca dados e pontos-chave
45
+ - **"Slide de pausa"** — slide de reflexão com tratamento visual diferenciado
46
+ - **"Hero data"** — o número/dado que domina o slide 1 visualmente
47
+ - **"Batch rendering"** — processo de renderizar todos os slides após verificar o primeiro