Schedule
schedule.json v8 · backend=fireworks · cap=$3.5/day · max_tokens=2500
v8 (2026-05-25): added 'weekly-sun' tier with founder-cockpit agent — second push-to-user agent, Sunday 18:00 TRT weekly digest combining all source-agent outputs from the prior 7 days.
morning
Daily 04:00 UTC / 07:00 TRT · 1 agent
.github/workflows/autopilot-morning.yml
You are producing today's morning brief for Bilal. Read gmail_inbox.json (last 24h messages) and google_calendar_today.json (today + tomorrow events). Apply the triage-inbox skill to rank inbox items, the draft-replies skill to write paste-ready replies for the top 3, and the synthesize-day skill to assemble the final output in the strict shape defined in that skill (### 🌅 Today block with 3 priorities, 3 drafted replies, 1 to skip, today's calendar in TRT, tomorrow heads-up). If either snapshot has a STALE_NOTICE sibling file or is missing, set Action=blocked and emit a short 'stale data — no brief today' body. Never invent senders, subjects, or meeting titles — quote literal strings from snapshots. Keep total body under 2000 characters so it fits one Telegram message.
Inputs (7)
- agents/data/fetched/gmail_inbox.json
- agents/data/fetched/gmail_inbox.json.STALE_NOTICE.md
- agents/data/fetched/google_calendar_today.json
- agents/data/fetched/google_calendar_today.json.STALE_NOTICE.md
- agents/journal/user/*.md::recent:1d::3
- agents/journal/*morning-brief*.md::recent:7d::7
- agents/knowledge/BRAND.md
Recent runs
No recent runs surfaced. (Configure GITHUB_TOKEN, GITHUB_OWNER, GITHUB_REPO to enable.)
daily-am
Daily 05:00 UTC / 08:00 TRT · 4 agents
.github/workflows/autopilot-daily-am.yml
Look at the content-calendar.json INPUT FILE. Find today's date entry. If a brief JSON file for that calendar entry already exists in the briefs directory listing, log 'brief exists, no action'. If missing, write the brief JSON content (full schema matching ai-visual-studio brief format) inline in your journal entry under a code block.
Inputs (3)
- agents/agents/social-media-manager/data/content-calendar.json
- agents/agents/ai-visual-studio/data/imports/briefs/*.json::20
- agents/knowledge/BRAND.md
Read the ai-visual-studio metadata INPUT FILES and the fetched cloudflare_analytics.json + github_actions_runs.json. Compute aggregate stats (count, avg latency_ms, avg cost_cents, qg pass rate) for ai-visual-studio; for cloudflare surface p95 latency / error rate / cache hit ratio; for github_actions surface failed/successful run counts. If any feed shows a STALE_NOTICE, say so explicitly — do not invent numbers.
Inputs (4)
- agents/agents/ai-visual-studio/outputs/*/metadata.json::recent:7d::15
- agents/data/fetched/cloudflare_analytics.json
- agents/data/fetched/github_actions_runs.json
- agents/journal/*performance-monitor*.md::recent:7d::5
Read fireworks_usage.json (from fetcher), do_billing.json, autopilot_ledger.jsonl, and budget.json INPUT FILES. Compute: (a) today's LLM autopilot spend, (b) MTD ai-visual-studio spend, (c) DO infra MTD, (d) projected month-end vs $40/mo soft cap and $100/mo hard cap across all axes. Alert if any axis >70% utilization.
Inputs (4)
- agents/data/fetched/fireworks_usage.json
- agents/data/fetched/do_billing.json
- agents/data/autopilot_ledger.jsonl
- agents/agents/ai-visual-studio/data/budget.json
Aggregate from the INPUT FILES: (a) ledger row count + cost per agent, (b) ai-visual-studio metadata stats, (c) scheduling_queue current state, (d) Supabase user total, (e) SERP rank positions for tracked queries. Produce a single KPI snapshot table that can be copy-pasted into a weekly review. Mark any STALE rows as '(needs source)'.
Inputs (5)
- agents/data/autopilot_ledger.jsonl
- agents/agents/ai-visual-studio/outputs/*/metadata.json::recent:7d::15
- agents/agents/social-media-manager/outputs/scheduling_queue.md
- agents/data/fetched/supabase_kpis.json
- agents/data/fetched/serp_rankings.json
Recent runs
No recent runs surfaced. (Configure GITHUB_TOKEN, GITHUB_OWNER, GITHUB_REPO to enable.)
daily-pm
Daily 14:00 UTC / 17:00 TRT · 1 agent
.github/workflows/autopilot-daily-pm.yml
Sweep TODAY's INPUT FILES for any incident or alert signal: incidents.json (incident.io), github_actions_runs.json (failed runs), and journal 'Risk:' or 'blocked' lines. Aggregate into a digest table (source | severity | one-line summary). If nothing critical, write 'all clear' with counts.
Inputs (3)
- agents/data/fetched/incidents.json
- agents/data/fetched/github_actions_runs.json
- agents/journal/*.md::recent:1d::30
Recent runs
No recent runs surfaced. (Configure GITHUB_TOKEN, GITHUB_OWNER, GITHUB_REPO to enable.)
weekly-mon
Mon 06:00 UTC / 09:00 TRT · 3 agents
.github/workflows/autopilot-weekly-mon.yml
Read STRATEGY.md, AUDIENCE.md, BRAND.md, and the fetched serp_rankings.json. Pick ONE strategic question implied by the docs (e.g. 'which TR beauty-booking SEO queries are most winnable?'). Outline 3-5 sub-questions a deeper desk-research cycle would need to answer. Reference SERP data where relevant — do NOT fabricate positions.
Inputs (4)
- agents/knowledge/STRATEGY.md
- agents/knowledge/AUDIENCE.md
- agents/knowledge/BRAND.md
- agents/data/fetched/serp_rankings.json
Compose a weekly investor update DRAFT using only what is literally present in the INPUT FILES. Title it 'DRAFT — needs founder review'. Use supabase_kpis.json for user total, do_billing.json + fireworks_usage.json for infra burn, incidents.json for reliability, calendly_meetings.json for sales/investor pipeline velocity. For ANY metric not literally present (MRR requires Stripe, runway requires cash balance, engagement requires product analytics), write '(needs source)' instead of a number. Do NOT fabricate.
Inputs (7)
- agents/data/fetched/supabase_kpis.json
- agents/data/fetched/do_billing.json
- agents/data/fetched/fireworks_usage.json
- agents/data/fetched/incidents.json
- agents/data/fetched/calendly_meetings.json
- agents/data/autopilot_ledger.jsonl
- agents/knowledge/STRATEGY.md
Read package.json INPUT FILES plus fetched github_dependabot.json and osv_vulns.json. List the actual dependencies + any open Dependabot alerts (by severity) + any OSV findings. Flag any well-known historically-risky packages.
Inputs (5)
- agents/scripts/autopilot/package.json
- agents/agents/ai-visual-studio/scripts/package.json
- agents/data/fetched/github_dependabot.json
- agents/data/fetched/osv_vulns.json
- agents/data/autopilot_ledger.jsonl
Recent runs
No recent runs surfaced. (Configure GITHUB_TOKEN, GITHUB_OWNER, GITHUB_REPO to enable.)
weekly-sun
Sun 15:00 UTC / 18:00 TRT · 1 agent
.github/workflows/autopilot-weekly-sun.yml
You are producing the weekly founder cockpit for Bilal. Read the recent journal entries and source-agent outputs from the past 7 days listed in INPUT FILES. Apply the aggregate-week skill to build the structured aggregate, then the render-cockpit skill to produce the final Telegram body in the strict 6-section shape (### 📊 Week N of Q{Y} with Shipped / Slipped / Metrics / Content & comms / Pipeline / Decisions needed / Next week's top 3 bets). Use TRT (UTC+3) for all times. If any source returned no output this week, mark '(no output this week)' — never invent. If >2 critical sources are stale, switch to degraded-mode single-line alert. Cap total body at 2500 chars. Anonymize salon names per RULES.md.
Inputs (12)
- agents/agents/data-bi/outputs/*.md::recent:7d::7
- agents/agents/performance-monitor/outputs/*.md::recent:7d::7
- agents/agents/incident-commander/outputs/*.md::recent:7d::7
- agents/agents/tech-budget-finops/outputs/*.md::recent:7d::7
- agents/agents/competitive-intel/outputs/*.md::recent:30d::3
- agents/agents/linkedin-bilal-cpo/outputs/**/*.md::recent:14d::20
- agents/agents/linkedin-emir-cmo/outputs/**/*.md::recent:14d::20
- agents/agents/investor-relations/outputs/**/*.md::recent:14d::15
- agents/agents/market-research/outputs/*.md::recent:30d::3
- agents/journal/*.md::recent:7d::30
- agents/journal/user/*.md::recent:14d::5
- agents/agents/founder-cockpit/MEMORY.md
Recent runs
No recent runs surfaced. (Configure GITHUB_TOKEN, GITHUB_OWNER, GITHUB_REPO to enable.)