UNCVRD Marketing Hub — how we use it
This page is the source of truth for how the team works inside the Marketing Hub. Use the table of contents on the left to jump to a section. Workflows live near the bottom.
Quick start
The Marketing Hub is the team's single pane of glass for planning, drafting, approving, and shipping content across LinkedIn, Instagram, TikTok, YouTube, X, and the newsletter. On any given day you'll spend most of your time in Inbox, Approvals, the Calendar, the Tools hub, and the Agent.
First-day checklist
- Sign in at
/loginwith the email you were invited on. - Pick your theme (sun / moon / monitor) from the bottom of the sidebar.
- Open Integrations and link your Telegram so the bot can DM you drafts and reminders.
- Skim Knowledge and References so the agent has context.
- Run a Weekly Batch on Sunday night, or drop into Tools to draft something ad-hoc.
Inbox
Comments, DMs, and @-mentions from your connected channels land here so you don't have to bounce between native apps.
How to use it
- Open Inbox first thing in the morning. Triage top-down.
- Reply directly in-app where supported; otherwise click through to the source channel.
- Items remain until you act — there's no "mark as read" trap door.
Review
Anything the agent or a batch run flagged for a second pair of eyes shows up in Review — usually long-form pieces (Pulse articles, newsletter issues) that need a tighter human edit before they move on.
Approvals
The queue of drafts waiting for sign-off. The badge next to "Approvals" in the sidebar shows how many drafts are pending right now.
How to use it
- Click any card to open it in the Composer.
- Edit copy, swap media, set the publish time.
- Hit Approve (queues to the channel via Postiz) or Cut (removes it).
Tools hub
The /generator page is the directory of every channel-specific tool. Each tool drops its output straight into the Composer so you can polish and schedule without copy-paste.
See the Channel tools section below for what each one does.
Weekly Batch
The Sunday-night content pipeline. One click harvests Granola notes from the past 7 days, plans the upcoming week's calendar, and drafts 12–14 posts across channels.
How to run it
- Open Weekly Batch.
- Click Run now. The status flips to "running" and auto-refreshes every 3s.
- When it finishes, jump to Approvals — the new drafts are there.
All Posts (Calendar)
The unified view of every post — drafts, scheduled, published, failed — across all channels. Click any card to open it in the Composer; drag to reschedule.
Status colors
- Draft — not approved yet, lives in Approvals too.
- Scheduled — approved, queued in Postiz for its publish time.
- Published — out the door; metrics will appear in Analytics.
- Failed — Postiz couldn't ship it. Open the post to see the error.
Ideas
The capture bucket. When you have a half-formed thought (or paste an outline, a quote, a screenshot), dump it here so it doesn't get lost.
Lifecycle
- Capture the idea (one-liner is fine).
- Promote it: pick a channel → it opens the relevant tool pre-seeded with the idea.
- From there it follows the normal Tool → Composer → Approvals → Calendar flow.
References
Saved external content (articles, tweets, talks, competitor posts) that the agent and tools can pull from when generating drafts. Tag aggressively — tags are how the retrieval finds the right reference at draft time.
Media Library
All assets we own — uploaded photos, generated images, exported carousel slides. The Composer and the Carousel Generator both pull from here first before falling back to AI generation.
How to use it
- Upload anything reusable (product shots, brand b-roll, headshots).
- Inside the Composer, the picker shows the library before any generator.
- Generated images are auto-saved back here so they're reusable next time.
Analytics — Overview
Cross-channel performance: reach, engagement, follower growth, top posts. Backed by the same connection that ships the posts, so attribution is clean.
Agent
A persistent chat with full tool access — it can read your Knowledge, References, calendar, posts, analytics, and Granola notes; it can draft, search, schedule, and answer questions about the workspace.
How threads work
- Each conversation is a thread. Past threads are listed in the left rail of
/agent. - Threads keep their context — you can come back tomorrow and the agent remembers.
- Start a fresh thread when you switch topics so context stays clean.
What to ask it
- "Draft 3 LinkedIn hooks from last week's Granola notes about X."
- "What's pending approval and what channel is each one for?"
- "Pull the references tagged positioning and summarize the through-line."
- "Schedule the top approved carousel for Thursday 9am."
Knowledge
The workspace's source of truth: brand positioning, ICP, voice rules, recurring talking points, do/don't lists. The agent and every generator read from this before drafting.
Social Profiles
The list of UNCVRD posting destinations (LinkedIn personal, LinkedIn company, Instagram, TikTok, etc.) with the integration status of each. Connect or reconnect accounts here.
Voice Learning
Feed the system real examples of past posts you liked. The Voice Learning loop turns those into voice fingerprints that the generators use to sound like the account, not like generic AI.
When to add examples
- Any post that performed well and felt on-brand — paste it in.
- After a manual rewrite of a generated draft, save the rewritten version as an example.
Integrations
Where you connect external services: Postiz (publishing), Beehiiv (newsletter), Granola (meeting notes), your DAM, and the Telegram bot. Each card shows connection status and lets you (re)connect.
Invite (Members)
Invite teammates, see who's in the workspace, and remove access. Use real emails — invites are emailed.
Settings
Workspace details, branding, and your personal preferences (display name, theme, notifications).
LinkedIn Post Generator
A LinkedIn post (single update) in the account's voice.
- Topic or angle
- Optional reference / Granola note
- Target account (personal vs company)
Generator → Composer → Approvals → scheduled via Postiz.
Pulse Studio
A long-form LinkedIn Pulse article engineered to be cited by AI search engines.
- Topic (or use the built-in Topic Radar)
- Angle / thesis
- Supporting references or notes
Pulse Studio → GEO-scored editor (improve the score before sending) → Approvals.
Carousel Generator
A full Instagram carousel: slide-by-slide copy, suggested imagery, and the caption.
- Topic / idea
- Tone (informative, hot-take, behind-the-scenes…)
- Optional reference
Generator → preview slides → swap images from the Media Library if needed → Composer → schedule.
Video Script Generator
A Reels/TikTok script in 4 UNCVRD formats with hook variants, scene breakdown, caption, shot list, and a production brief.
- Topic
- Channel (IG Reels / TikTok)
- Format preference (optional)
Generator → pick the best hook variant → send shot list + brief to whoever is filming → Composer when the cut is ready.
The Composer
The global drawer for editing any post. Open it from "New Post" in the sidebar, from any card in Approvals/Calendar, or from a tool's "Send to Composer" action.
What lives in it
- Channel-specific body editor (LinkedIn-aware character count, IG caption + slides, etc.).
- Media picker (Library first, generators second).
- Schedule control (or "Send now" if connected).
- Approval state and the channel/account selector.
End-to-end workflows
- 1Sunday night, open Weekly Batch and click Run now.
- 2Wait for status = complete (auto-refreshes).
- 3Monday morning, open Approvals — sweep top-down.
- 4Edit anything weak, approve the rest, set publish times in Calendar.
- 5Glance at Analytics later in the week to see what landed.
- 1Capture the spark in Ideas.
- 2Promote it to the right channel — it opens the matching tool with the idea pre-seeded.
- 3Generate, refine in the Composer, swap media if needed.
- 4Approve → schedule in Calendar.
- 1Open Newsletter → Issue Generator.
- 2Pick the theme; generate; refine via chat.
- 3Move to Review for human polish.
- 4Push to Beehiiv as draft or scheduled.
- 1Start from an Idea or a Reference.
- 2Open Carousel Generator; generate slides + caption.
- 3Replace any AI image with a Library asset where possible.
- 4Send to Composer → approve → schedule.
- 1Open Agent and start a new thread for a fresh topic.
- 2Be explicit about which sources to use (Knowledge, References, last week's Granola, etc.).
- 3Ask the agent to call out assumptions when it drafts.
- 4Tell it to send the result to Composer when you're happy.
Integrations setup
Telegram bot
- Open Integrations → Telegram.
- Click Generate code — you get a short code valid for a few minutes.
- Open the UNCVRD Marketing Bot in Telegram and send
/link CODE. - The integration card flips to "Connected to UNCVRD Marketing Bot".
/link goes silent, generate a fresh code and try again.Postiz, Beehiiv, Granola, DAM
Each lives on its own card in Integrations — click Connect and follow the OAuth flow. Reconnect if a card ever flips to "needs attention".
Troubleshooting & FAQ
Approvals is empty but I just ran the batch.▾
The agent says it has no context.▾
My Telegram /link didn't get a reply.▾
A scheduled post failed.▾
Theme keeps flipping back to system.▾
A draft doesn't sound like us.▾
Glossary
- Batch
- The weekly Sunday pipeline run that produces 12–14 drafts from the past week's notes.
- Composer
- The global drawer for editing any post — text, media, schedule, approval state.
- Pulse
- A long-form LinkedIn article. Generated via Pulse Studio with a GEO citability score.
- Reference
- An external piece of inspiration (article, tweet, talk) saved for the agent and tools to riff on.
- Knowledge
- Internal truth: brand positioning, voice rules, ICP, do/don'ts.
- Voice profile
- The fingerprint Voice Learning builds from approved past posts.
- Thread
- A single Agent conversation; keeps its own context across visits.
- GEO score
- Estimated citability of a Pulse article by AI answer engines — aim for green.
- Postiz
- The publishing backend that actually ships scheduled posts.
src/routes/_app.wiki.tsx and PR.