01. Voice profiles

Voice profiles that sound like the actual person

Each teammate (and the company itself) gets a voice profile: tone, topics, examples, things they would never say. Squawk drafts in that voice every time.

  • Tone, topics, examples, anti-patterns. Each profile captures how the person actually writes (tone), what they care about (topics), how good output looks (examples), and what to avoid (anti-patterns).
  • Profiles per teammate and per brand. Multiple profiles in one workspace. The company can have its own voice. Each teammate can have their own. Drafts pick the right one for the channel and account.
  • Sample-driven calibration. Paste in a few real posts the person has already written. The profile uses them as anchors so drafts converge on their actual cadence.
  • Profile gets sharper over time. When you edit or reject a draft, Squawk records the change as a signal. Later drafts incorporate it. The profile improves as you use it.
Screenshot todoVoice profile editor: tone, topics, examples, anti-patternsapps/marketing/public/images/features/voice-profiles.png
Screenshot todoWorkspace view: company profile + teammate profilesapps/marketing/public/images/features/voice-profiles-list.png

02. Content library

One library that fuels every campaign

Drop in blog posts, PDFs, slide decks, photos, videos, news articles, and links. Squawk parses each piece and keeps it ready for any campaign or draft.

  • Parse blog posts, PDFs, decks, videos, photos. Bring URLs or files. Squawk extracts the ideas, quotes, frames, and images so drafts have something to pull from.
  • Connected sources for ongoing ingest. Connect a blog, a docs site, a press feed, or an upload folder. New content flows into the library automatically as it's published.
  • Tag by company, product, expert, or theme. Library items can be associated with the people, products, and topics they relate to. Campaigns and drafts use those tags to pull the right material.
  • Full-text search across everything. Search the parsed content of every item, not just the title. Find the deck slide or blog paragraph that fits the post you're drafting.
Screenshot todoLibrary: every format in one searchable viewapps/marketing/public/images/features/content-library.png
Screenshot todoItem detail: parsed content, tags, linked people/productsapps/marketing/public/images/features/content-library-detail.png

03. Campaigns

Campaigns shaped around what you're actually doing

Group library items around a launch, a product, or a theme. Squawk shapes a calendar around the campaign and surfaces what's missing before it starts.

  • Group sources around a launch or theme. Pull blog posts, PDFs, videos, and quotes into a campaign so every draft has the right context.
  • Per-campaign timeline view. See the campaign's posts on a timeline alongside the launch dates and milestones they support.
  • Coverage and gap detection. Squawk flags themes that haven't been covered yet, voices that haven't posted yet, and channels that are underused.
  • Campaign-level analytics. Roll up engagement across every post in the campaign. See what landed and feed it into the next one.
Screenshot todoCampaign timeline: sources, posts, milestonesapps/marketing/public/images/features/campaigns.png

04. Approval workflow

Approvals that don't take three Slack threads

Drafts move through clear states: needs review, approved, scheduled, published. Reviews route to the right person. Audit trail is automatic.

  • Explicit states with audit trail. Needs review, approved, scheduled, published, rejected. Every state change is recorded with who did it and when.
  • Per-author and per-brand reviewers. Different posts can need different approvers. The CEO's posts route to the CEO. Client posts route to the client.
  • Inline comments and edit suggestions. Reviewers can leave comments, suggest edits, or push back to draft. The author sees the feedback in context.
  • Auto-approve for trusted authors. Configure which authors can publish without explicit approval (e.g. the founder posting from their own account).
Screenshot todoApproval queue: clear states, clear ownershipapps/marketing/public/images/features/approval-workflow.png
Screenshot todoReview view: comments, edits, audit trailapps/marketing/public/images/features/approval-detail.png

05. Calendar & scheduling

A calendar shaped around campaigns and voices

See the next four weeks at a glance. Drag posts across days, channels, and voices. Mix carousels, video, and thought leadership.

  • Multi-week view with drag and drop. See up to four weeks. Drag a post to a different day, channel, or voice. Squawk reformats automatically when channel changes.
  • Per-voice and per-brand swim lanes. Filter the calendar by author or brand. Roll up the whole roster when you need to see everyone at once.
  • Smart scheduling suggestions. Squawk suggests slots based on cadence rules (don't post twice in two hours, don't bunch the same voice into one day) and channel best windows.
  • Conflicts and gaps flagged. The calendar surfaces clashes (two posts within an hour), gaps (no posts for X days), and missing variety (only text posts this week).
