@jaimevalasek/aioson 1.4.0 → 1.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (199) hide show
  1. package/CHANGELOG.md +31 -1
  2. package/LICENSE +661 -21
  3. package/README.md +3 -1
  4. package/docs/en/squad-dashboard.md +372 -0
  5. package/docs/openclaw-bridge.md +308 -0
  6. package/docs/pt/agentes.md +124 -10
  7. package/docs/pt/cenarios.md +46 -2
  8. package/docs/pt/comandos-cli.md +60 -1
  9. package/docs/pt/inicio-rapido.md +18 -2
  10. package/docs/pt/squad-dashboard.md +373 -0
  11. package/docs/testing/genome-2.0-matrix.md +5 -5
  12. package/docs/testing/genome-2.0-rollout.md +9 -9
  13. package/package.json +2 -2
  14. package/src/backup-local.js +74 -0
  15. package/src/cli.js +98 -0
  16. package/src/commands/backup-local-cmd.js +25 -0
  17. package/src/commands/runtime.js +242 -0
  18. package/src/commands/setup-context.js +7 -2
  19. package/src/commands/squad-daemon.js +209 -0
  20. package/src/commands/squad-dashboard.js +39 -0
  21. package/src/commands/squad-deploy.js +64 -0
  22. package/src/commands/squad-doctor.js +52 -0
  23. package/src/commands/squad-mcp.js +270 -0
  24. package/src/commands/squad-processes.js +56 -0
  25. package/src/commands/squad-recovery.js +42 -0
  26. package/src/commands/squad-roi.js +291 -0
  27. package/src/commands/squad-score.js +250 -0
  28. package/src/commands/squad-status.js +37 -1
  29. package/src/commands/squad-validate.js +62 -1
  30. package/src/commands/squad-webhook.js +160 -0
  31. package/src/commands/squad-worker.js +191 -0
  32. package/src/commands/squad-worktrees.js +75 -0
  33. package/src/commands/web-map.js +70 -0
  34. package/src/commands/web-scrape.js +71 -0
  35. package/src/constants.js +8 -0
  36. package/src/context-writer.js +45 -1
  37. package/src/i18n/messages/en.js +127 -1
  38. package/src/i18n/messages/es.js +117 -0
  39. package/src/i18n/messages/fr.js +117 -0
  40. package/src/i18n/messages/pt-BR.js +126 -1
  41. package/src/lib/webhook-server.js +328 -0
  42. package/src/mcp-connectors/registry.js +602 -0
  43. package/src/runtime-store.js +259 -2
  44. package/src/squad/external-session.js +180 -0
  45. package/src/squad/inter-squad.js +74 -0
  46. package/src/squad/recovery-context.js +201 -0
  47. package/src/squad/worktree-manager.js +114 -0
  48. package/src/squad-daemon.js +490 -0
  49. package/src/squad-dashboard/api.js +223 -0
  50. package/src/squad-dashboard/attachment-handler.js +93 -0
  51. package/src/squad-dashboard/context-monitor.js +157 -0
  52. package/src/squad-dashboard/execution-logs.js +115 -0
  53. package/src/squad-dashboard/hunk-review.js +209 -0
  54. package/src/squad-dashboard/metrics.js +133 -0
  55. package/src/squad-dashboard/process-monitor.js +125 -0
  56. package/src/squad-dashboard/renderer.js +858 -0
  57. package/src/squad-dashboard/server.js +232 -0
  58. package/src/squad-dashboard/styles.js +525 -0
  59. package/src/squad-dashboard/token-tracker.js +99 -0
  60. package/src/web.js +284 -0
  61. package/src/worker-runner.js +339 -0
  62. package/template/.aioson/agents/analyst.md +4 -0
  63. package/template/.aioson/agents/architect.md +4 -0
  64. package/template/.aioson/agents/dev.md +120 -11
  65. package/template/.aioson/agents/deyvin.md +8 -0
  66. package/template/.aioson/agents/neo.md +152 -0
  67. package/template/.aioson/agents/orache.md +17 -0
  68. package/template/.aioson/agents/orchestrator.md +26 -0
  69. package/template/.aioson/agents/product.md +60 -12
  70. package/template/.aioson/agents/qa.md +1 -0
  71. package/template/.aioson/agents/setup.md +63 -19
  72. package/template/.aioson/agents/sheldon.md +603 -0
  73. package/template/.aioson/agents/squad.md +191 -0
  74. package/template/.aioson/agents/tester.md +254 -0
  75. package/template/.aioson/agents/ux-ui.md +12 -0
  76. package/template/.aioson/config.md +6 -0
  77. package/template/.aioson/locales/en/agents/analyst.md +8 -0
  78. package/template/.aioson/locales/en/agents/architect.md +8 -0
  79. package/template/.aioson/locales/en/agents/dev.md +66 -7
  80. package/template/.aioson/locales/en/agents/deyvin.md +8 -0
  81. package/template/.aioson/locales/en/agents/neo.md +8 -0
  82. package/template/.aioson/locales/en/agents/orchestrator.md +26 -0
  83. package/template/.aioson/locales/en/agents/qa.md +49 -0
  84. package/template/.aioson/locales/en/agents/setup.md +2 -1
  85. package/template/.aioson/locales/en/agents/sheldon.md +340 -0
  86. package/template/.aioson/locales/en/agents/ux-ui.md +8 -0
  87. package/template/.aioson/locales/es/agents/analyst.md +8 -0
  88. package/template/.aioson/locales/es/agents/architect.md +8 -0
  89. package/template/.aioson/locales/es/agents/dev.md +66 -7
  90. package/template/.aioson/locales/es/agents/deyvin.md +8 -0
  91. package/template/.aioson/locales/es/agents/neo.md +48 -0
  92. package/template/.aioson/locales/es/agents/orchestrator.md +26 -0
  93. package/template/.aioson/locales/es/agents/qa.md +26 -0
  94. package/template/.aioson/locales/es/agents/setup.md +2 -1
  95. package/template/.aioson/locales/es/agents/sheldon.md +192 -0
  96. package/template/.aioson/locales/es/agents/squad.md +63 -0
  97. package/template/.aioson/locales/es/agents/ux-ui.md +8 -0
  98. package/template/.aioson/locales/fr/agents/analyst.md +8 -0
  99. package/template/.aioson/locales/fr/agents/architect.md +8 -0
  100. package/template/.aioson/locales/fr/agents/dev.md +66 -7
  101. package/template/.aioson/locales/fr/agents/deyvin.md +8 -0
  102. package/template/.aioson/locales/fr/agents/neo.md +48 -0
  103. package/template/.aioson/locales/fr/agents/orchestrator.md +26 -0
  104. package/template/.aioson/locales/fr/agents/qa.md +26 -0
  105. package/template/.aioson/locales/fr/agents/setup.md +2 -1
  106. package/template/.aioson/locales/fr/agents/sheldon.md +192 -0
  107. package/template/.aioson/locales/fr/agents/squad.md +63 -0
  108. package/template/.aioson/locales/fr/agents/ux-ui.md +8 -0
  109. package/template/.aioson/locales/pt-BR/agents/analyst.md +19 -0
  110. package/template/.aioson/locales/pt-BR/agents/architect.md +19 -0
  111. package/template/.aioson/locales/pt-BR/agents/dev.md +75 -12
  112. package/template/.aioson/locales/pt-BR/agents/deyvin.md +8 -0
  113. package/template/.aioson/locales/pt-BR/agents/neo.md +147 -0
  114. package/template/.aioson/locales/pt-BR/agents/orchestrator.md +26 -0
  115. package/template/.aioson/locales/pt-BR/agents/product.md +8 -3
  116. package/template/.aioson/locales/pt-BR/agents/qa.md +60 -0
  117. package/template/.aioson/locales/pt-BR/agents/setup.md +2 -1
  118. package/template/.aioson/locales/pt-BR/agents/sheldon.md +192 -0
  119. package/template/.aioson/locales/pt-BR/agents/squad.md +105 -0
  120. package/template/.aioson/locales/pt-BR/agents/ux-ui.md +8 -0
  121. package/template/.aioson/schemas/squad-blueprint.schema.json +21 -0
  122. package/template/.aioson/schemas/squad-manifest.schema.json +178 -1
  123. package/template/.aioson/skills/design/bold-editorial-ui/SKILL.md +205 -0
  124. package/template/.aioson/skills/design/bold-editorial-ui/references/art-direction.md +338 -0
  125. package/template/.aioson/skills/design/bold-editorial-ui/references/components.md +977 -0
  126. package/template/.aioson/skills/design/bold-editorial-ui/references/dashboards.md +218 -0
  127. package/template/.aioson/skills/design/bold-editorial-ui/references/design-tokens.md +326 -0
  128. package/template/.aioson/skills/design/bold-editorial-ui/references/motion.md +461 -0
  129. package/template/.aioson/skills/design/bold-editorial-ui/references/patterns.md +293 -0
  130. package/template/.aioson/skills/design/bold-editorial-ui/references/websites.md +352 -0
  131. package/template/.aioson/skills/design/clean-saas-ui/SKILL.md +210 -0
  132. package/template/.aioson/skills/design/clean-saas-ui/references/art-direction.md +319 -0
  133. package/template/.aioson/skills/design/clean-saas-ui/references/components.md +365 -0
  134. package/template/.aioson/skills/design/clean-saas-ui/references/dashboards.md +196 -0
  135. package/template/.aioson/skills/design/clean-saas-ui/references/design-tokens.md +244 -0
  136. package/template/.aioson/skills/design/clean-saas-ui/references/motion.md +235 -0
  137. package/template/.aioson/skills/design/clean-saas-ui/references/patterns.md +215 -0
  138. package/template/.aioson/skills/design/clean-saas-ui/references/websites.md +295 -0
  139. package/template/.aioson/skills/design/cognitive-core-ui/SKILL.md +55 -9
  140. package/template/.aioson/skills/design/cognitive-core-ui/references/art-direction.md +339 -0
  141. package/template/.aioson/skills/design/cognitive-core-ui/references/components.md +1 -1
  142. package/template/.aioson/skills/design/cognitive-core-ui/references/dashboards.md +100 -0
  143. package/template/.aioson/skills/design/cognitive-core-ui/references/design-tokens.md +43 -9
  144. package/template/.aioson/skills/design/cognitive-core-ui/references/motion.md +40 -0
  145. package/template/.aioson/skills/design/cognitive-core-ui/references/patterns.md +1 -1
  146. package/template/.aioson/skills/design/cognitive-core-ui/references/websites.md +99 -12
  147. package/template/.aioson/skills/design/warm-craft-ui/SKILL.md +209 -0
  148. package/template/.aioson/skills/design/warm-craft-ui/references/art-direction.md +324 -0
  149. package/template/.aioson/skills/design/warm-craft-ui/references/components.md +508 -0
  150. package/template/.aioson/skills/design/warm-craft-ui/references/dashboards.md +223 -0
  151. package/template/.aioson/skills/design/warm-craft-ui/references/design-tokens.md +374 -0
  152. package/template/.aioson/skills/design/warm-craft-ui/references/motion.md +356 -0
  153. package/template/.aioson/skills/design/warm-craft-ui/references/patterns.md +288 -0
  154. package/template/.aioson/skills/design/warm-craft-ui/references/websites.md +289 -0
  155. package/template/.aioson/skills/premium-visual-design/SKILL.md +83 -0
  156. package/template/.aioson/skills/premium-visual-design/components/agent-badge.md +92 -0
  157. package/template/.aioson/skills/premium-visual-design/components/dependency-node.md +102 -0
  158. package/template/.aioson/skills/premium-visual-design/components/mention-autocomplete.md +136 -0
  159. package/template/.aioson/skills/premium-visual-design/components/notification-center.md +136 -0
  160. package/template/.aioson/skills/premium-visual-design/components/review-action-bar.md +188 -0
  161. package/template/.aioson/skills/premium-visual-design/components/team-switcher.md +131 -0
  162. package/template/.aioson/skills/premium-visual-design/patterns/agent-message-thread.md +198 -0
  163. package/template/.aioson/skills/premium-visual-design/patterns/notification-panel.md +275 -0
  164. package/template/.aioson/skills/premium-visual-design/patterns/review-workflow-ui.md +234 -0
  165. package/template/.aioson/skills/premium-visual-design/patterns/task-dependency-graph.md +147 -0
  166. package/template/.aioson/skills/premium-visual-design/tokens/status-extended.md +142 -0
  167. package/template/.aioson/skills/squad/formats/catalog.json +15 -0
  168. package/template/.aioson/skills/squad/formats/content/blog-post.md +47 -0
  169. package/template/.aioson/skills/squad/formats/content/newsletter.md +47 -0
  170. package/template/.aioson/skills/squad/formats/creative/podcast-script.md +43 -0
  171. package/template/.aioson/skills/squad/formats/creative/video-script.md +41 -0
  172. package/template/.aioson/skills/squad/formats/social/instagram-feed.md +42 -0
  173. package/template/.aioson/skills/squad/formats/social/linkedin-post.md +42 -0
  174. package/template/.aioson/skills/squad/formats/social/tiktok.md +39 -0
  175. package/template/.aioson/skills/squad/formats/social/twitter-thread.md +39 -0
  176. package/template/.aioson/skills/squad/formats/social/youtube-long.md +47 -0
  177. package/template/.aioson/skills/squad/formats/social/youtube-shorts.md +39 -0
  178. package/template/.aioson/skills/squad/patterns/multi-platform-pattern.md +108 -0
  179. package/template/.aioson/skills/squad/patterns/persona-based-pattern.md +98 -0
  180. package/template/.aioson/skills/squad/patterns/pipeline-pattern.md +106 -0
  181. package/template/.aioson/skills/squad/patterns/review-loop-pattern.md +81 -0
  182. package/template/.aioson/skills/squad/references/checklist-templates.md +122 -0
  183. package/template/.aioson/skills/squad/references/executor-archetypes.md +123 -0
  184. package/template/.aioson/skills/squad/references/workflow-templates.md +169 -0
  185. package/template/.aioson/skills/static/debugging-protocol.md +42 -0
  186. package/template/.aioson/skills/static/git-worktrees.md +36 -0
  187. package/template/.aioson/tasks/implementation-plan.md +19 -0
  188. package/template/.aioson/tasks/squad-design.md +28 -0
  189. package/template/.aioson/tasks/squad-profile.md +48 -0
  190. package/template/.aioson/tasks/squad-review.md +61 -0
  191. package/template/.aioson/tasks/squad-task-decompose.md +66 -0
  192. package/template/.claude/commands/aioson/agent/neo.md +5 -0
  193. package/template/.claude/commands/aioson/agent/tester.md +5 -0
  194. package/template/.gemini/GEMINI.md +1 -0
  195. package/template/.gemini/commands/aios-neo.toml +4 -0
  196. package/template/.gemini/commands/aios-tester.toml +6 -0
  197. package/template/AGENTS.md +3 -0
  198. package/template/CLAUDE.md +5 -2
  199. package/template/OPENCODE.md +2 -0
