◇ Pipeline · how the workforce runs

One picture. End to end.

Every content piece flows through these 8 stages. HITL gates (gold borders, ◍ lock glyph) are mandatory operator approvals enforced in code, not in agent prompts. The loop arrow at the bottom closes the cycle — engagement signals from published posts seed the next research cycle.

Creative Pulse content pipelineNichePick strategyOPERATORResearchGap analysisSYSTEMIdeateConcept variantsAGENTBriefAuto-composeSYSTEMDraftClaude / GeminiAGENTHITL gateApprove/Reject/↻OPERATORAdapt1 → 9 channelsAGENTDistributepostWithGuards()SYSTEMENGAGEMENT SIGNALS → NEXT RESEARCH CYCLE
HITL gate (mandatory operator approval)lock = HITL enforced in code, not in agent promptDONEACTIVEPENDING(when on a draft's lifecycle)

What each stage does

Click any stage to jump to its operator surface

  1. ① Niche ·

    agent: operator

    Pick which of the 18 niches the next piece serves. Each niche carries audience, primary platform, RPM range, affiliate stack, and headline DNA.

    inputs
    canon/VIRAL_NICHES_LAUNCH.md strategy doc
    outputs
    niche.slug → seeds the brief
    Open /studio/niches
  2. ② Research ·

    agent: system + Claude

    Pulls top YouTube videos for the topic, classifies their comments (appreciation / suggestion / criticism / gap), and synthesizes a gap brief — what the audience asked for and didn’t get.

    inputs
    Topic · Region · Platform
    outputs
    gap_brief → ideate seed
    Open /studio/research
  3. ③ Ideate ·

    agent: agent:brainstorm

    Capture raw idea OR consume a research gap. Agent expands into 5–7 concept directions. You pick one (manual mode) or auto-flow takes the top concept.

    inputs
    raw text / link / transcript / gap brief
    outputs
    idea → concept(s)
    Open /studio/ideate
  4. ④ Brief ·

    agent: system

    Auto-composes a fully-formed agent brief from the concept + niche metadata: audience, platform, brand vibe, cadence context, sample headlines, affiliate opportunities, deliverable instructions.

    inputs
    concept · niche metadata
    outputs
    brief row → drafting
    Open /api/briefs
  5. ⑤ Draft ·

    agent: agent:claude / agent:gemini

    LLM call against the routed provider (Claude Sonnet for brand-critical, Gemini for bulk). Returns markdown long-form / channel-native social / video script / newsletter copy.

    inputs
    system prompt + brief.prompt_text
    outputs
    draft v1 (status: pending_hitl)
    Open lib/anthropic + provider router
  6. ⑥ HITL gate ·

    HITL gate ◍agent: operator

    MANDATORY review. Approve (with optional notes) / Reject (with reason) / Regenerate (creates v2). The two-step confirm + audit log entry = code-level gate, not an agent prompt.

    inputs
    draft v1+
    outputs
    status → approved | rejected | regenerated
    Open /studio/publish
  7. ⑦ Adapt ·

    agent: agent:claude / agent:gemini

    One approved source draft → nine channel-native variants (LinkedIn post, X thread, YouTube script, Newsletter pull-quote, Blog post, Image-gen prompt, Hero image, 15s clip, 60s voiceover). Each adaptation gets ITS OWN HITL preview card.

    inputs
    approved source draft + target channel
    outputs
    adapted draft (status: pending_hitl AGAIN)
    Open /studio/publish (per-draft action buttons)
  8. ⑧ Distribute ·

    HITL gate ◍agent: system (postWithGuards)

    Passes through 4 security guards (HITL gate → token refresh → rate limit → audit log), then calls the per-platform adapter (LinkedIn / X / YouTube / Instagram / Facebook / TikTok).

    inputs
    approved adapted draft + channel connection (OAuth)
    outputs
    published_url + audit log entry
    Open /studio/channels

✦ THE STANDING RULES (every stage honors these)

  • HITL on every public asset — gates 6 and 8 are mandatory; nothing ships without you reading the rendered text.
  • Per-agent daily cost ceiling — Studio Writer $8 / Social $3 / Video $10 / Newsletter $3 = ~$24/day max workforce burn.
  • PII-safe audit log — every state transition logged to agent_action_log with whitelisted metadata (never post content).
  • Tokens encrypted at rest — AES-256-GCM via TOKEN_ENCRYPTION_KEY for every OAuth channel connection.
  • Persona discipline — clients never see internal agent codenames; public assets are signed by Director personas (per canon).