@synap-core/workspace-templates 0.12.0 → 0.24.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 (237) hide show
  1. package/README.md +509 -0
  2. package/automations/bookmark-enrichment.automation.json +321 -0
  3. package/automations/github-pr-events.automation.json +505 -0
  4. package/automations/mail-feed.automation.json +86 -0
  5. package/automations/ship-a-change-checks-green.automation.json +106 -0
  6. package/automations/ship-a-change-checks-red.automation.json +106 -0
  7. package/automations/ship-a-change-deployed.automation.json +56 -0
  8. package/automations/ship-a-change-pr-merged.automation.json +110 -0
  9. package/automations/ship-a-change-pr-opened.automation.json +104 -0
  10. package/automations/url-bookmark-capture.automation.json +132 -0
  11. package/capabilities/agency-skills.capability.json +157 -0
  12. package/capabilities/apify.capability.json +265 -0
  13. package/capabilities/apollo.capability.json +120 -0
  14. package/capabilities/arch-backend.capability.json +97 -0
  15. package/capabilities/arch-client-intelligence.capability.json +401 -0
  16. package/capabilities/backblaze-b2.capability.json +205 -0
  17. package/capabilities/cal-com.capability.json +266 -0
  18. package/capabilities/canva.capability.json +274 -0
  19. package/capabilities/claude-code-routines.capability.json +172 -0
  20. package/capabilities/claude-managed-agents.capability.json +215 -0
  21. package/capabilities/client-comms-report.capability.json +246 -0
  22. package/capabilities/content-idea-to-production.capability.json +29 -0
  23. package/capabilities/datagouv.capability.json +315 -0
  24. package/capabilities/discord-bot.capability.json +157 -0
  25. package/capabilities/dropbox.capability.json +281 -0
  26. package/capabilities/exa.capability.json +109 -0
  27. package/capabilities/fal-ai.capability.json +83 -0
  28. package/capabilities/fal-media-lab.capability.json +158 -0
  29. package/capabilities/fireflies.capability.json +191 -0
  30. package/capabilities/freellmapi.capability.json +114 -0
  31. package/capabilities/generic-apikey.capability.json +92 -0
  32. package/capabilities/github-merge.capability.json +99 -0
  33. package/capabilities/github-read.capability.json +325 -0
  34. package/capabilities/governance-tighten-recommender.capability.json +81 -0
  35. package/capabilities/jev.capability.json +226 -0
  36. package/capabilities/lead-conversion-enrollment.capability.json +246 -0
  37. package/capabilities/mail-feed.capability.json +277 -0
  38. package/capabilities/mailgun.capability.json +52 -0
  39. package/capabilities/nango-google.capability.json +639 -0
  40. package/capabilities/notion.capability.json +417 -0
  41. package/capabilities/omniroute.capability.json +137 -0
  42. package/capabilities/posthog-analytics.capability.json +258 -0
  43. package/capabilities/postiz.capability.json +467 -0
  44. package/capabilities/proactive-digest.capability.json +190 -0
  45. package/capabilities/proton.capability.json +288 -0
  46. package/capabilities/replicate-rvm.capability.json +97 -0
  47. package/capabilities/research-methods.capability.json +57 -0
  48. package/capabilities/shopify.capability.json +395 -0
  49. package/capabilities/slack.capability.json +369 -0
  50. package/capabilities/stripe.capability.json +1496 -0
  51. package/capabilities/telegram-bridge.capability.json +56 -0
  52. package/capabilities/treg.capability.json +102 -0
  53. package/capabilities/unipile-linkedin.capability.json +494 -0
  54. package/capabilities/vercel.capability.json +424 -0
  55. package/dist/define-DqoItRiR.d.ts +1370 -0
  56. package/dist/index.d.ts +174 -900
  57. package/dist/index.js +26447 -24075
  58. package/dist/index.js.map +1 -1
  59. package/dist/wire.d.ts +222 -0
  60. package/dist/wire.js +77 -0
  61. package/dist/wire.js.map +1 -0
  62. package/package.json +27 -4
  63. package/retired.yaml +136 -0
  64. package/skills/app-factory-build-slice/SKILL.md +70 -0
  65. package/skills/app-factory-build-slice.catalog.json +17 -0
  66. package/skills/app-factory-design-canvas/SKILL.md +96 -0
  67. package/skills/app-factory-design-canvas.catalog.json +17 -0
  68. package/skills/app-factory-design-review/SKILL.md +105 -0
  69. package/skills/app-factory-design-review.catalog.json +18 -0
  70. package/skills/app-factory-research/SKILL.md +123 -0
  71. package/skills/app-factory-research.catalog.json +17 -0
  72. package/skills/bookmark-enrichment/SKILL.md +40 -0
  73. package/skills/carousel-format/carousel-format.skill.json +18 -0
  74. package/skills/collage-broll/collage-broll.skill.json +20 -0
  75. package/skills/content-taste/content-taste.skill.json +18 -0
  76. package/skills/creative-director/creative-director.skill.json +18 -0
  77. package/skills/design-critique/SKILL.md +138 -0
  78. package/skills/design-critique.catalog.json +12 -0
  79. package/skills/designing-with-real-components/SKILL.md +140 -0
  80. package/skills/designing-with-real-components.catalog.json +12 -0
  81. package/skills/edit-loop/edit-loop.skill.json +25 -0
  82. package/skills/facecam-edit/facecam-edit.skill.json +24 -0
  83. package/skills/mapping-the-server/SKILL.md +54 -0
  84. package/skills/math-explainer-manimgx/math-explainer-manimgx.skill.json +20 -0
  85. package/skills/motion-quality-gates/motion-quality-gates.skill.json +20 -0
  86. package/skills/open-design-edit/open-design-edit.skill.json +24 -0
  87. package/skills/reading-client-progress/SKILL.md +65 -0
  88. package/skills/routing-to-channels/SKILL.md +54 -0
  89. package/skills/stellar-scf-grants-advisor/ASSOCIATE-CHEATSHEET.md +133 -0
  90. package/skills/stellar-scf-grants-advisor/ASSOCIATE-ONBOARDING-GUIDE.md +761 -0
  91. package/skills/stellar-scf-grants-advisor/CLIENT-FAQ.md +181 -0
  92. package/skills/stellar-scf-grants-advisor/PARTNER-HANDOVER.md +130 -0
  93. package/skills/stellar-scf-grants-advisor/SKILL.md +102 -0
  94. package/skills/stellar-scf-grants-advisor/examples/README.md +43 -0
  95. package/skills/stellar-scf-grants-advisor/examples/chat-summary-templates.md +158 -0
  96. package/skills/stellar-scf-grants-advisor/examples/corpus-comparable-rows.md +136 -0
  97. package/skills/stellar-scf-grants-advisor/examples/q10-team-rewrites.md +109 -0
  98. package/skills/stellar-scf-grants-advisor/examples/q2-description-rewrites.md +88 -0
  99. package/skills/stellar-scf-grants-advisor/examples/q6-integration-rewrites.md +107 -0
  100. package/skills/stellar-scf-grants-advisor/examples/tranche-structures.md +176 -0
  101. package/skills/stellar-scf-grants-advisor/reference/01-methodology.md +96 -0
  102. package/skills/stellar-scf-grants-advisor/reference/02-scoring-framework.md +199 -0
  103. package/skills/stellar-scf-grants-advisor/reference/03-rejection-patterns.md +241 -0
  104. package/skills/stellar-scf-grants-advisor/reference/04-winner-patterns.md +120 -0
  105. package/skills/stellar-scf-grants-advisor/reference/05-comeback-patterns.md +92 -0
  106. package/skills/stellar-scf-grants-advisor/reference/06-budget-benchmarks.md +125 -0
  107. package/skills/stellar-scf-grants-advisor/reference/07-integration-list.md +147 -0
  108. package/skills/stellar-scf-grants-advisor/reference/08-abstract-fields.md +258 -0
  109. package/skills/stellar-scf-grants-advisor/reference/09-build-fields.md +259 -0
  110. package/skills/stellar-scf-grants-advisor/reference/10-corpus-winners.md +135 -0
  111. package/skills/stellar-scf-grants-advisor/reference/11-corpus-rejects.md +267 -0
  112. package/skills/stellar-scf-grants-advisor/reference/12-client-communication.md +131 -0
  113. package/skills/stellar-scf-grants-advisor/reference/13-excel-output-spec.md +199 -0
  114. package/skills/stellar-scf-grants-advisor/reference/14-worked-examples.md +160 -0
  115. package/skills/stellar-scf-grants-advisor/templates/abstract-review-builder.py +253 -0
  116. package/skills/stellar-scf-grants-advisor/templates/build-review-builder.py +213 -0
  117. package/skills/video-direction/video-direction.skill.json +20 -0
  118. package/skills/video-style-vocabulary/video-style-vocabulary.skill.json +20 -0
  119. package/skills/video-toolbox/video-toolbox.skill.json +20 -0
  120. package/src/__fixtures__/lifecycle-presets.flat-before.json +205 -0
  121. package/src/agency-os.yaml +122 -0
  122. package/src/agent-os-skill-slugs.test.ts +65 -0
  123. package/src/apify-social-reader.test.ts +317 -0
  124. package/src/base.yaml +85 -39
  125. package/src/blockchain-ecosystem.yaml +1 -0
  126. package/src/brand-library.yaml +525 -14
  127. package/src/builder-dev-fold.template.test.ts +113 -0
  128. package/src/builder.yaml +779 -91
  129. package/src/business-model-catalog-description.test.ts +47 -0
  130. package/src/business-model-grp.template.test.ts +214 -0
  131. package/src/business-model.yaml +296 -49
  132. package/src/catalog-safety.test.ts +198 -0
  133. package/src/catalog.template-items.test.ts +75 -0
  134. package/src/catalog.ts +66 -2
  135. package/src/concept-guard.test.ts +28 -8
  136. package/src/concept-guard.ts +2 -2
  137. package/src/content-creation.template.test.ts +52 -0
  138. package/src/content-creation.yaml +192 -0
  139. package/src/content-os.edit-loop.template.test.ts +210 -0
  140. package/src/content-os.publish-due-posts.template.test.ts +261 -0
  141. package/src/content-os.template.test.ts +349 -0
  142. package/src/content-os.video-takes.template.test.ts +338 -0
  143. package/src/content-os.work-a-take.template.test.ts +125 -0
  144. package/src/content-os.yaml +1873 -39
  145. package/src/content-studio-retired.template.test.ts +82 -0
  146. package/src/corpus-flow-validity.test.ts +4 -5
  147. package/src/crm-absorbs-outreach.template.test.ts +117 -0
  148. package/src/crm-build-plan.template.test.ts +128 -0
  149. package/src/crm-lists.template.test.ts +96 -0
  150. package/src/crm-messages-cadence.template.test.ts +246 -0
  151. package/src/crm-one-send-door.template.test.ts +65 -0
  152. package/src/crm.yaml +1563 -181
  153. package/src/decisions-wave.template.test.ts +186 -0
  154. package/src/define.ts +146 -17
  155. package/src/design-to-implementation.template.test.ts +94 -0
  156. package/src/domain-template-type.test.ts +75 -0
  157. package/src/ecosystem.yaml +27 -66
  158. package/src/enterprise-os.yaml +10 -134
  159. package/src/facecam-edit.audio-studio.test.ts +188 -0
  160. package/src/fal-generate-image.test.ts +200 -0
  161. package/src/fal-media-lab-pod-files.test.ts +180 -0
  162. package/src/finance.yaml +254 -1
  163. package/src/foundation.yaml +78 -38
  164. package/src/frame-host-modules.d.mts +6 -0
  165. package/src/frame-host-modules.mjs +58 -0
  166. package/src/generate.mjs +9 -3
  167. package/src/github-merge.test.ts +210 -0
  168. package/src/grants.yaml +46 -17
  169. package/src/hr.yaml +39 -6
  170. package/src/index.ts +36 -1
  171. package/src/intent.test.ts +161 -0
  172. package/src/internal-runbook.yaml +19 -1
  173. package/src/jev.test.ts +356 -0
  174. package/src/legal.yaml +33 -1
  175. package/src/life-os.yaml +51 -240
  176. package/src/lifecycle-coverage.test.ts +124 -0
  177. package/src/lifecycle-declarations.test.ts +252 -0
  178. package/src/lifecycle-presets.test.ts +468 -0
  179. package/src/lifecycle-presets.ts +494 -0
  180. package/src/lifecycle-stuck.test.ts +46 -0
  181. package/src/lifecycle-waits.parity.test.ts +319 -0
  182. package/src/marketing.yaml +108 -4
  183. package/src/meetings-knowledge.yaml +18 -0
  184. package/src/networking.yaml +23 -2
  185. package/src/operations.yaml +304 -4
  186. package/src/pipeline-views.template.test.ts +88 -0
  187. package/src/playbook-goal-placeholders.test.ts +57 -0
  188. package/src/postiz-contract.test.ts +134 -0
  189. package/src/presentation-declarations.test.ts +174 -0
  190. package/src/process-contract.validate.test.ts +352 -0
  191. package/src/project-management.yaml +39 -740
  192. package/src/publish-body.d.mts +29 -0
  193. package/src/publish-body.mjs +74 -0
  194. package/src/publish-body.test.ts +74 -0
  195. package/src/publish-official-lib.test.ts +176 -0
  196. package/src/replicate-rvm.test.ts +504 -0
  197. package/src/research-base.yaml +119 -20
  198. package/src/research-decision.yaml +60 -3
  199. package/src/reserved-profile-slugs.test.ts +81 -0
  200. package/src/retired-goal-kinds.test.ts +52 -0
  201. package/src/role-reference-and-step-domain.test.ts +192 -0
  202. package/src/seed-obligation.test.ts +1 -6
  203. package/src/send-message-maps.test.ts +227 -0
  204. package/src/shared-role-ssot.test.ts +40 -2
  205. package/src/ship-a-change.template.test.ts +177 -0
  206. package/src/skills.test.ts +170 -0
  207. package/src/social.yaml +85 -27
  208. package/src/space-packages.freshness.test.ts +97 -0
  209. package/src/space-packages.generated.ts +40 -0
  210. package/src/space-packages.test.ts +125 -0
  211. package/src/space-packages.ts +73 -0
  212. package/src/start.test.ts +188 -0
  213. package/src/stripe-capability.test.ts +192 -0
  214. package/src/task-intents.test.ts +293 -0
  215. package/src/template-documents.test.ts +158 -0
  216. package/src/templates.ts +20907 -21464
  217. package/src/types.ts +475 -61
  218. package/src/unipile-linkedin-find-profile.test.ts +183 -0
  219. package/src/unipile-publish-post.test.ts +162 -0
  220. package/src/validate-flow.drift.test.ts +2 -3
  221. package/src/validate-flow.ts +22 -2
  222. package/src/validate-onboarding.test.ts +59 -0
  223. package/src/validate.test.ts +71 -4
  224. package/src/validate.ts +1416 -7
  225. package/src/wire-core.ts +231 -0
  226. package/src/wire.test.ts +159 -0
  227. package/src/wire.ts +107 -0
  228. package/views/bookmark-views-pack.view.json +39 -0
  229. package/views/event-views-pack.view.json +45 -0
  230. package/views/task-views-pack.view.json +53 -0
  231. package/src/agent-fleet.yaml +0 -1645
  232. package/src/business-developer.template.test.ts +0 -351
  233. package/src/business-developer.yaml +0 -860
  234. package/src/content-studio.yaml +0 -361
  235. package/src/dev-dashboard.yaml +0 -990
  236. package/src/outreach-comms.yaml +0 -486
  237. package/src/the-arch.yaml +0 -201
