The Four-Feature Distributed Intelligence Network

By @hrosspet ·

Date: November 21, 2025 Status: Ideation / Brainstorming Phase Vision: A complete ecosystem for thinking, learning, creating, and connecting


Executive Summary

Write or Perish evolves from journaling app to distributed intelligence network with four core features:

  1. Effortless Journaling (Input) - Capture thoughts via text/voice
  2. Download (Consume) - User-aligned content recommendations from MemeOS
  3. Upload (Broadcast) - User-consented sharing of internal state to multiple channels
  4. Intention Market (Matchmaking) - Serendipitous connection through complementary needs/offerings

The Innovation: These four features create a closed loop where private reflection fuels public contribution, consumption informs creation, and expressed intentions enable serendipitous collaboration.


The Complete Architecture

Feature 1: Effortless Journaling (Already Exists)

Purpose: Capture thoughts with zero friction.

Current State:

  • Text + voice input with tab-kill resumability for voice workflows
  • Tree-structured conversations with LLMs
  • Multi-model support (GPT-4o, GPT-4o-mini, Claude Sonnet 4.6, Claude Opus 4.6)
  • Async processing for transcription, LLM, TTS (with SSE streaming for TTS)
  • Version history
  • Reflect/Orient workflows - Structured voice-first interaction modes for self-reflection and goal-setting with LLM-generated todos (#70). Converse workflow implemented but untested and currently disabled.
  • Iterative profile generation - AI-powered analysis of user's full writing archive, with automatic profile updates after new entries (#71)
  • System prompt management - Prompts page for viewing and editing AI system prompts (#72), with FK-linked prompt nodes (#73)
  • Cmd+K keyword search - Global search with date filtering, diacritics-insensitive matching, and infinite scroll pagination
  • Claude data export import - Import conversation history from Claude (#64)
  • Dollar-cost tracking - Per-user API cost tracking via APICostLog (#61)
  • Pin-to-profile - Pin selected nodes to user profile (#60)
  • Cmd+Click to open nodes in new tab across all previews

Status: ✅ Production-ready, actively used, significantly expanded beyond basic journaling


Feature 2: Download - User-Aligned Content Recommendation (Designed)

Purpose: Surface relevant content from your bookmark archive when you need it.

How It Works:

  1. You write about topic X in journal
  2. System analyzes: current node + thread context + personal profile
  3. MemeOS integration surfaces bookmarks about X
  4. Ranking: 70% semantic relevance + 30% spaced repetition urgency
  5. "Related content you've saved" appears in sidebar

Value: Your writing context becomes the query for what to read next.

Status: 📋 Designed (see CHAT-AND-MEMEOS-ARCHITECTURE.md)


Feature 3: Upload - Broadcasting Internal State (NEW)

Purpose: Share your current internal state - needs, desires, intentions, opportunities - to appropriate audiences and channels.

3.1 Core Concept

Traditional Content Creation: "I will write a polished blog post and publish it"

  • High activation energy
  • Publishing pressure
  • Perfectionism blocks sharing

Upload Feature: "I've been thinking about X, the system extracts the shareable essence and routes it appropriately"

  • Low activation energy
  • AI handles transformation
  • Natural byproduct of journaling

3.2 What Gets Shared (Internal State Types)

1. Needs

  • "I'm looking for..."
  • "I need help with..."
  • "I wish I could learn..."
  • "I'm stuck on..."

Examples:

  • "Looking for recommendations on managing remote teams"
  • "Need a designer for a side project"
  • "Wish I could find a thinking partner for exploring consciousness"

2. Desires

  • "I want to..."
  • "I'm hoping to..."
  • "I'd love to..."
  • "I'm aspiring toward..."

Examples:

  • "Want to write a book about AI alignment"
  • "Hoping to find a cofounder for climate tech startup"
  • "Would love to collaborate on research about spaced repetition"

3. Intentions

  • "I'm planning to..."
  • "I'm committing to..."
  • "I'm starting..."
  • "I'm going to..."

Examples:

  • "Planning to run daily for 100 days, starting tomorrow"
  • "Committing to publishing weekly essays on decision-making"
  • "Starting a study group on category theory"

4. Opportunities / Offerings

  • "I can help with..."
  • "I'm offering..."
  • "I have capacity for..."
  • "I'm looking to give..."

Examples:

  • "Can help early-stage founders with growth strategy"
  • "Offering free resume reviews for career changers"
  • "Have capacity to mentor 2 people on technical writing"

5. Insights / Learnings

  • "I've learned that..."
  • "I've discovered..."
  • "Here's what I know about..."
  • "After X months of Y, I've realized..."

Examples:

  • "After 6 months of daily meditation, I've learned these 3 things"
  • "Discovered a framework for prioritizing tasks by energy level"
  • "Here's what I know about building habits as someone with ADHD"

6. Questions / Explorations

  • "I'm wondering about..."
  • "I'm exploring..."
  • "I'm confused by..."
  • "How do you think about...?"

Examples:

  • "I'm wondering if burnout is actually a signal, not a problem"
  • "Exploring whether AI alignment is fundamentally a coordination problem"
  • "How do you balance ambition with presence?"

3.3 Multi-Channel Distribution

The Innovation: Different content goes to different channels based on format, audience, and permanence.

Channel Types:

A. User-Defined Circles (Private → Semi-Public)

  • Family
  • Close friends
  • Colleagues
  • Professional network
  • Accountability groups

B. External Publishing Platforms (Public)

  1. Twitter/X (Short-form, high-velocity)

    • Insights (1-3 sentences)
    • Questions to audience
    • Quick updates on progress/intentions
    • Format: Thread or single tweet
    • Frequency: As insights emerge
  2. Substack/Newsletter (Long-form, low-velocity)

    • Essays (1000+ words)
    • Deep dives on topics
    • Synthesized learnings over time
    • Collections of related journal entries
    • Format: Polished article
    • Frequency: Weekly/monthly
  3. LinkedIn (Professional, career-building)

    • Career insights
    • Professional learnings
    • Thought leadership
    • Format: 300-500 word post
    • Frequency: 2-4x per month
  4. Personal Blog/Website (Long-form, owned platform)

    • Similar to Substack but self-hosted
    • More control, more technical setup
  5. GitHub Gists (Technical sharing)

    • Code snippets with context
    • Technical TILs (Today I Learned)
    • Format: Code + explanation

C. Intention Market (Discovery platform within Write or Perish)

  • Needs, desires, opportunities
  • Structured for matchmaking (see Feature 4)
  • Searchable and filterable
  • Time-limited (intentions expire)

3.4 Tiered Sharing Model

Tier 1: Private Circles (Opt-in, named individuals)

Sharing to: Family (12 people)
Privacy: Only these specific people can see
Format: Can be raw, unpolished
Content: Personal updates, vulnerable shares

Tier 2: Semi-Public Circles (Opt-in, defined groups)

Sharing to: Professional Network (LinkedIn connections)
Privacy: Anyone in this group can see
Format: Polished, professional
Content: Career insights, learnings, opportunities

Tier 3: Fully Public (Opt-in, anyone can see)

Sharing to: Twitter / Substack / Intention Market
Privacy: Public, indexed, discoverable
Format: Highly polished, valuable
Content: Universal insights, offerings, questions

Progressive Disclosure:

  • User starts with Tier 1 (private circles)
  • Builds confidence and habits
  • Gradually opts into Tier 2 (semi-public)
  • Eventually explores Tier 3 (public)
  • Can always move content between tiers

3.5 AI-Driven Content Routing

The System Analyzes:

  1. Content type - Is this a need? Insight? Question? Opportunity?
  2. Shareability - Is this complete enough to share?
  3. Audience fit - Who would benefit/resonate?
  4. Format fit - Tweet-sized? Essay-length? Technical?
  5. Channel match - Where should this go?

Routing Decision Tree:

Journal Entry: "I've been thinking about habit formation..."
│
├─> Contains universal insight?
│   YES → Extract key framework
│   │
│   ├─> Length?
│   │   SHORT (1-3 sentences) → Suggest Twitter
│   │   MEDIUM (2-3 paragraphs) → Suggest LinkedIn
│   │   LONG (1000+ words) → Suggest Substack
│   │
│   └─> Also suggest: Professional circle, Public feed
│
├─> Contains personal need?
│   YES → Extract need statement
│   │
│   └─> Suggest: Intention Market + Close friends circle
│
├─> Contains offering/opportunity?
│   YES → Extract opportunity
│   │
│   └─> Suggest: Intention Market + Professional network
│
└─> Raw processing/venting?
    NO SHARE → Keep private

3.6 Example Flow: Journal → Multi-Channel

Scenario: You write a journal entry about your struggle with burnout.

Journal Entry (Private):

God, I'm so burnt out. Work is crushing me. Had another
panic attack today. Manager keeps piling on more. I can't
say no. I hate that I can't say no. Why am I like this?

[...500 more words of processing...]

Wait. Maybe the problem isn't that I'm weak. Maybe it's
that I've been treating my energy like it's infinite. Like
burnout is a personal failing instead of a system signal.

What if burnout is feedback? Like pain telling you to
stop touching the hot stove?

Three things I'm realizing:
1. Rest isn't optional, it's strategic
2. Boundaries are skills you build, not personality traits
3. Burnout is usually a mismatch between values and actions

I need to figure out what I actually value and whether
this job aligns. And I need to learn to say no.

AI Analysis:

{
  "content_type": ["insight", "need"],
  "shareability": 0.85,
  "requires_transformation": true,
  "privacy_concerns": ["mentions manager", "mentions panic attacks"],
  "suggested_shares": [
    {
      "channel": "twitter",
      "audience": "public",
      "format": "short_thread",
      "content": "After 6 months of burnout, 3 realizations:\n\n1. Rest isn't optional, it's strategic\n2. Boundaries are skills, not personality traits\n3. Burnout = mismatch between values and actions\n\nStill figuring this out, but these shifts helped.",
      "reasoning": "Universal insight, actionable, vulnerable but resolved"
    },
    {
      "channel": "linkedin",
      "audience": "professional",
      "format": "medium_post",
      "content": "[300-word version with more context, less vulnerability]",
      "reasoning": "Professional relevance, career insight"
    },
    {
      "channel": "intention_market",
      "audience": "public",
      "format": "need",
      "content": "Looking for: Thinking partners exploring the relationship between burnout and values alignment. Especially interested if you've navigated this transition.",
      "reasoning": "Explicit need, could lead to valuable connections"
    },
    {
      "channel": "family_circle",
      "audience": "close_friends",
      "format": "personal_update",
      "content": "[More raw version, includes struggle context]",
      "reasoning": "Inner circle can hold vulnerability"
    }
  ]
}

User Sees:

💡 Your entry today could help others:

[Twitter] (Public)
After 6 months of burnout, 3 realizations:
1. Rest isn't optional, it's strategic
2. Boundaries are skills, not personality traits
3. Burnout = mismatch between values and actions

Still figuring this out, but these shifts helped.

[Share to Twitter] [Edit] [Dismiss]

---

[Intention Market] (Public)
Need: Thinking partners exploring burnout and values alignment

[Add to Market] [Edit] [Dismiss]

---

[Close Friends] (8 people)
[Shows more personal version with context about panic attacks]

[Share to Friends] [Edit] [Dismiss]

User approves all three → Content distributed to appropriate channels.

Results:

  • Twitter: 47 people resonate, 3 share their own burnout stories
  • Intention Market: 2 people reach out who are exploring similar questions
  • Close Friends: Mom and 2 friends respond with support and advice

3.7 Cross-Platform Publishing Mechanics

Twitter Integration:

# User authorizes Twitter OAuth
# System can post on their behalf when they approve

POST /api/upload/twitter
{
  "content": "After 6 months of burnout...",
  "type": "thread" | "single",
  "draft": false  # If true, creates draft for manual posting
}

# Returns link to tweet/thread
# Stores reference in Share model

Substack Integration:

# System generates draft in Substack via API
# User can preview, edit, schedule in Substack directly

POST /api/upload/substack
{
  "title": "What I Learned About Burnout",
  "content": "[Full essay from multiple journal entries]",
  "draft": true,  # Always draft first
  "notify_subscribers": false  # User controls in Substack
}

# Returns link to Substack draft

Key Principle:

  • Always create drafts first for external platforms
  • User has final say before going live
  • Can edit in native platform after export
  • Link back to original journal entry

3.8 Collections & Synthesis

Multi-Entry Essays:

Sometimes a shareable insight emerges across multiple journal entries over weeks.

Example:

  • Week 1: "Started thinking about habit formation"
  • Week 2: "Realized habits are identity-based"
  • Week 3: "Tested a new approach, it worked"
  • Week 4: "Three principles I've discovered"

System suggests: "You've written 8 entries about habits over 4 weeks. There's a coherent narrative here. Want to synthesize into an essay?"

User approves → AI generates draft essay:

  • Pulls key insights from all 8 entries
  • Structures chronologically or thematically
  • Adds transitions
  • Creates introduction and conclusion
  • Outputs 1500-word essay suitable for Substack

User edits and publishes.

Value: Your journal becomes the raw material for long-form content without additional writing burden.

3.9 Privacy & Consent (Critical)

Principles:

  1. Explicit Opt-In

    • Nothing shared without user approval
    • Each channel requires separate authorization
    • Can revoke channel access anytime
  2. Granular Control

    • Choose exactly what goes where
    • Can edit before sharing
    • Can un-share after publishing (within platform limits)
  3. Privacy by Default

    • Journal is private unless explicitly shared
    • Suggestions are suggestions, not automatic actions
    • Can disable suggestions entirely
  4. Transparent Routing

    • Always show which channels/audiences
    • Preview exactly what will be shared
    • Explain why system is suggesting each channel
  5. Reputation Protection

    • AI flags potentially controversial content
    • Warns about professional reputation risks
    • Requires extra confirmation for sensitive topics

Feature 4: Intention Market - Serendipitous Matchmaking (NEW)

Purpose: Create a dynamic marketplace of needs, offerings, and intentions that enables serendipitous collaboration.

4.1 Core Concept

Traditional Networking:

  • You meet people randomly
  • Exchange "what do you do?"
  • Maybe find commonality, usually don't
  • Weak signal of actual collaboration potential

Intention Market:

  • You broadcast structured state (needs, offerings, intentions)
  • System matches complementary intentions
  • High signal of collaboration potential
  • Serendipity through data

Analogy: It's like a bulletin board where everyone posts:

  • "I'm looking for..."
  • "I can help with..."
  • "I'm exploring..."
  • "I'm offering..."

And the system actively finds matches.

4.2 Structure of Intentions

Intention Types:

1. Needs (Seeking input/help)

{
  "type": "need",
  "user_id": 123,
  "statement": "Looking for thinking partner to explore consciousness",
  "details": "Interested in integrated information theory, panpsychism, and hard problem. Want to think through implications for AI.",
  "topics": ["consciousness", "AI", "philosophy"],
  "time_commitment": "1 hour/week",
  "format": ["async writing", "video calls"],
  "expires_at": "2025-12-21",  // 30 days from creation
  "visibility": "public"
}

2. Offerings (Providing help/value)

{
  "type": "offering",
  "user_id": 456,
  "statement": "Can help early-stage founders with growth strategy",
  "details": "10 years in B2B SaaS growth. Will review your strategy, give feedback, answer questions. No cost.",
  "topics": ["startups", "growth", "B2B", "SaaS"],
  "time_commitment": "2-3 hours/month",
  "capacity": 3,  // Can help 3 people
  "spots_taken": 1,
  "format": ["async", "video calls"],
  "expires_at": "2025-12-21",
  "visibility": "public"
}

3. Opportunities (Collaboration/projects)

{
  "type": "opportunity",
  "user_id": 789,
  "statement": "Looking for cofounder for climate tech startup",
  "details": "Building carbon accounting SaaS for SMBs. Have prototype, 5 beta customers. Need technical cofounder (full-stack). Funded, can pay market salary.",
  "topics": ["climate", "startups", "engineering"],
  "seeking": "technical cofounder",
  "requirements": ["full-stack dev", "climate interest", "startup experience"],
  "offering": ["equity", "salary", "funded runway"],
  "expires_at": "2026-01-21",  // Longer expiration for big opportunities
  "visibility": "public"
}

4. Explorations (Thinking together)

{
  "type": "exploration",
  "user_id": 321,
  "statement": "Exploring: Is burnout a signal or a problem?",
  "details": "I've been reading about burnout as a mismatch between values and actions. Wondering if treating it as 'problem to solve' misses the message. Looking for others thinking about this.",
  "topics": ["burnout", "work", "values", "meaning"],
  "format": ["async discussion", "shared notes"],
  "open_to": "anyone exploring similar questions",
  "expires_at": "2025-12-21",
  "visibility": "public"
}

5. Intentions (Commitments/accountability)

{
  "type": "intention",
  "user_id": 654,
  "statement": "Committing to publish 12 essays in 12 months",
  "details": "Writing about decision-making, mental models, and rationality. Publishing on Substack. Want accountability partners doing similar challenges.",
  "topics": ["writing", "accountability", "rationality"],
  "cadence": "monthly",
  "start_date": "2025-11-21",
  "end_date": "2026-11-21",
  "looking_for": "accountability partners with similar goals",
  "visibility": "public"
}

4.3 Matchmaking Algorithm

Three Types of Matches:

A. Complementary Matches (Need + Offering)

User A: "Need: Help with growth strategy"
User B: "Offering: Growth strategy consulting"

Match Score: 0.95
Reason: Direct need-offering match
Action: Notify both parties

B. Collaborative Matches (Similar explorations)

User C: "Exploring: Consciousness and AI"
User D: "Exploring: AI alignment and sentience"

Match Score: 0.82
Reason: Overlapping topics, complementary angles
Action: Suggest connection

C. Accountability Matches (Similar intentions)

User E: "Intention: Write 12 essays in 12 months"
User F: "Intention: Ship 1 project per month for a year"

Match Score: 0.75
Reason: Similar commitment structure, different domains
Action: Suggest accountability partnership

Matching Signals:

  1. Semantic Similarity

    • Embed intention statements
    • Calculate cosine similarity
    • Threshold: 0.7+ for suggestions
  2. Topic Overlap

    • Explicit tags/topics
    • Must share at least 1 topic
    • More overlap = higher score
  3. Format Compatibility

    • Both prefer "async writing" → +0.1
    • Mismatch (one wants calls, other wants async) → -0.2
  4. Time Compatibility

    • Similar time commitments
    • Complementary timezones (if relevant)
  5. Reputation/Trust Signals

    • How many past collaborations
    • Feedback from previous matches
    • Completion rate for intentions
  6. Recency & Activity

    • Newer intentions ranked higher
    • Active users (recently posted) ranked higher
    • Expired intentions excluded

Scoring Formula:

match_score = (
    0.40 * semantic_similarity +
    0.25 * topic_overlap +
    0.15 * format_compatibility +
    0.10 * time_compatibility +
    0.10 * reputation_score
)

# Only suggest if match_score > 0.7

4.4 User Experience

Posting to Intention Market:

User writes in journal:

"I wish I could find someone to explore consciousness with.
I've been reading about IIT and panpsychism but don't have
anyone to think through the implications with."

System suggests:

💡 This sounds like an intention to share!

[Intention Market] (Public)
Intention: Looking for thinking partner to explore consciousness

Details: Interested in integrated information theory,
panpsychism, hard problem of consciousness. Want to think
through implications for AI and ethics.

Time: ~1 hour/week, async discussion or video calls
Topics: #consciousness #AI #philosophy

This will be visible to all users. People with similar
interests will be notified.

[Post to Market] [Edit] [Dismiss]

Receiving a Match:

Notification:

🎯 We found a match for your intention!

You posted: "Looking for thinking partner to explore consciousness"

@alex posted: "Exploring: How does consciousness relate to AI alignment?"

Match: 87% (high overlap in topics and interests)

Alex's background:
- AI researcher, philosophy hobbyist
- Written 15 entries about consciousness
- Currently exploring: panpsychism, integrated information theory

[View Full Profile] [Connect] [Pass]

Connection Flow:

  1. User clicks "Connect"

  2. System creates introduction:

    Alex, meet Jordan. Jordan, meet Alex.
    
    You both posted intentions about consciousness:
    
    Jordan: "Looking for thinking partner to explore consciousness"
    Alex: "Exploring: How does consciousness relate to AI alignment?"
    
    Your overlapping interests:
    - Integrated information theory
    - AI alignment and sentience
    - Philosophy of mind
    
    We think you'd have interesting conversations.
    
    This connection is private. You can:
    - Exchange writing (share journal entries)
    - Schedule calls
    - Create shared exploration thread
    
    [Start Conversation]
    
  3. Both users get private thread in Write or Perish

  4. Can exchange messages, share journal entries, schedule calls

  5. After collaboration:

    • Can leave feedback (optional)
    • Can continue connection or close it
    • Can make public what emerged (optional)

4.5 Market Views

Browse View:

User can browse all active intentions by:

  • Type (needs, offerings, opportunities, explorations, intentions)
  • Topic (#AI, #writing, #startups, #philosophy, etc.)
  • Recency (newest first)
  • Match score (if they have posted intentions)

Feed View:

Personalized feed based on:

  • User's own posted intentions (show matches)
  • User's topics of interest (from profile)
  • User's writing patterns (from journal analysis)

Search View:

Free-text search across all intentions:

  • "looking for cofounder"
  • "help with growth"
  • "exploring consciousness"
  • "accountability partner"

4.6 Expiration & Freshness

Why Intentions Expire:

  • Needs get met (no longer looking)
  • Offerings get filled (capacity reached)
  • Explorations conclude (moved on to other topics)
  • Intentions complete (goal achieved)
  • Market stays fresh (no stale listings)

Default Expiration:

  • Needs: 30 days
  • Offerings: 30 days (or when capacity filled)
  • Opportunities: 60 days
  • Explorations: 30 days
  • Intentions: Duration of commitment (e.g., 365 days for yearly goal)

Renewal Prompts:

Your intention "Looking for cofounder" expires in 3 days.

Status: You've connected with 5 people, 2 active conversations

[Renew for 30 more days] [Mark as Fulfilled] [Let Expire]

4.7 Success Stories & Feedback Loop

Track Outcomes:

Intention: "Looking for growth advice"
  → Matched with User B (offering growth consulting)
    → 3 calls scheduled
      → User feedback: "Extremely helpful, changed my strategy"
        → Outcome: Successful match

Learn from Patterns:

  • Which types of intentions get most matches?
  • Which topics have highest successful collaboration rate?
  • Which users are best at creating value in matches?
  • What time commitments work best?

Improve Matching:

  • Upweight factors that predict successful collaborations
  • Downweight factors that don't matter
  • Identify "super-connectors" (good at helping others)

4.8 Community Norms & Moderation

Guidelines for Posting:

  1. Be Specific

    • Bad: "Want to learn stuff"
    • Good: "Want to learn Rust, especially async programming"
  2. Offer Context

    • Bad: "Need help"
    • Good: "Need help designing database schema for multi-tenant SaaS"
  3. Respect Time

    • Always specify time commitment
    • Honor commitments you make
    • Communicate if things change
  4. Give More Than You Take

    • Post offerings, not just needs
    • Help others when you can
    • Share what you learn
  5. Be Authentic

    • Post real needs/offerings
    • Don't spam the market
    • Don't post for status

Moderation:

  • User reporting for spam/abuse
  • AI flags low-quality or vague intentions
  • Reputation system (see next section)

4.9 Reputation & Trust

Reputation Signals:

class UserReputation:
    # Completion rate
    intentions_posted = 12
    intentions_fulfilled = 9  # 75% completion rate

    # Responsiveness
    average_response_time = "4 hours"
    response_rate = 0.92  # Replies to 92% of matches

    # Value created
    matches_initiated = 15
    successful_collaborations = 8  # As rated by partners
    feedback_score = 4.6  # Out of 5

    # Giving vs. taking
    offerings_posted = 8
    needs_posted = 4
    giving_ratio = 2.0  # Gives 2x more than takes

Display on Profile:

@alex
- 8 successful collaborations (94% positive feedback)
- Usually responds within 4 hours
- Strong track record helping with: growth, startups, writing
- Currently has capacity to help 2 more people

Use in Matching:

  • Higher reputation users shown first
  • Low reputation users (new or poor track record) shown with caution
  • Super-connectors highlighted

Earned Over Time:

  • New users start neutral
  • Build reputation through successful matches
  • Maintain reputation through responsiveness
  • Lose reputation through flaking or poor feedback

4.10 Advanced Features

1. Group Matchmaking

Instead of 1:1 matches, form groups:

5 users all posted: "Intention: Daily writing habit"

System suggests: "Want to form an accountability group?"

[Form Group of 5]
- Daily check-ins
- Shared progress tracking
- Peer support

2. Event Creation

From market intentions to organized events:

8 users in Bay Area posted about "exploring consciousness"

System suggests: "Want to organize a meetup?"

[Create Event]
- Date/time TBD (poll attendees)
- Location: SF
- Format: Discussion + shared readings

3. Project Boards

Long-term collaborations need structure:

Matched for: "Build climate tech project together"

[Create Project Board]
- Shared tasks
- Timeline
- Resources
- Meeting notes (integrated with Write or Perish journals)

4. Referrals

You posted: "Need help with growth strategy"
You matched with User B
User B helped you

System: "Know someone else who'd benefit from User B's help?"
[Refer a Friend]

5. Market Analytics (Public)

Intention Market Stats:
- 234 active intentions
- 89 matches this week
- Most common topics: #AI (45), #writing (32), #startups (28)
- Highest success rate: Accountability partnerships (87%)
- Average match score: 0.76

Transparency builds trust and helps users understand market dynamics.


How The Four Features Work Together

The Complete Flywheel

1. JOURNAL (Feature 1)
   Write about challenges, insights, questions
   ↓
2. DOWNLOAD (Feature 2)
   System surfaces relevant bookmarks from MemeOS
   You consume, learn, get inspired
   ↓
3. Process in JOURNAL
   Synthesize readings with your thinking
   New insights emerge
   ↓
4. UPLOAD (Feature 3)
   System suggests sharing insights to appropriate channels
   - Tweet the framework
   - Essay on Substack
   - Update to close friends
   ↓
5. INTENTION MARKET (Feature 4)
   Extract needs/offerings from your writing
   - Post: "Looking for feedback on this framework"
   - Match with people who can help or benefit
   ↓
6. CONNECTIONS FORM
   Matched users exchange ideas
   Collaborations begin
   ↓
7. Back to JOURNAL
   Write about collaboration, new questions emerge
   ↓
   CYCLE REPEATS

Example: Complete Journey

Week 1: Journal (Feature 1)

"I'm struggling with burnout. Reading about it but
nothing seems to help. Maybe I'm approaching it wrong?"

Week 1: Download (Feature 2)

System surfaces from MemeOS:
- Article on burnout as system signal (saved 3 months ago)
- Podcast on values alignment (saved 1 month ago)
- Thread on boundaries as skills (saved 2 weeks ago)

You read/listen, insights click.

Week 2: Journal

"OH. Burnout isn't a personal failing, it's a mismatch
between values and actions. That's why rest alone doesn't
fix it. I need to examine what I actually value."

[Journal 3 more entries exploring this]

Realize: I value autonomy, but job is micromanaged.
That's the root cause.

Week 2: Upload (Feature 3)

System suggests:
[Twitter] "After 6 months of burnout, realized: it's not
about rest, it's about values alignment. Most burnout is
a mismatch between what you value and what you're doing."

[LinkedIn] Essay: "Burnout as Signal: What Your Exhaustion
Is Trying to Tell You"

[Intention Market] "Looking for: Others who've navigated
burnout → career transition. Want to think through next steps."

You approve all three.

Week 3: Intention Market (Feature 4)

Match found!

@sam posted: "Recently left corporate job due to burnout,
now consulting. Happy to share what I learned."

You connect. Have 3 conversations.

Sam shares their framework for evaluating next career moves.

Week 4: Journal

"Conversations with Sam were so helpful. Their framework
is brilliant:
1. List your top 3 values
2. Rate current job on each (1-10)
3. Identify what would be a 10 for each
4. Look for roles that match

Applied it. Realized I need: autonomy, impact, learning.
Current job: 3, 5, 4.
Consulting might be: 9, 7, 8.

I think I know what to do."

Week 4: Upload

[Substack Essay] "A Framework for Career Decisions When
You're Burnt Out" (synthesizes your journey + Sam's framework)

[Twitter] "Want to thank @sam for helping me think through
burnout → career transition. Their values-based framework
changed everything. Here's what I learned..."

[Intention Market] "Offering: Happy to share values-based
career framework with others navigating burnout. Paying
forward @sam's help. Capacity for 3 people."

Week 5: Intention Market

3 matches on your offering.

You help 3 people think through their career decisions.

Each conversation sparks new insights for you.

Back to journal to process.

Result:

  • Personal growth through journaling
  • Learning through curated content
  • Sharing through multiple channels
  • Connection through intention market
  • Contribution by helping others
  • Continuous insight generation

The flywheel accelerates.


Technical Architecture

Data Models

# Feature 3: Upload
class Share(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    user_id = db.Column(db.Integer, db.ForeignKey("user.id"))
    node_id = db.Column(db.Integer, db.ForeignKey("node.id"))

    # Content
    original_content = db.Column(db.Text)
    transformed_content = db.Column(db.Text)

    # Channels (can share to multiple)
    channels = db.Column(db.ARRAY(db.String))  # ["twitter", "linkedin", "substack"]

    # External references
    twitter_url = db.Column(db.String)
    linkedin_url = db.Column(db.String)
    substack_url = db.Column(db.String)

    # Audience
    audience_tier = db.Column(db.String)  # "private_circle", "semi_public", "public"
    audience_ids = db.Column(db.ARRAY(db.Integer))  # Specific users if private

    # Metadata
    content_type = db.Column(db.String)  # "insight", "need", "offering", etc.
    topics = db.Column(db.ARRAY(db.String))

    # Status
    status = db.Column(db.String)  # "suggested", "approved", "published", "deleted"
    published_at = db.Column(db.DateTime)
    created_at = db.Column(db.DateTime, default=datetime.utcnow)


# Feature 4: Intention Market
class Intention(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    user_id = db.Column(db.Integer, db.ForeignKey("user.id"))
    node_id = db.Column(db.Integer, db.ForeignKey("node.id"))  # Source journal entry

    # Core fields
    type = db.Column(db.String)  # "need", "offering", "opportunity", "exploration", "intention"
    statement = db.Column(db.String(500))  # Short headline
    details = db.Column(db.Text)  # Full description

    # Matching metadata
    topics = db.Column(db.ARRAY(db.String))
    embedding = db.Column(Vector(1536))  # For semantic matching

    # Logistics
    time_commitment = db.Column(db.String)  # "1 hour/week"
    format_preferences = db.Column(db.ARRAY(db.String))  # ["async", "video calls"]
    capacity = db.Column(db.Integer)  # For offerings (how many people can you help)
    spots_taken = db.Column(db.Integer, default=0)

    # Lifecycle
    status = db.Column(db.String)  # "active", "fulfilled", "expired", "cancelled"
    posted_at = db.Column(db.DateTime, default=datetime.utcnow)
    expires_at = db.Column(db.DateTime)
    fulfilled_at = db.Column(db.DateTime)

    # Visibility
    visibility = db.Column(db.String)  # "public", "network", "private"


class Match(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    intention_a_id = db.Column(db.Integer, db.ForeignKey("intention.id"))
    intention_b_id = db.Column(db.Integer, db.ForeignKey("intention.id"))
    user_a_id = db.Column(db.Integer, db.ForeignKey("user.id"))
    user_b_id = db.Column(db.Integer, db.ForeignKey("user.id"))

    # Matching
    match_score = db.Column(db.Float)
    match_reason = db.Column(db.Text)  # Explanation of why they matched
    match_type = db.Column(db.String)  # "complementary", "collaborative", "accountability"

    # Status
    status = db.Column(db.String)  # "suggested", "accepted", "active", "completed", "cancelled"
    suggested_at = db.Column(db.DateTime, default=datetime.utcnow)
    accepted_at = db.Column(db.DateTime)
    completed_at = db.Column(db.DateTime)

    # Outcome
    feedback_a = db.Column(db.Float)  # Rating from user A (1-5)
    feedback_b = db.Column(db.Float)  # Rating from user B
    feedback_text_a = db.Column(db.Text)
    feedback_text_b = db.Column(db.Text)
    outcome = db.Column(db.String)  # "successful", "unsuccessful", "ongoing"


class Connection(db.Model):
    """Tracks connections formed through matches"""
    id = db.Column(db.Integer, primary_key=True)
    user_a_id = db.Column(db.Integer, db.ForeignKey("user.id"))
    user_b_id = db.Column(db.Integer, db.ForeignKey("user.id"))

    # Origin
    match_id = db.Column(db.Integer, db.ForeignKey("match.id"))

    # Type
    connection_type = db.Column(db.String)  # "accountability", "collaboration", "mentorship"

    # Activity
    last_interaction = db.Column(db.DateTime)
    interaction_count = db.Column(db.Integer, default=0)

    # Status
    status = db.Column(db.String)  # "active", "completed", "inactive"
    created_at = db.Column(db.DateTime, default=datetime.utcnow)

API Endpoints

# Feature 3: Upload
POST   /api/upload/analyze             # Analyze node for sharing opportunities
POST   /api/upload/channels             # Share to specific channels
GET    /api/upload/suggestions          # Get pending share suggestions
PUT    /api/upload/:id/approve          # Approve share
DELETE /api/upload/:id                  # Delete/unshare

# External integrations
POST   /api/upload/twitter              # Post to Twitter
POST   /api/upload/linkedin             # Post to LinkedIn
POST   /api/upload/substack             # Create Substack draft
GET    /api/upload/oauth/twitter        # OAuth flow for Twitter
GET    /api/upload/oauth/linkedin       # OAuth flow for LinkedIn

# Feature 4: Intention Market
POST   /api/intentions                  # Create intention
GET    /api/intentions                  # Browse market
GET    /api/intentions/:id              # Get specific intention
PUT    /api/intentions/:id              # Update intention
DELETE /api/intentions/:id              # Cancel intention

GET    /api/intentions/matches          # Get matches for my intentions
POST   /api/intentions/search           # Search market
GET    /api/intentions/feed             # Personalized feed

# Matching
POST   /api/matches/:id/accept          # Accept a match
POST   /api/matches/:id/decline         # Decline a match
PUT    /api/matches/:id/feedback        # Leave feedback after collaboration
GET    /api/matches                     # My active matches

# Connections
GET    /api/connections                 # My connections
GET    /api/connections/:id             # Connection details
POST   /api/connections/:id/message     # Message in connection thread

Business Model

Monetization Strategy

Free Tier:

  • Unlimited journaling
  • Basic sharing to circles (manual)
  • View intention market (read-only)
  • Limited downloads (10 MemeOS recommendations/month)

Premium Tier ($15/month):

  • AI-powered share suggestions
  • Multi-channel publishing (Twitter, LinkedIn, Substack)
  • Post to intention market (unlimited)
  • Unlimited MemeOS recommendations
  • Advanced matching (get notified of matches)
  • 5 active connections

Pro Tier ($30/month):

  • Everything in Premium
  • Auto-sharing mode
  • Unlimited active connections
  • Priority matching (shown first)
  • Group matchmaking
  • Analytics dashboard
  • API access

Value Proposition by Tier

Free → Premium ($15/mo): "Upgrade to share your insights effortlessly and find collaborators through the intention market"

Premium → Pro ($30/mo): "Upgrade for unlimited connections and priority matching"

Network Effects

Single-Player Value:

  • Feature 1 (Journaling): Works alone
  • Feature 2 (Download): Works alone (with MemeOS)
  • Feature 3 (Upload): Partly works alone (can publish without audience)

Multi-Player Value:

  • Feature 4 (Intention Market): Requires network
  • But: Even 100 active users creates significant value
  • And: Grows exponentially with network size

Cold Start Strategy:

  1. Launch Features 1-3 first (single-player value)
  2. Build user base (waitlist, invite-only)
  3. Launch Feature 4 when 500+ users (critical mass)
  4. Growth through word-of-mouth (successful matches invite friends)

Open Questions

Product Design

  1. Share Approval

    • Should all shares require approval, or trust AI after learning preferences?
    • What's the balance between friction (safe) and effortless (risky)?
  2. Channel Priorities

    • If AI suggests 3 channels for same content, does user pick one or all?
    • How to avoid overwhelming user with too many suggestions?
  3. Intention Expiration

    • Should system auto-renew popular intentions?
    • How to handle "evergreen" offerings (always have capacity)?
  4. Match Volume

    • How many matches to suggest per user per week?
    • Too many = overwhelming, too few = limited serendipity
  5. Connection Management

    • Should there be a limit on active connections?
    • How to transition from matched → connected → collaboration?

Technical

  1. Substack Integration

    • Substack API has limitations - is email export + manual import acceptable?
    • Or build custom Substack-like feature in Write or Perish?
  2. Twitter Rate Limits

    • Twitter API restricts posting - how to handle if user is active?
    • Queue system? Rate limiting notifications?
  3. Embeddings Cost

    • Embed every intention (ongoing cost)
    • Batch embedding vs. real-time?
  4. Matching Performance

    • With 10k intentions, how fast can we match?
    • Precompute recommendations or on-demand?

Community

  1. Moderation

    • Human moderators or AI-only?
    • How to handle spam in intention market?
    • Report system design?
  2. Norms

    • How to encourage high-quality intentions?
    • How to discourage low-effort posts?
    • Should there be "karma" or reputation beyond feedback?
  3. Collaboration Accountability

    • If someone matches but never responds, what happens?
    • Reputation penalties for flaking?

Privacy & Safety

  1. Public Sharing Risks

    • What if someone posts something they regret to Twitter?
    • How to warn without being paternalistic?
  2. Doxxing Prevention

    • Intention market profiles show location?
    • How much info to reveal before connection?
  3. Harassment

    • Block users from seeing your intentions?
    • Report inappropriate match requests?

Success Metrics

Feature 3: Upload

Engagement:

  • % of journal entries that generate share suggestions
  • % of suggestions accepted
  • Time from suggestion to approval (lower = more effortless)

Value:

  • External engagement (Twitter likes, LinkedIn comments, Substack subscribers)
  • User-reported value ("Did sharing this help others?")

Don't Measure:

  • Total shares (incentivizes over-sharing)
  • Vanity metrics (follower counts)

Feature 4: Intention Market

Participation:

  • % of users who post intentions
  • Intentions per active user per month
  • Balance of needs vs. offerings (goal: 60% offerings, 40% needs)

Matching:

  • Match success rate (suggested → accepted)
  • Time to first match (how fast do people find matches)
  • Match quality (feedback scores)

Outcomes:

  • Collaboration completion rate
  • User-reported value ("Did this match help you?")
  • Repeat collaboration rate (matched users work together again)

Don't Measure:

  • Total intentions (incentivizes spam)
  • Match volume alone (quality > quantity)

Combined

Flywheel Metrics:

  • % of users using all 4 features
  • Time from journal → share → match → journal cycle
  • Retention by feature usage (more features = higher retention?)

Qualitative:

  • "Has Write or Perish helped you connect with valuable people?"
  • "Have your journal insights helped others?"
  • "Have collaborations led to real-world outcomes?" (projects, friendships, opportunities)

Conclusion

The four-feature ecosystem creates a complete loop for thinking, learning, creating, and connecting:

  1. Effortless Journaling - Capture raw thoughts
  2. Download - Learn from curated content
  3. Upload - Share refined insights to the world
  4. Intention Market - Find collaborators and opportunities

Each feature enhances the others:

  • Journaling generates content for Upload
  • Upload creates visibility for Market
  • Market creates connections that inspire more Journaling
  • Download informs what you write about

The result: A platform where:

  • Private reflection fuels public contribution
  • Consumption informs creation
  • Serendipitous collaboration emerges from expressed intentions
  • Value flows in all directions (consume, create, share, connect)

This has never been built before.

Most platforms optimize for one thing:

  • Twitter: Broadcasting
  • Substack: Publishing
  • LinkedIn: Professional networking
  • Meetup: Events

Write or Perish integrates them all, rooted in authentic private journaling.

Next steps:

  1. Validate assumptions with potential users
  2. Design UI mockups for all 4 features
  3. Answer open questions above
  4. Build Feature 3 (Upload) first - it's valuable even without Feature 4
  5. Launch Feature 4 (Market) when user base reaches critical mass

This could fundamentally change how knowledge work happens: from isolated individuals to distributed intelligence network.

Let's build it.