Ops Dashboard
Wednesday, August 12 Β· live view (demo data) Β· every widget = an API endpoint, exportable to CSV
3
Unassigned requests
oldest: 1d 20h β
4
HITL drafts awaiting approval
SLA: 38 min remaining
7
Pickups scheduled today
4β7p window: 5 of 8 capacity
9
Pickups scheduled tomorrow
Thu 8/13 Β· subs notified Β· 2-day rule β
6
Pickups scheduled in 2 days
Fri 8/14 Β· 3 slots still open
Contact cadence funnel β last 7 days
Median time-to-schedule: 3.1 h (was ~2 days manual)
Needs attention
| β #38402 reply classified unclear β routed to human |
| β° ER-GA-ATLSouth Mon 4β7p at full capacity |
| π 2 sends held for 9:00 a.m. local (quiet hours) |
| π© 1 auto-demotion this month: Email 5 β back to HITL |
| π³ 3 requests in completed payment owing > 30 days |
Queue capacity β booked / capacity, week of Aug 9 (Atlanta region)
| Queue Β· Slot | Sun 8/9 | Mon 8/10 | Tue 8/11 | Wed 8/12 | Thu 8/13 | Fri 8/14 | Sat 8/15 |
|---|---|---|---|---|---|---|---|
| ER-GA-ATLSouth Β· 4β7p | β | 4/4 | 3/4 | 1/4 | 2/4 | 1/4 | 0/2 |
| ER-GA-ATL85 Β· 12β4p | β | 1/3 | 1/3 | 0/3 | 2/3 | 1/3 | β |
| ER-GA-ATLDecatur Β· 8β12p | β | 1/2 | 0/2 | 1/2 | 0/2 | 2/2 | β |
Unassigned Requests
Same board as todayβs T2 β plus the Daily Auto-Assignment agent.
| Request | Client | Queue | Uploaded | Priority | Action |
|---|---|---|---|---|---|
| #38402 Jordan Meyers β Equipment Retrieval β Locust Grove, GA | Centauri Health Solutions | ER-GA-ATLSouth | Aug 6, 9:44p | standard | |
| #38417 Dana Whitfield β Equipment Retrieval β Marietta, GA | Kaiser Permanente β 28101 Regional | ER-GA-NW | Aug 7, 3:02p | urgent | |
| #38423 Chris Alvarez β Equipment Retrieval β Austin, TX | SMX | ER-TX-Austin | Aug 7, 7:32p | standard |
π‘ Auto-Assignment rule (editable in System Map): match geo queue β offer to queueβs concierges (acceptance SLA 2h) β backup subcontractor β escalate to Chelsea. Every step logged.
Request #38402 β Jordan Meyers in process Contact Agent: HITL
Centauri Health Solutions Β· Equipment Retrieval Β· created Aug 6 Β· concierge: Romeo L. Β· queue ER-GA-ATLSouth
New
Contacting
Scheduled
Picked up
Shipped
Completed
Details
Corporate client Centauri Health Solutions
Assigned concierge Romeo L.
Items HP laptop #24426 + power cord
Employee Jordan Meyers Β· (404) 555-0122 Β· [email protected]
Pickup 2828 Harcort Dr, Locust Grove, GA 30248 ZIP verified Β· ET
Ship to FedEx β MCPc, 21500 Aerospace Pkwy, Cleveland OH
FedEx instructions (from client setup, editable per request)
FedEx account
Tracking # ITSD-245078 Β· RMA 13574831
Scheduled Thu Aug 13, 4β7 p.m. queue-local (booked by Scheduling Agent, approved by Chelsea)
Pickup date/time Shipped date/time
Attachments (2: pickup photo, FedEx receipt)
Billing & completion HITL-locked
| Item | hrs / units | rate | total |
|---|---|---|---|
| Standard service (prorated Β½ hr) | $100/hr | $100.00 | |
| Urgent fee | $125/hr | $0.00 | |
| After-hours fee | $150/hr | $0.00 | |
| Expenses (FedEx) | $14.20 | ||
| Total | $114.20 | ||
Billed to
βCompletedβ is blocked until billing info is entered. On completion: charge or invoice line posts, receipt PDF emails to the client and lands in their portal for re-download.
Agent activity (flight recorder)
| Aug 7 Β· 9:00a | Text 1 sent Β· template ER-text1 v14 Β· model claude-sonnet Β· approved: Chelsea |
| Aug 7 Β· 9:22a | Reply received β intent: YES (0.97) |
| Aug 7 Β· 9:23a | Address confirm sent Β· ER-addr v6 Β· approved: Chelsea |
| Aug 7 Β· 9:31a | Slot booked: Thu Aug 13, 4β7p (3/4 β 4/4 in ER-GA-ATLSouth) Β· memo + client webhook fired |
| Aug 7 Β· 9:31a | Status new β in process Β· concierge β Romeo L. Β· receipt emailed to Chelsea |
Conversation (SMS)
Jordan, this is Romeo with the Equipment Retrieval team. Centauri Health asked that I schedule pickup of their equipment. Will someone be home Thu 8/13, 4β7 p.m.? Thanks!Agent draft β approved by Chelsea Β· 9:00a
Yes that works9:22a
Great β is the pickup address 2828 Harcort Dr, Locust Grove GA?auto-template Β· 9:23a
Yep9:29a
Thanks for your quick response. A team member will text you an ETA when headed your way.9:31a
Notes & memos 1 unseen by client
π’ Client memo: Confirmed for pickup Thu 8/13, 4β7p
posted 9:31a β client has NOT opened this note yet Β· they see it in their portal at the ticket level and can reply
posted 9:31a β client has NOT opened this note yet Β· they see it in their portal at the ticket level and can reply
π¬ Client note thread: "Please make sure they bring the docking station too" β IBX admin, 8:12a seen Β· replied
π Concierge note (internal): gate code 4482, dog in yard
Scheduling β Queues & Time Slots
Queues are mapped by ZIP code Β· all slot times are queue-local Β· set one default template for every ER queue, edit only the exceptions. Try editing a capacity.
ER-GA-ATLSouth β week of Sun Aug 9, 2026 Β· all times queue-local (ET) Β· queue manager: Chelsea Β· default owner: Romeo L.
| Slot (local) | Sun 8/9 | Mon 8/10 | Tue 8/11 | Wed 8/12 | Thu 8/13 | Fri 8/14 | Sat 8/15 |
|---|---|---|---|---|---|---|---|
| 8aβ12p | |||||||
| 12β4p | |||||||
| 4β7p |
Auto-scheduling defaults β set once, override only the exceptions
| Variable | Subcontractor areas | Internal-concierge areas (Nigel Β· Aly Β· Angelo) |
|---|---|---|
| Lag time (notice before first offer) | days | next day β the system sees their calendars, so we schedule tighter |
| Pickup window length | hrs | hrs |
| Slots per day | from concierge calendar |
Fill order closest day first: fill today+lag completely (both slots), then the next day, and so on into the future. Client not available β roll to the next available day.
Local time every offer is computed in the pickup ZIP's local timezone β always.
All of these are workflow variables editable in the System Map without a developer β lag time, window length, slots/day, fill order.
Capacity changes β take effect immediately
Increase new slots are offerable immediately; waitlist fills them first
Decrease booked pickups never auto-cancel β they route to HITL with reschedule drafts
Every change versions instantly and the scheduler re-reads capacity at each booking commit β no restart, no lag. Full plan in the Scheduling Algorithm document.
Exceptions β scheduled but can't fulfill 1 open
| Romeo L. out sick Thu 8/13 Β· 4 booked pickups affected |
Procedure: reassign within the same window first (covering concierge β backup sub) β if impossible, a human chooses renegotiate-or-reschedule with pre-drafted customer texts β notifications fire β nothing silently drops. Every step ledgered.
πΊ ZIP β queue routing: queues are set by ZIP code. Phase 0 loads Andrea's regions-per-ZIP file as the routing table; in parallel we evaluate a best-in-class routing dataset (traffic patterns, city vs rural density, drive-time) to replace the manual file over time.
Availability check (what the Scheduling Agent runs)
ZIP 30248 β queue
ER-GA-ATLSouth Β· timezone ETRequest received Wed 8/12 β earliest offer Fri 8/14 2-business-day rule
Next offerable slots (queue-local time) Fri 8/14 4β7p (0 left β full) Β· Mon 8/17 12β4p (2 left) Β· Tue 8/18 10aβ1p (3 left)
No response by midnight tonight β offers roll forward to Mon 8/17+ automatically. Subs always get 2 business daysβ notice.
Guardrails
- Agent can never overbook β capacity is re-read at booking commit inside a transaction; if you change availability mid-scheduling, the agent re-validates and re-offers
- ZIP-first mapping (typos in imported city names canβt misroute)
- 2-business-day lead rule enforced β subs always get notice to get pickups on their schedule
- Every capacity change is versioned β βwho lowered Monday to 2?β is a query
Approval Queue (Human-in-the-Loop)
Agents draft β humans approve, edit, or reject. Every decision trains the system toward (optional) full automation.
Text 1 Β· #38417 Dana Whitfield draft template ER-text1 v14 Β· quiet-hours OK (ET 10:41a)
Booking Β· #38561 M. Okafor β Fri 8/15, 8β12p, ER-GA-ATL85 draft capacity 1/3 β 2/3
Confirm booking + customer memo + client webhook.
Closure Β· #38377 refusal (βwonβt return until they pay meβ) billing-affecting adds 0.5 standard unit Β· status β service declined
Memo (verbatim customer comment) + 0.5 unit + close. This class stays HITL permanently.
Voicemail script Β· #38449 (no reply to texts) draft ElevenLabs voice βMorganβ Β· TCPA ID line locked in template
βHi, this is the Equipment Retrieval team calling for Sam Torres on behalf of SMXβ¦β
π Path to autonomy: Text 1 drafts β 212 approved Β· 3.2% edited Β· 0 compliance flags. Eligible for Fully-Auto pending Andreaβs sign-off (recorded in the ledger).
Admin Tools β Templates, Prompts & Content
Every text, system email, chatbot, AI agent prompt, and document template β add & edit here, versioned, variable-checked, publish-gated. Nothing is hard-coded. Credentials are issued in Access & Credentials.
| Template | Channel | Version | Eval score | Status | |
|---|---|---|---|---|---|
| ER β Text 1 (initial outreach) | SMS | v14 (v13, v12β¦) | 98.4% | published | |
| ER β Text 2 (follow-up) | SMS | v9 | 97.1% | published | |
| ER β Address confirm | SMS | v6 | 99.0% | published | |
| ER β Voicemail | Voice | v4 draft | 96.2% | awaiting Andrea | |
| ER β Email 5 | v11 draft | 91.8% β | eval failing | ||
| Contact Agent β intent classifier prompt | LLM | v22 | 97.7% | published | |
| System email β receipt delivery | v3 | β | published | ||
| System email β weekly report delivery | v2 | β | published | ||
| Portal chatbot β client Q&A | Chatbot | v5 | 96.9% | published | |
| Document template β receipt PDF | Document | v2 | β | awaiting Andrea | |
| Document template β monthly invoice PDF | Document | v1 | β | published |
Editor (ER β Text 1 v14)
{{firstName}}, this is {{conciergeName}} with the Equipment Retrieval team. {{companyName}} asked that I schedule pickup of their equipment ({{items}}). Will someone be home {{day}}, {{date}}, {{window}}? Thanks in advance! β {{conciergeName}}
β
All 7 variables declared & validated β a missing variable blocks the send, so βHi {firstName}β can never reach a customer.
Publish pipeline
1οΈβ£ Draft (anyone with Template role)
2οΈβ£ Eval suite runs (golden test cases, per model)
3οΈβ£ Review & sign-off (Andrea, per class)
4οΈβ£ Published β every send records template version
β©οΈ Rollback: one click, ledgered
2οΈβ£ Eval suite runs (golden test cases, per model)
3οΈβ£ Review & sign-off (Andrea, per class)
4οΈβ£ Published β every send records template version
β©οΈ Rollback: one click, ledgered
Agents & Operating Modes
Per-workflow, per-client mode switches. Fully-Auto is off by default and must be earned through the HITL record.
| Workflow | Client | Manual | HITL | Fully-Auto | Evidence |
|---|---|---|---|---|---|
| Contact β Text 1 | Centauri Health | active | 212 approvals Β· 3.2% edited | ||
| Contact β Text 2 / reminders | Centauri Health | active | 84 approvals Β· 4.1% edited | ||
| Scheduling β bookings | All pilots | active | 61 approvals Β· 1 capacity conflict caught | ||
| Closures (billing) | All | active | permanently locked | policy: money stays human | |
| Assistant β read queries | Concierges | read-only tool tier |
π Auto-demotion: Email 5 was demoted to HITL on Jul 30 after 2 formatting complaints β automatically, no one had to notice. Kill switch per workflow, always.
Reports & Dashboards
Every legacy T2 report, reproduced and verified β plus schedules, notifications, and CSV/Excel on everything.
Live now β native report builder: pick a data source, choose fields, filter, run, export CSV, and save reports to re-run (last-run tracked).
Open the live report builder β
| Report | Filters | Schedule | ||
|---|---|---|---|---|
| Equipment Retrieval report β weekly (all 17 columns of the current xlsx) | client-location | Mon 2:00a β client email + portal | ||
| Monthly Status report (same format & columns) | month Β· client-location | last day of month, end of day β client email + portal | ||
| Receipts β re-download any receipt | date Β· employee Β· request # | auto on completion β client email | ||
| Weekly client status (touch history) | client | Mon 8:00a β client portal + email | ||
| Month end / by concierge | month Β· client Β· concierge | 1st, 7:00a β Andrea | ||
| Payment owing | client-location | β | ||
| Compliance (quiet hours Β· opt-outs Β· HITL rates) | date range | Fri 5p β Sabetay | ||
| Cost per request (LLM Β· SMS Β· voice) | client Β· agent Β· model | β |
β¬οΈ The CSV buttons above download a real sample file β try one. Every export is logged: who, what, when, row count.
Accounting β Controller & Bookkeeper Console
Everything needed to run the company's books from one place: closing calendar, invoicing driven by closed tickets, contractor payouts, card processing, and reconciliation.
$41,380
Revenue MTD
Aug 1β12 Β· svc fees + urgent + after-hrs + expenses
7
Completed, not yet billed
billing info missing β blocks "Completed"
$2,140
CC charges settling
Payscape batch Β· settles T+2
$3,225
Invoices outstanding >30d
3 clients Β· payment-owing report
$8,950
1099 payouts owed
from closed tickets Β· next run Fri
Closing calendar β August 2026
| Date | Task | Status |
|---|---|---|
| Mon 8/17, 2:00a | Weekly reports drop (all clients) | scheduled |
| Fri 8/21 | 1099 contractor payout run (closed tickets 8/8β8/21) | needs approval |
| Mon 8/31, EOD | Monthly Status reports drop β drives final invoices | scheduled |
| Mon 8/31 | Month-end close: invoice β report reconciliation, CC settlement match | checklist ready |
| Tue 9/1 | Monthly invoices emailed (invoice = monthly report, line for line) | auto after close |
| Tue 9/15 | W2 payroll (salaried β regular cycle, unaffected by tickets) | recurring |
Closing a ticket is the accounting event: it fixes the billing lines β feeds the monthly report β the invoice matches the report line-for-line β drives the 1099 payout for whoever performed it.
Payouts β driven by closed tickets
| Payee | Type | Closed tickets | Owed | |
|---|---|---|---|---|
| Romeo L. | 1099 | 22 | $2,860 | |
| ADT Solar (sub) | 1099 | 31 | $4,030 | |
| Kerri T. | 1099 | 16 | $2,060 | |
| Nigel, Aly, Angeloβ¦ | W2 salaried | β | regular payroll | not ticket-driven |
1099 payouts compute from closed tickets only β same numbers as the invoice, so payee, client invoice, and monthly report always agree.
Client billing setup β format copied from the current client profile (clientProfile.aspx)
Independence Blue Cross
Hourly rates standard Β· urgent Β· after-hours (set at initial client setup Β· effective-dated)
Rate link text
Payment method (set at initial setup)
Card on file Visa β’β’β’β’ 4412 Β· exp 04/28 Β· Payscape vault
Statement descriptor
TSQ*RETRIEVAL <request #> β reconciles CC statement to receipts one-for-oneFedEx account
FedEx instructions (default for every request; editable per request)
Billing start month Report config weekly Mon 2:00a + Monthly Status last day EOD
Reconciliation β invoice β monthly report β card settlements
| Check | Source A | Source B | Status |
|---|---|---|---|
| Invoice lines = Monthly Status report lines | Invoice IBX Jul 2026 Β· 43 lines Β· $5,240 | Monthly report Jul 2026 Β· 43 rows Β· $5,240 | match |
| CC settlements = receipts | Payscape batch 7/31 Β· $3,890 | Receipts (CC) Jul Β· $3,890 Β· descriptors matched | match |
| 1099 payouts = closed-ticket labor | Payout run 7/31 Β· $7,120 | Closed tickets Jul Β· labor $7,120 | match |
| Unbilled completed tickets | 7 tickets completed w/o billing info (blocked from "Completed" β data-entry follow-up list) | action | |
Every export and reconciliation run is ledgered. This screen is the internal controller's daily view β the books always tie back to tickets.
Automations & Notifications
No-code rules over the event stream. Rules call the same guarded APIs as everyone else β they can never bypass quiet hours, modes, or permissions.
| Rule (trigger β condition β action) | Last fired | On |
|---|---|---|
| Bulk upload β start cadence Β· request.created β client has Contact enabled β queue Text 1 draft | today 7:02a (41Γ) | |
| Aging unassigned Β· every 30 min β unassigned > 4h β SMS Chelsea + dashboard flag | today 11:30a | |
| Acceptance SLA Β· offer sent β no acceptance in 2h β reassign to backup sub β else escalate Chelsea | yesterday 3:15p | |
| Pickup completed β client webhook + thank-you text (template, quiet-hours gated) | today 10:12a | |
| Payment owing 30d Β· nightly β completed-payment-owing > 30 days β email accounting pack | Aug 1 |
π Notification channels: email Β· SMS Β· in-app Β· push Β· webhook Β· Slack/Teams β recipients by role, person, or client.
Client Portal β what Centauri Health sees
portal.retrieveitassets.com Β· each client sees only its own tenant (enforced at the database) Β· optional white-label branding
38
Open retrievals
400
Completed this year
$800,000
Value of returned assets
avg asset value $2,000 Γ 400 completed Β· set per client in client setup
6.1%
Unresponsive rate
Their requests (live status + touch history)
| Request # | Reference # | Employee | Status | Latest touch | |
|---|---|---|---|---|---|
| 38402 | ITSD-245078 | Jordan Meyers | scheduled Thu 8/13 4β7p | reply YES Β· address confirmed Β· booked (3 touches) | |
| 38417 | ITSD-245102 | Priya N. | contacting | Text 1 sent 9:00a Β· no reply yet | |
| 38119 | β | T. Brooks | service declined | refusal recorded verbatim Β· closed w/ 0.5 unit |
Submit requests
Or connect Workday / ServiceNow directly with a scoped API key β same endpoint their IT already uses with T2.
Reports, receipts & payments
π¬ Weekly ER report β Mondays 2:00a (on) Β· all 17 columns of your current report
π Monthly Status report β last day of month, end of day (on) Β· same format & columns
π§Ύ Receipts β every completed pickup: emailed + archived here Β· print, export, or pull the year for taxes Β· each receipt carries the card-statement descriptor (e.g.
π³ Card on file β charged automatically on completion (no invoices to chase) Β· monthly invoice available for clients who need it
π Monthly Status report β last day of month, end of day (on) Β· same format & columns
π§Ύ Receipts β every completed pickup: emailed + archived here Β· print, export, or pull the year for taxes Β· each receipt carries the card-statement descriptor (e.g.
TSQ*RETRIEVAL 38402) so accounting reconciles against the credit-card statement line by lineπ³ Card on file β charged automatically on completion (no invoices to chase) Β· monthly invoice available for clients who need it
System Map β live change board
The living blueprint, connected to the real platform. Open any box, leave a note or change you want, and the next build makes it real β no developer, nothing lost.
Access & Credentials β one model for every actor
Humans, AI agents, API keys, MCP clients, automations: named, scoped, expiring, revocable β all in the same ledger.
Live now: add / edit / disable internal users, four roles (Admin Β· Manager Β· View Only Β· Concierge), invite by email, and last-login on every account.
Open the live Access Control console β
| Actor | Type | Scopes | MFA / step-up | Expires | |
|---|---|---|---|---|---|
| Sabetay Palatchi | Admin | all Β· System Map (with 2nd approver) | MFA + step-up | β | |
| Andrea Arena | Sign-off | approvals Β· dashboards Β· read-all | MFA | β | |
| Chelsea H. | Traffic Controller | assignment Β· approvals Β· scheduling | MFA | β | |
| Romeo L. | Concierge | own requests Β· closure drafts | MFA Β· voice PIN for writes | β | |
| Contact Agent | AI agent | Tier W: messages, memos, status (HITL) Β· no accounting, no delete | service identity | β | |
| Centauri Workday key | API key | tenant: Centauri Β· imports + webhooks | OAuth2 | 2027-02-01 | |
| Claude (staff MCP) | MCP client | Tier R (read) β reports, queries | registered + expiring | 2026-11-01 | |
| Rule: aging-unassigned | Automation | notify only | system identity | β |
ποΈ Quarterly access review is a built-in workflow: every credential re-justified, every removal ledgered β this is the SOC 2 evidence, generated by working normally.
API & MCP Server
API-first: the UI, portal, agents, automations, and integrators all use the same versioned REST API. MCP exposes the same catalog to AI clients β with tiers.
Live documents & templates
The printable API & MCP documentation (how the API, CSV upload and MCP work) and the bulk-request CSV template.
π API & MCP documentation (printable)
β¬ CSV template
π₯ Open the live intake console β
REST API (api.retrieveitassets.com/docs)
POST /v1/imports/requests | bulk upload (idempotent, async) β T2-compatible |
GET /v1/requests?status=unassigned | query anything the board shows |
POST /v1/requests/{id}/messages | customer-visible thread |
GET /v1/availability?zip=30248 | ZIP β queue β open slots |
PUT /v1/queues/{id}/slots?week= | capacity grid (the v2 βkeystone askβ β now ours) |
POST /v1/approvals/{id}/approve | HITL by API |
POST /v1/exports | CSV/XLSX, async, ledgered |
POST /v1/webhook-subscriptions | HMAC-signed events (superset of T2βs five) |
MCP tool catalog (governed)
| Tool | Tier |
|---|---|
requests.query Β· schedule.get Β· reports.run | R β read |
requests.postMessage Β· slots.book Β· requests.setStatus | W β write (mode-governed) |
| delete/archive Β· fee schedules Β· RBAC Β· System Map activate | X β never via MCP |
Try it in the demo:
π T2 compatibility shim: clients currently posting to the T2 API keep working unchanged β same payloads, same signatures β while they migrate on our schedule.