OPG Labs
Homebrewed
Public site on CloudFront plus Inbound and Outbound AI enabled mail agents.
Eleventy · S3 · CloudFront · SES · Lambda · DynamoDB · SQS · Terraform
Overview
OPG Labs is the public site and its contact-mail path. Visitors read static pages on CloudFront; people who email hello@opglabs.com are handled by the Inbound Mail agent, which queues sends for the Outbound Mail agent. Authoring happens offline in this repo; it is not a runtime agent on the request path.
System design
- Static site. Pages ship as HTML (Eleventy → S3 → CloudFront).
- Live mail agents.
hello@opglabs.comis handled by Inbound Mail, then Outbound Mail — event-driven on SES / Lambda / SQS, not an HTTP API between them. - One stack. Site and mail infra live in this repo (Terraform + deploy scripts).
Product path
What a visitor can do: browse the lab, email hello@. Diagram key: ✦ AI agent · purple = actor · white = service.
---
config:
theme: default
themeVariables:
background: "#ffffff"
fontSize: "14px"
---
flowchart TB
person[Person]
site["OPG Labs site"]
inbound["✦ Inbound Mail"]
outbound["✦ Outbound Mail"]
outcomes[Forward and thank-you]
observe[Bounce complaint and alarms]
person -->|home projects services| site
person -->|contact hello@| inbound --> outbound --> outcomes
outcomes --> person
outbound -.-> observe
classDef agent fill:#e8f0ee,stroke:#0f3d36,stroke-width:2px,color:#0d0d0d
classDef service fill:#fafaf8,stroke:#c8c8c2,stroke-width:1px,color:#0d0d0d
classDef actor fill:#f3eef8,stroke:#6b4f9a,stroke-width:2px,color:#0d0d0d
class inbound,outbound agent
class site,outcomes,observe service
class person actor
Queues, ledger, and layers live on Mental Model and the agent tabs.
Clean product overview and path. Mental Model holds the five-layer map and Anthropic workflows; Inbound Mail and Outbound Mail own agent detail.