@@ -1,361 +0,0 @@
1
- # Content Studio workspace template
2
- # HyperFrames + Remotion video creation pipeline.
3
-
4
- meta:
5
- slug: content-studio
6
- domain: content
7
- name: Content Studio
8
- description: HyperFrames + Remotion video pipeline — script, design, compose, render, publish.
9
- icon: clapperboard
10
- color: violet
11
- tags: [content, video, creation, pipeline]
12
- isPublic: true
13
-
14
- workspace:
15
- name: Content Studio
16
- description: >
17
- Content creation pipeline — HyperFrames for rapid design, Remotion
18
- for production rendering. Create videos, carousels, reels, and social
19
- content from one workspace.
20
- proposalId: content-studio-v1
21
- subtype: content-studio
22
- visibility: pod_visible
23
- capabilities:
24
- - content.pipeline
25
- - content.compose
26
- - content.render
27
- - content.assets
28
- - content.templates
29
- sourceRoles:
30
- brand: consumer
31
- content: provider
32
-
33
- profiles:
34
- - slug: content-pipeline
35
- displayName: Pipeline
36
- icon: workflow
37
- color: violet
38
- description: "A content creation pipeline: script → design → compose → render."
39
- semanticSlug: content.pipeline
40
- properties:
41
- - slug: pipeline-kind
42
- label: Kind
43
- valueType: string
44
- inputType: select
45
- enumValues: [reel, carousel, demo, explainer, custom]
46
- constraints: { defaultValue: reel }
47
- - slug: pipeline-platform
48
- label: Platform
49
- valueType: string
50
- inputType: select
51
- enumValues: [instagram, tiktok, youtube, linkedin, x, all]
52
- constraints: { defaultValue: instagram }
53
- - slug: pipeline-mode
54
- label: Mode
55
- valueType: string
56
- inputType: select
57
- enumValues: [fast, quality, data]
58
- constraints: { defaultValue: quality }
59
- - slug: pipeline-script
60
- label: Script
61
- valueType: string
62
- inputType: textarea
63
- - slug: pipeline-stages
64
- label: Stages
65
- valueType: string
66
- inputType: textarea
67
-
68
- - slug: content-composition
69
- displayName: Composition
70
- icon: clapperboard
71
- color: blue
72
- description: A Remotion composition or HyperFrames sequence ready for rendering.
73
- semanticSlug: content.composition
74
- properties:
75
- - slug: composition-id
76
- label: Composition ID
77
- valueType: string
78
- inputType: text
79
- - slug: aspect-ratio
80
- label: Aspect Ratio
81
- valueType: string
82
- inputType: select
83
- enumValues: ["9:16", "16:9", "1:1", "4:5"]
84
- constraints: { defaultValue: "16:9" }
85
- - slug: duration-seconds
86
- label: Duration (seconds)
87
- valueType: number
88
- inputType: number
89
- - slug: hyperframes-meta
90
- label: HyperFrames JSON
91
- valueType: string
92
- inputType: textarea
93
- - slug: template-id
94
- label: Template
95
- valueType: string
96
- inputType: text
97
- - slug: pipeline-ref
98
- label: Pipeline
99
- valueType: string
100
- inputType: text
101
-
102
- - slug: content-asset
103
- displayName: Asset
104
- icon: image
105
- color: green
106
- description: "Media asset: image, video clip, audio track, font, or script."
107
- semanticSlug: content.asset
108
- properties:
109
- - slug: asset-kind
110
- label: Kind
111
- valueType: string
112
- inputType: select
113
- enumValues: [image, video, audio, font, script, other]
114
- - slug: source-kind
115
- label: Source
116
- valueType: string
117
- inputType: select
118
- enumValues: [uploaded, brand, generated]
119
- constraints: { defaultValue: uploaded }
120
- - slug: source-url
121
- label: URL
122
- valueType: string
123
- inputType: url
124
- - slug: brand-asset-ref
125
- label: Brand Asset Ref
126
- valueType: string
127
- inputType: text
128
- - slug: file-id
129
- label: File ID
130
- valueType: string
131
- inputType: text
132
- - slug: document-id
133
- label: Document ID
134
- valueType: string
135
- inputType: text
136
-
137
- - slug: render-job
138
- displayName: Render Job
139
- icon: play
140
- color: amber
141
- description: A render execution — queued, rendering, done, or failed.
142
- semanticSlug: content.render
143
- properties:
144
- - slug: job-status
145
- label: Status
146
- valueType: string
147
- inputType: select
148
- enumValues: [queued, rendering, done, failed]
149
- constraints: { defaultValue: queued }
150
- - slug: output-format
151
- label: Format
152
- valueType: string
153
- inputType: select
154
- enumValues: [mp4, gif, webm, mp3]
155
- constraints: { defaultValue: mp4 }
156
- - slug: output-url
157
- label: Output URL
158
- valueType: string
159
- inputType: url
160
- - slug: render-duration-ms
161
- label: Render Duration (ms)
162
- valueType: number
163
- inputType: number
164
- - slug: error-message
165
- label: Error
166
- valueType: string
167
- inputType: textarea
168
- - slug: composition-ref
169
- label: Composition
170
- valueType: string
171
- inputType: text
172
-
173
- - slug: content-template
174
- displayName: Template
175
- icon: layout-template
176
- color: pink
177
- description: Reusable video template — HyperFrames, Remotion, or hybrid.
178
- semanticSlug: content.template
179
- properties:
180
- - slug: template-kind
181
- label: Kind
182
- valueType: string
183
- inputType: select
184
- enumValues: [hyperframes, remotion, hybrid]
185
- constraints: { defaultValue: hyperframes }
186
- - slug: aspect-ratio
187
- label: Aspect Ratio
188
- valueType: string
189
- inputType: select
190
- enumValues: ["9:16", "16:9", "1:1", "4:5"]
191
- constraints: { defaultValue: "16:9" }
192
- - slug: template-status
193
- label: Status
194
- valueType: string
195
- inputType: select
196
- enumValues: [draft, approved, deprecated]
197
- constraints: { defaultValue: approved }
198
- - slug: template-config
199
- label: Config JSON
200
- valueType: string
201
- inputType: textarea
202
-
203
- views:
204
- - name: Pipelines
205
- slug: content-pipelines
206
- type: kanban
207
- scopeProfileSlug: content-pipeline
208
- description: Content creation pipelines by status.
209
- - name: Compositions
210
- slug: content-compositions
211
- type: grid
212
- scopeProfileSlug: content-composition
213
- description: Video compositions ready for rendering.
214
- - name: Assets
215
- slug: content-assets
216
- type: grid
217
- scopeProfileSlug: content-asset
218
- description: Media assets uploaded or generated.
219
- - name: Render Jobs
220
- slug: render-jobs
221
- type: table
222
- scopeProfileSlug: render-job
223
- description: Render queue and history.
224
- - name: Templates
225
- slug: content-templates
226
- type: grid
227
- scopeProfileSlug: content-template
228
- description: Reusable video templates.
229
-
230
- # App reference
231
- app:
232
- kind: native
233
- appId: contentStudio
234
- rendererType: native
235
- title: Content Studio
236
-
237
- layout:
238
- pinnedApps: [dashboard, data, brandLibrary]
239
- defaultView: Pipelines
240
- defaultApp: contentStudio
241
- sidebarItems:
242
- - kind: app
243
- appId: contentStudio
244
- label: Content Studio
245
- icon: clapperboard
246
- surface:
247
- kind: app
248
- appId: contentStudio
249
- rendererType: native
250
- placement: main
251
- displayMode: full
252
- title: Content Studio
253
- - kind: view
254
- viewName: Pipelines
255
- label: Pipelines
256
- icon: workflow
257
- - kind: view
258
- viewName: Compositions
259
- label: Compositions
260
- icon: clapperboard
261
- - kind: view
262
- viewName: Assets
263
- label: Assets
264
- icon: image
265
- - kind: view
266
- viewName: Render Jobs
267
- label: Renders
268
- icon: play
269
- - kind: view
270
- viewName: Templates
271
- label: Templates
272
- icon: layout-template
273
-
274
- entityLinks:
275
- - sourceProfileSlug: content-composition
276
- targetProfileSlug: content-pipeline
277
- type: belongs_to_pipeline
278
- label: Pipeline
279
- - sourceProfileSlug: render-job
280
- targetProfileSlug: content-composition
281
- type: renders
282
- label: Composition
283
- - sourceProfileSlug: content-asset
284
- targetProfileSlug: render-job
285
- type: used_in
286
- label: Render Job
287
- - sourceProfileSlug: content-asset
288
- targetProfileSlug: content-composition
289
- type: used_in
290
- label: Composition
291
-
292
- onboarding:
293
- goal: Capture how you actually produce video and motion content — your real pipelines, your reusable templates, and the assets you cut from — so the studio mirrors your production line, not a generic setup.
294
- framing: >
295
- THE PRODUCER: Act as a seasoned motion/video production lead who has shipped
296
- thousands of frames. This is a HyperFrames/Remotion render pipeline, NOT a
297
- publishing calendar — anchor on how work gets MADE: formats, aspect ratios,
298
- durations, and the templates that make output repeatable. Push for the shows
299
- and series they actually run, not one-off ideas. Pull voice and visual identity
300
- from Brand and target audience from Foundation so every piece lands on-brand.
301
- Be concrete about specs; a fuzzy "we make videos" helps no one.
302
- expertise:
303
- starters:
304
- - >
305
- Produce in BATCHES, not one-at-a-time. Setup — lighting, wardrobe, template
306
- loading, brand assets — is the real cost; shooting or composing five pieces
307
- in one session amortizes it. Propose a batch cadence (e.g. one shoot day →
308
- a month of cuts) rather than a per-video pipeline.
309
- - >
310
- The hook is 80% of the view. On a 9:16 feed the first 1–2 seconds decide
311
- whether the piece is watched at all, so it's worth more iteration than the
312
- rest combined. Propose a template whose title card / cold-open IS the hook,
313
- and treat the hook as its own reusable asset.
314
- - >
315
- Design every shoot for REPURPOSING before you roll. One long-form capture
316
- should yield the long cut, several vertical clips, and stills — but only if
317
- it's framed and shot with those crops in mind. Propose the repurpose chain
318
- up front so the raw footage is cut-once, use-many.
319
- blindSpots:
320
- - >
321
- The velocity-vs-quality tradeoff is a real dial, not a failing — a weekly
322
- show that's "good enough and on time" beats a cinematic piece that ships
323
- quarterly. If they're chasing polish on a high-cadence line, name the
324
- tradeoff and propose a quality bar that survives the schedule.
325
- - >
326
- No reusable templates = every video rebuilt from scratch, and brand drift
327
- creeps in. If they're producing on a cadence but have no locked
328
- intros/outros/lower-thirds, that's the gap — templates are what make output
329
- both fast AND on-brand. Surface it.
330
- - >
331
- Aspect ratio and platform are a production decision, not an export
332
- afterthought. Shooting 16:9 and cropping to 9:16 later loses the frame and
333
- the hook. If a pipeline's platform doesn't match how it's actually shot,
334
- flag the mismatch before it's baked into every render.
335
- bar: >
336
- The studio reads like a production LINE: recurring shows with locked specs,
337
- reusable templates that carry brand into every render, and asset sources feeding
338
- a batch-then-repurpose flow — so a producer could ship the next episode this week
339
- without reinventing the format or fighting brand drift.
340
- collect:
341
- - profileSlug: content-pipeline
342
- what: The recurring productions you run — the shows, series, or content lines that generate output on a cadence (e.g. weekly reels, product demos, explainer drops).
343
- cardinality: few
344
- keyFields: [pipeline-kind, pipeline-platform, pipeline-mode]
345
- - profileSlug: content-template
346
- what: The reusable HyperFrames/Remotion templates that make production repeatable — your title cards, lower-thirds, intros/outros, and full-video shells. These carry Brand voice and visual identity into every render.
347
- cardinality: several
348
- keyFields: [template-kind, aspect-ratio, template-status]
349
- - profileSlug: content-asset
350
- what: The asset sources you cut from — brand footage, stock, audio/music beds, and fonts. Note whether each comes from Brand, is uploaded, or is generated.
351
- cardinality: several
352
- keyFields: [asset-kind, source-kind, source-url]
353
- - profileSlug: content-composition
354
- what: Any compositions already in flight — specific videos being built, with their aspect ratio and duration, tied back to a pipeline.
355
- cardinality: few
356
- keyFields: [aspect-ratio, duration-seconds, pipeline-ref]
357
- openingQuestions:
358
- - "What do you actually produce on repeat — the shows or series, and for which platforms and aspect ratios?"
359
- - "Which motion templates do you reuse every time — intros, lower-thirds, outros — and are they HyperFrames, Remotion, or hybrid?"
360
- - "Where do your assets come from — Brand footage and fonts, uploaded clips, or AI-generated — and where do you pull music from?"
361
- doneWhen: at least one pipeline + one reusable template + one asset source captured.