skills/report-builder/SKILL.md
Create and configure automated reports in Studio Chat. Use when asked to set up a new report, schedule recurring reports, define report instructions, select which assistants/playbooks to include, configure Slack delivery, or manage existing report definitions. Expert at crafting report instructions that produce structured, high-quality output using the Block Kit format.
npx skillsauth add studiochat/skills report-builderInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Create, configure, and manage automated reports via the Studio Chat Reports API. Reports are executed by SAMI in a sandbox with the data-expert skill — this skill focuses on defining reports, not executing them.
Assistants and playbooks are the same concept. Users say "assistant" — the API uses "playbook."
The playbook_base_ids field in report configuration filters by assistant.
Uses the same environment variables as other Studio Chat skills:
export STUDIO_API_TOKEN="sbs_your_api_key_here"
export STUDIO_PROJECT_ID="your-project-uuid"
# List all reports
python3 scripts/reports.py list
# Get a specific report
python3 scripts/reports.py get <report_id>
# Create a report
python3 scripts/reports.py create --name "Weekly CX Report" \
--instructions "Analyze conversations..." \
--playbooks PLAYBOOK_BASE_ID_1,PLAYBOOK_BASE_ID_2 \
--schedule manual --window 7 \
--slack "#reports" --email "[email protected],[email protected]"
# Update a report
python3 scripts/reports.py update <report_id> --name "New Name" --slack "#new-channel" --email "[email protected]"
# Delete a report
python3 scripts/reports.py delete <report_id>
# Trigger a manual run
python3 scripts/reports.py run <report_id> [--window 7]
# List runs for a report
python3 scripts/reports.py runs <report_id>
# Get run status and logs
python3 scripts/reports.py run-status <run_id>
Creating a report does NOT mean running it. By default, only create the report definition. Do NOT trigger a run unless the user explicitly asks to execute or run it.
Default workflow — create the definition without executing:
Only when the user explicitly asks to generate/run/execute a report now:
run-status until completed (check every 15–20 seconds)# Create + run (only when explicitly requested)
python3 scripts/reports.py create --name "Ad-hoc: Last 7 days" \
--instructions "..." --window 7 --playbooks BASE_ID
# Note the report ID from output, then:
python3 scripts/reports.py run REPORT_ID --window 7
# Monitor:
python3 scripts/reports.py run-status RUN_ID
When the user wants a scheduled report:
--schedule cron --cron "EXPRESSION" and optionally --slack "#channel"| Field | Required | Description |
|-------|----------|-------------|
| name | Yes | Display name for the report |
| instructions | Yes | What SAMI should analyze and report on |
| schedule_type | No | manual (default) or cron |
| cron_expression | No | Cron schedule (min interval: 30 min). E.g. 0 9 * * 1-5 |
| playbook_base_ids | No | Filter to specific assistants. Empty = all |
| time_window_days | No | Lookback window for manual reports (default: 7) |
| slack_channel | No | Slack channel for PDF delivery. E.g. #reports |
| email_recipients | No | List of email addresses for PDF delivery. E.g. ["[email protected]"] |
| Description | Cron |
|-------------|------|
| Weekdays at 9 AM (ART) | 0 12 * * 1-5 |
| Weekly Friday 3 PM (ART) | 0 18 * * 5 |
| Weekly Monday 9 AM (ART) | 0 12 * * 1 |
| Daily at 6 PM (ART) | 0 21 * * * |
| Monthly on the 1st (ART) | 0 12 1 * * |
Note: Cron reports auto-calculate the time window from the interval (daily = 1 day, weekly = 7 days). Manual reports use the time_window_days field.
The report sandbox already has the data-expert skill loaded. This means SAMI already knows how to fetch conversations, compute metrics, call the analytics API, and process data. Do not include API endpoints, scripts, or fetch instructions in the report instructions.
Instructions define what to analyze and what output to produce — never how to get the data.
playbook_base_ids, mention them by name for clarityDaily Operations Report:
Analyze all conversations from the time window.
1. Start with key metrics: total conversations, deflection rate, average response time, sentiment breakdown.
2. Break down by playbook: show each assistant's volume, deflection rate, and sentiment.
3. Identify the top 5 topics customers asked about.
4. Flag any conversations with very negative sentiment — summarize what went wrong.
5. End with 3 actionable recommendations for the CX team.
Weekly Performance Summary:
Generate a weekly performance summary.
1. Key metrics overview with week-over-week comparison.
2. Deflection rate trend — is it improving?
3. Sentiment distribution: what percentage of conversations are positive/neutral/negative?
4. Top 10 topics by volume with sentiment breakdown per topic.
5. Handoff analysis: which topics cause the most escalations?
6. Knowledge base gaps: are there topics where the AI consistently fails?
7. Recommendations for playbook improvements.
Playbook-Specific Analysis:
Deep dive into the Cotizador assistant.
1. Volume and deflection rate for this playbook only.
2. Most common questions customers ask.
3. Conversations where the assistant gave incorrect pricing — flag for review.
4. Average conversation length and response quality.
5. Comparison to previous period: is performance improving?
Full endpoint documentation: references/api-reference.md
tools
Build and configure Studio Chat assistants — instructions, knowledge bases, skills, example blocks, API tools, alerts, schedules, and trending topics. Use when asked to create, update, or manage any aspect of an assistant's configuration. Covers all CRUD operations via the Studio Chat API.
tools
Manage Studio Chat project configuration — knowledge bases, playbooks, syncing, schedule, API tools, alerts, and trending topics. Use when asked to create, update, delete, or inspect KBs, playbooks, office hours, alerts, or any project settings. Also use to generate and browse trending topics analyses. Covers all CRUD operations via the Studio Chat API.
testing
Test and evaluate AI assistant behavior. Create test cases, run evaluations, analyze results, simulate conversations, and compare playbook versions. Use when asked to test an assistant, create QA scenarios, run evals, check assertion pass rates, or verify assistant behavior.
tools
Analyze customer conversation data, compute metrics, identify patterns, and generate reports using the Studio Chat Analytics API. Use when asked to analyze conversations, review performance, understand trends, examine deflection rates, sentiment distributions, handoff patterns, API tool usage, toolkit usage, resource analytics, sparklines, or any data analysis task involving platform activity.