conectese 0.1.14

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 (260) hide show
  1. package/README.md +265 -0
  2. package/_conectese/.conectese-version +1 -0
  3. package/_conectese/config/playwright.config.json +11 -0
  4. package/_conectese/core/architect.agent.yaml +110 -0
  5. package/_conectese/core/best-practices/_catalog.yaml +116 -0
  6. package/_conectese/core/best-practices/blog-post.md +132 -0
  7. package/_conectese/core/best-practices/blog-seo.md +127 -0
  8. package/_conectese/core/best-practices/copywriting.md +426 -0
  9. package/_conectese/core/best-practices/data-analysis.md +401 -0
  10. package/_conectese/core/best-practices/email-newsletter.md +118 -0
  11. package/_conectese/core/best-practices/email-sales.md +110 -0
  12. package/_conectese/core/best-practices/image-design.md +348 -0
  13. package/_conectese/core/best-practices/instagram-feed.md +235 -0
  14. package/_conectese/core/best-practices/instagram-reels.md +112 -0
  15. package/_conectese/core/best-practices/instagram-stories.md +107 -0
  16. package/_conectese/core/best-practices/linkedin-article.md +116 -0
  17. package/_conectese/core/best-practices/linkedin-post.md +121 -0
  18. package/_conectese/core/best-practices/researching.md +349 -0
  19. package/_conectese/core/best-practices/review.md +269 -0
  20. package/_conectese/core/best-practices/social-networks-publishing.md +294 -0
  21. package/_conectese/core/best-practices/strategist.md +344 -0
  22. package/_conectese/core/best-practices/technical-writing.md +365 -0
  23. package/_conectese/core/best-practices/twitter-post.md +105 -0
  24. package/_conectese/core/best-practices/twitter-thread.md +122 -0
  25. package/_conectese/core/best-practices/whatsapp-broadcast.md +107 -0
  26. package/_conectese/core/best-practices/youtube-script.md +122 -0
  27. package/_conectese/core/best-practices/youtube-shorts.md +112 -0
  28. package/_conectese/core/prompts/build.prompt.md +547 -0
  29. package/_conectese/core/prompts/design.prompt.md +469 -0
  30. package/_conectese/core/prompts/discovery.prompt.md +269 -0
  31. package/_conectese/core/prompts/sherlock-instagram.md +123 -0
  32. package/_conectese/core/prompts/sherlock-linkedin.md +73 -0
  33. package/_conectese/core/prompts/sherlock-shared.md +684 -0
  34. package/_conectese/core/prompts/sherlock-twitter.md +78 -0
  35. package/_conectese/core/prompts/sherlock-youtube.md +85 -0
  36. package/_conectese/core/runner.pipeline.md +535 -0
  37. package/_conectese/core/skills.engine.md +381 -0
  38. package/agents/data-extractor/AGENT.md +13 -0
  39. package/agents/direito-adaneiro/AGENT.md +18 -0
  40. package/agents/direito-administrativo/AGENT.md +18 -0
  41. package/agents/direito-aeroporta-rio/AGENT.md +18 -0
  42. package/agents/direito-agra-rio/AGENT.md +18 -0
  43. package/agents/direito-ambiental/AGENT.md +18 -0
  44. package/agents/direito-banca-rio/AGENT.md +18 -0
  45. package/agents/direito-civil/AGENT.md +18 -0
  46. package/agents/direito-constitcional/AGENT.md +18 -0
  47. package/agents/direito-da-crianc-a-e-do-adolescente-eca/AGENT.md +18 -0
  48. package/agents/direito-da-propriedade-intelectal/AGENT.md +18 -0
  49. package/agents/direito-de-ami-lia/AGENT.md +18 -0
  50. package/agents/direito-de-tra-nsito/AGENT.md +18 -0
  51. package/agents/direito-desportivo/AGENT.md +18 -0
  52. package/agents/direito-digital/AGENT.md +18 -0
  53. package/agents/direito-do-consmidor/AGENT.md +18 -0
  54. package/agents/direito-do-trabalho/AGENT.md +18 -0
  55. package/agents/direito-econo-mico/AGENT.md +18 -0
  56. package/agents/direito-eleitoral/AGENT.md +18 -0
  57. package/agents/direito-empresarial/AGENT.md +18 -0
  58. package/agents/direito-imobilia-rio/AGENT.md +18 -0
  59. package/agents/direito-inanceiro/AGENT.md +18 -0
  60. package/agents/direito-internacional/AGENT.md +18 -0
  61. package/agents/direito-mari-timo/AGENT.md +18 -0
  62. package/agents/direito-me-dico-e-da-sa-de/AGENT.md +18 -0
  63. package/agents/direito-militar/AGENT.md +18 -0
  64. package/agents/direito-ndia-rio/AGENT.md +18 -0
  65. package/agents/direito-notarial-e-registral/AGENT.md +18 -0
  66. package/agents/direito-penal/AGENT.md +18 -0
  67. package/agents/direito-previdencia-rio/AGENT.md +18 -0
  68. package/agents/direito-processal-civil/AGENT.md +18 -0
  69. package/agents/direito-processal-do-trabalho/AGENT.md +18 -0
  70. package/agents/direito-processal-militar/AGENT.md +18 -0
  71. package/agents/direito-processal-penal/AGENT.md +18 -0
  72. package/agents/direito-rbani-stico/AGENT.md +18 -0
  73. package/agents/direito-secrita-rio/AGENT.md +18 -0
  74. package/agents/direito-sindical/AGENT.md +18 -0
  75. package/agents/direito-societa-rio/AGENT.md +18 -0
  76. package/agents/direito-tribta-rio/AGENT.md +18 -0
  77. package/agents/direitos-hmanos/AGENT.md +18 -0
  78. package/agents/legal-analyst/AGENT.md +16 -0
  79. package/agents/legal-synthesizer/AGENT.md +13 -0
  80. package/agents/lgpd-anonymizer/AGENT.md +14 -0
  81. package/agents/lgpd-restorer/AGENT.md +14 -0
  82. package/agents/task-router/AGENT.md +13 -0
  83. package/bin/conectese.js +73 -0
  84. package/dashboard/index.html +12 -0
  85. package/dashboard/package-lock.json +1971 -0
  86. package/dashboard/package.json +28 -0
  87. package/dashboard/public/assets/avatars/Female1_1wave.png +0 -0
  88. package/dashboard/public/assets/avatars/Female1_2wave.png +0 -0
  89. package/dashboard/public/assets/avatars/Female1_blink.png +0 -0
  90. package/dashboard/public/assets/avatars/Female1_talk.png +0 -0
  91. package/dashboard/public/assets/avatars/Female2_1wave.png +0 -0
  92. package/dashboard/public/assets/avatars/Female2_2wave.png +0 -0
  93. package/dashboard/public/assets/avatars/Female2_blink.png +0 -0
  94. package/dashboard/public/assets/avatars/Female2_talk.png +0 -0
  95. package/dashboard/public/assets/avatars/Female3_blink.png +0 -0
  96. package/dashboard/public/assets/avatars/Female3_talk.png +0 -0
  97. package/dashboard/public/assets/avatars/Female3_wave.png +0 -0
  98. package/dashboard/public/assets/avatars/Female4_blink.png +0 -0
  99. package/dashboard/public/assets/avatars/Female4_talk.png +0 -0
  100. package/dashboard/public/assets/avatars/Female4_wave.png +0 -0
  101. package/dashboard/public/assets/avatars/Female5_blink.png +0 -0
  102. package/dashboard/public/assets/avatars/Female5_talk.png +0 -0
  103. package/dashboard/public/assets/avatars/Female5_wave.png +0 -0
  104. package/dashboard/public/assets/avatars/Female6_blink.png +0 -0
  105. package/dashboard/public/assets/avatars/Female6_talk.png +0 -0
  106. package/dashboard/public/assets/avatars/Female6_wave.png +0 -0
  107. package/dashboard/public/assets/avatars/Male1_1wave.png +0 -0
  108. package/dashboard/public/assets/avatars/Male1_2wave.png +0 -0
  109. package/dashboard/public/assets/avatars/Male1_blink.png +0 -0
  110. package/dashboard/public/assets/avatars/Male1_talk.png +0 -0
  111. package/dashboard/public/assets/avatars/Male2_1wave.png +0 -0
  112. package/dashboard/public/assets/avatars/Male2_2wave.png +0 -0
  113. package/dashboard/public/assets/avatars/Male2_blink.png +0 -0
  114. package/dashboard/public/assets/avatars/Male2_talk.png +0 -0
  115. package/dashboard/public/assets/avatars/Male3_blink.png +0 -0
  116. package/dashboard/public/assets/avatars/Male3_talk.png +0 -0
  117. package/dashboard/public/assets/avatars/Male3_wave.png +0 -0
  118. package/dashboard/public/assets/avatars/Male4_blink.png +0 -0
  119. package/dashboard/public/assets/avatars/Male4_talk.png +0 -0
  120. package/dashboard/public/assets/avatars/Male4_wave.png +0 -0
  121. package/dashboard/public/assets/desks/desktop_set_black_down.png +0 -0
  122. package/dashboard/public/assets/desks/desktop_set_black_down_coding-1.png +0 -0
  123. package/dashboard/public/assets/desks/desktop_set_black_down_coding.png +0 -0
  124. package/dashboard/public/assets/desks/desktop_set_black_up.png +0 -0
  125. package/dashboard/public/assets/desks/desktop_set_white_down.png +0 -0
  126. package/dashboard/public/assets/desks/desktop_set_white_down_coding-1.png +0 -0
  127. package/dashboard/public/assets/desks/desktop_set_white_down_coding.png +0 -0
  128. package/dashboard/public/assets/desks/desktop_set_white_up.png +0 -0
  129. package/dashboard/public/assets/furniture/armchair_tan.png +0 -0
  130. package/dashboard/public/assets/furniture/armchair_tan_down.png +0 -0
  131. package/dashboard/public/assets/furniture/backpack_blue.png +0 -0
  132. package/dashboard/public/assets/furniture/backpack_red.png +0 -0
  133. package/dashboard/public/assets/furniture/blinds.png +0 -0
  134. package/dashboard/public/assets/furniture/blinds_large_closed_white.png +0 -0
  135. package/dashboard/public/assets/furniture/bookshelf.png +0 -0
  136. package/dashboard/public/assets/furniture/bookshelf_purple_tall.png +0 -0
  137. package/dashboard/public/assets/furniture/bulletin_board.png +0 -0
  138. package/dashboard/public/assets/furniture/clock.png +0 -0
  139. package/dashboard/public/assets/furniture/coffee_mug.png +0 -0
  140. package/dashboard/public/assets/furniture/coffee_mug_blue.png +0 -0
  141. package/dashboard/public/assets/furniture/coffee_table.png +0 -0
  142. package/dashboard/public/assets/furniture/coffeepot_right.png +0 -0
  143. package/dashboard/public/assets/furniture/coffeetable_black_horizontal.png +0 -0
  144. package/dashboard/public/assets/furniture/couch.png +0 -0
  145. package/dashboard/public/assets/furniture/couch_tan_down.png +0 -0
  146. package/dashboard/public/assets/furniture/cushion_blue.png +0 -0
  147. package/dashboard/public/assets/furniture/cushion_tan.png +0 -0
  148. package/dashboard/public/assets/furniture/desk_wood.png +0 -0
  149. package/dashboard/public/assets/furniture/fancy_rug.png +0 -0
  150. package/dashboard/public/assets/furniture/fancy_rug_wide.png +0 -0
  151. package/dashboard/public/assets/furniture/flowers1.png +0 -0
  152. package/dashboard/public/assets/furniture/flowers2.png +0 -0
  153. package/dashboard/public/assets/furniture/lamp_tan.png +0 -0
  154. package/dashboard/public/assets/furniture/lantern.png +0 -0
  155. package/dashboard/public/assets/furniture/monstera.png +0 -0
  156. package/dashboard/public/assets/furniture/monstera_small.png +0 -0
  157. package/dashboard/public/assets/furniture/picture_frame.png +0 -0
  158. package/dashboard/public/assets/furniture/plant1.png +0 -0
  159. package/dashboard/public/assets/furniture/plant2.png +0 -0
  160. package/dashboard/public/assets/furniture/plant3.png +0 -0
  161. package/dashboard/public/assets/furniture/plant_poof.png +0 -0
  162. package/dashboard/public/assets/furniture/plant_spindly.png +0 -0
  163. package/dashboard/public/assets/furniture/poster_blue.png +0 -0
  164. package/dashboard/public/assets/furniture/rug.png +0 -0
  165. package/dashboard/public/assets/furniture/succulent_blue.png +0 -0
  166. package/dashboard/public/assets/furniture/succulent_green.png +0 -0
  167. package/dashboard/public/assets/furniture/treasurechest_closed_gold.png +0 -0
  168. package/dashboard/public/assets/furniture/water_cooler_better.png +0 -0
  169. package/dashboard/public/assets/furniture/whiteboard.png +0 -0
  170. package/dashboard/public/assets/furniture/whiteboard_stand_graph.png +0 -0
  171. package/dashboard/public/assets/furniture/window_blinds_open.png +0 -0
  172. package/dashboard/src/App.tsx +46 -0
  173. package/dashboard/src/components/SquadCard.tsx +47 -0
  174. package/dashboard/src/components/SquadSelector.tsx +61 -0
  175. package/dashboard/src/components/StatusBadge.tsx +32 -0
  176. package/dashboard/src/components/StatusBar.tsx +97 -0
  177. package/dashboard/src/hooks/useSquadSocket.ts +135 -0
  178. package/dashboard/src/lib/formatTime.ts +16 -0
  179. package/dashboard/src/lib/normalizeState.ts +25 -0
  180. package/dashboard/src/main.tsx +10 -0
  181. package/dashboard/src/office/AgentSprite.ts +241 -0
  182. package/dashboard/src/office/OfficeScene.ts +153 -0
  183. package/dashboard/src/office/PhaserGame.tsx +80 -0
  184. package/dashboard/src/office/RoomBuilder.ts +190 -0
  185. package/dashboard/src/office/assetKeys.ts +150 -0
  186. package/dashboard/src/office/palette.ts +32 -0
  187. package/dashboard/src/plugin/squadWatcher.ts +233 -0
  188. package/dashboard/src/store/useSquadStore.ts +56 -0
  189. package/dashboard/src/styles/globals.css +36 -0
  190. package/dashboard/src/types/state.ts +63 -0
  191. package/dashboard/src/vite-env.d.ts +1 -0
  192. package/dashboard/test-results/.last-run.json +4 -0
  193. package/dashboard/tsconfig.json +24 -0
  194. package/dashboard/tsconfig.tsbuildinfo +1 -0
  195. package/dashboard/vite.config.ts +13 -0
  196. package/package.json +53 -0
  197. package/skills/README.md +63 -0
  198. package/skills/apify/SKILL.md +55 -0
  199. package/skills/blotato/SKILL.md +63 -0
  200. package/skills/canva/SKILL.md +60 -0
  201. package/skills/conectese-agent-creator/SKILL.md +192 -0
  202. package/skills/conectese-skill-creator/SKILL.md +407 -0
  203. package/skills/conectese-skill-creator/agents/analyzer.md +274 -0
  204. package/skills/conectese-skill-creator/agents/comparator.md +202 -0
  205. package/skills/conectese-skill-creator/agents/grader.md +223 -0
  206. package/skills/conectese-skill-creator/assets/eval_review.html +146 -0
  207. package/skills/conectese-skill-creator/eval-viewer/generate_review.py +471 -0
  208. package/skills/conectese-skill-creator/eval-viewer/viewer.html +1325 -0
  209. package/skills/conectese-skill-creator/references/schemas.md +430 -0
  210. package/skills/conectese-skill-creator/references/skill-format.md +235 -0
  211. package/skills/conectese-skill-creator/scripts/__init__.py +0 -0
  212. package/skills/conectese-skill-creator/scripts/aggregate_benchmark.py +401 -0
  213. package/skills/conectese-skill-creator/scripts/quick_validate.py +103 -0
  214. package/skills/conectese-skill-creator/scripts/run_eval.py +310 -0
  215. package/skills/conectese-skill-creator/scripts/utils.py +47 -0
  216. package/skills/image-ai-generator/SKILL.md +124 -0
  217. package/skills/image-ai-generator/scripts/generate.py +175 -0
  218. package/skills/image-creator/SKILL.md +155 -0
  219. package/skills/image-fetcher/SKILL.md +91 -0
  220. package/skills/instagram-publisher/SKILL.md +119 -0
  221. package/skills/instagram-publisher/scripts/publish.js +165 -0
  222. package/skills/resend/SKILL.md +80 -0
  223. package/skills/template-designer/SKILL.md +201 -0
  224. package/skills/template-designer/base-templates/model-a.html +27 -0
  225. package/skills/template-designer/base-templates/model-b.html +31 -0
  226. package/skills/template-designer/base-templates/model-c.html +42 -0
  227. package/src/agents-cli.js +158 -0
  228. package/src/agents.js +134 -0
  229. package/src/i18n.js +48 -0
  230. package/src/init.js +341 -0
  231. package/src/locales/en.json +73 -0
  232. package/src/locales/es.json +72 -0
  233. package/src/locales/pt-BR.json +72 -0
  234. package/src/logger.js +38 -0
  235. package/src/prompt.js +46 -0
  236. package/src/readme/README.md +119 -0
  237. package/src/runs.js +90 -0
  238. package/src/skills-cli.js +157 -0
  239. package/src/skills.js +146 -0
  240. package/src/update.js +169 -0
  241. package/templates/_conectese/.conectese-version +1 -0
  242. package/templates/_conectese/_investigations/.gitkeep +0 -0
  243. package/templates/ide-templates/antigravity/.agent/rules/conectese.md +55 -0
  244. package/templates/ide-templates/antigravity/.agent/workflows/conectese.md +102 -0
  245. package/templates/ide-templates/claude-code/.claude/skills/conectese/SKILL.md +182 -0
  246. package/templates/ide-templates/claude-code/.mcp.json +8 -0
  247. package/templates/ide-templates/claude-code/CLAUDE.md +43 -0
  248. package/templates/ide-templates/codex/.agents/skills/conectese/SKILL.md +6 -0
  249. package/templates/ide-templates/codex/AGENTS.md +105 -0
  250. package/templates/ide-templates/cursor/.cursor/commands/conectese.md +9 -0
  251. package/templates/ide-templates/cursor/.cursor/mcp.json +8 -0
  252. package/templates/ide-templates/cursor/.cursor/rules/conectese.mdc +48 -0
  253. package/templates/ide-templates/cursor/.cursorignore +3 -0
  254. package/templates/ide-templates/opencode/.opencode/commands/conectese.md +9 -0
  255. package/templates/ide-templates/opencode/AGENTS.md +105 -0
  256. package/templates/ide-templates/vscode-copilot/.github/prompts/conectese.prompt.md +201 -0
  257. package/templates/ide-templates/vscode-copilot/.vscode/mcp.json +8 -0
  258. package/templates/ide-templates/vscode-copilot/.vscode/settings.json +3 -0
  259. package/templates/package.json +8 -0
  260. package/templates/squads/.gitkeep +0 -0
