Skip to content

Preset catalog

A preset is a named, reusable step chain. Wrap one in a schedule to run it on cron. These ship today:

Content & veille

PresetPipelineRequires
gmailread GmailGmail OAuth
bookmarkread bookmarks
twitterFocusread a Twitter/X focus source
veilleGmail Veille label → enrich → NotionLLM key, NOTION_INTEGRATION_TOKEN, NOTION_DATABASE_ID

Social & blog

PresetPipelineRequires
socialVeilleGmail label → enrich → social_post X-draft per link (no auto-post)LLM key
socialPublishpost approved + due drafts to their platformX / LinkedIn OAuth
blogGmail label → enrich → blog_post long-form draft per linkLLM key
blogPublishpublish approved + due blog posts; optional crossPostToSocial spawns a back-link X draft

Drafts are owner-scoped (userId stamped at creation). Publishing is worker-owned, atomic-claimed, and idempotent.

Operations

PresetPipelineRequires
quote_requestsread pending → email_digest batched admin email → mark reviewedRESEND_API_KEY, NOTIFICATION_EMAIL
calendarToTasksupcoming Google Calendar events → one owner-scoped kanban Task each (idempotent on event id)GMAIL_* token with calendar.readonly scope
gmailTriageGmail label → triage LLM → kanban Task → tag processedLLM key
classifiedsWatchscrape a Leboncoin / AutoScout24 / Malt saved search → watch records each price as a time-series → kanban price-alert Task when below threshold; optional skill adds an LLM “genuine deal?” vetoCDP scraper sidecar

Thresholds on classifiedsWatch are ${input:…} tunable per-schedule after ingesting real prices.

Defining your own

Presets are declared in JobPreset in the domain package — the single source of truth for the preset → steps mapping plus the per-preset input schema. See Author a preset.