Use Cases

Built for real studio workflows.
No code required.

See how game studios use Tsunagi to collect, transform, and route their data — from Steam reviews to LLM enrichment.

Monitoring

Real-time community monitoring for indie studios

The Problem

Your community team checks Steam reviews and Discord channels by hand. No single view. No trend detection. By the time you spot a problem, it's already on Reddit.

The Tsunagi Way

One blueprint pulls Steam reviews and Discord messages, runs sentiment and language detection, removes duplicates, and sinks to ClickHouse. Your Grafana dashboard updates in real time. Took an afternoon to set up.

community-monitoring.yaml
# Source: Steam Reviews
- type: steam_reviews
config:
app_id: 1234560
poll_interval: 5m
# Processor: sentiment LLM
- type: sentiment_llm
config:
provider: anthropic
target: sentiment
# Sink: ClickHouse
- type: clickhouse
config:
table: reviews
studio-onboarding.yaml
# 3 sources, 1 processor, 1 sink
- type: steam_reviews
config:
app_id: 1234560
- type: discord
config:
channel_id: "..."
- type: reddit
config:
subreddit: "mygame"
- type: remove_duplicates
- type: clickhouse
Onboarding

Spin up a new data pipeline in 30 minutes

The Problem

You need to track player feedback for a new title. Your backend engineer estimates two weeks to wire up Steam, Discord, and Reddit APIs. Then another week for parsing, removing duplicates, and storage.

The Tsunagi Way

Write one YAML blueprint with your sources and sink. Deploy via Studio Desktop. Pipeline is live before your coffee gets cold.

AI Enrichment

AI enrichment without a separate ML stack

The Problem

Your data team wants sentiment scores and category tags on every review. That means spinning up a Python service, managing API keys, rate limits, retries, and fallback logic. Another system to babysit.

The Tsunagi Way

Add an llm processor to your blueprint. Pick Anthropic, OpenAI, or Ollama. Set a daily budget. If the API flakes, it falls back automatically. No new service. No new repo.

llm-processor.yaml
- type: "llm"
config:
provider: "anthropic"
model: "claude-haiku-4-5"
prompt: "Classify this review: {{.review}}"
target: "ai_category"
daily_budget_usd: 5.0
fallback_value: "uncategorized"
rewind-config.yaml
# Fix the processor, replay safely
- type: rewind
config:
from_checkpoint: "2026-05-01T00:00:00Z"
to_checkpoint: "2026-05-07T00:00:00Z"
processor: fixed_mapper_v2
failed_events: "errors_queue"
# Events that fail go to failed events queue
- type: failed_events
config:
sink: s3
bucket: "tsunagi-dlq"
Resilience

Fix a bug in production, replay without data loss

The Problem

You shipped a bad processor. For six days it mangled player events before anyone noticed. Your analytics are wrong, your reports are garbage, and you have no way to reprocess cleanly.

The Tsunagi Way

Rewind to the checkpoint before the bug. Fix your processor. Replay the exact event range. Bad events land in the failed events queue for inspection. Your data is clean again.

Shadow Mode

Test new pipeline logic on live data, safely

The Problem

You want to change how player events are categorized. But the only way to test is on production data, and if you're wrong, you pollute your warehouse. So you don't ship it.

The Tsunagi Way

Run your new logic in Shadow Mode. It reads live events, processes them with your new mapper, but writes nothing. Compare outputs side-by-side with production. Promote when the numbers look right.

shadow-mode.yaml
# Shadow flow: reads live, writes nowhere
- type: shadow
config:
mode: shadow
compare_with: "prod-flow"
tap_source: "steam_reviews"
- type: mapper_v2
config:
dry_run: true
# No sink — outputs compared only
slack-notification.json
"metadata":
"schema_change":
"detected": "true",
"blueprint_id": "steam-reviews",
"change_type": "field_added",
"field_name": "verified_purchase"
,
"original_data": "..."
# Webhook triggered by metadata.schema_change.detected = true
# Alert sent to #game-analytics Slack
Smart Alerting

Monitor schema changes and get alerted via Slack

The Problem

Steam adds a new field to their review API. Your pipeline keeps working but you don't know about the change until someone asks why the new data isn't in reports.

The Tsunagi Way

The schema_monitor processor detects the field addition, logs the change, and triggers a conditional sink that sends a Slack notification. Your team knows immediately.

Ready to own your pipeline?

Join the studios using Tsunagi to collect, enrich, and route their data — without writing code.

Get early access
"Lovelace.gg processes millions of community messages daily across Discord, Reddit, and Steam using Tsunagi. When a connector fails, we trace the exact event, replay it, and fix the pipeline — without leaving our infrastructure."
L
Lovelace.gg
AI-powered community intelligence for game studios