Getting started
This page assumes you have already followed the setup guide. If the backend is not running on your machine yet, start there instead. Getting started is the "walk through the product" document, not the installer.
What you will do
- Post a message in Slack.
- Receive a PDF fraud intelligence report in the thread.
- Ask the report a follow-up question inside the same thread.
- Request a small edit and receive an updated PDF.
That is the whole product. Everything else is a detail on top of this loop.
Step 1: ask for a report
In the Slack channel or DM where you installed the bot, post:
Generate a fraud intelligence report for this month.
PyGuard will react with an emoji and start the work. Within about thirty seconds you should see a short summary in the channel and a PDF uploaded into the thread.
What just happened. The Slack service captured the thread identifier, the Memory Agent classified the message as fraud_analysis, and the Fraud Orchestrator produced a durable report bundle on disk (backend/reports/fraud_report_<timestamp>/). A row was inserted into fraud_reports so we can find this report again by the thread later.
Step 2: open the PDF and skim it
The PDF is structured like a human analyst would write it:
- A cover page with the headline numbers.
- A Key Metrics table.
- An Executive Summary in three to five bullets.
- A Fraud Pattern Analysis grouped by risk tier.
- A Recommended Actions section split into IMMEDIATE, SHORT-TERM, and MEDIUM-TERM.
- A Data Appendix with the raw numbers the analysis relied on.
The recommended-actions section is the one we spent the most time on — it is the part that turns the report from a description into something a small team can actually act on.
Step 3: ask a question in the thread
Click Reply in thread on the PDF message and ask something like:
Why did you rate chargeback abuse moderate and not critical?
PyGuard stays in the thread and behaves like the expert on its own report. It reads the report's sections and the saved data snapshot, and optionally hits the live dataset. You receive a narrative answer inside the thread — no new PDF.
Tip. Follow-ups only work when you reply inside the thread. A new top-level message in the DM or channel has a different thread_ts, so Phase 0 will not match. If you ever see PyGuard generating a brand-new PDF when you meant to ask a follow-up, this is the reason.
Step 4: request an edit
In the same thread, ask for a change:
Tighten the executive summary to focus on the top three findings only. I want to share it with our CEO.
PyGuard opens report.tex inside the saved bundle, applies the edit, recompiles with tectonic, bumps the version to v2, and uploads the new PDF into the thread with the message "Here is your updated Fraud Intelligence Report (v2):".
If the compile fails, PyGuard automatically rolls back to the previous bundle and replies with the tectonic stderr tail so you can refine the request.
What to do next
- Read features for the full list of things PyGuard can do today.
- Open troubleshooting if anything above did not match your experience.
- If you want to pass data between systems, see the API reference.