Claude Code Schedule automates CS and monitoring with Supabase
kanta13jp1 demonstrates how to fully automate support ticket handling for a Flutter Web + Supabase app using Claude Code's Schedule feature and Supabase Edge Functions.
Score breakdown
Explore this pattern to wire Claude Code's Schedule feature to any webhook-accessible API for fully automated, code-aware triage workflows without additional infrastructure costs.
- 01Requires a Claude Pro plan or higher, a GitHub repository, and a Supabase project with Edge Functions enabled.
- 02An hourly scheduled task called `cs-check` fetches unanswered support tickets via a Supabase Edge Function (`get-support-tickets`).
- 03Claude decides between three actions per ticket: auto-reply using FAQ data, fix a bug via `git commit` + push then reply, or escalate.
kanta13jp1 describes a three-step approach to fully automating customer support for a personal Flutter Web + Supabase application using Claude Code's Schedule feature. The prerequisites listed are a Claude Pro plan or higher, a GitHub repository, and a Supabase project with Edge Functions enabled.
A companion function (`reply-support-request`) accepts a POST request to either send a reply with a new status or trigger escalation.
The core of the system is a Supabase Edge Function (`get-support-tickets`) written in Deno/TypeScript that queries a `support_requests` table for tickets with `status = 'new'` and also fetches a `faq` table, returning both as JSON. A companion function (`reply-support-request`) accepts a POST request to either send a reply with a new status or trigger escalation. The hourly `cs-check` schedule task uses `WebFetch` to call these endpoints, then applies Claude's judgment: FAQ-answerable tickets get an auto-generated reply, tickets that suggest a bug trigger a source-code read, a `git commit`, and a push before replying, and ambiguous tickets are escalated.
Run history is persisted to a `schedule_task_runs` table — created with a provided `CREATE TABLE` SQL statement — storing task ID, status, start/finish timestamps, and a summary. Results are surfaced in a Flutter admin dashboard via a `ScheduleTaskMonitorCard` widget. The author frames the overall pattern as three steps: create a thin API layer with Supabase Edge Functions, define tasks in `CLAUDE.md`, and configure the Claude Code Schedule.
Key facts
- 01Requires a Claude Pro plan or higher, a GitHub repository, and a Supabase project with Edge Functions enabled.
- 02An hourly scheduled task called `cs-check` fetches unanswered support tickets via a Supabase Edge Function (`get-support-tickets`).
- 03Claude decides between three actions per ticket: auto-reply using FAQ data, fix a bug via `git commit` + push then reply, or escalate.
- 04A `reply-support-request` Edge Function accepts POST requests with a reply and new status, or an escalation flag.
- 05Run results are logged to a `schedule_task_runs` table storing task ID, status, timestamps, and a summary.
- 06A Flutter admin dashboard component called `ScheduleTaskMonitorCard` displays schedule run history.
- 07The workflow is summarized as three steps: build a thin Supabase Edge Function API, write task definitions in `CLAUDE.md`, and configure the Schedule.