@@ -0,0 +1,142 @@
1
+ # Status Extended Tokens
2
+
3
+ Extended state and status tokens for Squad Dashboard v3 inter-squad UI.
4
+
5
+ ## Agent & Task State Tokens
6
+
7
+ ```css
8
+ :root {
9
+ /* --- Blocked --- */
10
+ --state-blocked: #f87171;
11
+ --state-blocked-bg: rgba(248, 113, 113, 0.12);
12
+ --state-blocked-border: rgba(248, 113, 113, 0.30);
13
+
14
+ /* --- Ready --- */
15
+ --state-ready: #4ade80;
16
+ --state-ready-bg: rgba(74, 222, 128, 0.12);
17
+ --state-ready-border: rgba(74, 222, 128, 0.30);
18
+
19
+ /* --- Solo (no squad context) --- */
20
+ --state-solo: #8b8fa3;
21
+ --state-solo-bg: rgba(139, 143, 163, 0.12);
22
+ --state-solo-border: rgba(139, 143, 163, 0.25);
23
+
24
+ /* --- Auto (fully autonomous agent) --- */
25
+ --state-auto: #22d3ee;
26
+ --state-auto-bg: rgba(34, 211, 238, 0.12);
27
+ --state-auto-border: rgba(34, 211, 238, 0.30);
28
+
29
+ /* --- Human (human-in-the-loop) --- */
30
+ --state-human: #fbbf24;
31
+ --state-human-bg: rgba(251, 191, 36, 0.12);
32
+ --state-human-border: rgba(251, 191, 36, 0.30);
33
+
34
+ /* --- Review (awaiting review) --- */
35
+ --state-review: #c084fc;
36
+ --state-review-bg: rgba(192, 132, 252, 0.12);
37
+ --state-review-border: rgba(192, 132, 252, 0.30);
38
+
39
+ /* --- Running (animated pulse) --- */
40
+ --state-running: #6c8aff;
41
+ --state-running-bg: rgba(108, 138, 255, 0.12);
42
+
43
+ /* --- Idle --- */
44
+ --state-idle: #8b8fa3;
45
+ --state-idle-bg: rgba(139, 143, 163, 0.10);
46
+
47
+ /* --- Error --- */
48
+ --state-error: #f87171;
49
+ --state-error-bg: rgba(248, 113, 113, 0.12);
50
+
51
+ /* --- Done --- */
52
+ --state-done: #4ade80;
53
+ --state-done-bg: rgba(74, 222, 128, 0.10);
54
+ }
55
+ ```
56
+
57
+ ## Running Pulse Animation
58
+
59
+ Apply to indicators when `state = running`:
60
+
61
+ ```css
62
+ @keyframes state-pulse {
63
+ 0%, 100% { opacity: 1; }
64
+ 50% { opacity: 0.45; }
65
+ }
66
+
67
+ .state-dot-running {
68
+ background: var(--state-running);
69
+ animation: state-pulse 1.6s ease-in-out infinite;
70
+ }
71
+ ```
72
+
73
+ ## Agent Type Tokens
74
+
75
+ Used by `agent-badge` component.
76
+
77
+ | Type | Token | Color |
78
+ |------|-------|-------|
79
+ | `auto` | `--state-auto` | Cyan `#22d3ee` |
80
+ | `human` | `--state-human` | Amber `#fbbf24` |
81
+ | `solo` | `--state-solo` | Muted `#8b8fa3` |
82
+
83
+ ## Priority Tokens
84
+
85
+ ```css
86
+ :root {
87
+ --priority-critical: #f87171; /* red */
88
+ --priority-high: #fb923c; /* orange */
89
+ --priority-medium: #fbbf24; /* amber */
90
+ --priority-low: #8b8fa3; /* muted */
91
+ }
92
+ ```
93
+
94
+ ## Notification Type Tokens
95
+
96
+ Map event types to colors for notification icons:
97
+
98
+ | Event type | Token | Notes |
99
+ |-----------|-------|-------|
100
+ | `info` | `--accent` `#6c8aff` | General info |
101
+ | `warning` | `--warning` `#fbbf24` | Soft warning |
102
+ | `error` | `--danger` `#f87171` | Errors |
103
+ | `success` | `--success` `#4ade80` | Completions |
104
+ | `merge_conflict` | `--purple` `#c084fc` | Git conflicts |
105
+ | `context_warning` | `--warning` | Context at 85% |
106
+ | `context_critical` | `--danger` | Context at 95% |
107
+ | `task_completed` | `--success` | Task done |
108
+ | `task_needs_revision` | `--state-review` | Hunk rejected |
109
+ | `handoff` | `--accent` | Agent handoff |
110
+ | `decision` | `--cyan` `#22d3ee` | Decision recorded |
111
+
112
+ ## Usage
113
+
114
+ Reference tokens in component CSS. Always fall back gracefully:
115
+
116
+ ```css
117
+ .task-status-badge[data-status="blocked"] {
118
+ background: var(--state-blocked-bg);
119
+ color: var(--state-blocked);
120
+ border: 1px solid var(--state-blocked-border);
121
+ }
122
+ ```
123
+
124
+ Map exhaustive status values:
125
+
126
+ ```javascript
127
+ const STATE_TOKEN = {
128
+ blocked: 'blocked',
129
+ ready: 'ready',
130
+ solo: 'solo',
131
+ auto: 'auto',
132
+ human: 'human',
133
+ review: 'review',
134
+ running: 'running',
135
+ idle: 'idle',
136
+ error: 'error',
137
+ done: 'done',
138
+ pending: 'idle', // alias
139
+ active: 'running', // alias
140
+ completed:'done' // alias
141
+ };
142
+ ```
@@ -0,0 +1,15 @@
1
+ {
2
+ "version": "1.0.0",
3
+ "formats": [
4
+ { "slug": "instagram-feed", "title": "Instagram Feed Post", "category": "social", "platform": "Instagram", "file": "social/instagram-feed.md", "version": "1.0.0", "updated": "2026-03-24" },
5
+ { "slug": "youtube-long", "title": "YouTube Long-form Video", "category": "social", "platform": "YouTube", "file": "social/youtube-long.md", "version": "1.0.0", "updated": "2026-03-24" },
6
+ { "slug": "youtube-shorts", "title": "YouTube Shorts", "category": "social", "platform": "YouTube", "file": "social/youtube-shorts.md", "version": "1.0.0", "updated": "2026-03-24" },
7
+ { "slug": "linkedin-post", "title": "LinkedIn Post", "category": "social", "platform": "LinkedIn", "file": "social/linkedin-post.md", "version": "1.0.0", "updated": "2026-03-24" },
8
+ { "slug": "tiktok", "title": "TikTok Video", "category": "social", "platform": "TikTok", "file": "social/tiktok.md", "version": "1.0.0", "updated": "2026-03-24" },
9
+ { "slug": "twitter-thread", "title": "Twitter/X Thread", "category": "social", "platform": "Twitter/X", "file": "social/twitter-thread.md", "version": "1.0.0", "updated": "2026-03-24" },
10
+ { "slug": "blog-post", "title": "Blog Post", "category": "content", "platform": "Web", "file": "content/blog-post.md", "version": "1.0.0", "updated": "2026-03-24" },
11
+ { "slug": "newsletter", "title": "Email Newsletter", "category": "content", "platform": "Email", "file": "content/newsletter.md", "version": "1.0.0", "updated": "2026-03-24" },
12
+ { "slug": "podcast-script", "title": "Podcast Script", "category": "creative", "platform": "Audio", "file": "creative/podcast-script.md", "version": "1.0.0", "updated": "2026-03-24" },
13
+ { "slug": "video-script", "title": "Video Script", "category": "creative", "platform": "Video", "file": "creative/video-script.md", "version": "1.0.0", "updated": "2026-03-24" }
14
+ ]
15
+ }
@@ -0,0 +1,47 @@
1
+ # Format: Blog Post
2
+
3
+ > Platform: Web
4
+ > Version: 1.0.0
5
+ > Updated: 2026-03-24
6
+ > Category: content
7
+
8
+ ## Specs
9
+ - **Ideal length:** 1,500-2,500 words (SEO sweet spot)
10
+ - **Reading time:** 7-12 minutes
11
+ - **Meta description:** 150-160 characters
12
+ - **Title:** 55-60 characters for SERP display
13
+
14
+ ## Structure
15
+
16
+ ### Title
17
+ Include primary keyword. Use numbers, "how to", or power words for CTR.
18
+
19
+ ### Introduction (100-150 words)
20
+ Hook → context → promise. The reader should know what they'll learn and why it matters.
21
+
22
+ ### Body (H2/H3 sections)
23
+ - H2 for main sections, H3 for subsections
24
+ - Short paragraphs (2-3 sentences max)
25
+ - Lists and bullet points for scanability
26
+ - Internal links to related content
27
+
28
+ ### Conclusion
29
+ Summarize key points. Clear next action for the reader.
30
+
31
+ ## Best Practices
32
+ 1. Front-load value — don't save the best for last
33
+ 2. Use images/diagrams every 300-500 words
34
+ 3. Include a table of contents for posts > 2,000 words
35
+ 4. Answer the search intent in the first 200 words (featured snippet)
36
+
37
+ ## Anti-patterns
38
+ 1. Keyword stuffing or unnatural phrasing for SEO
39
+ 2. Generic introductions that could be on any article
40
+ 3. Missing meta description (search engines will auto-generate a bad one)
41
+
42
+ ## Quality Checklist
43
+ - [ ] Title includes primary keyword and is < 60 chars
44
+ - [ ] Meta description is 150-160 chars and compelling
45
+ - [ ] H2/H3 hierarchy is logical
46
+ - [ ] At least one image per 500 words
47
+ - [ ] Internal and external links present
@@ -0,0 +1,47 @@
1
+ # Format: Email Newsletter
2
+
3
+ > Platform: Email
4
+ > Version: 1.0.0
5
+ > Updated: 2026-03-24
6
+ > Category: content
7
+
8
+ ## Specs
9
+ - **Subject line:** 30-50 characters (mobile preview)
10
+ - **Preview text:** 40-90 characters
11
+ - **Body length:** 200-500 words (brief) or 800-1500 (deep dive)
12
+ - **Width:** Max 600px for email clients
13
+
14
+ ## Structure
15
+
16
+ ### Subject Line
17
+ Specific, curiosity-driven, personal. Avoid spam triggers (ALL CAPS, excessive punctuation).
18
+
19
+ ### Preview Text
20
+ Extends the subject line — not a repeat. Provides additional reason to open.
21
+
22
+ ### Body
23
+ - Lead with the most valuable insight
24
+ - One primary CTA (not three competing ones)
25
+ - Scannable: short paragraphs, bold key phrases, links
26
+ - Personal tone (write to one person, not an audience)
27
+
28
+ ### Footer
29
+ Unsubscribe link (required). Social links. Brief about section.
30
+
31
+ ## Best Practices
32
+ 1. Subject line determines open rate — test 2-3 variations
33
+ 2. Send on Tuesday-Thursday, 9-11am local time (test your audience)
34
+ 3. One CTA per email maximizes click-through rate
35
+ 4. Plain text sections outperform heavy HTML in many audiences
36
+
37
+ ## Anti-patterns
38
+ 1. Subject lines that don't match body content (destroys trust)
39
+ 2. Multiple competing CTAs diluting each other
40
+ 3. Image-heavy emails (many clients block images by default)
41
+
42
+ ## Quality Checklist
43
+ - [ ] Subject line is < 50 chars and specific
44
+ - [ ] Preview text complements (not repeats) the subject
45
+ - [ ] Single clear CTA
46
+ - [ ] Mobile-friendly layout
47
+ - [ ] Unsubscribe link present
@@ -0,0 +1,43 @@
1
+ # Format: Podcast Script
2
+
3
+ > Platform: Audio
4
+ > Version: 1.0.0
5
+ > Updated: 2026-03-24
6
+ > Category: creative
7
+
8
+ ## Specs
9
+ - **Duration:** 20-45 minutes (standard), 45-90 (deep dive)
10
+ - **Segments:** 3-5 per episode
11
+ - **Intro:** Max 60 seconds
12
+ - **Outro:** Max 30 seconds
13
+
14
+ ## Structure
15
+
16
+ ### Cold Open (0-30s)
17
+ Teaser clip or provocative question from the episode. No intro music yet.
18
+
19
+ ### Intro (30-60s)
20
+ Show name, host, topic preview. Brief sponsor read if applicable.
21
+
22
+ ### Segments
23
+ Each segment: topic introduction → discussion → key takeaway. Transitions between segments should feel natural.
24
+
25
+ ### Outro
26
+ Episode summary, preview of next episode, CTA (subscribe, review, share).
27
+
28
+ ## Best Practices
29
+ 1. Script the intro and transitions; improvise the discussions
30
+ 2. Each segment should work as a standalone clip for social media
31
+ 3. Name-drop the episode topic in the first 60 seconds (for podcast directories)
32
+ 4. Include timestamps in show notes
33
+
34
+ ## Anti-patterns
35
+ 1. Unscripted intros that ramble for 5+ minutes
36
+ 2. Inside jokes without context (alienates new listeners)
37
+ 3. Audio quality inconsistencies between host and guests
38
+
39
+ ## Quality Checklist
40
+ - [ ] Cold open hooks the listener immediately
41
+ - [ ] Each segment has a clear takeaway
42
+ - [ ] Transitions between segments are scripted
43
+ - [ ] Show notes with timestamps prepared
@@ -0,0 +1,41 @@
1
+ # Format: Video Script
2
+
3
+ > Platform: Video (generic)
4
+ > Version: 1.0.0
5
+ > Updated: 2026-03-24
6
+ > Category: creative
7
+
8
+ ## Specs
9
+ - **Duration:** Varies by purpose (30s ad, 3-5min explainer, 10-20min educational)
10
+ - **Script format:** Scene descriptions, dialogue/narration, visual notes
11
+
12
+ ## Structure
13
+
14
+ ### Scene Header
15
+ `INT/EXT — LOCATION — TIME` or simplified: `SCENE {N}: {description}`
16
+
17
+ ### Action Lines
18
+ Visual descriptions. What the viewer SEES. Present tense, active voice.
19
+
20
+ ### Dialogue/Narration
21
+ Character name or "NARRATOR" centered. Dialogue below. Parenthetical for tone.
22
+
23
+ ### Visual Notes
24
+ `[B-ROLL: description]`, `[GRAPHIC: description]`, `[CUT TO: next scene]`
25
+
26
+ ## Best Practices
27
+ 1. Write for the ear, not the eye — read it aloud
28
+ 2. One idea per scene. If a scene has two ideas, split it.
29
+ 3. Include visual cues — the script should paint a picture
30
+ 4. Time it: ~150 words = 1 minute of speaking
31
+
32
+ ## Anti-patterns
33
+ 1. Wall-of-text narration without visual variety
34
+ 2. Scripts that read well but sound unnatural when spoken
35
+ 3. Missing visual direction (leaves too much to interpretation)
36
+
37
+ ## Quality Checklist
38
+ - [ ] Script reads naturally when spoken aloud
39
+ - [ ] Visual cues accompany every dialogue section
40
+ - [ ] Timing is estimated and realistic
41
+ - [ ] Hook is in the first 5 seconds
@@ -0,0 +1,42 @@
1
+ # Format: Instagram Feed Post
2
+
3
+ > Platform: Instagram
4
+ > Version: 1.0.0
5
+ > Updated: 2026-03-24
6
+ > Category: social
7
+
8
+ ## Specs
9
+ - **Max length:** 2,200 characters (caption)
10
+ - **Ideal length:** 150-300 characters for engagement, 800-1500 for educational
11
+ - **Aspect ratio:** 1:1 (feed), 4:5 (preferred for visibility), 1.91:1 (landscape)
12
+ - **Carousel:** Up to 10 slides
13
+
14
+ ## Structure
15
+
16
+ ### Hook
17
+ First line visible without "more" — must stop the scroll. Use pattern interrupts, bold claims, or relatable statements.
18
+
19
+ ### Body
20
+ - Educational: numbered tips or step-by-step
21
+ - Storytelling: conflict → lesson → transformation
22
+ - Carousel: 1 idea per slide, progressive reveal
23
+
24
+ ### Close
25
+ CTA aligned with goal: save (educational), share (relatable), comment (engagement), link in bio (conversion).
26
+
27
+ ## Best Practices
28
+ 1. First line is everything — it determines if caption is read
29
+ 2. Line breaks create visual breathing room (use them)
30
+ 3. Hashtags: 5-15 relevant ones, mix of sizes (avoid only mega-hashtags)
31
+ 4. Carousel posts get 1.4x more reach than single images
32
+
33
+ ## Anti-patterns
34
+ 1. Starting with "Hey guys!" or generic greetings (invisible in feed)
35
+ 2. Wall of text without line breaks
36
+ 3. Irrelevant or banned hashtags
37
+
38
+ ## Quality Checklist
39
+ - [ ] Hook stops the scroll (first line is compelling)
40
+ - [ ] CTA is clear and specific
41
+ - [ ] Hashtags are relevant and varied
42
+ - [ ] Image/carousel matches the caption narrative
@@ -0,0 +1,42 @@
1
+ # Format: LinkedIn Post
2
+
3
+ > Platform: LinkedIn
4
+ > Version: 1.0.0
5
+ > Updated: 2026-03-24
6
+ > Category: social
7
+
8
+ ## Specs
9
+ - **Max length:** 3,000 characters
10
+ - **Ideal length:** 800-1,500 characters
11
+ - **Visible without expand:** First ~210 characters
12
+
13
+ ## Structure
14
+
15
+ ### Hook (first 2 lines)
16
+ Bold statement, counterintuitive insight, or personal story opener. Must earn the "...see more" click.
17
+
18
+ ### Body
19
+ - Professional insight with personal angle
20
+ - Short paragraphs (1-2 sentences each)
21
+ - Use line breaks aggressively
22
+ - Data points or specific examples add credibility
23
+
24
+ ### Close
25
+ Question to drive comments, or clear takeaway. Avoid "agree?" — too generic.
26
+
27
+ ## Best Practices
28
+ 1. Write like a human, not a brand — personal voice wins
29
+ 2. One idea per post (not a listicle unless it's the format)
30
+ 3. Native content outperforms links (algorithm penalizes external links)
31
+ 4. Post images or documents (carousels) for 2-3x reach
32
+
33
+ ## Anti-patterns
34
+ 1. Corporate jargon without substance
35
+ 2. Humble-bragging disguised as advice
36
+ 3. External links in the main post (put in comments)
37
+
38
+ ## Quality Checklist
39
+ - [ ] First 2 lines are compelling enough to click "see more"
40
+ - [ ] Professional but human tone
41
+ - [ ] No external links in main body
42
+ - [ ] Ends with engagement trigger (question or takeaway)
@@ -0,0 +1,39 @@
1
+ # Format: TikTok Video
2
+
3
+ > Platform: TikTok
4
+ > Version: 1.0.0
5
+ > Updated: 2026-03-24
6
+ > Category: social
7
+
8
+ ## Specs
9
+ - **Duration:** 15-60 seconds (ideal), up to 10 minutes
10
+ - **Aspect ratio:** 9:16 (vertical)
11
+ - **Caption:** Max 4,000 characters, first 50 visible
12
+
13
+ ## Structure
14
+
15
+ ### Hook (0-1s)
16
+ Immediate visual hook. Text overlay with the promise. "Here's why..." or "POV:" format.
17
+
18
+ ### Core (1-45s)
19
+ Fast pacing, jump cuts, movement. One transformation or one revelation per video.
20
+
21
+ ### Payoff
22
+ Deliver on the hook's promise. Surprise endings boost shares and re-watches.
23
+
24
+ ## Best Practices
25
+ 1. Trending sounds dramatically boost reach
26
+ 2. Text overlays are mandatory (80%+ watch without sound)
27
+ 3. Reply to comments with videos (boosts engagement)
28
+ 4. Post 1-3 times daily for algorithm favor
29
+
30
+ ## Anti-patterns
31
+ 1. Over-produced content (authentic > polished on TikTok)
32
+ 2. Slow builds without early payoff signal
33
+ 3. Ignoring trends in favor of evergreen-only content
34
+
35
+ ## Quality Checklist
36
+ - [ ] Hook in first second
37
+ - [ ] Text overlays present
38
+ - [ ] Vertical format (9:16)
39
+ - [ ] Trending sound considered
@@ -0,0 +1,39 @@
1
+ # Format: Twitter/X Thread
2
+
3
+ > Platform: Twitter/X
4
+ > Version: 1.0.0
5
+ > Updated: 2026-03-24
6
+ > Category: social
7
+
8
+ ## Specs
9
+ - **Tweet length:** 280 characters per tweet
10
+ - **Thread length:** 5-15 tweets ideal
11
+ - **Media:** Images/GIFs boost engagement 2-3x
12
+
13
+ ## Structure
14
+
15
+ ### Tweet 1 (Hook)
16
+ Bold claim or curiosity gap. End with "A thread:" or equivalent to signal more value coming.
17
+
18
+ ### Body tweets (2 to N-1)
19
+ One idea per tweet. Use numbering (1/, 2/) for scanability. Mix text-only with visual tweets.
20
+
21
+ ### Final tweet
22
+ Summary + CTA (follow, retweet, bookmark). Link to relevant resource.
23
+
24
+ ## Best Practices
25
+ 1. Tweet 1 determines 80% of the thread's reach — optimize ruthlessly
26
+ 2. Each tweet should stand alone (people land mid-thread)
27
+ 3. Include images or examples every 3-4 tweets to break monotony
28
+ 4. Self-retweet the thread after 8-12 hours
29
+
30
+ ## Anti-patterns
31
+ 1. Threads that could be one tweet (don't stretch thin content)
32
+ 2. Every tweet starting with the same structure
33
+ 3. Burying the value in tweet 8+ without enough hooks
34
+
35
+ ## Quality Checklist
36
+ - [ ] Tweet 1 is a standalone hook
37
+ - [ ] Each tweet delivers one clear idea
38
+ - [ ] Thread has visual variety (images, examples)
39
+ - [ ] Final tweet has CTA and summary
@@ -0,0 +1,47 @@
1
+ # Format: YouTube Long-form Video
2
+
3
+ > Platform: YouTube
4
+ > Version: 1.0.0
5
+ > Updated: 2026-03-24
6
+ > Category: social
7
+
8
+ ## Specs
9
+ - **Duration:** 8-20 minutes (sweet spot for monetization + retention)
10
+ - **Title:** Max 100 chars, ideal 50-70
11
+ - **Description:** First 150 chars visible, max 5,000
12
+ - **Thumbnail:** 1280x720px, max 2MB
13
+
14
+ ## Structure
15
+
16
+ ### Hook (0-3s)
17
+ Pattern interrupt, curiosity gap, or bold claim. The viewer decides to stay or leave in 3 seconds.
18
+
19
+ ### Context Bridge (3-15s)
20
+ Why the viewer should stay. Establish credibility and promise of value.
21
+
22
+ ### Value Delivery (main body)
23
+ Chapters with mini-hooks at transitions to prevent drop-off. Each chapter delivers on a specific promise.
24
+
25
+ ### CTA
26
+ Subscribe, like, comment prompt integrated naturally (not forced). Best placed after a value moment.
27
+
28
+ ### End Screen (last 20s)
29
+ Teaser for the next video. Visual end screen elements.
30
+
31
+ ## Best Practices
32
+ 1. Script the first 30 seconds word-for-word
33
+ 2. Use chapters (timestamps) for SEO and navigation
34
+ 3. Thumbnail: one focal point, max 3-4 words, readable at 120px width
35
+ 4. Title creates curiosity without misleading (clickbait kills trust)
36
+
37
+ ## Anti-patterns
38
+ 1. "Hey guys, welcome back to my channel..." (instant drop-off)
39
+ 2. Intros longer than 15 seconds
40
+ 3. Thumbnails with cluttered text or low contrast
41
+
42
+ ## Quality Checklist
43
+ - [ ] Hook is scripted and compelling (first 3 seconds)
44
+ - [ ] Title creates genuine curiosity
45
+ - [ ] Thumbnail is readable at mobile size
46
+ - [ ] Chapters/timestamps are defined
47
+ - [ ] Description includes keywords and links
@@ -0,0 +1,39 @@
1
+ # Format: YouTube Shorts
2
+
3
+ > Platform: YouTube
4
+ > Version: 1.0.0
5
+ > Updated: 2026-03-24
6
+ > Category: social
7
+
8
+ ## Specs
9
+ - **Duration:** Max 60 seconds, ideal 15-45s
10
+ - **Aspect ratio:** 9:16 (vertical)
11
+ - **Title:** Short, hashtag-friendly
12
+
13
+ ## Structure
14
+
15
+ ### Hook (0-1s)
16
+ Immediate visual or verbal hook. No intro, no greeting — start with the payoff or the tension.
17
+
18
+ ### Core (1-45s)
19
+ One idea, one message. Fast pacing, cuts every 2-3 seconds. Text overlays for silent viewers.
20
+
21
+ ### Loop Point
22
+ End connects visually or thematically to the beginning to encourage re-watches.
23
+
24
+ ## Best Practices
25
+ 1. Start mid-action or mid-sentence
26
+ 2. Text on screen for accessibility and silent viewing
27
+ 3. Trending sounds boost discoverability
28
+ 4. #Shorts in title or description
29
+
30
+ ## Anti-patterns
31
+ 1. Slow starts or countdowns
32
+ 2. Horizontal content cropped to vertical
33
+ 3. Asking to subscribe before delivering value
34
+
35
+ ## Quality Checklist
36
+ - [ ] Opens with immediate hook (no greeting)
37
+ - [ ] Single clear message
38
+ - [ ] Viewable without audio (text overlays)
39
+ - [ ] Under 60 seconds