@@ -0,0 +1,112 @@
1
+ ---
2
+ name: "Instagram Reels"
3
+ platform: "instagram"
4
+ content_type: "reels"
5
+ description: "Short-form vertical video optimized for discovery, watch time, and non-follower reach"
6
+ whenToUse: |
7
+ Creating agents that produce Instagram Reels or short-form vertical video for Instagram.
8
+ constraints:
9
+ max_duration_seconds: 90
10
+ recommended_duration: "15-30s"
11
+ aspect_ratio: "9:16 vertical"
12
+ caption_max_chars: 2200
13
+ caption_visible_chars: 125
14
+ max_hashtags: 30
15
+ version: "1.0.0"
16
+ ---
17
+
18
+ ## Platform Rules
19
+
20
+ - Reels are the primary discovery format on Instagram. They are shown to non-followers via the Explore page and the dedicated Reels tab, making them the strongest tool for audience growth.
21
+ - Watch time is the dominant metric: completion rate and replays directly boost distribution. A 15-second Reel watched twice outperforms a 60-second Reel watched halfway.
22
+ - Engagement weight for Reels: Shares > Saves > Comments > Likes. Shares to DMs and Stories carry the highest algorithmic value.
23
+ - Reels can be posted at any time — algorithmic distribution is less time-dependent than feed posts, though early engagement still helps.
24
+ - Trending audio boosts Explore placement. Using a currently trending sound gives a measurable bump in impressions.
25
+ - Consistent Reels posting (3-5x/week) signals an active creator account and maintains algorithmic favor.
26
+
27
+ ## Content Structure
28
+
29
+ ### Reel Sequence
30
+
31
+ 1. **Hook (0-2 seconds)** — Text overlay or spoken hook that immediately creates curiosity or promises value. No slow intros, no logos, no "hey guys." The viewer decides to stay or swipe in this window.
32
+ 2. **Setup (2-5 seconds)** — Quick context establishing what the Reel is about and why the viewer should care. Keep it tight.
33
+ 3. **Delivery (5-60 seconds)** — The core value: tutorial steps, story beats, entertainment, or insight. Maintain visual variety with cuts, angles, or B-roll every 3-5 seconds.
34
+ 4. **CTA (last 3-5 seconds)** — Direct ask: follow for more, comment your answer, share with someone who needs this. Keep it short and specific.
35
+
36
+ ### Loop Design
37
+
38
+ - Design the ending to visually or narratively connect back to the beginning. A seamless loop encourages replays, which are one of the strongest algorithmic signals.
39
+ - Common loop techniques: ending mid-sentence and starting with the same word, visual match cuts, circular storytelling.
40
+
41
+ ## Writing Guidelines
42
+
43
+ - **Hook must be immediate.** The first 1-2 seconds determine whether the viewer stays. Use text overlays that pose a question, make a bold claim, or tease a reveal.
44
+ - Write spoken scripts at a conversational pace. Aim for 130-150 words per minute of content.
45
+ - Keep Reels between 15-30 seconds for maximum completion rate. Shorter Reels have higher replay potential.
46
+ - Add captions/subtitles to every Reel. 85% of Instagram users watch without sound. Burned-in subtitles are non-negotiable.
47
+ - Caption (below the Reel): front-load the value in the first 125 visible characters. Expand with context, then add hashtags.
48
+ - Use trending audio when it fits your content naturally. Forced trending audio with no connection to the content feels inauthentic.
49
+ - End with a specific CTA, not a generic "follow me." Ask a question, prompt a share, or direct to another piece of content.
50
+
51
+ ## Output Format
52
+
53
+ ```
54
+ === REEL SCRIPT ===
55
+
56
+ HOOK (0-2s):
57
+ [Visual]: [What appears on screen — text overlay, action, scene]
58
+ [Audio]: [Spoken words, trending sound, or music cue]
59
+ [Text Overlay]: [On-screen text that hooks the viewer — max 10 words]
60
+
61
+ SETUP (2-5s):
62
+ [Visual]: [Scene or transition establishing context]
63
+ [Script]: [Spoken setup — 1-2 sentences max]
64
+
65
+ DELIVERY (5-60s):
66
+ [Visual]: [Shot-by-shot breakdown with cuts every 3-5 seconds]
67
+ [Script]: [Full spoken script for the delivery section]
68
+ [Text Overlays]: [Key points highlighted on screen]
69
+
70
+ CTA (last 3-5s):
71
+ [Visual]: [Final frame or gesture]
72
+ [Script]: [Spoken CTA — one specific ask]
73
+ [Text Overlay]: [CTA text on screen]
74
+
75
+ === CAPTION ===
76
+ [Hook line — must fit in 125 characters]
77
+
78
+ [Expanded context or value — 2-3 short lines]
79
+
80
+ [CTA — question or action prompt]
81
+
82
+ === HASHTAGS ===
83
+ #hashtag1 #hashtag2 #hashtag3 #hashtag4 #hashtag5
84
+ [5-15 hashtags, relevant to the content topic]
85
+
86
+ === AUDIO NOTE ===
87
+ [Trending sound suggestion or original audio direction]
88
+ ```
89
+
90
+ ## Quality Criteria
91
+
92
+ - [ ] Hook delivers a clear curiosity gap or value promise within the first 2 seconds
93
+ - [ ] Total duration is between 15-30 seconds for optimal completion rate
94
+ - [ ] Script includes burned-in subtitles/captions for sound-off viewing
95
+ - [ ] Visual variety is present — cuts or angle changes every 3-5 seconds
96
+ - [ ] Ending is designed for loop potential (visual or narrative connection to the start)
97
+ - [ ] CTA is specific and actionable, not generic
98
+ - [ ] Caption first 125 characters work as a standalone hook
99
+ - [ ] Audio direction is specified (trending sound or original audio)
100
+ - [ ] Aspect ratio is 9:16 vertical — no horizontal or square content
101
+ - [ ] Content delivers on the hook's promise (no bait-and-switch)
102
+
103
+ ## Anti-Patterns
104
+
105
+ - **Landscape video as Reels** — Horizontal video cropped into 9:16 wastes screen real estate and looks unintentional. Always shoot natively vertical.
106
+ - **No subtitles on Reels** — 85% of users watch without sound. A Reel without captions loses the majority of its potential audience.
107
+ - **Slow intros** — Starting with a logo reveal, "hey guys," or any non-hook content causes immediate swipe-away. Hook first, always.
108
+ - **No CTA** — Reels without a clear ask generate significantly fewer follows, saves, and shares. Always direct the viewer's next action.
109
+ - **Posting and ghosting** — Not engaging with comments in the first hour reduces the Reel's algorithmic momentum.
110
+ - **Generic stock aesthetics** — Overly polished, impersonal content signals "ad" and reduces organic reach.
111
+ - **Hashtag spam** — Using 30 irrelevant hashtags triggers suppression. Stick to 5-15 relevant tags.
112
+ - **Forced trending audio** — Using a trending sound that has no connection to the content feels inauthentic and does not boost performance the way contextually relevant audio does.
@@ -0,0 +1,107 @@
1
+ ---
2
+ name: "Instagram Stories"
3
+ platform: "instagram"
4
+ content_type: "stories"
5
+ description: "Ephemeral 24-hour vertical content with interactive elements for audience engagement and retention"
6
+ whenToUse: |
7
+ Creating agents that produce Instagram Stories or ephemeral 24-hour content.
8
+ constraints:
9
+ max_duration_seconds: 60
10
+ aspect_ratio: "9:16 vertical"
11
+ format: "ephemeral (24h)"
12
+ interactive_elements: "polls, questions, links, stickers, quizzes"
13
+ version: "1.0.0"
14
+ ---
15
+
16
+ ## Platform Rules
17
+
18
+ - Stories are ephemeral and disappear after 24 hours. This creates urgency and encourages immediate viewing. High-performing Stories can be saved to Highlights for permanent access.
19
+ - Stories appear at the top of the feed in the Stories bar. Posting multiple times throughout the day keeps your profile at the front of the bar, maintaining visibility.
20
+ - Story engagement (replies, sticker interactions, poll votes) signals account relevance to the algorithm, which in turn boosts your feed post and Reel distribution.
21
+ - Stories are shown primarily to existing followers, not new audiences. They are a retention and deepening tool, not a discovery tool.
22
+ - Interactive elements (polls, questions, quizzes, sliders) dramatically increase engagement rate and time spent on your Stories.
23
+ - Link stickers are the only way to share clickable links on Instagram (outside of bio). Use them strategically to drive traffic.
24
+
25
+ ## Content Structure
26
+
27
+ ### Story Sequence Design
28
+
29
+ Stories work best as short sequences of 3-7 frames that follow a narrative arc. Each frame should be consumable in 3-5 seconds.
30
+
31
+ 1. **Opener frame** — Grab attention with a bold statement, question, or visually striking image. This determines whether viewers watch the rest of the sequence.
32
+ 2. **Context frames (1-3)** — Build the story, share the insight, or present the information. Keep text short and use visual hierarchy.
33
+ 3. **Interactive frame** — Deploy a poll, question box, quiz, or slider to transform passive viewers into active participants.
34
+ 4. **Closer frame** — Deliver the conclusion, payoff, or CTA. Link sticker if driving traffic. "DM me" or "Reply to this" for conversation.
35
+
36
+ ### Frame Types
37
+
38
+ - **Text-on-background**: Bold text with a colored background. Best for announcements, questions, or quick thoughts.
39
+ - **Photo/video with overlay**: Visual content with text overlay and optional stickers. The primary Story format.
40
+ - **Interactive**: Frames built around a poll, quiz, question box, or emoji slider as the central element.
41
+ - **Link frame**: Frame with a link sticker driving to an external URL. Must include clear context for why the viewer should tap.
42
+
43
+ ## Writing Guidelines
44
+
45
+ - **Keep text extremely short.** Stories are consumed in seconds. 2-3 lines of large text maximum per frame. If it takes more than 3 seconds to read, it is too long.
46
+ - Use a casual, conversational tone. Stories are the most informal format on Instagram. First person, contractions, and casual language are expected.
47
+ - Write text overlays in large, bold fonts. Small text is unreadable on mobile and gets ignored.
48
+ - Every interactive element needs a clear, specific prompt. "What do you think?" is weak. "Which would you choose: A or B?" is strong.
49
+ - Use polls and quizzes to segment your audience and gather feedback. The responses provide content ideas and audience insights.
50
+ - Questions boxes should ask something genuinely interesting that viewers want to answer. Generic prompts get ignored.
51
+ - When using link stickers, always add context text explaining what the link is and why they should tap. A bare link sticker with no context gets minimal taps.
52
+ - Stories do not use hashtags or formal caption structure. The tone is raw and immediate.
53
+
54
+ ## Output Format
55
+
56
+ ```
57
+ === STORY SEQUENCE ===
58
+
59
+ FRAME 1 (Opener):
60
+ [Visual]: [Photo/video description or background color]
61
+ [Text Overlay]: [Bold hook text — max 2 lines, large font]
62
+ [Sticker/Element]: [None / Music / Location / Mention]
63
+
64
+ FRAME 2 (Context):
65
+ [Visual]: [Photo/video description]
66
+ [Text Overlay]: [Supporting context — max 3 lines]
67
+ [Sticker/Element]: [Optional element]
68
+
69
+ FRAME 3 (Interactive):
70
+ [Visual]: [Background or supporting visual]
71
+ [Text Overlay]: [Prompt text leading into the interactive element]
72
+ [Interactive Element]: [Poll: "Option A" vs "Option B" / Quiz: "Question?" with answers / Question Box: "Ask me about..." / Emoji Slider: "How much do you [X]?"]
73
+
74
+ FRAME 4 (Closer/CTA):
75
+ [Visual]: [Final visual]
76
+ [Text Overlay]: [Conclusion, payoff, or CTA text — max 2 lines]
77
+ [Sticker/Element]: [Link sticker with URL / "DM me" prompt / Countdown sticker]
78
+
79
+ === SEQUENCE NOTES ===
80
+ Total frames: [3-7]
81
+ Estimated view time: [X seconds total]
82
+ Primary goal: [Engagement / Traffic / Feedback / Announcement]
83
+ ```
84
+
85
+ ## Quality Criteria
86
+
87
+ - [ ] Sequence is 3-7 frames long (not too short to have impact, not too long to cause drop-off)
88
+ - [ ] Opener frame grabs attention within 2 seconds with a visual or textual hook
89
+ - [ ] Text overlays are 2-3 lines maximum per frame with large, readable font
90
+ - [ ] At least one frame includes an interactive element (poll, quiz, question, or slider)
91
+ - [ ] Interactive prompts are specific and binary/concrete, not vague or open-ended
92
+ - [ ] Tone is casual and conversational, matching the ephemeral nature of Stories
93
+ - [ ] Link stickers (if used) include context text explaining what the link is and why to tap
94
+ - [ ] Each frame is consumable in 3-5 seconds without pausing
95
+ - [ ] Sequence follows a narrative arc (opener, context, interaction, closer)
96
+ - [ ] Content is vertical-native (9:16), not adapted from horizontal content
97
+
98
+ ## Anti-Patterns
99
+
100
+ - **Wall of text on a single frame** — Stories are consumed in seconds. More than 3 lines of text causes viewers to skip forward or exit. Break long messages across multiple frames.
101
+ - **No interactive elements** — Stories without polls, questions, or quizzes miss the primary engagement mechanism of the format. Passive-only Stories get lower completion rates.
102
+ - **Link sticker with no context** — A bare link sticker without text explaining what it leads to and why the viewer should tap gets minimal click-through.
103
+ - **Posting one Story per day** — A single frame does not stay at the top of the Stories bar. Post 3-7 frames per sequence to maintain visibility.
104
+ - **Repurposing feed posts as Stories** — Screenshotting a carousel slide or resharing a feed post without adding new value feels lazy. Add commentary, behind-the-scenes context, or an interactive element.
105
+ - **Horizontal content in Stories** — Landscape photos or videos with black bars above and below waste screen space and look unintentional.
106
+ - **Generic question prompts** — "Any questions?" or "What do you think?" are too vague to generate responses. Be specific: "What is your biggest challenge with X?"
107
+ - **Ignoring Story replies** — Story replies are high-intent DMs. Not responding kills future engagement and signals disinterest to your audience.
@@ -0,0 +1,116 @@
1
+ ---
2
+ name: "LinkedIn Article"
3
+ platform: "linkedin"
4
+ content_type: "article"
5
+ description: "Long-form blog-style content optimized for SEO, thought leadership, and evergreen professional value"
6
+ whenToUse: |
7
+ Creating agents that produce LinkedIn articles or long-form professional content.
8
+ constraints:
9
+ optimal_word_count: "1500-2000"
10
+ headline_max_chars: 220
11
+ version: "1.0.0"
12
+ ---
13
+
14
+ ## Platform Rules
15
+
16
+ - LinkedIn Articles have lower immediate feed reach than posts but offer stronger long-term SEO value. Articles are indexed by search engines and remain discoverable indefinitely.
17
+ - Articles appear on your profile under the "Activity" section and can be featured in the "Featured" section for permanent visibility.
18
+ - The algorithm distributes articles primarily to your existing network. To maximize reach, share the article as a post with a compelling hook and "Link in comments" approach.
19
+ - Articles support rich formatting: headers, images, embedded media, block quotes, and numbered lists. Use these to increase dwell time and readability.
20
+ - Commenting and engagement on articles still matter. The first 60 minutes of engagement influence how broadly the article is distributed in the LinkedIn feed.
21
+ - Articles can be published as part of a LinkedIn Newsletter, which pushes notifications to subscribers and dramatically increases consistent readership.
22
+ - Best publishing days: Tuesday, Wednesday, Thursday during business hours (7-9 AM or 12-1 PM in your audience's time zone).
23
+
24
+ ## Content Structure
25
+
26
+ ### Article Architecture
27
+
28
+ 1. **Headline** — SEO-friendly, specific, and curiosity-driven. Front-load the primary keyword within the first 70 characters. Maximum 220 characters, but 60-100 characters is optimal for display.
29
+ 2. **Cover image** — High-quality, relevant visual. Avoid generic stock photos. Custom graphics or contextual images perform better.
30
+ 3. **Introduction (150-250 words)** — State the problem, establish relevance, and preview what the reader will learn. The first 2-3 sentences must hook the reader — they appear as the article preview in the feed.
31
+ 4. **Body sections (3-5 sections, 250-400 words each)** — Each section addresses one sub-topic with a clear subheading. Use a mix of narrative, data, and practical advice.
32
+ 5. **Actionable takeaways** — Each body section should end with a concrete, implementable takeaway. Readers should be able to act on the advice immediately.
33
+ 6. **Conclusion (100-200 words)** — Synthesize the key message into a single memorable insight. Reinforce the transformation or shift in thinking.
34
+ 7. **CTA** — End with a question that invites comments, a prompt to share, or a direction to related content.
35
+
36
+ ### Section Design
37
+
38
+ - Use H2 subheadings for major sections and H3 for sub-points. Clear hierarchy helps both readability and SEO.
39
+ - Include at least one data point, case study, or concrete example per section. Abstract advice without evidence is forgettable.
40
+ - Use bullet points and numbered lists for scannable content within sections.
41
+ - Keep paragraphs to 2-4 sentences maximum. Long paragraphs cause reader fatigue on screen.
42
+
43
+ ## Writing Guidelines
44
+
45
+ - **Write in first person.** Personal experience and professional expertise are what give LinkedIn Articles authority. "In my experience" is more compelling than "It is generally recommended."
46
+ - **Headline must balance SEO and curiosity.** Include the primary keyword naturally. Good: "Why Most B2B Content Strategies Fail (And 5 Ways to Fix Yours)." Bad: "Thoughts on Marketing."
47
+ - Front-load value in the introduction. The first 2-3 sentences appear as the article preview in the LinkedIn feed. They must create a compelling reason to click through.
48
+ - Use subheadings that are informative, not clever. "How to Structure Your First 90 Days" is better than "The Beginning." Readers scan subheadings to decide whether to read the full article.
49
+ - Every section should answer the question "So what?" Give the reader a reason to care and something to do with the information.
50
+ - Include specific numbers, frameworks, or step-by-step processes. Vague advice ("be more strategic") is worthless. Specific advice ("allocate 30% of your budget to X, track Y metric weekly") is actionable.
51
+ - Close with a single, strong CTA. Do not scatter multiple calls to action throughout. One ask at the end: a question, a share prompt, or a link to related content.
52
+ - Keep total length between 1,500-2,000 words. Under 1,000 feels thin for an article format. Over 2,500 causes completion rate drop-off.
53
+
54
+ ## Output Format
55
+
56
+ ```
57
+ === HEADLINE ===
58
+ [SEO-optimized headline — 60-100 characters optimal, max 220. Front-load primary keyword.]
59
+
60
+ === COVER IMAGE ===
61
+ [Description of the cover image concept — relevant, not generic stock]
62
+
63
+ === INTRO ===
64
+ [Opening hook — 2-3 sentences that create urgency or curiosity]
65
+
66
+ [Problem statement — what challenge or gap this article addresses]
67
+
68
+ [Preview — what the reader will learn or gain by reading]
69
+
70
+ === SECTION 1: [Subheading] ===
71
+ [Narrative, data, or example — 250-400 words]
72
+ [Concrete takeaway from this section]
73
+
74
+ === SECTION 2: [Subheading] ===
75
+ [Narrative, data, or example — 250-400 words]
76
+ [Concrete takeaway from this section]
77
+
78
+ === SECTION 3: [Subheading] ===
79
+ [Narrative, data, or example — 250-400 words]
80
+ [Concrete takeaway from this section]
81
+
82
+ === SECTION 4: [Subheading] (optional) ===
83
+ [Narrative, data, or example — 250-400 words]
84
+ [Concrete takeaway from this section]
85
+
86
+ === CONCLUSION ===
87
+ [Synthesis — the single most important insight from the article, 100-200 words]
88
+
89
+ === CTA ===
90
+ [One clear call to action — question for comments, share prompt, or link to related content]
91
+ ```
92
+
93
+ ## Quality Criteria
94
+
95
+ - [ ] Headline is 60-100 characters, front-loads the primary keyword, and creates curiosity
96
+ - [ ] Introduction establishes the problem and previews the article's value within the first 3 sentences
97
+ - [ ] Article contains 3-5 body sections, each with a clear H2 subheading
98
+ - [ ] Each section includes at least one concrete example, data point, or case study
99
+ - [ ] Each section ends with an actionable takeaway the reader can implement
100
+ - [ ] Total word count is between 1,500-2,000 words
101
+ - [ ] Paragraphs are 2-4 sentences maximum
102
+ - [ ] Article is written in first person with professional authority
103
+ - [ ] Conclusion synthesizes one memorable insight, not just a summary of points
104
+ - [ ] CTA is a single, clear ask at the end of the article
105
+
106
+ ## Anti-Patterns
107
+
108
+ - **Vague, keyword-stuffed headlines** — "Thoughts on Innovation and Digital Transformation in 2024" says nothing specific and will be ignored. Headlines must promise a concrete benefit or insight.
109
+ - **No subheadings** — Long-form content without visual hierarchy is a wall of text. Readers scan subheadings to decide whether to invest time reading.
110
+ - **Abstract advice without evidence** — "Be more strategic" or "Focus on value" without specific examples, data, or frameworks is forgettable and unactionable.
111
+ - **Corporate jargon** — "Leveraging synergies to drive holistic transformation" alienates readers. Write in plain, direct language.
112
+ - **Burying the value** — If the most useful insight is in paragraph 12, most readers will never reach it. Front-load value and structure for scanning.
113
+ - **Multiple scattered CTAs** — Asking readers to like, share, comment, subscribe, visit your website, and download a PDF dilutes every ask. Pick one primary CTA.
114
+ - **Generic stock cover images** — A handshake photo or a lightbulb clipart signals low effort. Use a relevant, custom visual.
115
+ - **Under 1,000 words** — An article that is too short feels like it should have been a post. The article format implies depth and substance.
116
+ - **No line breaks or formatting** — Dense paragraphs of 6+ sentences cause reader fatigue. Use short paragraphs, bullets, and whitespace.
@@ -0,0 +1,121 @@
1
+ ---
2
+ name: "LinkedIn Post"
3
+ platform: "linkedin"
4
+ content_type: "post"
5
+ description: "Text posts and document carousels optimized for professional engagement, dwell time, and comment-driven reach"
6
+ whenToUse: |
7
+ Creating agents that produce LinkedIn posts, text updates, or document carousels for LinkedIn.
8
+ constraints:
9
+ post_max_chars: 3000
10
+ post_visible_chars: 210
11
+ hashtags_max: 5
12
+ recommended_hashtags: "3-5"
13
+ carousel_max_slides: 300
14
+ recommended_slides: "10-15"
15
+ max_posts_per_day: 1
16
+ version: "1.0.0"
17
+ ---
18
+
19
+ ## Platform Rules
20
+
21
+ - Posts with external links in the body receive approximately 3x less reach. The LinkedIn algorithm actively deprioritizes outbound traffic. Always use the "link in comments" approach.
22
+ - Comments are weighted far more heavily than reactions. Long, substantive comments signal valuable content to the algorithm. Questions drive 2x more comments than statements.
23
+ - The first 60 minutes are critical. Engagement velocity in this window determines whether the post expands beyond your initial 5-10% network reach.
24
+ - Dwell time is an algorithmic signal. Longer posts that keep people reading and scrolling get boosted in distribution.
25
+ - Document/carousel posts receive 2-3x more reach than text-only posts. The swipe interaction increases dwell time.
26
+ - The algorithm rewards creators who reply to every comment on their posts. Active comment sections signal quality.
27
+ - Avoid more than 1 post per day. Multiple daily posts compete against each other for your audience's attention and the algorithm may cannibalize your own reach.
28
+ - Best posting times: 7-9 AM or 12-1 PM on weekdays in your audience's time zone. Tuesday, Wednesday, and Thursday consistently outperform other days. Weekends see 50-70% engagement drops.
29
+ - Allow 18-24 hours between posts for maximum individual post distribution.
30
+
31
+ ## Content Structure
32
+
33
+ ### Text Post Structure
34
+
35
+ 1. **Hook (first 2 lines / ~210 characters)** — This is everything. The hook appears before the "see more" fold. Use a contrarian take, surprising stat, personal story opener, or bold claim that compels the tap.
36
+ 2. **Story/Context (2-3 short paragraphs)** — Personal experience, observation, or data that supports your point. Write in first person. Use short sentences and frequent line breaks (1-2 sentences per paragraph).
37
+ 3. **Insights/Lessons (3-5 bullet points)** — Actionable takeaways, numbered or bulleted. These are the save-worthy core of the post.
38
+ 4. **Takeaway (1-2 sentences)** — The one thing to remember.
39
+ 5. **CTA question** — A genuine question that invites conversation: "What's your experience with [topic]?" or "Agree or disagree?"
40
+ 6. **Hashtags (last line)** — 3-5 relevant hashtags, separated from the body text.
41
+
42
+ ### Document/Carousel Structure
43
+
44
+ - Hook slide with a bold statement or question.
45
+ - 10-15 slides with one idea per slide, 20-30 words maximum.
46
+ - Clean, readable design with large text and minimal clutter.
47
+ - CTA on the final slide directing comments, shares, or follows.
48
+ - Upload as PDF format.
49
+
50
+ ### Effective Post Formats
51
+
52
+ - **Storytelling**: "3 years ago, I [experience]. Here is what I learned..."
53
+ - **Thought leadership**: "Unpopular opinion: [contrarian take]. Here is why..."
54
+ - **Data-driven**: "[Surprising stat]. Here is what it means for [audience]..."
55
+ - **Lessons learned**: "I [did X] and discovered [Y]. The 5 biggest lessons:"
56
+ - **Before/After**: "Before: [old way]. After: [new insight]. The difference was [key lesson]."
57
+
58
+ ## Writing Guidelines
59
+
60
+ - **First person is mandatory.** Personal stories outperform generic advice on LinkedIn. "I learned" beats "One should learn."
61
+ - Write in short paragraphs of 1-2 sentences. A wall of text kills readability and dwell time.
62
+ - Front-load the hook. The first 210 characters (~2 lines on desktop) must compel the "see more" tap. If the hook does not create curiosity, urgency, or personal relevance, rewrite it.
63
+ - Ask a genuine question at the end. Not rhetorical, not generic. A specific question your audience can answer from their own experience.
64
+ - Tag only 2-3 people who will actually engage. Spam tagging 10+ people looks desperate and may trigger filters.
65
+ - Never put links in the post body. Post the content first, then add the link as the first comment. Or say "Link in comments" and drop it in a reply.
66
+ - Use 3-5 hashtags on the last line. Mix 1-2 broad industry tags with 2-3 niche/specific tags. Avoid generic hashtags like #motivation or #success.
67
+ - Do not place hashtags in the middle of post text. It breaks readability and looks unprofessional.
68
+
69
+ ## Output Format
70
+
71
+ ```
72
+ === HOOK ===
73
+ [First 2 lines — must work before the "see more" fold. Max ~210 characters. Contrarian take, surprising stat, or personal story opener.]
74
+
75
+ === BODY ===
76
+ [Story or context — 2-3 short paragraphs, first person, short sentences, frequent line breaks.]
77
+
78
+ [Transition to insights.]
79
+
80
+ === INSIGHTS ===
81
+ 1. [Actionable takeaway — one sentence]
82
+ 2. [Actionable takeaway — one sentence]
83
+ 3. [Actionable takeaway — one sentence]
84
+ 4. [Actionable takeaway — one sentence]
85
+ 5. [Actionable takeaway — one sentence]
86
+
87
+ === CTA ===
88
+ [One-line takeaway summary.]
89
+
90
+ [Genuine question to drive comments — specific, not generic.]
91
+
92
+ === HASHTAGS ===
93
+ #hashtag1 #hashtag2 #hashtag3 #hashtag4 #hashtag5
94
+ [3-5 hashtags on a separate final line]
95
+ ```
96
+
97
+ ## Quality Criteria
98
+
99
+ - [ ] Hook fits within ~210 characters and creates a compelling reason to tap "see more"
100
+ - [ ] Post is written in first person with a personal, authentic voice
101
+ - [ ] Paragraphs are 1-2 sentences long with line breaks between them
102
+ - [ ] Post contains 3-5 actionable, numbered or bulleted insights
103
+ - [ ] CTA is a genuine, specific question (not rhetorical or generic)
104
+ - [ ] No external links appear in the post body
105
+ - [ ] Hashtags are 3-5 total, placed on the last line, separated from the body
106
+ - [ ] No more than 2-3 people are tagged, and only those who will likely engage
107
+ - [ ] Total post length is under 3,000 characters
108
+ - [ ] Post delivers value worth commenting on, not just reacting to
109
+
110
+ ## Anti-Patterns
111
+
112
+ - **Links in post body** — Kills reach by approximately 3x. The algorithm deprioritizes posts that drive users off LinkedIn. Always use the "link in comments" approach.
113
+ - **Spam tagging** — Tagging 10+ people who did not ask to be tagged looks desperate, may trigger spam filters, and damages professional credibility.
114
+ - **Editing after posting** — Editing within the first 10 minutes can reset algorithmic distribution, destroying the critical early engagement window.
115
+ - **More than 1 post per day** — Posts compete against each other for your own audience's attention. The algorithm may suppress the second post.
116
+ - **Corporate jargon** — "Synergy," "leverage," "circle back," "at the end of the day" make content feel robotic and impersonal. Write like a human.
117
+ - **No line breaks** — A wall of text kills readability and dwell time. Use 1-2 sentence paragraphs with whitespace between them.
118
+ - **Posting on weekends** — Unless your audience is specifically active on weekends, reach drops 50-70% on Saturday and Sunday.
119
+ - **Generic motivational quotes** — Saturated content type that signals low effort and does not generate meaningful engagement.
120
+ - **Engagement pods** — LinkedIn actively detects and penalizes coordinated engagement groups. The short-term boost is not worth the long-term suppression risk.
121
+ - **Reposting without adding value** — "So true!" reshares get minimal engagement. Always add your own perspective, experience, or analysis.