taketomarket 2.2.0 → 2.3.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.
- package/.claude-plugin/marketplace.json +4 -4
- package/.claude-plugin/plugin.json +2 -2
- package/README.md +34 -11
- package/bin/lib/campaign.cjs +12 -8
- package/bin/lib/codebase-scan.cjs +86 -0
- package/bin/lib/config.cjs +129 -0
- package/bin/lib/deploy.cjs +36 -0
- package/bin/lib/deviation.cjs +1 -1
- package/bin/lib/drift-log.cjs +4 -4
- package/bin/lib/health.cjs +32 -31
- package/bin/lib/install-detect.cjs +62 -0
- package/bin/lib/legacy-folder.cjs +100 -0
- package/bin/lib/playwright-check.cjs +26 -0
- package/bin/lib/site-location.cjs +22 -0
- package/bin/lib/state.cjs +3 -3
- package/bin/lib/svg-render.cjs +42 -0
- package/bin/ttm-tools.cjs +136 -4
- package/gates/base-gates.md +8 -8
- package/gates/gate-evaluation.md +8 -8
- package/install.js +37 -3
- package/package.json +10 -6
- package/playbooks/aeo.md +218 -114
- package/playbooks/affiliate.md +225 -160
- package/playbooks/email.md +236 -174
- package/playbooks/events.md +303 -213
- package/playbooks/landing-pages.md +305 -0
- package/playbooks/linkedin.md +264 -142
- package/playbooks/manifesto.md +322 -0
- package/playbooks/paid-ads.md +240 -189
- package/playbooks/positioning.md +340 -0
- package/playbooks/pr-media.md +308 -168
- package/playbooks/pseo.md +426 -0
- package/playbooks/seo.md +251 -158
- package/playbooks/social.md +253 -182
- package/playbooks/youtube.md +286 -181
- package/references/brand-color-theory.md +48 -0
- package/references/codex-image-gen-research.md +58 -0
- package/references/context-loading.md +6 -6
- package/references/humanizer-patterns.md +433 -0
- package/references/inline-education-blurbs.md +461 -0
- package/references/landing-page-anatomy.md +64 -0
- package/references/linkedin-post-patterns.md +174 -0
- package/references/logo-design-principles.md +55 -0
- package/references/meta-gate-evaluation.md +3 -3
- package/references/obra-superpowers-conventions.md +170 -0
- package/references/playbook-leaders.md +472 -0
- package/references/playwright-mcp-setup.md +164 -0
- package/references/positioning-check-report.md +2 -2
- package/references/pseo-page-anatomy.md +56 -0
- package/references/pseo-templates/alternative-anatomy.md +31 -0
- package/references/pseo-templates/alternative-content-playbook.md +32 -0
- package/references/pseo-templates/blog-anatomy.md +28 -0
- package/references/pseo-templates/blog-content-playbook.md +36 -0
- package/references/pseo-templates/comparison-anatomy.md +29 -0
- package/references/pseo-templates/comparison-content-playbook.md +35 -0
- package/references/pseo-templates/use-case-anatomy.md +28 -0
- package/references/pseo-templates/use-case-content-playbook.md +30 -0
- package/skills/ttm-101/SKILL.md +25 -0
- package/skills/ttm-aeo-check/SKILL.md +17 -12
- package/skills/ttm-affiliate-kit/SKILL.md +5 -0
- package/skills/ttm-archive/SKILL.md +5 -0
- package/skills/ttm-brand-refresh/SKILL.md +5 -0
- package/skills/ttm-brief/SKILL.md +5 -0
- package/skills/ttm-competitor-scan/SKILL.md +5 -0
- package/skills/ttm-deploy/SKILL.md +22 -0
- package/skills/ttm-discover/SKILL.md +17 -0
- package/skills/ttm-email-check/SKILL.md +17 -0
- package/skills/ttm-email-preflight/SKILL.md +17 -11
- package/skills/ttm-fix/SKILL.md +5 -0
- package/skills/ttm-health/SKILL.md +6 -1
- package/skills/ttm-humanize/SKILL.md +33 -0
- package/skills/ttm-icp-refresh/SKILL.md +5 -0
- package/skills/ttm-improve-skill/SKILL.md +18 -0
- package/skills/ttm-init/SKILL.md +10 -3
- package/skills/ttm-keyword-map/SKILL.md +17 -11
- package/skills/ttm-landing/SKILL.md +19 -0
- package/skills/ttm-learn/SKILL.md +5 -0
- package/skills/ttm-linkedin-post/SKILL.md +26 -0
- package/skills/ttm-measure/SKILL.md +5 -0
- package/skills/ttm-new-campaign/SKILL.md +5 -0
- package/skills/ttm-next/SKILL.md +5 -0
- package/skills/ttm-playwright-setup/SKILL.md +18 -0
- package/skills/ttm-positioning-check/SKILL.md +5 -0
- package/skills/ttm-positioning-shift/SKILL.md +5 -0
- package/skills/ttm-produce/SKILL.md +5 -0
- package/skills/ttm-pseo/SKILL.md +26 -0
- package/skills/ttm-repurpose/SKILL.md +5 -0
- package/skills/ttm-request-skill/SKILL.md +18 -0
- package/skills/ttm-research/SKILL.md +18 -6
- package/skills/ttm-resume/SKILL.md +5 -0
- package/skills/ttm-review/SKILL.md +5 -0
- package/skills/ttm-seo/SKILL.md +64 -0
- package/skills/ttm-seo-audit/SKILL.md +17 -12
- package/skills/ttm-ship/SKILL.md +5 -0
- package/skills/ttm-state/SKILL.md +5 -0
- package/skills/ttm-update/SKILL.md +152 -4
- package/skills/ttm-verify/SKILL.md +5 -0
- package/templates/agents-md.md +14 -4
- package/templates/campaign-research.md +6 -6
- package/templates/campaign-state.md +1 -1
- package/templates/claude-md.md +14 -4
- package/templates/linkedin-base-template.md +48 -0
- package/templates/next-step-footer.md +13 -0
- package/templates/production-manifest.json +4 -4
- package/templates/pseo/alternative-cms-schema.json +65 -0
- package/templates/pseo/blog-cms-schema.json +55 -0
- package/templates/pseo/comparison-cms-schema.json +56 -0
- package/templates/pseo/use-case-cms-schema.json +62 -0
- package/templates/reference-files/brand.md +51 -0
- package/templates/reference-files/product-dna.md +73 -0
- package/templates/site-scaffold/app/globals.css +2 -0
- package/templates/site-scaffold/app/layout.tsx +17 -0
- package/templates/site-scaffold/app/page.tsx +33 -0
- package/templates/site-scaffold/app/robots.ts +8 -0
- package/templates/site-scaffold/app/sitemap.ts +10 -0
- package/templates/site-scaffold/app/tokens.css +21 -0
- package/templates/site-scaffold/components/Comparison.tsx +14 -0
- package/templates/site-scaffold/components/Faq.tsx +14 -0
- package/templates/site-scaffold/components/Features.tsx +14 -0
- package/templates/site-scaffold/components/FinalCta.tsx +17 -0
- package/templates/site-scaffold/components/Footer.tsx +12 -0
- package/templates/site-scaffold/components/Hero.tsx +22 -0
- package/templates/site-scaffold/components/HowItWorks.tsx +14 -0
- package/templates/site-scaffold/components/PricingTeaser.tsx +14 -0
- package/templates/site-scaffold/components/Problem.tsx +14 -0
- package/templates/site-scaffold/components/SocialProof.tsx +14 -0
- package/templates/site-scaffold/components/Solution.tsx +14 -0
- package/templates/site-scaffold/components/Testimonials.tsx +14 -0
- package/templates/site-scaffold/components/UseCases.tsx +14 -0
- package/templates/site-scaffold/content/.gitkeep +0 -0
- package/templates/site-scaffold/lib/.gitkeep +0 -0
- package/templates/site-scaffold/next.config.mjs +10 -0
- package/templates/site-scaffold/package.json +25 -0
- package/templates/site-scaffold/postcss.config.mjs +3 -0
- package/templates/site-scaffold/public/llms.txt +9 -0
- package/templates/site-scaffold/tsconfig.json +21 -0
- package/templates/verification-report.md +1 -1
- package/workflows/channel/linkedin-post.md +178 -0
- package/workflows/discipline/affiliate-kit.md +65 -6
- package/workflows/discipline/{email-preflight.md → email-check.md} +39 -4
- package/workflows/discipline/repurpose.md +82 -31
- package/workflows/discipline/{aeo-check.md → seo/aeo.md} +13 -6
- package/workflows/discipline/{seo-audit.md → seo/audit.md} +13 -6
- package/workflows/discipline/{keyword-map.md → seo/keyword-map.md} +13 -6
- package/workflows/education/ttm-101.md +114 -0
- package/workflows/lifecycle/brief-positioning-check.md +1 -1
- package/workflows/lifecycle/brief.md +64 -28
- package/workflows/lifecycle/{research.md → discover.md} +61 -19
- package/workflows/lifecycle/fix.md +72 -37
- package/workflows/lifecycle/humanize.md +280 -0
- package/workflows/lifecycle/learn.md +72 -35
- package/workflows/lifecycle/measure.md +54 -18
- package/workflows/lifecycle/produce.md +88 -37
- package/workflows/lifecycle/review.md +71 -25
- package/workflows/lifecycle/ship.md +62 -18
- package/workflows/lifecycle/verify.md +72 -26
- package/workflows/reference-mgmt/brand-refresh.md +50 -13
- package/workflows/reference-mgmt/competitor-scan.md +51 -15
- package/workflows/reference-mgmt/icp-refresh.md +48 -12
- package/workflows/reference-mgmt/positioning-check.md +55 -20
- package/workflows/reference-mgmt/positioning-shift.md +53 -17
- package/workflows/setup/init-brand-colors.md +75 -0
- package/workflows/setup/init-logo.md +113 -0
- package/workflows/setup/init-product-dna.md +83 -0
- package/workflows/setup/init-questions.md +166 -30
- package/workflows/setup/init-validation.md +22 -0
- package/workflows/setup/init.md +144 -39
- package/workflows/setup/new-campaign.md +48 -12
- package/workflows/site/deploy.md +98 -0
- package/workflows/site/landing.md +156 -0
- package/workflows/site/pseo.md +96 -0
- package/workflows/site/quality-gates.md +88 -0
- package/workflows/utility/archive.md +45 -9
- package/workflows/utility/health.md +77 -3
- package/workflows/utility/improve-skill.md +233 -0
- package/workflows/utility/next.md +38 -2
- package/workflows/utility/playwright-setup.md +128 -0
- package/workflows/utility/request-skill.md +218 -0
- package/workflows/utility/resume.md +40 -3
- package/workflows/utility/state.md +42 -7
package/playbooks/social.md
CHANGED
|
@@ -1,134 +1,166 @@
|
|
|
1
1
|
---
|
|
2
2
|
discipline: social
|
|
3
|
-
asset_types: [tweet,
|
|
4
|
-
version: "
|
|
3
|
+
asset_types: [tweet, thread, instagram-post, tiktok-script]
|
|
4
|
+
version: "2.0"
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# Social Playbook
|
|
8
8
|
|
|
9
|
+
> Built on Dan Koe's **One-Person Business** model and the **2 Hour Writer** content engine. The frame: you are not running a social media account. You are running a one-person business whose distribution layer happens to look like X, Threads, Instagram, and TikTok. Posts are not the work. Posts are the visible exhaust of daily writing on a specialized topic. Read in Koe's voice: produce yourself, productize your specific knowledge, distill long-form into atomic ideas, ship daily, compound.
|
|
10
|
+
>
|
|
11
|
+
> **Scope:** This playbook covers the multi-platform short-form surface — X/Twitter, Threads, Instagram, TikTok. LinkedIn lives in its own playbook under Justin Welsh's Operating System. Both playbooks share the "one idea, many surfaces" instinct but optimize for different rooms.
|
|
12
|
+
|
|
9
13
|
## Production Guidance
|
|
10
14
|
|
|
11
|
-
|
|
15
|
+
### The One-Person Business Frame
|
|
16
|
+
|
|
17
|
+
Every post produced under this playbook serves a **one-person business** — a single specialized human monetizing their accumulated knowledge × perspective × skill stack. Social is not a megaphone for a brand voice committee. It is leverage applied to one mind. Two consequences:
|
|
18
|
+
|
|
19
|
+
1. **The voice belongs to one named human.** Not a brand. Not a "we." If the post could have been written by any marketer on the team, the post is off-thesis and gets rewritten.
|
|
20
|
+
2. **The niche is non-negotiable.** A one-person business is built on a micro-niche so specific that demand is undeniable and you can charge premium for what you know. Generalist content gets buried. If a post drifts toward mass-audience self-help, it gets rewritten.
|
|
21
|
+
|
|
22
|
+
When in doubt, ask: *would this post make sense if it were the only thing a stranger ever read from this account?* If the answer is no — if it requires the broader brand context to land — it isn't a one-person-business post yet.
|
|
23
|
+
|
|
24
|
+
### The 2 Hour Writer Engine
|
|
25
|
+
|
|
26
|
+
Production runs on Koe's **2 Hour Writer** rhythm: one daily writing session produces one long-form anchor (the newsletter or essay), and the social surfaces are downstream **distillations** of that anchor. The pipeline:
|
|
27
|
+
|
|
28
|
+
1. **Capture** — sentences, observations, sharp lines collected throughout the day.
|
|
29
|
+
2. **Anchor (daily, long-form)** — one essay, one newsletter section, one chapter draft. This is the original thinking.
|
|
30
|
+
3. **Distill (social surfaces)** — atomic ideas extracted from the anchor:
|
|
31
|
+
- 3–5 X/Threads posts (one idea each)
|
|
32
|
+
- 1 X thread (the spine of the essay, compressed)
|
|
33
|
+
- 1 Instagram carousel (visual breakdown)
|
|
34
|
+
- 1 TikTok script (one idea, performed)
|
|
35
|
+
4. **Compound** — the same idea reappears across platforms over weeks because compounding requires repetition, not novelty.
|
|
36
|
+
|
|
37
|
+
**A standalone social post that did not come from a longer original work is a smell.** It usually means the writer skipped the thinking step and went straight to performance. The remediation is not "write a better post." The remediation is to write the essay first, then distill.
|
|
38
|
+
|
|
39
|
+
### Specialized Knowledge, Not Mass Appeal
|
|
40
|
+
|
|
41
|
+
Niche-down until it feels uncomfortable. Then niche-down again. The audience-of-one principle:
|
|
42
|
+
|
|
43
|
+
- Write for one specific person who looks like the customer of the one-person business. Not "marketers." Not "founders." A named role with a named problem at a named stage.
|
|
44
|
+
- The litmus test: *would a generalist content creator be embarrassed to publish this because it's too specific?* If yes, you are in the right zone.
|
|
45
|
+
- Mass-audience platitudes ("hustle harder," "consistency is key," "your mindset is everything") are anti-content under this playbook. They get followers who will never buy.
|
|
46
|
+
|
|
47
|
+
### Distillation, Not Performance
|
|
48
|
+
|
|
49
|
+
The first line of a post is **a sharp idea**, not a hook-bait device. Koe's distinction:
|
|
12
50
|
|
|
13
|
-
|
|
51
|
+
- **Sharp idea opener** — a complete claim that earns the rest of the post. ("Most one-person businesses fail because the founder confuses output with leverage.")
|
|
52
|
+
- **Hook-bait opener** — a pattern-interrupt device that promises something the post doesn't pay off. ("I lost $80K in 90 days. Here's what I learned.") This is engagement-farming, not writing.
|
|
14
53
|
|
|
15
|
-
|
|
16
|
-
- **Platform voice:** Adapt tone per platform while maintaining brand voice from BRAND.md. X is concise and direct. Instagram is visual-first with descriptive captions. Facebook allows longer narrative and community engagement.
|
|
17
|
-
- **One idea per post:** Social posts succeed by delivering one clear point, not summarizing multiple ideas. If the idea is complex, break it into a thread (X) or carousel (Instagram).
|
|
54
|
+
If the first line could be the only line and still teach something, the post is doing distillation. If the first line only makes sense because of what follows, the post is doing performance — rewrite.
|
|
18
55
|
|
|
19
|
-
###
|
|
56
|
+
### Authenticity Over Polish
|
|
20
57
|
|
|
21
|
-
-
|
|
22
|
-
- **No rhetorical questions.** The X algorithm deprioritizes posts with rhetorical questions (questions that do not expect an answer). Use statements, data points, or direct challenges instead. Questions that genuinely invite a response are acceptable.
|
|
23
|
-
- Thread-first for longer content: if the idea needs more than 280 characters, write as a thread with each tweet standalone-valuable. Number tweets in threads longer than 3 posts.
|
|
24
|
-
- URLs count as 23 characters regardless of actual length (X's t.co link wrapping).
|
|
25
|
-
- Hashtags: 1-3 maximum, integrated naturally or at end. More than 3 looks spammy on X.
|
|
58
|
+
Engineer-creators win when they sound like themselves. Koe is explicit: outsourcing your voice to a ghostwriter before the audience knows who you are kills the trust signal that makes a one-person business work. Applied here:
|
|
26
59
|
|
|
27
|
-
|
|
60
|
+
- Write in the voice you actually speak in. If you say "honestly" out loud, write "honestly." If you would never say "leverage your synergies," never write that.
|
|
61
|
+
- Idiosyncratic phrasing is a feature. The audience is buying *this specific human*, not a polished feed.
|
|
62
|
+
- Verifier note: voice deviations between platforms beyond the format constraints listed below are an anti-pattern (see DISC-SOCIAL-04).
|
|
28
63
|
|
|
29
|
-
|
|
30
|
-
- **Carousel structure:** 1:1 (feed-optimized) or 4:5 (maximum vertical space) ratio. Maximum 10 slides. Cover slide must have a hook. Content slides should have one point each. Closing slide should have a CTA.
|
|
31
|
-
- **Caption structure:** Hook in first line (before "more" truncation at ~125 characters), value in body, CTA and hashtags at end.
|
|
32
|
-
- **Hashtags:** 5-15 relevant hashtags, placed at the end of caption or in the first comment. Mix of broad and niche tags.
|
|
33
|
-
- **Reel captions:** Under 150 characters for visibility -- reels have less caption real estate.
|
|
34
|
-
- If a CTA needs a link, reference "link in bio" -- Instagram does not allow clickable links in post captions.
|
|
64
|
+
### Build Assets, Not Posts
|
|
35
65
|
|
|
36
|
-
|
|
66
|
+
Every distilled post must be **reusable**. The asset graph:
|
|
37
67
|
|
|
38
|
-
-
|
|
39
|
-
-
|
|
40
|
-
-
|
|
41
|
-
|
|
42
|
-
-
|
|
68
|
+
- A line of the essay → a tweet → a thread tweet → a carousel slide → a TikTok hook → a chapter sub-heading.
|
|
69
|
+
- Atomic ideas have IDs in the writer's swipe file. Reposting the same atomic idea every 90 days with a new framing is the engine, not duplication.
|
|
70
|
+
- A post that cannot be reused anywhere else is a leak in the system. Either upgrade the idea or cut it.
|
|
71
|
+
|
|
72
|
+
### Long-Form Anchor Is Required
|
|
73
|
+
|
|
74
|
+
Per Koe: **top of funnel = social platforms. Long-form = the relationship layer.** A social-only operation with no newsletter, no blog, no essay archive is a treadmill. Posts vanish; long-form compounds. The verifier checks (via DISC-SOCIAL-05) that the parent campaign declares its long-form anchor — and that the social distillation traces back to it.
|
|
43
75
|
|
|
44
76
|
---
|
|
45
77
|
|
|
46
78
|
## Discipline Gates
|
|
47
79
|
|
|
48
|
-
### DISC-
|
|
80
|
+
### DISC-SOCIAL-01: Distilled From Long-Form Anchor -- Tier 1
|
|
49
81
|
|
|
50
|
-
**Checks:**
|
|
51
|
-
**Against:**
|
|
82
|
+
**Checks:** Whether the post is a distillation of a longer original work, not a standalone performance
|
|
83
|
+
**Against:** The campaign's declared long-form anchor (newsletter issue, essay, blog post) referenced in the asset metadata or campaign brief
|
|
52
84
|
|
|
53
85
|
#### Evaluation Criteria
|
|
54
86
|
|
|
55
|
-
1. **
|
|
56
|
-
- PASS:
|
|
57
|
-
- WARN:
|
|
58
|
-
- FAIL:
|
|
59
|
-
- N/A: Asset is not targeting X/Twitter
|
|
87
|
+
1. **Anchor traceability**
|
|
88
|
+
- PASS: The asset metadata names a specific long-form anchor (essay slug, newsletter issue number, blog URL) and the post's core idea appears in that anchor
|
|
89
|
+
- WARN: An anchor is referenced but the connection is loose — the post extends the theme but not a specific passage
|
|
90
|
+
- FAIL: No anchor declared, or the anchor declared does not contain the idea — the post is a freestyle performance with no upstream thinking
|
|
60
91
|
|
|
61
|
-
|
|
62
|
-
- PASS: Caption is under 2,200 characters
|
|
63
|
-
- WARN: Caption is 2,000-2,200 characters (approaching limit, may need trimming)
|
|
64
|
-
- FAIL: Caption exceeds 2,200 characters (will be truncated by platform)
|
|
65
|
-
- N/A: Asset is not targeting Instagram
|
|
92
|
+
### DISC-SOCIAL-02: Sharp-Idea First Line -- Tier 1
|
|
66
93
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
- WARN: Post is 1,500-2,000 characters (long but functional; key message should be front-loaded)
|
|
70
|
-
- FAIL: Post exceeds 2,000 characters or key message is buried after the first 200 words
|
|
71
|
-
- N/A: Asset is not targeting Facebook
|
|
94
|
+
**Checks:** The first line is a complete, sharp idea — not a hook-bait device, rhetorical pattern-interrupt, or curiosity-gap setup
|
|
95
|
+
**Against:** Post body (first sentence)
|
|
72
96
|
|
|
73
|
-
|
|
97
|
+
#### Evaluation Criteria
|
|
74
98
|
|
|
75
|
-
**
|
|
76
|
-
|
|
99
|
+
1. **Opener type**
|
|
100
|
+
- PASS: First line states a complete claim or observation that teaches something on its own ("Specialized knowledge compounds; generalist content evaporates.")
|
|
101
|
+
- WARN: First line is a partial idea that requires the next line to land but is still substantive ("There's a reason most one-person businesses stall at $10K/month.")
|
|
102
|
+
- FAIL: First line is engagement-bait — a rhetorical question ("Ever wonder why...?"), a loss-confession hook ("I lost $X in Y days"), a curiosity-gap tease ("Nobody talks about this but..."), or a pattern-interrupt with no payoff ("STOP scrolling.")
|
|
77
103
|
|
|
78
|
-
|
|
104
|
+
### DISC-SOCIAL-03: Niche-Relevant, Not Mass-Audience -- Tier 1
|
|
105
|
+
|
|
106
|
+
**Checks:** The post speaks to a specific micro-niche, not a generalist self-improvement audience
|
|
107
|
+
**Against:** Post body + campaign ICP definition
|
|
79
108
|
|
|
80
|
-
|
|
81
|
-
- PASS: Content uses native format -- X: text, image, or thread; Instagram: image, carousel, or reel; Facebook: text+image, native video, or poll
|
|
82
|
-
- WARN: Link-based post but with substantial native text that delivers value independently of the link
|
|
83
|
-
- FAIL: Link-only post with no native content -- just a URL or "Check this out: [link]" with no additional context
|
|
109
|
+
#### Evaluation Criteria
|
|
84
110
|
|
|
85
|
-
|
|
86
|
-
- PASS:
|
|
87
|
-
- WARN:
|
|
88
|
-
- FAIL:
|
|
111
|
+
1. **Niche specificity**
|
|
112
|
+
- PASS: The post names a specific role, stage, or situation that the campaign ICP would recognize as theirs ("If you're an engineer-founder shipping your first SaaS solo, your distribution problem is not a marketing problem.")
|
|
113
|
+
- WARN: The post is on-topic for the niche but uses generalist framing — the specificity is implied, not stated
|
|
114
|
+
- FAIL: The post could appear on a generic motivation/hustle/mindset account and nobody would notice — no named role, no named stage, no named problem unique to the niche
|
|
89
115
|
|
|
90
|
-
### DISC-
|
|
116
|
+
### DISC-SOCIAL-04: Same-Human Voice Across Platforms -- Tier 2
|
|
91
117
|
|
|
92
|
-
**Checks:**
|
|
93
|
-
**Against:**
|
|
118
|
+
**Checks:** Voice consistency across the X/Threads/Instagram/TikTok variants of the same idea — one human, not four marketing teams
|
|
119
|
+
**Against:** All asset variants in the same distillation group
|
|
94
120
|
|
|
95
121
|
#### Evaluation Criteria
|
|
96
122
|
|
|
97
|
-
1. **
|
|
98
|
-
- PASS:
|
|
99
|
-
- WARN:
|
|
100
|
-
- FAIL:
|
|
101
|
-
- N/A: Asset is not targeting X/Twitter
|
|
123
|
+
1. **Voice coherence**
|
|
124
|
+
- PASS: Variants share vocabulary, cadence, and idiosyncratic phrasing — only format-driven differences (length, line breaks, visual structure) vary
|
|
125
|
+
- WARN: One variant drifts toward a different register (e.g., the TikTok script suddenly uses creator-economy slang the X post would never use)
|
|
126
|
+
- FAIL: Variants read as if written by different people — different vocabulary, different stance, different level of formality with no platform reason
|
|
102
127
|
|
|
103
|
-
|
|
104
|
-
- PASS: Carousel has a cover slide with a hook, content slides with one key point each, and a closing CTA slide
|
|
105
|
-
- WARN: Carousel present but missing clear structure (e.g., no cover hook, or CTA buried mid-carousel)
|
|
106
|
-
- FAIL: Carousel with walls of text per slide, or slides with no narrative flow (random order would not change meaning)
|
|
107
|
-
- N/A: Asset is not an Instagram carousel
|
|
128
|
+
### DISC-SOCIAL-05: Compounding-Friendly Asset Design -- Tier 2
|
|
108
129
|
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
- WARN: Text present but hook is weak or buried after generic opening
|
|
112
|
-
- FAIL: Image or video posted with no text or minimal text (under 20 characters)
|
|
113
|
-
- N/A: Asset is not targeting Facebook
|
|
130
|
+
**Checks:** The post is built as a reusable asset, not a one-shot performance
|
|
131
|
+
**Against:** Post body + swipe-file metadata (if present)
|
|
114
132
|
|
|
115
|
-
|
|
133
|
+
#### Evaluation Criteria
|
|
134
|
+
|
|
135
|
+
1. **Reusability**
|
|
136
|
+
- PASS: The atomic idea in the post is one that could be reframed and republished in 90 days, or recycled into another surface (thread, carousel, chapter) without modification beyond format
|
|
137
|
+
- WARN: The post is timely (references a current event or thread) and would need fresh framing to recycle, but the underlying claim is reusable
|
|
138
|
+
- FAIL: The post is so tied to a transient moment (a viral tweet reply, a one-off meme) that it has no second life — the asset is consumed on publish
|
|
139
|
+
|
|
140
|
+
### DISC-SOCIAL-06: Platform-Native Format Compliance -- Tier 1
|
|
116
141
|
|
|
117
|
-
**Checks:**
|
|
118
|
-
**Against:** Platform
|
|
142
|
+
**Checks:** Content respects the platform's native format constraints
|
|
143
|
+
**Against:** Platform specifications for the target surface
|
|
119
144
|
|
|
120
145
|
#### Evaluation Criteria
|
|
121
146
|
|
|
122
|
-
1. **
|
|
123
|
-
- PASS:
|
|
124
|
-
- WARN:
|
|
125
|
-
- FAIL:
|
|
126
|
-
- N/A:
|
|
147
|
+
1. **X/Twitter (single post or thread)**
|
|
148
|
+
- PASS: Each tweet ≤ 280 characters (URLs counted as 23); thread ≤ 9 tweets; each tweet stands alone as a teachable unit
|
|
149
|
+
- WARN: Tweet is 260–280 characters (no room for quote-tweet additions), or thread is 10–12 tweets (long but functional)
|
|
150
|
+
- FAIL: Any tweet exceeds 280 characters, or thread exceeds 12 tweets, or thread has tweets that cannot stand alone
|
|
151
|
+
- N/A: Asset is not targeting X/Twitter or Threads
|
|
127
152
|
|
|
128
|
-
2. **
|
|
129
|
-
- PASS:
|
|
130
|
-
- WARN:
|
|
131
|
-
- FAIL:
|
|
153
|
+
2. **Instagram (post or carousel)**
|
|
154
|
+
- PASS: Carousel ≤ 10 slides, 1:1 or 4:5 ratio, cover slide carries the sharp idea, one teaching point per content slide, closing slide names the long-form anchor or CTA
|
|
155
|
+
- WARN: Carousel uses 11 slides via a workaround, or cover slide is decorative rather than idea-carrying
|
|
156
|
+
- FAIL: Carousel exceeds 10 slides natively (impossible — auto-truncated), or has slides with walls of text that should have been the caption
|
|
157
|
+
- N/A: Asset is not targeting Instagram
|
|
158
|
+
|
|
159
|
+
3. **TikTok script**
|
|
160
|
+
- PASS: Script ≤ 90 seconds spoken, opens with the sharp idea in the first 3 seconds, one teaching point, no engagement-bait CTA at end
|
|
161
|
+
- WARN: Script is 90–120 seconds (over native sweet spot but still in algorithmic range)
|
|
162
|
+
- FAIL: Script exceeds 120 seconds, or opens with a pattern-interrupt with no payoff in the first 3 seconds
|
|
163
|
+
- N/A: Asset is not a TikTok script
|
|
132
164
|
|
|
133
165
|
---
|
|
134
166
|
|
|
@@ -140,166 +172,205 @@ None -- all base gates keep default tiers.
|
|
|
140
172
|
|
|
141
173
|
## Format Rules
|
|
142
174
|
|
|
143
|
-
Platform-specific formatting enforced during production
|
|
175
|
+
Platform-specific formatting enforced during production. These constraints are the *containers*; the One-Person Business thesis is the content.
|
|
144
176
|
|
|
145
|
-
### X/Twitter
|
|
177
|
+
### X / Twitter / Threads
|
|
146
178
|
|
|
147
|
-
- **
|
|
148
|
-
- **
|
|
149
|
-
- **
|
|
150
|
-
- **
|
|
151
|
-
- **
|
|
152
|
-
- **Quote
|
|
179
|
+
- **Single post:** ≤ 280 characters (URLs count as 23 regardless of actual length).
|
|
180
|
+
- **Thread length:** ≤ 9 tweets per thread is the sweet spot. Threads over 12 tweets get truncated by reader attention long before by the platform.
|
|
181
|
+
- **Each tweet standalone-teachable.** Strip the surrounding tweets and any single tweet should still teach. If a tweet only exists as connective tissue, cut it.
|
|
182
|
+
- **Numbered threads** only when sequence matters (a how-to). Idea threads (Koe's default) do not need numbering — each tweet is its own atom.
|
|
183
|
+
- **Hashtags:** 0–2 maximum. Hashtags on X are vestigial. Use them only when joining an active conversation.
|
|
184
|
+
- **Media:** 16:9 or 1:1. Quote-tweet additions stay under 200 characters to leave room for the quoted content.
|
|
153
185
|
|
|
154
186
|
### Instagram
|
|
155
187
|
|
|
156
|
-
- **Caption
|
|
157
|
-
- **Carousel:** 1:1 or 4:5 ratio, maximum 10 slides
|
|
158
|
-
-
|
|
159
|
-
-
|
|
160
|
-
-
|
|
161
|
-
- **
|
|
188
|
+
- **Caption:** ≤ 2,200 characters. The first 125 characters before the "more" truncation must carry the sharp idea — not a generic intro.
|
|
189
|
+
- **Carousel:** 1:1 or 4:5 ratio, **maximum 10 slides** (platform-enforced).
|
|
190
|
+
- Slide 1 (cover): the sharp idea, large type, no visual clutter.
|
|
191
|
+
- Slides 2–9 (content): one teaching point per slide.
|
|
192
|
+
- Slide 10 (closing): the long-form anchor reference ("Full essay in bio") or one CTA. Not both.
|
|
193
|
+
- **Reels caption:** ≤ 150 characters for visibility.
|
|
194
|
+
- **Hashtags:** 5–10 niche-specific tags. Avoid mass-audience tags (#motivation, #entrepreneur) — they pull the wrong audience.
|
|
195
|
+
- **No clickable links** in captions — reference "link in bio."
|
|
162
196
|
|
|
163
|
-
###
|
|
197
|
+
### TikTok
|
|
164
198
|
|
|
165
|
-
- **
|
|
166
|
-
- **
|
|
167
|
-
- **
|
|
168
|
-
- **
|
|
169
|
-
- **
|
|
170
|
-
- **Polls:** Use native poll feature for engagement; keep options to 2-4 choices
|
|
199
|
+
- **Script length:** ≤ 90 seconds spoken. The native sweet spot is 30–60 seconds.
|
|
200
|
+
- **First 3 seconds carry the sharp idea.** No "What's up everyone" intros. No "Wait for it" tease. The idea opens; the body proves.
|
|
201
|
+
- **One teaching point per script.** Multi-point TikToks get cut at retention drops. Save the second point for the next video.
|
|
202
|
+
- **No engagement-bait CTA.** "Comment X for the template" is a farming pattern. Instead: "Full breakdown in this week's newsletter — link in bio."
|
|
203
|
+
- **Caption:** ≤ 150 characters. The caption supports the spoken script — it doesn't replace it.
|
|
171
204
|
|
|
172
205
|
---
|
|
173
206
|
|
|
174
207
|
## Examples
|
|
175
208
|
|
|
176
|
-
### Good:
|
|
209
|
+
### Good: X Thread Distilled From a Newsletter Essay
|
|
177
210
|
|
|
178
211
|
```
|
|
179
|
-
Tweet 1 (
|
|
180
|
-
|
|
212
|
+
Tweet 1 (212 chars):
|
|
213
|
+
Most one-person businesses fail at the same step.
|
|
214
|
+
|
|
215
|
+
It's not pricing. It's not the product. It's not even the audience.
|
|
181
216
|
|
|
182
|
-
|
|
217
|
+
It's that the founder confuses output with leverage — and burns out producing content that doesn't compound.
|
|
183
218
|
|
|
184
|
-
|
|
219
|
+
Tweet 2 (231 chars):
|
|
220
|
+
Output is what you produce in a day.
|
|
185
221
|
|
|
186
|
-
|
|
222
|
+
Leverage is what one day of output keeps producing for the next 12 months.
|
|
187
223
|
|
|
188
|
-
|
|
189
|
-
Here's the data:
|
|
224
|
+
A daily essay with no distillation strategy is output.
|
|
190
225
|
|
|
191
|
-
|
|
192
|
-
- Question-first tweets: 0.8% engagement rate
|
|
193
|
-
- Link-first tweets: 0.3% engagement rate
|
|
226
|
+
A daily essay that becomes 5 posts, 1 thread, 1 carousel, 1 short — is leverage.
|
|
194
227
|
|
|
195
|
-
|
|
228
|
+
Tweet 3 (244 chars):
|
|
229
|
+
The 2-hour writer's pipeline:
|
|
196
230
|
|
|
197
|
-
|
|
198
|
-
|
|
231
|
+
1. Write the essay first
|
|
232
|
+
2. Pull 5 atomic ideas out of it
|
|
233
|
+
3. Each atom becomes a post
|
|
234
|
+
4. The spine of the essay becomes a thread
|
|
235
|
+
5. The frame becomes a carousel
|
|
236
|
+
6. The hook becomes a short
|
|
199
237
|
|
|
200
|
-
|
|
238
|
+
One session. Five surfaces. Twelve months of compounding.
|
|
201
239
|
|
|
202
|
-
|
|
240
|
+
Tweet 4 (188 chars):
|
|
241
|
+
The mistake almost everyone makes:
|
|
203
242
|
|
|
204
|
-
|
|
243
|
+
They write posts directly.
|
|
205
244
|
|
|
206
|
-
|
|
245
|
+
So the posts have no upstream thinking. So the posts don't compound. So they burn out in 90 days wondering why content doesn't work.
|
|
246
|
+
|
|
247
|
+
Write the essay first.
|
|
207
248
|
```
|
|
208
249
|
|
|
209
|
-
**Why it works:** Opens with
|
|
250
|
+
**Why it works:** Opens with a sharp idea, not a hook-bait. Each tweet stands alone — strip any one and the others still teach. Distilled directly from a newsletter essay (anchor traceability). Niche-specific (one-person business operators, not "creators in general"). Voice is unmistakably the same human across all four tweets. The thread is reusable in 90 days with new framing because the underlying claim is evergreen.
|
|
251
|
+
|
|
252
|
+
---
|
|
210
253
|
|
|
211
|
-
### Good: Instagram Carousel
|
|
254
|
+
### Good: Instagram Carousel Distilled From the Same Essay
|
|
212
255
|
|
|
213
256
|
```
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
257
|
+
Slide 1 (cover): "Output is not leverage."
|
|
258
|
+
Slide 2: "Output = what you produce in a day."
|
|
259
|
+
Slide 3: "Leverage = what one day of output keeps producing for 12 months."
|
|
260
|
+
Slide 4: "Daily essay with no distillation = output. Daily essay distilled into 5 posts, 1 thread, 1 carousel, 1 short = leverage."
|
|
261
|
+
Slide 5: "The 2-hour pipeline: write essay first. Pull 5 atoms. Each atom → a post. Spine → a thread. Frame → a carousel. Hook → a short."
|
|
262
|
+
Slide 6: "One session. Five surfaces. Twelve months of compounding."
|
|
263
|
+
Slide 7: "Most creators write posts directly. So the posts have no upstream thinking. So they don't compound."
|
|
264
|
+
Slide 8 (closing): "Full breakdown in this week's newsletter — link in bio."
|
|
221
265
|
|
|
222
|
-
Caption (
|
|
223
|
-
|
|
266
|
+
Caption (first line, before "more" cut):
|
|
267
|
+
The reason your daily posting isn't compounding isn't your hook. It's your pipeline.
|
|
224
268
|
|
|
225
|
-
|
|
226
|
-
Because they weren't actionable.
|
|
269
|
+
[remainder of caption mirrors the carousel + hashtags]
|
|
227
270
|
|
|
228
|
-
|
|
271
|
+
#onepersonbusiness #soloprenership #writingonline #digitalleverage #2hourwriter
|
|
272
|
+
```
|
|
229
273
|
|
|
230
|
-
|
|
274
|
+
**Why it works:** Same atomic idea as the X thread (compounding asset design). Cover slide is a sharp idea, not a decorative quote. One teaching point per slide. Closing slide names the anchor. Caption hook lives before the truncation. Hashtags are niche-specific (one-person business operators), not mass-audience (#hustle, #entrepreneur).
|
|
231
275
|
|
|
232
|
-
|
|
276
|
+
---
|
|
277
|
+
|
|
278
|
+
### Bad: Engagement-Bait X Post
|
|
233
279
|
|
|
234
|
-
#MarketingMetrics #B2BMarketing #DataDriven #MarketingDashboard #GrowthMarketing
|
|
235
280
|
```
|
|
281
|
+
I lost $80,000 in my first year as a creator.
|
|
236
282
|
|
|
237
|
-
|
|
283
|
+
Here's the ONE thing I wish someone had told me 👇
|
|
238
284
|
|
|
239
|
-
|
|
285
|
+
(comment "YES" if you want the full breakdown)
|
|
286
|
+
```
|
|
287
|
+
|
|
288
|
+
**Why it fails:** DISC-SOCIAL-02 FAIL (loss-confession hook with curiosity-gap setup — performance, not distillation). DISC-SOCIAL-01 FAIL (no traceable anchor — the "ONE thing" is bait, not a real idea from a real essay). DISC-SOCIAL-05 FAIL (one-shot performance — cannot be reused; the value is in the cliffhanger). Pure engagement-farming. Builds the wrong audience: people who comment "YES" for free content, not people who buy specialized knowledge.
|
|
289
|
+
|
|
290
|
+
---
|
|
291
|
+
|
|
292
|
+
### Bad: Mass-Audience Platitude
|
|
240
293
|
|
|
241
294
|
```
|
|
242
|
-
|
|
295
|
+
Consistency is the difference between successful creators and everyone else.
|
|
243
296
|
|
|
244
|
-
|
|
297
|
+
Post every day.
|
|
298
|
+
Show up.
|
|
299
|
+
Trust the process.
|
|
245
300
|
|
|
246
|
-
|
|
301
|
+
That's it. That's the secret.
|
|
247
302
|
```
|
|
248
303
|
|
|
249
|
-
**Why it fails:** DISC-
|
|
304
|
+
**Why it fails:** DISC-SOCIAL-03 FAIL (mass-audience generic — could appear on any motivation account and nobody would notice). DISC-SOCIAL-01 FAIL (no anchor — this is filler, not a distillation of any specific thinking). DISC-SOCIAL-02 WARN at best (the opening line is a generic claim, not a sharp idea — "consistency is key" is the most-repeated cliché in the genre). Pulls in followers who will never become customers of a one-person business because they aren't looking for specialized knowledge; they're looking for permission.
|
|
250
305
|
|
|
251
|
-
|
|
306
|
+
---
|
|
252
307
|
|
|
253
|
-
|
|
254
|
-
https://example.com/blog/new-post
|
|
308
|
+
### Bad: Hookless Long-Form Dump on X
|
|
255
309
|
|
|
256
|
-
|
|
310
|
+
```
|
|
311
|
+
So I've been thinking a lot about the creator economy and how everyone keeps
|
|
312
|
+
saying the same things over and over. There are so many takes out there but
|
|
313
|
+
I think the real issue people miss is that content is downstream of thinking
|
|
314
|
+
and thinking is downstream of writing and most people skip the writing part
|
|
315
|
+
and go straight to performing on camera or in text and that's why their
|
|
316
|
+
content doesn't land and they wonder why nothing works after 90 days...
|
|
257
317
|
```
|
|
258
318
|
|
|
259
|
-
**Why it fails:** DISC-
|
|
319
|
+
**Why it fails:** DISC-SOCIAL-02 FAIL (no sharp idea opener — "So I've been thinking" is meandering setup). DISC-SOCIAL-06 FAIL (single tweet exceeds 280; would need to be a thread, but each tweet wouldn't stand alone — the writer is dumping a half-finished essay into X). DISC-SOCIAL-01 WARN (the underlying observation about "content is downstream of writing" is a real Koe-flavored idea, but it's buried in 200 words of mush instead of distilled). The fix: write the essay, then come back and pull this paragraph apart into 3 tweets with a sharp opener.
|
|
260
320
|
|
|
261
321
|
---
|
|
262
322
|
|
|
263
323
|
## Anti-Patterns
|
|
264
324
|
|
|
265
|
-
1. **
|
|
325
|
+
1. **Engagement-bait hooks.** Loss-confessions ("I lost $X in Y days"), curiosity gaps ("Nobody talks about this but..."), and pattern-interrupts ("STOP scrolling.") farm engagement from the wrong audience. The audience that responds to bait is the audience that never buys. Anti-Koe.
|
|
326
|
+
|
|
327
|
+
2. **Content-marketing-for-content's-sake.** Posting daily because "the algorithm rewards consistency" with no upstream essay, no anchor, no distillation pipeline is treadmill content. Output, not leverage. The fix is not more posts; the fix is a long-form anchor.
|
|
328
|
+
|
|
329
|
+
3. **Mass-audience platitudes.** "Hustle harder," "consistency is key," "mindset is everything." These pull in mass followers who will never buy specialized knowledge from a one-person business. They look like growth; they are a tax. Niche-down ruthlessly.
|
|
266
330
|
|
|
267
|
-
|
|
331
|
+
4. **Niche-hopping.** Switching topic every 30 days — productivity this month, AI next month, fitness the month after — destroys the compounding effect. Specialized knowledge requires staying specialized. Pick one niche and stay long enough for the audience to know you for it.
|
|
268
332
|
|
|
269
|
-
|
|
333
|
+
5. **Outsourcing the voice early.** Ghostwriters for a one-person business before the audience knows who the human is kills the trust signal that makes a one-person business work in the first place. The voice IS the moat. Outsource production logistics, never voice.
|
|
270
334
|
|
|
271
|
-
|
|
335
|
+
6. **Treating every platform as a separate brand.** Copy-paste-then-edit is fine; but the human behind the posts should sound the same across X, Threads, Instagram, and TikTok. Different format, same human. Voice fragmentation across platforms reads as a marketing team — exactly what a one-person business is not.
|
|
272
336
|
|
|
273
|
-
|
|
337
|
+
7. **Posting without a long-form anchor.** Pure short-form operations with no newsletter, no blog, no essay archive are a treadmill. Short-form is the discovery layer; long-form is the relationship layer. No anchor → no compounding.
|
|
274
338
|
|
|
275
|
-
|
|
339
|
+
8. **Skill-multiplying instead of skill-stacking.** Adding five unrelated skills (design + copywriting + video editing + cold email + SEO + ads + community management + ...) is scatter. The one-person business compounds when 2–3 stacked skills (writing + niche expertise + one production craft) meet a specific micro-niche. Anti-pattern in production: trying to be a polymath account.
|
|
276
340
|
|
|
277
341
|
---
|
|
278
342
|
|
|
279
343
|
## Metrics
|
|
280
344
|
|
|
281
|
-
What to measure post-ship
|
|
345
|
+
What to measure post-ship. Metrics under this playbook prioritize signals of **specialized-knowledge demand** over generic engagement.
|
|
282
346
|
|
|
283
|
-
###
|
|
284
|
-
- **Impressions:** How many times the tweet appeared in feeds
|
|
285
|
-
- **Engagements:** Likes, retweets, quote tweets, replies combined
|
|
286
|
-
- **Repost rate:** Retweets + quote tweets / impressions -- indicates content worth sharing
|
|
287
|
-
- **Link clicks:** If link in reply strategy used, track clicks via UTM parameters
|
|
347
|
+
### Primary (the ones that map to a one-person business)
|
|
288
348
|
|
|
289
|
-
|
|
290
|
-
- **
|
|
291
|
-
- **
|
|
292
|
-
- **
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
- **Reach
|
|
297
|
-
- **Engagement rate
|
|
298
|
-
- **
|
|
299
|
-
- **
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
- **
|
|
305
|
-
- **
|
|
349
|
+
- **Saves.** The strongest content-quality signal across platforms. A save means the audience plans to come back. Niche-relevant saves > mass likes every time.
|
|
350
|
+
- **Profile clicks → newsletter subscriptions.** The handoff from short-form (discovery) to long-form (relationship) is the entire game. Track profile clicks within 48h of posting and the resulting newsletter signups.
|
|
351
|
+
- **Niche-relevant follower growth.** Net new followers whose own profiles match the campaign ICP. Vanity follower count is a lagging indicator of the wrong thing; niche-match growth is a leading indicator of the right thing.
|
|
352
|
+
- **Shares to a specific named recipient.** Generic shares are noise. Shares with a comment to a named friend ("@you need to read this") indicate the content hit a real role-specific problem.
|
|
353
|
+
|
|
354
|
+
### Secondary (the surface signals)
|
|
355
|
+
|
|
356
|
+
- **Reach / impressions** per surface — track trend, not absolute. Algorithmic noise dominates short-term absolute numbers.
|
|
357
|
+
- **Engagement rate** — (saves + shares + comments) / reach. Likes intentionally de-weighted because likes are the most-farmed engagement signal.
|
|
358
|
+
- **Reply quality** — substantive replies (≥ 2 sentences, on-topic, from accounts that match the niche) over emoji/one-word reactions. Track the *type* of reply, not just count.
|
|
359
|
+
- **Carousel completion rate (Instagram)** — % reaching slide 10. Below 40% suggests weak slide structure or cover slide that didn't earn the swipe.
|
|
360
|
+
- **TikTok average watch time** — % of script consumed. Below 50% on a 60-second script suggests the first 3 seconds didn't land the sharp idea.
|
|
361
|
+
|
|
362
|
+
### Compounding signals (the ones that prove the engine works)
|
|
363
|
+
|
|
364
|
+
- **Atomic-idea reuse rate.** % of monthly posts that are re-framings or recycles of ideas from older essays. Healthy engines run at 30–50% reuse. 0% reuse means the writer is reinventing the wheel weekly.
|
|
365
|
+
- **Anchor → social attribution.** For each long-form essay published, the count of distilled posts produced from it. Target ≥ 7 distilled assets per essay in a mature pipeline.
|
|
366
|
+
- **Content-to-customer conversion.** The compounding north star: of every 1,000 niche-matched followers, how many become customers of the one-person business over 12 months? This is the only metric that proves the social system is doing its job.
|
|
367
|
+
|
|
368
|
+
---
|
|
369
|
+
|
|
370
|
+
## Sources
|
|
371
|
+
|
|
372
|
+
- Dan Koe, *The One-Person Business Model: How to Monetize Yourself* — https://thedankoe.com/letters/the-one-person-business-model-how-to-monetize-yourself/
|
|
373
|
+
- Dan Koe, *The One-Person Business Roadmap: 99% of Creators Make This Mistake* — https://thedankoe.com/letters/the-one-person-business-roadmap-99-of-creators-make-this-mistake/
|
|
374
|
+
- Dan Koe, *Modern Mastery* (course / community hub for the 2 Hour Writer methodology) — https://www.modernmastery.co/
|
|
375
|
+
- Dan Koe, *The 2 Hour Writer* (productized course on the daily writing → distillation engine) — https://thedankoe.com/the-2-hour-writer/
|
|
376
|
+
- Dan Koe, YouTube essays and long-form video archive — https://www.youtube.com/@thedankoe
|