Reports from Multiple Sources
Integrate your data warehouse, product analytics, billing, search analytics, and observability into one swarm — then ask it the questions your team would have asked a BI tool. Charts render as auto-hosted Pages.
The swarm joins data across ClickHouse, Postgres, Convex, Clerk, PostHog, Stripe, Google Search Console, GitHub, and SigNoz, and answers scheduled questions ("daily product-growth update?", "weekly GTM metrics?") and on-demand questions in Slack ("how many active orgs signed up last week?").
What it does
Reports render as auto-hosted HTML Pages with charts when complex, or Slack threads with chart replies for recurring digests.
Agents
- Lead — orchestrates; holds the scoped secrets needed for cross-source queries.
- Researcher — synthesis: takes raw data + the question, produces the narrative.
Tools & Skills
Built-in (ships with agent-swarm)
- agent-fs (archives), swarm KV (question cache + report state), Pages (auto-hosted HTML reports with charts),
script-run+swarm-scriptnodes (deterministic catalog scripts — JSON stdout merges into node output for downstream interpolation). Use these for "fetch + JSON" sections so the LLM stays out of the loop where it adds no value.
Custom (swarm-managed)
- Integration skills (one per source):
gsc-analytics(Search Console),posthog-interaction(PostHog HogQL — also joins Convex / Clerk / Stripe warehouses),clerk-analytics(user/org growth from Clerk),turso-interaction(Turso LibSQL state),signoz-interaction(SigNoz observability),granola-api(Granola meeting signal),telemetry-report(charts from internal telemetry). daily-growth-snapshotswarm-script — calls every source over HTTP/SQL and emits a unified JSON payload, so the agent-side report is mostly framing, not data-pulling. Date-window discipline (align to complete UTC days, exclude today) is encoded in the script.- Chart-generation skill — renders the JSON payload into chart images embedded in the Page or Slack reply. Backed by Chart.js running inside a
swarm-scriptnode so output is deterministic and snapshot-comparable.
Workflows / Schedules
daily-product-growth-update— daily. Joins ClickHouse (CLI installs) + Clerk (signups) + Postgres (product activity) + PostHog → Convex (warehouse) + GitHub (stars/forks/traffic). Posts a Slack thread: header + snapshot + up to 8 chart replies + TL;DR.gtm-weekly-review— weekly. GitHub stats + Plausible + Google Search Console as a research thread.daily-hn-briefing— daily. Browser-automation scrape of Hacker News, filter for AI/dev-tools relevance, email via AgentMail, archive in agent-fs.memory-rater-daily-digest— daily. Internal-tool health digest (relevant to swarms with a memory subsystem).daily-blocker-digest— daily prelude that verifies operational-runbook items.
Patterns used
- No-op When Nothing Changed — digests skip on a quiet day instead of posting an empty report.
Tips for new swarm users
- Use deterministic
swarm-scriptnodes for "fetch + JSON" sections. Keep the LLM out of the loop where it adds no value — faster, cheaper, more reliable. - Always exclude the partial current day from time-windowed metrics. Today's numbers are incomplete and the agent will draw wrong conclusions.
- Render multi-chart reports as a Page, not a Slack thread. People want skimmable: a linked HTML page with 8 charts beats 8 image replies.
- One agent owns the cross-source secrets (scoped per agent), keeping the secret surface small and auditable.
- Cache slow warehouse queries in KV with a short TTL — a 1-hour cache is invisible to users and saves a lot of cycles.
- Ask the swarm questions in Slack and let it pick the source — a well-skilled lead routes "active orgs last week?" to Clerk, "activation funnel?" to PostHog, "top GSC query?" to Google Search Console, without you naming the source.
DORA Metrics
Run recurring DORA metrics reports for any Git repository. The swarm computes exact deployment frequency and lead time from release tags, labels CFR and recovery time as proxy estimates, and updates one stable Page URL in place.
Self-Documenting & Release Reports
Keep your docs fresh automatically, generate release notes from real commits, and produce release videos with Remotion + browser-automation captures. No-op silently on quiet days.