Duyetbot Agent
Concepts

DO Patterns

8 Durable Objects: Router/Simple/Orchestrator/HITL/Code/Research/GitHub/DuyetInfo. Bindings via script_name. StateDO watchdog.

TL;DR: 8 DOs handle routing/execution. Shared via script_name="duyetbot-agents". StateDO tracks sessions/heartbeats. ✅ Deployed.

Table of Contents

Architecture

From PLAN.md:

                 Telegram/GitHub Webhook
                         |
                         v
                  Platform Agent DO
                         |
                Memory MCP D1/KV ◀---+
                         |            |
                         v            |
                    RouterAgent       |
              (Hybrid Classifier)     |
                         |◀----------+
              +----------+----------+----------+
              |          |          |          |
              v          v          v          v
           Simple     HITL    Orchestrator   Duyet
           Agent     Agent     Agent         Info
                               |             Agent
                               |
                        +------+------+------+
                        |      |      |      |
                        v      v      v      v
                      Code  Research  GitHub
                      Worker Worker   Worker

8 DOs Table

DORoleTriggerStatus
RouterAgentClassify + routeAll queries
SimpleAgentQuick Q&ALow complexity
OrchestratorAgentTask decompositionHigh complexity
HITLAgentUser approvalsSensitive ops
CodeWorkerCode analysisCode tasks
ResearchWorkerWeb researchResearch
GitHubWorkerGitHub opsGitHub
DuyetInfoAgentPersonal infoDuyet queries

From agents/index.ts.

Bindings

wrangler.toml apps/shared-agents/wrangler.toml:

[agents]
script_name = "duyetbot-shared-agents"

StateDO

Watchdog from state-do.ts:

  • Tracks sessions/heartbeats
  • Recovers stuck batches
  • Alarms every 30s

Quiz: Router triggers?
A: All queries ✅

Pro Tip ✅: 8 DOs scale globally, free idle.

CTA: Study PLAN.md -> Extend!

Next: Custom Tools ->

On this page