Screenshot todoCalendar: four weeks ahead, drag-and-drop, swim lanesapps/marketing/public/images/features/calendar.png

06. Multi-channel publishing

Native formats on every channel, not copy-paste

Publish carousels, native video, PDFs, images, and plain posts to LinkedIn and X. Each post is shaped for the channel, not pasted across them.

  • Native carousels (LinkedIn document posts). Build LinkedIn carousels from a blog post, deck, or library item. Squawk handles the slide-by-slide framing.
  • Native threads (X). Threads are written and published natively, with the cadence and length that actually performs on X.
  • Native video on both channels. Upload or generate video. Squawk publishes it natively to each channel with channel-aware captions.
  • Channel-aware previews. See exactly how the post will look on each channel before you approve. No more 'wait, that's not how the carousel renders.'
Screenshot todoSide-by-side preview: LinkedIn vs X formattingapps/marketing/public/images/features/publishing-preview.png
Screenshot todoFormat picker: carousel, thread, video, imageapps/marketing/public/images/features/publishing-formats.png

07. Engagement analytics

What landed, what didn't, and what to make more of

Track engagement per post, per voice, per channel, and per campaign. Feed signals back into the next round of drafts so the system learns.

  • Engagement rolled up by voice and brand. See which voices drive the most reach, comments, and clicks. Compare across teammates and across the company brand.
  • Per-campaign performance. Roll up the whole campaign: total reach, top posts, weakest posts, and the gap-filler ideas you should run next time.
  • Channel-level breakdowns. LinkedIn vs X performance, format-by-format. Carousels vs threads vs single posts.
  • Signal back into the drafting engine. High-performing posts feed into voice profiles as positive examples. Low-performing posts inform what not to repeat.
Screenshot todoOverview: engagement by voice, brand, channel, campaignapps/marketing/public/images/features/analytics-overview.png

08. AI drafting engine

Drafts that read like the person, not the model

The drafting engine pulls voice profile, library items, channel format, and campaign context together. Drafts read like a real person, not generic AI.

  • Voice-aware drafting. Every draft is shaped by the chosen voice profile, including the anti-patterns and example posts that anchor tone.
  • Source-anchored content. Drafts pull from library items, so the post says something specific (a quote, a frame, a stat) instead of generic 'we exist' content.
  • Channel-shape outputs. The engine drafts to the channel's native form: carousel slides, thread tweets, long-form posts, or image captions.
  • Edit feedback loops in. When you edit or reject a draft, the change becomes a signal for the voice profile and the engine. Future drafts incorporate it.
Screenshot todoDrafting view: voice + library + channel = a real draftapps/marketing/public/images/features/drafting-engine.png

09. Team & roles

Multiple people, multiple voices, one workspace

Add teammates, assign roles, give each person a voice profile and a connected channel. Approval flows route to the right person automatically.

  • Roles with explicit permissions. Owner, admin, drafter, reviewer, viewer. Each role has clear permissions on drafts, the library, and connected accounts.
  • Per-teammate voice profile and account. Every teammate can have their own voice profile and connect their own LinkedIn or X account. Posts go out from their handle, not a brand handle.
  • Routing rules per author. Configure who reviews drafts for each author. The CEO's drafts can route differently from the engineering team's.
  • Activity transparency. See what each teammate has drafted, edited, approved, or published. Useful for agencies showing work to clients.
Screenshot todoTeam view: roles, profiles, accounts, routingapps/marketing/public/images/features/team-members.png

10. Activity & audit log

Every change recorded. Every post traced.

Who drafted, who edited, who approved, when it published. The audit log is the paper trail that makes regulated reviews and client work easy.

  • Per-post audit trail. Every draft has its full history attached: original draft, edits, comments, approvals, and the final published version.
  • Workspace-wide activity feed. A live feed of what's happening across the team. Useful for agencies briefing clients and for managers checking in.
  • Filter by author, action, date, and brand. Find every post a person approved this quarter. Find everything published for a client last month. The data is queryable.
  • Exportable for review. Export filtered activity as CSV for legal, client review, or quarterly retrospectives.
Screenshot todoActivity log: who did what, when, to which postapps/marketing/public/images/features/activity-log.png