Blogpost – LinkedIn content autopilot
Stratas team project
Open full-size image ↗
Category: Client SaaS (own product) Status: Active Time window: built early-to-mid 2026 Live URL: private (auth-gated per user)
Purpose
Drafts and schedules LinkedIn posts per user; runs as a background autopilot rather than an interactive copilot.
Who it is for
Users who want a steady LinkedIn presence without touching the LinkedIn UI every week. Complementary to Saga (which is interactive) – Blogpost is set-and-forget.
Stack
- Frontend: Next.js (App Router)
- Backend: Trigger.dev v4 with per-user schedules (
externalId = "userId:postingContext") - Auth: LinkedIn OAuth per user with stored posting context
- Data: Supabase for user context and draft queue
Stratas team project
Delivered by the Stratas team and shown here as part of the wider Stratas portfolio.
Notable capabilities
- Per-user LinkedIn OAuth with stored posting context (personal profile or company Page)
- Trigger.dev v4 schedules identified by
externalId = "userId:postingContext"– one schedule per user per context - Backgrounded scheduling with retry budgets (Vercel cron would not carry this)
Outcome
Live per-user scheduling that separates concerns from Saga's interactive path – one is a copilot, the other is an autopilot.
Evidence
- Repo: private
- Pattern:
externalIdper user context is the same shape aspreservation's per-source runs
Skills demonstrated
nextjs, trigger-dev-v4-per-user-schedules, linkedin-oauth, supabase, background-autopilot-pattern, retry-budget-orchestration
Want to discuss the decisions behind it?
Over fifteen years of consulting and growth, and hands-on AI delivery from discovery to daily operations. I can share my CV and talk through how I connect business outcomes with systems that run.
Available for a chat. In person in Stavanger, or remotely worldwide.