THE PROBLEM A trades owner ends the day with unstructured inputs: website forms, missed-call notes, a foreman's scribbles, an insurer deadline buried in email. The first company to call back usually gets the job — but the owner is on a roof, not a desk. Leads go cold overnight. WHAT CALL SHEET DOES Input: one day of leads + job notes (synthetic demo data only). Output in one pass: (1) a RANKED CALL SHEET — leads ordered by value and urgency, each with a one-line reason; (2) FOLLOW-UP DRAFTS IN THE OWNER'S VOICE — short, job-specific messages the owner approves and sends; (3) HUMAN-ESCALATION FLAGS — big money, unhappy customers, insurance deadlines pulled OUT of automation for the owner. The agent drafts; the human sends. Its key feature is knowing what not to handle. HOW IT'S BUILT Escalation is deterministic rules (intake signals, keyword scan), never the model — "why flagged?" always has an auditable answer. Ranking is a transparent points system (value, urgency, age, relationship). The model writes each follow-up draft in the owner's voice, served from AMD Instinct via the AMD Token Factory API (OpenAI-compatible). If a draft fails mid-run, the sheet says so per lead; with no endpoint reachable, a built-in mock engine labels output MOCK — never pretending the model ran. No third-party Python dependencies; standard library only. WHY AMD Drafting runs on AMD Instinct via the AMD Token Factory. Inference cost and latency decide whether a follow-up habit survives at a one-truck company — and open-weight models on AMD mean it can eventually run on the company's own hardware: no per-seat SaaS, no data leaving the building. DESIGN RULES WE HELD - Synthetic demo data only — no real customer data anywhere. - Human-in-the-loop: drafts never auto-send; escalation flags are a feature. - Original work, MIT-licensed. WHAT'S NEXT Wire the sheet to a consented lead inbox, add voice-note input for foremen, and ship it as the first module of a "roofing company in a box".
Category tags: