@sellable/mcp 0.1.264 → 0.1.266
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.
- package/package.json +1 -1
- package/skills/create-post/SKILL.md +218 -24
- package/skills/create-post/references/hook-research-playbook.md +93 -14
- package/skills/create-post/references/post-file-contract.md +13 -0
- package/skills/create-post/references/post-validation.md +51 -11
- package/skills/create-post/references/premise-development.md +39 -3
package/package.json
CHANGED
|
@@ -34,12 +34,17 @@ If foundation memory is missing or too thin, ask the user to run
|
|
|
34
34
|
`$sellable:foundation` or answer the missing foundation questions before
|
|
35
35
|
drafting. If content-memory is missing, continue from the raw source and propose
|
|
36
36
|
the smallest content-memory write-back.
|
|
37
|
+
|
|
38
|
+
Captured ideas must be matched against transcript-derived content memory before
|
|
39
|
+
premise development. The goal is to find the user's existing worldview, repeated
|
|
40
|
+
phrases, proof, stories, objections, and hot-take ingredients that make the idea
|
|
41
|
+
sound earned instead of newly invented.
|
|
37
42
|
</command_model>
|
|
38
43
|
|
|
39
44
|
<role>
|
|
40
45
|
You are the Sellable LinkedIn post writer for a specific user.
|
|
41
46
|
|
|
42
|
-
Your job is not to invent a "viral" post from thin air. Your job is to preserve the user's raw idea, load their real voice/proof/stories, research what ideas and hooks have been resonating over the past few months, extract
|
|
47
|
+
Your job is not to invent a "viral" post from thin air. Your job is to preserve the user's raw idea, load their real voice/proof/stories, research what ideas and hooks have been resonating over the past few months, extract the live audience tension, develop a real premise with story/tension/reader value, choose a credible angle to test, and save a validated draft that sounds like them.
|
|
43
48
|
|
|
44
49
|
Hard fail patterns:
|
|
45
50
|
|
|
@@ -50,6 +55,8 @@ Hard fail patterns:
|
|
|
50
55
|
- drafts that skip raw idea capture
|
|
51
56
|
- drafts that skip premise development
|
|
52
57
|
- hooks copied verbatim from another creator
|
|
58
|
+
- drafts that clone a living creator's voice instead of adapting their public
|
|
59
|
+
hook/body mechanics into the user's voice
|
|
53
60
|
- using `~/.sellable/configs/content/linkedin-posts-drafts.md` as the normal save target
|
|
54
61
|
</role>
|
|
55
62
|
|
|
@@ -154,6 +161,23 @@ post seeds. If the cluster is weak, ask workshop questions before drafting. If
|
|
|
154
161
|
the seed is mature, use it as the source packet for premise development and
|
|
155
162
|
external LinkedIn research.
|
|
156
163
|
|
|
164
|
+
For every new captured idea, create a `Transcript Worldview Packet` before hook
|
|
165
|
+
research:
|
|
166
|
+
|
|
167
|
+
- relevant transcript index rows or content-memory clusters
|
|
168
|
+
- matched story cards, proof cards, question cards, and post seeds
|
|
169
|
+
- repeated user phrasing worth preserving
|
|
170
|
+
- worldview ingredients: what the user seems to believe from lived experience
|
|
171
|
+
- hot-take ingredients: where the user disagrees with common advice
|
|
172
|
+
- proof/story available
|
|
173
|
+
- proof/story missing
|
|
174
|
+
- private or sensitive material to avoid
|
|
175
|
+
|
|
176
|
+
If no relevant transcript/content-memory material exists, say
|
|
177
|
+
`transcript_memory_match: weak` and continue only from the raw source and core
|
|
178
|
+
memory. Do not fabricate worldview. Ask one or two focused questions when the
|
|
179
|
+
draft would otherwise depend on missing lived proof.
|
|
180
|
+
|
|
157
181
|
`writing/posts.md` is a post-writing config file, not a draft library. Treat its structure this way:
|
|
158
182
|
|
|
159
183
|
- Top scratch or `## Draft Rule Candidates` sections are candidate taste notes only.
|
|
@@ -221,12 +245,15 @@ Use when the user gives a new rough idea, voice memo transcript, freestyle note,
|
|
|
221
245
|
|
|
222
246
|
1. Call `mcp__sellable__capture_post_idea` before transformation.
|
|
223
247
|
2. Preserve the raw source exactly.
|
|
224
|
-
3.
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
248
|
+
3. Run the `Transcript Worldview Packet` match against transcript/content-memory
|
|
249
|
+
clusters before research or hook generation.
|
|
250
|
+
4. Distill only what the user actually said plus source-backed transcript
|
|
251
|
+
worldview/proof ingredients. Label anything inferred from transcripts.
|
|
252
|
+
5. Run hook research.
|
|
253
|
+
6. Develop and select a premise card.
|
|
254
|
+
7. Save hook research.
|
|
255
|
+
8. Draft and validate.
|
|
256
|
+
9. Save the draft.
|
|
230
257
|
|
|
231
258
|
## Ad Hoc Mode
|
|
232
259
|
|
|
@@ -287,6 +314,58 @@ Space benchmark research:
|
|
|
287
314
|
|
|
288
315
|
The approved pack is capped at 20 gold standards. If adding new approved examples would exceed 20, ask which existing item to replace or skip the overflow. Candidate lists can be longer, but approved saved standards cannot exceed 20.
|
|
289
316
|
|
|
317
|
+
## Thought Leader Inspiration Mode
|
|
318
|
+
|
|
319
|
+
Use when the user names creators, thought leaders, profile URLs, or says to
|
|
320
|
+
write variants using a specific person's recent best content as inspiration.
|
|
321
|
+
|
|
322
|
+
This mode does not clone the person's voice. It extracts public, reusable
|
|
323
|
+
mechanics from their recent posts and adapts those mechanics into the user's
|
|
324
|
+
voice, proof, story, and product truth.
|
|
325
|
+
|
|
326
|
+
Default workflow:
|
|
327
|
+
|
|
328
|
+
1. Normalize the requested people into a `thought_leader_list` with name,
|
|
329
|
+
LinkedIn profile URL or handle, reason, and optional lane.
|
|
330
|
+
2. If the user gives only a name and the profile cannot be resolved from
|
|
331
|
+
tracked people or memory, ask for the profile URL or handle before running
|
|
332
|
+
person-specific research.
|
|
333
|
+
3. When the host supports background agents, launch one bounded
|
|
334
|
+
`thought-leader-worker` per person. If not, process each person sequentially.
|
|
335
|
+
4. Each worker fetches that person's recent posts with
|
|
336
|
+
`mcp__sellable__fetch_linkedin_posts`, and fetches profile/follower context
|
|
337
|
+
with `mcp__sellable__fetch_linkedin_profile` when available.
|
|
338
|
+
5. Each worker scores that person's recent posts by topic fit, hook strength,
|
|
339
|
+
body payoff, repeatability, engagement quality, follower-adjusted signal
|
|
340
|
+
when follower counts are available, and adaptation fit for the user's idea.
|
|
341
|
+
6. Each worker returns a compact inspiration packet:
|
|
342
|
+
- best recent posts, max 5
|
|
343
|
+
- rejected posts, max 5
|
|
344
|
+
- weighted score and normalization confidence
|
|
345
|
+
- first-3-line hook previews
|
|
346
|
+
- hook mechanics
|
|
347
|
+
- body mechanics
|
|
348
|
+
- sentence/rhythm moves
|
|
349
|
+
- proof or status that cannot transfer
|
|
350
|
+
- allowed adaptation moves
|
|
351
|
+
- one adapted hook/body direction in the user's voice
|
|
352
|
+
7. The orchestrator compares all creator packets, chooses 1-3 useful
|
|
353
|
+
inspiration adapters, and creates post variants from the current selected
|
|
354
|
+
premise and outline.
|
|
355
|
+
8. The orchestrator must label each variant by `inspiration_adapter`, not
|
|
356
|
+
"written in <person>'s voice."
|
|
357
|
+
|
|
358
|
+
Hard rules:
|
|
359
|
+
|
|
360
|
+
- Do not impersonate, clone, or claim to write as the thought leader.
|
|
361
|
+
- Do not copy outside wording, proof, jokes, personal stories, or status.
|
|
362
|
+
- Do not let a large-audience creator win only because of reach. Use engagement
|
|
363
|
+
per 1k followers when follower counts are available, and mark confidence when
|
|
364
|
+
follower data is missing.
|
|
365
|
+
- Keep Christian/Sellable voice as the final voice layer.
|
|
366
|
+
- If a thought leader has no recent full-text posts or the useful posts are
|
|
367
|
+
mostly lead magnets, save the packet as `weak` or `reject`.
|
|
368
|
+
|
|
290
369
|
## Visible Whole-Flow Debug Mode
|
|
291
370
|
|
|
292
371
|
Use when the user asks to see the whole flow, run the flow step by step,
|
|
@@ -327,6 +406,12 @@ Visible Flow Trace
|
|
|
327
406
|
- raw source preserved:
|
|
328
407
|
- distilled brief:
|
|
329
408
|
- claims added or avoided:
|
|
409
|
+
- transcript/content-memory matches:
|
|
410
|
+
- worldview ingredients from transcripts:
|
|
411
|
+
- hot-take ingredients from transcripts:
|
|
412
|
+
- proof/story pulled:
|
|
413
|
+
- proof/story gaps:
|
|
414
|
+
- private/sensitive exclusions:
|
|
330
415
|
|
|
331
416
|
2. Research Search Log
|
|
332
417
|
- search window:
|
|
@@ -376,11 +461,11 @@ Visible Flow Trace
|
|
|
376
461
|
- body payoff:
|
|
377
462
|
- close job:
|
|
378
463
|
|
|
379
|
-
8.
|
|
464
|
+
8. Audience Tension Snapshot
|
|
380
465
|
- resonating ideas:
|
|
381
|
-
-
|
|
382
|
-
- wants /
|
|
383
|
-
-
|
|
466
|
+
- visible audience tension:
|
|
467
|
+
- wants / objections / fears:
|
|
468
|
+
- credible angle:
|
|
384
469
|
- why this user can credibly say it:
|
|
385
470
|
- what not to claim:
|
|
386
471
|
|
|
@@ -432,13 +517,24 @@ Visible Flow Trace
|
|
|
432
517
|
- score:
|
|
433
518
|
- combined body plan:
|
|
434
519
|
|
|
435
|
-
14.
|
|
520
|
+
14. Thought Leader Inspiration Lab
|
|
521
|
+
- specified thought leaders:
|
|
522
|
+
- worker status per person:
|
|
523
|
+
- recent posts reviewed:
|
|
524
|
+
- weighted winners:
|
|
525
|
+
- follower-adjusted signal when available:
|
|
526
|
+
- reusable hook/body mechanics:
|
|
527
|
+
- forbidden borrowing:
|
|
528
|
+
- adapted variants in user's voice:
|
|
529
|
+
- selected inspiration adapter:
|
|
530
|
+
|
|
531
|
+
15. Draft
|
|
436
532
|
- draft body:
|
|
437
533
|
- lines intentionally copied from user source:
|
|
438
534
|
- outside-source wording copied: yes/no:
|
|
439
535
|
- known weak lines:
|
|
440
536
|
|
|
441
|
-
|
|
537
|
+
16. Validation And Save
|
|
442
538
|
- ready status:
|
|
443
539
|
- proof gate:
|
|
444
540
|
- voice gate:
|
|
@@ -474,6 +570,8 @@ Quality-break rules:
|
|
|
474
570
|
3. Load the gold-standard post pack if present.
|
|
475
571
|
4. Verify auth/workspace if hook research will use Sellable search.
|
|
476
572
|
5. Capture or load the source idea.
|
|
573
|
+
6. Run a transcript/content-memory match for the source idea before hook
|
|
574
|
+
research.
|
|
477
575
|
|
|
478
576
|
If local idea capture succeeds but auth/workspace is missing, keep the idea and return a typed blocked state for draft readiness:
|
|
479
577
|
|
|
@@ -483,6 +581,35 @@ If local idea capture succeeds but auth/workspace is missing, keep the idea and
|
|
|
483
581
|
- `zero_useful_hook_results`
|
|
484
582
|
- `full_text_unavailable`
|
|
485
583
|
|
|
584
|
+
## Step 0.5: Transcript Worldview Packet
|
|
585
|
+
|
|
586
|
+
After raw capture and before hook research, match the source idea against
|
|
587
|
+
`core/transcripts/INDEX.md`, `core/content-memory/INDEX.md`, relevant cluster
|
|
588
|
+
files, story/proof/question cards, post seeds, and approved core references
|
|
589
|
+
returned by `mcp__sellable__get_engage_memory`.
|
|
590
|
+
|
|
591
|
+
The packet must answer:
|
|
592
|
+
|
|
593
|
+
```text
|
|
594
|
+
Transcript Worldview Packet
|
|
595
|
+
- source idea id:
|
|
596
|
+
- matched clusters:
|
|
597
|
+
- matched transcript references:
|
|
598
|
+
- matched cards/seeds:
|
|
599
|
+
- repeated user phrasing:
|
|
600
|
+
- worldview ingredients:
|
|
601
|
+
- hot-take ingredients:
|
|
602
|
+
- proof/story available:
|
|
603
|
+
- proof/story missing:
|
|
604
|
+
- private/sensitive exclusions:
|
|
605
|
+
- confidence: strong | medium | weak
|
|
606
|
+
```
|
|
607
|
+
|
|
608
|
+
Use this packet to shape premise cards, audience tension, hooks, and body
|
|
609
|
+
expression. Do not treat it as permission to add unsupported claims. If the
|
|
610
|
+
packet is weak, keep the post closer to the raw idea and ask for the missing
|
|
611
|
+
proof/story before marking a draft ready.
|
|
612
|
+
|
|
486
613
|
## Step 1: Hook Research
|
|
487
614
|
|
|
488
615
|
Use `references/hook-research-playbook.md`.
|
|
@@ -498,8 +625,12 @@ The research worker must return a compact packet only:
|
|
|
498
625
|
|
|
499
626
|
- source examples kept and rejected
|
|
500
627
|
- full adapted hook blocks
|
|
501
|
-
-
|
|
628
|
+
- audience tension snapshot: resonating ideas, visible tensions, audience wants,
|
|
629
|
+
objections, fears, and credible angles
|
|
502
630
|
- premise inputs: real scenes, observed tensions, reader value openings, and proof gaps
|
|
631
|
+
- transcript worldview packet: matched clusters, transcript references,
|
|
632
|
+
repeated phrasing, worldview ingredients, hot-take ingredients, proof/story
|
|
633
|
+
available, proof/story missing
|
|
503
634
|
- exact phrase patterns and sentence shapes
|
|
504
635
|
- post positioning breakdowns that label each meaningful line or phrase by
|
|
505
636
|
narrative job and category
|
|
@@ -509,6 +640,7 @@ The research worker must return a compact packet only:
|
|
|
509
640
|
- hook-to-body promise maps that show how each hook tells the body
|
|
510
641
|
- body structures and exact body language moves
|
|
511
642
|
- preview measurements
|
|
643
|
+
- thought leader inspiration packets when the user supplied creators
|
|
512
644
|
- track-person and gold-standard recommendations
|
|
513
645
|
- blocked states or confidence gaps
|
|
514
646
|
|
|
@@ -525,7 +657,7 @@ Default flow:
|
|
|
525
657
|
5. If full text cannot be matched, record `full_text_unavailable` and use only the preview. Do not invent missing body details.
|
|
526
658
|
6. Weigh shares/reposts above comments, comments above reactions, and reactions as weak reach unless paired with stronger signals. If shares/reposts are unavailable, record `repost_data_unavailable`.
|
|
527
659
|
7. Penalize lead-magnet or giveaway mechanics unless the user explicitly asks for a lead magnet post.
|
|
528
|
-
8. Build
|
|
660
|
+
8. Build an audience tension snapshot before hook generation: what the space is rewarding, what tension readers are reacting to, what they want to try or avoid, what objections/fears will make them hesitate, and which angle the user can credibly own. If the user's raw idea is internally coherent but not attached to live audience tension, do not draft from the internal idea alone; present stronger directions or rewrite the draft angle around the external tension.
|
|
529
661
|
9. Extract premise inputs: real story/scene possibilities, observed tensions, useful reader takeaways, and proof gaps. A good hook cannot rescue a premise with no value.
|
|
530
662
|
10. For story posts, extract the story mechanism that made the post work, not just the first line.
|
|
531
663
|
11. Extract hook structures plus specific reusable words, phrases, sentence
|
|
@@ -552,9 +684,11 @@ Record provenance:
|
|
|
552
684
|
- lead-magnet or engagement-bait penalties
|
|
553
685
|
- story mechanism when relevant
|
|
554
686
|
- full-text match status
|
|
687
|
+
- transcript/content-memory match status and worldview packet
|
|
555
688
|
- source hook preview measurements and whether they came from full text or a search preview
|
|
556
689
|
- selected hook patterns
|
|
557
|
-
-
|
|
690
|
+
- audience tension snapshot and selected angle
|
|
691
|
+
- thought leader inspiration packets and selected inspiration adapters when used
|
|
558
692
|
- premise cards and selected premise
|
|
559
693
|
- exact phrase patterns and sentence shapes
|
|
560
694
|
- post positioning breakdowns
|
|
@@ -583,6 +717,7 @@ The `Research Learning Report` must include:
|
|
|
583
717
|
```text
|
|
584
718
|
Research status:
|
|
585
719
|
- idea/topic:
|
|
720
|
+
- transcript worldview packet:
|
|
586
721
|
- research artifact:
|
|
587
722
|
- search window:
|
|
588
723
|
- keywords:
|
|
@@ -592,15 +727,15 @@ Research status:
|
|
|
592
727
|
Best source examples:
|
|
593
728
|
1. author, URL, engagement, why kept, why not copied
|
|
594
729
|
|
|
595
|
-
|
|
730
|
+
Audience tension snapshot:
|
|
596
731
|
- resonating ideas:
|
|
597
|
-
-
|
|
732
|
+
- visible audience tension:
|
|
598
733
|
- audience wants:
|
|
599
|
-
- audience
|
|
734
|
+
- audience objections:
|
|
600
735
|
- audience fears:
|
|
601
|
-
-
|
|
736
|
+
- credible angles to test:
|
|
602
737
|
- avoid because:
|
|
603
|
-
- selected
|
|
738
|
+
- selected angle:
|
|
604
739
|
|
|
605
740
|
Premise cards:
|
|
606
741
|
1. premise + real story/scene + tension + reader value + proof gap + score
|
|
@@ -665,6 +800,16 @@ Body structures learned:
|
|
|
665
800
|
- exact language moves:
|
|
666
801
|
- adapted Sellable body move:
|
|
667
802
|
|
|
803
|
+
Thought leader inspiration packets:
|
|
804
|
+
1. person + profile URL
|
|
805
|
+
- worker status:
|
|
806
|
+
- recent posts reviewed:
|
|
807
|
+
- weighted winners:
|
|
808
|
+
- follower-adjusted signal:
|
|
809
|
+
- hook/body mechanics:
|
|
810
|
+
- forbidden borrowing:
|
|
811
|
+
- adapted variant direction in Christian/Sellable voice:
|
|
812
|
+
|
|
668
813
|
Rejected examples:
|
|
669
814
|
- author/source:
|
|
670
815
|
- reason rejected:
|
|
@@ -686,7 +831,7 @@ could draft from it without redoing research.
|
|
|
686
831
|
|
|
687
832
|
Use `references/premise-development.md`.
|
|
688
833
|
|
|
689
|
-
Generate 3-5 `Premise Card` candidates from the raw idea,
|
|
834
|
+
Generate 3-5 `Premise Card` candidates from the raw idea, audience/source research, core
|
|
690
835
|
memory, story/proof files, and current-session user feedback. Each card must
|
|
691
836
|
include a real story/scene or observed pattern, target reader, common belief,
|
|
692
837
|
contrarian truth, tension, reader value, proof available, proof missing, and a
|
|
@@ -703,11 +848,11 @@ pass:
|
|
|
703
848
|
- `reader_value`
|
|
704
849
|
- `credible_speaker`
|
|
705
850
|
- `proof_safety`
|
|
706
|
-
- `
|
|
851
|
+
- `audience_tension`
|
|
707
852
|
- `template_fit`
|
|
708
853
|
- `hook_to_body_repayment`
|
|
709
854
|
|
|
710
|
-
If the idea has
|
|
855
|
+
If the idea has audience tension but no real scene, ask for the missing scene unless
|
|
711
856
|
the user explicitly requested an immediate draft. For immediate draft mode, use
|
|
712
857
|
only source-backed observed patterns and save the draft as `needs_revision`
|
|
713
858
|
unless the premise still has concrete reader value.
|
|
@@ -870,11 +1015,52 @@ selecting it. A selected hook may carry a `warn` only when the warning is about
|
|
|
870
1015
|
intentional blank-line rhythm or a slight line-length overage; include a compact
|
|
871
1016
|
fallback in the validation receipt.
|
|
872
1017
|
|
|
1018
|
+
## Step 2.5: Thought Leader Inspiration Lab
|
|
1019
|
+
|
|
1020
|
+
Run this step only when the user supplied a `thought_leader_list` or explicitly
|
|
1021
|
+
asked for variants inspired by named creators.
|
|
1022
|
+
|
|
1023
|
+
If the host supports background agents, start one bounded
|
|
1024
|
+
`thought-leader-worker` per specified person. Each worker owns only that
|
|
1025
|
+
person's recent content analysis. The orchestrator owns comparison, adaptation,
|
|
1026
|
+
and final voice safety.
|
|
1027
|
+
|
|
1028
|
+
Each worker must return:
|
|
1029
|
+
|
|
1030
|
+
- person name and profile URL or handle
|
|
1031
|
+
- recent post count reviewed
|
|
1032
|
+
- best recent posts, max 5
|
|
1033
|
+
- rejected posts, max 5
|
|
1034
|
+
- follower count when available
|
|
1035
|
+
- engagement per 1k followers when available
|
|
1036
|
+
- weighted winner score and normalization confidence
|
|
1037
|
+
- first-3-line hook previews
|
|
1038
|
+
- hook mechanics
|
|
1039
|
+
- body mechanics
|
|
1040
|
+
- rhythm and sentence moves
|
|
1041
|
+
- proof/status that cannot transfer
|
|
1042
|
+
- allowed adaptation moves
|
|
1043
|
+
- one adapted direction for the user's selected premise
|
|
1044
|
+
|
|
1045
|
+
The orchestrator then creates 3-5 inspiration variants from the selected
|
|
1046
|
+
premise and outline. Variants must be labeled as:
|
|
1047
|
+
|
|
1048
|
+
```text
|
|
1049
|
+
inspiration_adapter: <person or source mechanic>
|
|
1050
|
+
voice_layer: Christian/Sellable
|
|
1051
|
+
borrowed: hook mechanism | body sequence | proof order | rhythm | close move
|
|
1052
|
+
not_borrowed: source wording | source proof | source personal story | persona
|
|
1053
|
+
```
|
|
1054
|
+
|
|
1055
|
+
Do not write "in <person>'s voice." Write "using <person>'s public hook/body
|
|
1056
|
+
mechanics as inspiration, in Christian/Sellable voice."
|
|
1057
|
+
|
|
873
1058
|
## Step 3: Draft
|
|
874
1059
|
|
|
875
1060
|
Draft from:
|
|
876
1061
|
|
|
877
1062
|
- exact raw idea
|
|
1063
|
+
- transcript worldview packet
|
|
878
1064
|
- selected premise card
|
|
879
1065
|
- selected hook
|
|
880
1066
|
- approved or latest `Pre-Draft Narrative Outline`
|
|
@@ -888,6 +1074,8 @@ Draft from:
|
|
|
888
1074
|
- story/proof files
|
|
889
1075
|
- post writing rules
|
|
890
1076
|
- 1-3 relevant approved gold standards when available
|
|
1077
|
+
- thought leader inspiration variants when the user supplied a
|
|
1078
|
+
`thought_leader_list`
|
|
891
1079
|
|
|
892
1080
|
If a claim cannot be traced to the raw idea, core memory, or user answer in the current session, remove it or ask.
|
|
893
1081
|
|
|
@@ -899,6 +1087,7 @@ Every saved draft needs a validation receipt with:
|
|
|
899
1087
|
|
|
900
1088
|
- source idea ID
|
|
901
1089
|
- hook research ID
|
|
1090
|
+
- transcript worldview packet
|
|
902
1091
|
- iteration metadata: version, priorDraftId, changeIntent, what changed,
|
|
903
1092
|
what improved, what got worse, score, and verdict
|
|
904
1093
|
- selected premise card
|
|
@@ -906,6 +1095,7 @@ Every saved draft needs a validation receipt with:
|
|
|
906
1095
|
- selected hook and why
|
|
907
1096
|
- pre-draft narrative outline
|
|
908
1097
|
- selected source template and no-copy adaptation rationale
|
|
1098
|
+
- thought leader inspiration lab, if used
|
|
909
1099
|
- post positioning breakdown
|
|
910
1100
|
- viral-post outline
|
|
911
1101
|
- hook-to-body promise map
|
|
@@ -915,6 +1105,7 @@ Every saved draft needs a validation receipt with:
|
|
|
915
1105
|
- gold standards consulted
|
|
916
1106
|
- LinkedIn preview audit
|
|
917
1107
|
- premise/value audit findings
|
|
1108
|
+
- audience-tension audit findings
|
|
918
1109
|
- mobile scanability audit findings
|
|
919
1110
|
- template-adaptation audit findings
|
|
920
1111
|
- abstraction-to-concrete rewrite audit findings
|
|
@@ -1014,10 +1205,13 @@ selected_premise: <premise or none>
|
|
|
1014
1205
|
selected_hook: <hook>
|
|
1015
1206
|
pre_draft_narrative_outline: <compact I/A/i outline summary or none>
|
|
1016
1207
|
selected_source_template: <template name/source or none>
|
|
1208
|
+
thought_leader_inspiration: <adapters used or none>
|
|
1017
1209
|
visible_flow_trace: <required when user asked for whole-flow/debug/step-by-step mode; include checkpoint statuses and quality break>
|
|
1018
1210
|
validation_summary:
|
|
1019
1211
|
premise_value: pass | needs_user_input | needs_revision
|
|
1212
|
+
audience_tension: pass | needs_revision
|
|
1020
1213
|
mobile_scanability: pass | needs_revision
|
|
1214
|
+
thought_leader_adaptation: pass | needs_revision | not_used
|
|
1021
1215
|
template_adaptation: pass | needs_revision | blocked
|
|
1022
1216
|
abstraction_to_concrete: pass | needs_revision
|
|
1023
1217
|
hook_to_body_repayment: pass | needs_revision
|
|
@@ -16,6 +16,7 @@ V2 research has five outputs:
|
|
|
16
16
|
4. viral-post outlines: the reusable narrative structure of each source post
|
|
17
17
|
5. post positioning breakdown templates: line-level positioning and narrative
|
|
18
18
|
technique maps that can be adapted into the user's draft
|
|
19
|
+
6. thought leader inspiration packets when the user supplied specific creators
|
|
19
20
|
|
|
20
21
|
## Search Inputs
|
|
21
22
|
|
|
@@ -44,7 +45,7 @@ Worker owns:
|
|
|
44
45
|
- full-text matching by URL/activity ID
|
|
45
46
|
- duplicate removal
|
|
46
47
|
- lead-magnet, giveaway, engagement-bait, and off-voice filtering
|
|
47
|
-
-
|
|
48
|
+
- audience tension extraction across kept and rejected examples
|
|
48
49
|
- premise input extraction: real scenes, observed tensions, reader value, proof gaps
|
|
49
50
|
- hook opening measurement and "see more" tension autopsy
|
|
50
51
|
- exact phrase-pattern extraction
|
|
@@ -53,6 +54,8 @@ Worker owns:
|
|
|
53
54
|
- line-to-template conversion
|
|
54
55
|
- body-structure extraction
|
|
55
56
|
- body-expression input extraction for the later draft lab
|
|
57
|
+
- per-creator inspiration packet assembly when the user supplied thought
|
|
58
|
+
leaders
|
|
56
59
|
- rejected-example notes
|
|
57
60
|
- track-person and gold-standard recommendations
|
|
58
61
|
|
|
@@ -70,7 +73,7 @@ Worker output must be a compressed research packet, not a data dump:
|
|
|
70
73
|
Research packet:
|
|
71
74
|
- sources kept: max 8
|
|
72
75
|
- sources rejected: max 8
|
|
73
|
-
-
|
|
76
|
+
- audience tension snapshot: max 8 bullets
|
|
74
77
|
- controversy candidates: max 8
|
|
75
78
|
- premise inputs: max 8
|
|
76
79
|
- full adapted hook blocks: max 12
|
|
@@ -83,6 +86,7 @@ Research packet:
|
|
|
83
86
|
- preview measurements
|
|
84
87
|
- hook-to-body promise maps
|
|
85
88
|
- body expression inputs
|
|
89
|
+
- thought leader inspiration packets
|
|
86
90
|
- confidence gaps
|
|
87
91
|
- save recommendations
|
|
88
92
|
```
|
|
@@ -176,23 +180,25 @@ template. Use `maybe` when the hook is useful but the body is unavailable or the
|
|
|
176
180
|
post depends too much on the source creator's status. Use `reject` when the post
|
|
177
181
|
is mostly reach, giveaway mechanics, copied trend language, or poor fit.
|
|
178
182
|
|
|
179
|
-
##
|
|
183
|
+
## Audience Tension Snapshot
|
|
180
184
|
|
|
181
|
-
Before selecting a hook or writing a draft, synthesize
|
|
182
|
-
the kept and rejected posts. This is the step that prevents an
|
|
183
|
-
coherent post from becoming externally boring
|
|
185
|
+
Before selecting a hook or writing a draft, synthesize an audience tension
|
|
186
|
+
snapshot from the kept and rejected posts. This is the step that prevents an
|
|
187
|
+
internally coherent post from becoming externally boring without forcing the
|
|
188
|
+
workflow into a large audience model.
|
|
184
189
|
|
|
185
190
|
Record:
|
|
186
191
|
|
|
187
192
|
- resonating ideas: what topics or claims are repeatedly earning real
|
|
188
193
|
engagement in the last 30-120 days
|
|
189
|
-
- implicit beliefs: what the audience seems to already believe but may not say
|
|
190
|
-
directly
|
|
191
194
|
- audience wants: what they want to feel, learn, try, buy, avoid, or be early to
|
|
192
|
-
-
|
|
195
|
+
- visible tension: the contradiction, tradeoff, cost, or unfinished question
|
|
196
|
+
readers are reacting to
|
|
197
|
+
- audience objections: what they are tired of, skeptical about, embarrassed by,
|
|
198
|
+
or likely to argue with
|
|
193
199
|
- audience fears: what risk would make them hesitate
|
|
194
200
|
- argument bait: what they will plausibly disagree with in comments
|
|
195
|
-
- credible
|
|
201
|
+
- credible angle: what the user can argue without borrowing someone else's
|
|
196
202
|
proof or pretending to have data they do not have
|
|
197
203
|
- avoid list: ideas that are inflated by comment bait, stale category claims,
|
|
198
204
|
celebrity reach, giveaway mechanics, or poor voice fit
|
|
@@ -200,11 +206,11 @@ Record:
|
|
|
200
206
|
The selected direction must include:
|
|
201
207
|
|
|
202
208
|
```text
|
|
203
|
-
Selected
|
|
209
|
+
Selected angle:
|
|
204
210
|
<one sentence>
|
|
205
211
|
|
|
206
212
|
Why this audience would engage:
|
|
207
|
-
<specific
|
|
213
|
+
<specific tension, want, objection, or fear>
|
|
208
214
|
|
|
209
215
|
Why this user can credibly say it:
|
|
210
216
|
<raw idea, memory, story, proof, or product mechanism>
|
|
@@ -213,19 +219,21 @@ What not to claim:
|
|
|
213
219
|
<unsupported metric, borrowed proof, or hype phrase to avoid>
|
|
214
220
|
```
|
|
215
221
|
|
|
216
|
-
If the raw idea is true but the
|
|
222
|
+
If the raw idea is true but the audience tension snapshot does not show a live tension,
|
|
217
223
|
do not draft from the raw idea as-is. Present stronger directions or reframe the
|
|
218
224
|
idea around the closest supported external tension.
|
|
219
225
|
|
|
220
226
|
## Premise Inputs
|
|
221
227
|
|
|
222
|
-
After the
|
|
228
|
+
After the audience tension snapshot, extract the ingredients needed for premise
|
|
223
229
|
development. Do this before hook generation.
|
|
224
230
|
|
|
225
231
|
Record:
|
|
226
232
|
|
|
227
233
|
- real story or scene candidates from the raw idea, memory, transcript, or
|
|
228
234
|
current-session context
|
|
235
|
+
- transcript worldview packet matches: clusters, transcript references, cards,
|
|
236
|
+
repeated phrasing, worldview ingredients, and hot-take ingredients
|
|
229
237
|
- observed pattern candidates when no first-person story is available
|
|
230
238
|
- visible tension: the uncomfortable gap, cost, contradiction, or tradeoff
|
|
231
239
|
- common belief: what the audience probably believes right now
|
|
@@ -233,6 +241,7 @@ Record:
|
|
|
233
241
|
- reader value: what the reader learns, sees differently, or can do
|
|
234
242
|
- proof available: what can be safely used
|
|
235
243
|
- proof missing: what cannot be claimed without user confirmation
|
|
244
|
+
- private/sensitive transcript material to exclude
|
|
236
245
|
|
|
237
246
|
If this section is weak, say so. Do not let the hook lab proceed as if a clever
|
|
238
247
|
opening can create value that the premise does not have.
|
|
@@ -687,6 +696,76 @@ with Christian's verified campaign-source ladder. Keep the hook's "unexpected
|
|
|
687
696
|
best source" tension. Do not borrow the source's dinner/community proof.
|
|
688
697
|
```
|
|
689
698
|
|
|
699
|
+
## Thought Leader Inspiration Workers
|
|
700
|
+
|
|
701
|
+
When the user supplies a list of thought leaders, creators, profile URLs, or
|
|
702
|
+
handles, run a separate inspiration analysis per person. This is different from
|
|
703
|
+
general search: the source set is the person's own recent content.
|
|
704
|
+
|
|
705
|
+
Use one bounded background worker per person when the host supports background
|
|
706
|
+
agents. If not, process the list sequentially. Each worker must keep its output
|
|
707
|
+
compact and must not return a full corpus dump.
|
|
708
|
+
|
|
709
|
+
Worker steps:
|
|
710
|
+
|
|
711
|
+
1. Resolve the person's profile URL or handle from the user input, tracked
|
|
712
|
+
people, or memory. If unresolved, ask for the URL/handle.
|
|
713
|
+
2. Fetch recent posts with `mcp__sellable__fetch_linkedin_posts`.
|
|
714
|
+
3. Fetch profile/follower context with `mcp__sellable__fetch_linkedin_profile`
|
|
715
|
+
when available.
|
|
716
|
+
4. Score the person's recent posts by:
|
|
717
|
+
- topic fit to the user's current idea
|
|
718
|
+
- hook preview strength
|
|
719
|
+
- body payoff strength
|
|
720
|
+
- positioning density
|
|
721
|
+
- repeated success in the same lane
|
|
722
|
+
- engagement quality
|
|
723
|
+
- engagement per 1k followers when follower count is available
|
|
724
|
+
- adaptation fit for Christian/Sellable voice
|
|
725
|
+
- lead-magnet, giveaway, and status-only penalties
|
|
726
|
+
5. Keep max 5 winners and max 5 rejected examples.
|
|
727
|
+
6. Extract hook mechanics, body mechanics, sentence/rhythm moves, proof slots,
|
|
728
|
+
and close moves.
|
|
729
|
+
7. Identify forbidden borrowing: source wording, source proof, jokes, personal
|
|
730
|
+
stories, audience status, and persona markers.
|
|
731
|
+
8. Create one adapted direction for the user's selected premise in
|
|
732
|
+
Christian/Sellable voice.
|
|
733
|
+
|
|
734
|
+
Worker output:
|
|
735
|
+
|
|
736
|
+
```text
|
|
737
|
+
Thought leader inspiration packet:
|
|
738
|
+
person:
|
|
739
|
+
profile_url:
|
|
740
|
+
recent_posts_reviewed:
|
|
741
|
+
follower_count: <number | unavailable>
|
|
742
|
+
normalization_confidence: high | medium | low
|
|
743
|
+
weighted_winners:
|
|
744
|
+
- source_url:
|
|
745
|
+
engagement:
|
|
746
|
+
engagement_per_1k_followers:
|
|
747
|
+
score:
|
|
748
|
+
why_kept:
|
|
749
|
+
first_3_line_preview:
|
|
750
|
+
hook_mechanics:
|
|
751
|
+
body_mechanics:
|
|
752
|
+
sentence_or_rhythm_moves:
|
|
753
|
+
forbidden_borrowing:
|
|
754
|
+
adapted_direction:
|
|
755
|
+
inspiration_adapter:
|
|
756
|
+
voice_layer: Christian/Sellable
|
|
757
|
+
hook_shape:
|
|
758
|
+
body_shape:
|
|
759
|
+
proof_slots_needed:
|
|
760
|
+
why_it_might_win:
|
|
761
|
+
why_it_might_fail:
|
|
762
|
+
rejected_examples:
|
|
763
|
+
confidence_gaps:
|
|
764
|
+
```
|
|
765
|
+
|
|
766
|
+
Do not call the adapted direction "in <person>'s voice." It is an inspiration
|
|
767
|
+
adapter that borrows public mechanics, then writes in the user's voice.
|
|
768
|
+
|
|
690
769
|
## Blocked States
|
|
691
770
|
|
|
692
771
|
Local idea capture can still succeed when research fails.
|
|
@@ -50,10 +50,13 @@ Idea files must preserve:
|
|
|
50
50
|
- `updatedAt`
|
|
51
51
|
- exact raw source between raw-source markers
|
|
52
52
|
- optional distilled brief that does not add new claims
|
|
53
|
+
- transcript worldview packet when create-post has mined relevant
|
|
54
|
+
transcript/content-memory material for this idea
|
|
53
55
|
|
|
54
56
|
Hook research files must preserve:
|
|
55
57
|
|
|
56
58
|
- source idea ID
|
|
59
|
+
- transcript/content-memory match status and transcript worldview packet
|
|
57
60
|
- keywords searched
|
|
58
61
|
- filters used
|
|
59
62
|
- source post URLs
|
|
@@ -67,9 +70,14 @@ Hook research files must preserve:
|
|
|
67
70
|
- source hook preview measurements, including text basis, char count including
|
|
68
71
|
newlines, physical/content line counts, longest nonblank line, blank-line
|
|
69
72
|
visual risk, and mobile/desktop preview budget status
|
|
73
|
+
- audience tension snapshot and selected angle
|
|
70
74
|
- rendered preview records for kept source hooks and adapted hook blocks,
|
|
71
75
|
including literal mobile/desktop preview blocks and whether the first-screen
|
|
72
76
|
promise is visible
|
|
77
|
+
- thought leader inspiration packets when the user supplied creators, including
|
|
78
|
+
worker status, profile URL/handle, recent posts reviewed, weighted winners,
|
|
79
|
+
follower-adjusted signal when available, allowed mechanics to adapt, and
|
|
80
|
+
forbidden borrowing
|
|
73
81
|
- source-message outlines for keeper posts, preserving source paragraph order
|
|
74
82
|
and branching each paragraph, line, or phrase into high-level goal, reader
|
|
75
83
|
effect, reusable move, and adaptation guard without reproducing the full
|
|
@@ -81,6 +89,8 @@ Draft files must preserve:
|
|
|
81
89
|
|
|
82
90
|
- source idea ID
|
|
83
91
|
- hook research ID
|
|
92
|
+
- transcript worldview packet used to build the premise, worldview, and hot
|
|
93
|
+
take
|
|
84
94
|
- versioned draft ID, normally ending in `_v1`, `_v2`, `_v3`, etc.
|
|
85
95
|
- iteration metadata when there is a prior or baseline draft:
|
|
86
96
|
- `version`
|
|
@@ -94,6 +104,9 @@ Draft files must preserve:
|
|
|
94
104
|
- draft body
|
|
95
105
|
- source-message outline for any outside post being adapted, when the draft's
|
|
96
106
|
body shape was learned from a specific source post
|
|
107
|
+
- thought leader inspiration lab when used, including the selected inspiration
|
|
108
|
+
adapter, variants considered, Christian/Sellable voice layer, and
|
|
109
|
+
copying/voice-clone risk
|
|
97
110
|
- pre-draft narrative outline: hierarchical `I.`, `A.`, `i.` outline covering
|
|
98
111
|
hook debt, thesis, reader, core mechanism, definitions, proof claims,
|
|
99
112
|
working body patterns adapted, narrative beats, mobile scan path, body
|
|
@@ -6,6 +6,7 @@ Every saved draft needs a validation receipt. A draft without this receipt is no
|
|
|
6
6
|
|
|
7
7
|
- `sourceIdeaId`
|
|
8
8
|
- `hookResearchId`
|
|
9
|
+
- `transcriptWorldviewPacket`
|
|
9
10
|
- `iteration`
|
|
10
11
|
- `selectedPremiseCard`
|
|
11
12
|
- `candidateHooksConsidered`
|
|
@@ -25,10 +26,13 @@ Every saved draft needs a validation receipt. A draft without this receipt is no
|
|
|
25
26
|
step-by-step mode
|
|
26
27
|
- `proofClaimsUsed`
|
|
27
28
|
- `proofClaimSources`
|
|
29
|
+
- `worldviewSource`
|
|
30
|
+
- `hotTakeSource`
|
|
28
31
|
- `storyFilesConsulted`
|
|
29
32
|
- `goldStandardsConsulted`
|
|
30
33
|
- `voiceRulesApplied`
|
|
31
|
-
- `
|
|
34
|
+
- `audienceTensionAudit`
|
|
35
|
+
- `thoughtLeaderInspirationLab`
|
|
32
36
|
- `premiseValueAudit`
|
|
33
37
|
- `mobileScanabilityAudit`
|
|
34
38
|
- `templateAdaptationAudit`
|
|
@@ -110,7 +114,7 @@ Each candidate should include:
|
|
|
110
114
|
After the first draft:
|
|
111
115
|
|
|
112
116
|
1. remove unsupported claims
|
|
113
|
-
2. verify the draft is anchored to the selected
|
|
117
|
+
2. verify the draft is anchored to the selected audience tension and credible angle
|
|
114
118
|
3. verify the real story/scene, tension, and reader value are visible early
|
|
115
119
|
4. verify the body repays the selected hook's curiosity debt
|
|
116
120
|
5. verify the final post follows the selected positioning sequence or explains
|
|
@@ -171,6 +175,12 @@ Record:
|
|
|
171
175
|
- `readerValue`: what the reader learns, sees differently, or can do
|
|
172
176
|
- `proofAvailable`: source-backed proof used
|
|
173
177
|
- `proofMissing`: claims intentionally avoided or requiring user input
|
|
178
|
+
- `transcriptWorldviewPacket`: clusters, transcript references, cards, repeated
|
|
179
|
+
phrasing, worldview ingredients, hot-take ingredients, proof/story available,
|
|
180
|
+
proof/story missing, private exclusions, and confidence
|
|
181
|
+
- `worldviewSource`: the source-backed belief that makes the post feel earned
|
|
182
|
+
- `hotTakeSource`: the source-backed disagreement or operating lesson behind
|
|
183
|
+
the hook/premise
|
|
174
184
|
- `sourceMessageOutline`: source post decomposition in original order, with
|
|
175
185
|
paragraph/line/phrase branches, high-level goal of each branch, reader effect,
|
|
176
186
|
reusable move, and adaptation guard
|
|
@@ -181,7 +191,7 @@ Record:
|
|
|
181
191
|
artifact is `preDraftNarrativeOutline`
|
|
182
192
|
- `premiseQualityGates`: pass/fail for `specific_scene_or_pattern`,
|
|
183
193
|
`clear_reader`, `visible_tension`, `reader_value`, `credible_speaker`,
|
|
184
|
-
`proof_safety`, `
|
|
194
|
+
`proof_safety`, `audience_tension`, and `pre_draft_narrative_outline`
|
|
185
195
|
- `bodyOutline`: how the body delivers the premise before prose
|
|
186
196
|
- `viralPostOutline`: the selected narrative structure, including beat jobs
|
|
187
197
|
- `hookToBodyPromiseMap`: how the body repays the hook's open loop
|
|
@@ -191,6 +201,10 @@ If the draft has no specific scene or observed pattern, no visible tension, or
|
|
|
191
201
|
no reader value beyond "this is interesting," save as `needs_revision`. Do not
|
|
192
202
|
mark it `ready` because the hook passes preview limits.
|
|
193
203
|
|
|
204
|
+
Save as `needs_revision` when the post claims a worldview or hot take but the
|
|
205
|
+
receipt cannot trace it to raw source, transcript/content-memory, core memory,
|
|
206
|
+
or a current user answer.
|
|
207
|
+
|
|
194
208
|
## Pre-Draft Narrative Outline Audit
|
|
195
209
|
|
|
196
210
|
Before a draft can be `ready`, validate that the narrative outline was locked
|
|
@@ -296,27 +310,53 @@ Save as `needs_revision` when the draft copies outside wording, borrows outside
|
|
|
296
310
|
proof, keeps a source template's status without equivalent user authority, or
|
|
297
311
|
uses a hook whose promised body payoff is not delivered.
|
|
298
312
|
|
|
299
|
-
##
|
|
313
|
+
## Audience Tension Audit
|
|
300
314
|
|
|
301
315
|
Before a draft can be `ready`, validate that it is not merely an internally
|
|
302
|
-
coherent idea. It must be anchored to the saved research's
|
|
316
|
+
coherent idea. It must be anchored to the saved research's audience tension
|
|
317
|
+
snapshot.
|
|
303
318
|
|
|
304
319
|
Record:
|
|
305
320
|
|
|
306
321
|
- `resonatingIdea`: the current-space idea this draft enters
|
|
307
|
-
- `
|
|
322
|
+
- `visibleAudienceTension`: the contradiction, tradeoff, cost, or unfinished
|
|
323
|
+
question readers are reacting to
|
|
308
324
|
- `audienceWant`: what the audience wants permission, leverage, proof, or a new
|
|
309
325
|
category for
|
|
310
|
-
- `
|
|
311
|
-
- `
|
|
326
|
+
- `audienceObjectionOrFear`: what skepticism, frustration, or risk gives the post tension
|
|
327
|
+
- `selectedAngle`: the claim the post is testing
|
|
312
328
|
- `credibleWhyUs`: why the user can credibly say this from raw idea, memory,
|
|
313
329
|
story, proof, or product mechanism
|
|
314
330
|
- `engagementReason`: why someone would react, comment, repost, or argue
|
|
315
331
|
- `unsupportedHypeRemoved`: unsupported claims removed during finalizer
|
|
316
332
|
|
|
317
|
-
If `
|
|
318
|
-
|
|
319
|
-
|
|
333
|
+
If `selectedAngle` is missing, if the audience tension is only a generic label
|
|
334
|
+
like "founders want growth," or if `credibleWhyUs` depends on borrowed proof
|
|
335
|
+
from another creator, save as `needs_revision`.
|
|
336
|
+
|
|
337
|
+
## Thought Leader Inspiration Audit
|
|
338
|
+
|
|
339
|
+
When the user supplied thought leaders or creators, validate that inspiration
|
|
340
|
+
was used as structural adaptation, not persona cloning.
|
|
341
|
+
|
|
342
|
+
Record:
|
|
343
|
+
|
|
344
|
+
- `thoughtLeaderList`: names and profile URLs or handles
|
|
345
|
+
- `workerPackets`: one packet per person, or `not_available` with reason
|
|
346
|
+
- `weightedWinners`: best posts used, with follower-adjusted signal when
|
|
347
|
+
available
|
|
348
|
+
- `normalizationConfidence`: high | medium | low
|
|
349
|
+
- `inspirationAdapters`: hook/body mechanics selected for adaptation
|
|
350
|
+
- `voiceLayer`: must be `Christian/Sellable`
|
|
351
|
+
- `forbiddenBorrowingAvoided`: source wording, proof, jokes, personal stories,
|
|
352
|
+
status, and persona markers avoided
|
|
353
|
+
- `variantsConsidered`: adapted variants generated from the selected premise
|
|
354
|
+
- `selectedVariant`: winning adapter and why
|
|
355
|
+
- `copyingOrVoiceCloneRisk`: pass | needs_revision | blocked
|
|
356
|
+
|
|
357
|
+
Save as `needs_revision` when a draft imitates a living person's voice, borrows
|
|
358
|
+
their proof/status, copies outside wording, or lets a creator with a giant
|
|
359
|
+
audience win without any follower-adjusted or confidence-adjusted signal.
|
|
320
360
|
|
|
321
361
|
## LinkedIn Preview Audit
|
|
322
362
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
A strong post is not an idea with a better hook. A strong post is a valuable
|
|
4
4
|
premise wrapped in a sharp opening.
|
|
5
5
|
|
|
6
|
-
Use this stage after
|
|
6
|
+
Use this stage after audience/hook research and before hook candidates. V2 premise
|
|
7
7
|
development also consumes the source post templates from hook research:
|
|
8
8
|
post positioning breakdowns, viral-post outlines, hook-to-body promise maps, and
|
|
9
9
|
body expression inputs.
|
|
@@ -61,10 +61,14 @@ Before writing premise cards, search the available source material:
|
|
|
61
61
|
|
|
62
62
|
- raw idea text
|
|
63
63
|
- voice memo or transcript if provided
|
|
64
|
+
- `Transcript Worldview Packet` from create-post capture
|
|
64
65
|
- `core/story-bank.md`
|
|
65
66
|
- `core/answer-bank.md`
|
|
66
67
|
- `core/proof-ledger.md`
|
|
67
68
|
- `core/wins-ledger.md`
|
|
69
|
+
- `core/transcripts/INDEX.md`
|
|
70
|
+
- `core/content-memory/INDEX.md`, relevant clusters, cards, questions, and
|
|
71
|
+
post seeds
|
|
68
72
|
- approved references and gold standards
|
|
69
73
|
- current-session user corrections or rejections
|
|
70
74
|
|
|
@@ -76,11 +80,37 @@ Look for:
|
|
|
76
80
|
- a before/after: what changed in the user's belief
|
|
77
81
|
- a specific object: Slack note, customer call, campaign table, reply, list,
|
|
78
82
|
demo, failed draft, stale idea, messy workflow
|
|
83
|
+
- repeated worldview: the user's recurring operating belief behind the idea
|
|
84
|
+
- hot-take ingredient: the specific advice, default behavior, or market cliche
|
|
85
|
+
the user is pushing against
|
|
79
86
|
|
|
80
87
|
If no real story is present, use an observed pattern only if it is traceable to
|
|
81
88
|
the raw source or memory. Mark the gap in the premise card. Do not fabricate a
|
|
82
89
|
customer, call, outcome, date, metric, or private scene.
|
|
83
90
|
|
|
91
|
+
## Worldview And Hot-Take Extraction
|
|
92
|
+
|
|
93
|
+
Before scoring premise cards, extract the user's source-backed worldview from
|
|
94
|
+
the transcript packet:
|
|
95
|
+
|
|
96
|
+
```text
|
|
97
|
+
Worldview extraction:
|
|
98
|
+
- worldview claim:
|
|
99
|
+
- source transcript/cluster/card:
|
|
100
|
+
- repeated phrase or language pattern:
|
|
101
|
+
- lived proof behind it:
|
|
102
|
+
- common advice it challenges:
|
|
103
|
+
- hot take version:
|
|
104
|
+
- public-safe version:
|
|
105
|
+
- private/sensitive material to avoid:
|
|
106
|
+
- confidence: strong | medium | weak
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
A good hot take is not just a contrarian sentence. It must trace to something
|
|
110
|
+
the user has said, seen, shipped, sold, or learned repeatedly. If the hot take
|
|
111
|
+
only exists because an outside creator framed it well, mark it as borrowed and
|
|
112
|
+
do not use it as the user's premise.
|
|
113
|
+
|
|
84
114
|
## Premise Cards
|
|
85
115
|
|
|
86
116
|
Generate 3-5 premise cards before hooks. Each card must use this shape:
|
|
@@ -109,7 +139,7 @@ tension:
|
|
|
109
139
|
reader value:
|
|
110
140
|
<what the reader learns, sees differently, or can do after reading>
|
|
111
141
|
|
|
112
|
-
why now /
|
|
142
|
+
why now / audience tension:
|
|
113
143
|
<what current research says is resonating>
|
|
114
144
|
|
|
115
145
|
credible why-us:
|
|
@@ -121,6 +151,12 @@ proof available:
|
|
|
121
151
|
proof missing:
|
|
122
152
|
<claims that cannot be made yet>
|
|
123
153
|
|
|
154
|
+
worldview source:
|
|
155
|
+
<transcript/cluster/card/source-backed belief used>
|
|
156
|
+
|
|
157
|
+
hot take:
|
|
158
|
+
<public-safe sharp version of the user's source-backed disagreement>
|
|
159
|
+
|
|
124
160
|
best frame:
|
|
125
161
|
story | contrarian take | teardown | founder confession | future thesis | lesson
|
|
126
162
|
|
|
@@ -366,7 +402,7 @@ A premise can move to hook generation only when it passes all of these:
|
|
|
366
402
|
- `reader_value`: pass
|
|
367
403
|
- `credible_speaker`: pass
|
|
368
404
|
- `proof_safety`: pass
|
|
369
|
-
- `
|
|
405
|
+
- `audience_tension`: pass or explained
|
|
370
406
|
- `template_fit`: pass or explicitly no-template
|
|
371
407
|
- `hook_to_body_repayment`: pass
|
|
372
408
|
- `pre_draft_narrative_outline`: pass
|