Polls the inbox on a schedule via the pieces integration (Gmail), classifies each unread message, and drafts a reply if needed - but the system prompt makes sending conditional on explicit human approval. The approval discipline is the difference between a useful agent and a liability, and it belongs in the prompt and the workflow around it, not assumed away.
1runtime:2 mode: background3 entry_agent: triager45tools:6 capabilities:7 default_policy: auto8 grant: [{ module: pieces, tools: ["*"] }]9 modules:10 pieces: { constraints: { allowed_pieces: [gmail] } }11 channels:12 config:13 providers:14 poll_inbox:15 adapter: cron16 config: { schedule: "*/5 * * * *" }17 activation: { agent: triager, message: "Triage unread mail." }1819agents:20 - id: triager21 modules: [{pieces: ["*"]}]22 brain: { provider: anthropic, model: claude-haiku-4-5, credential: { ref: anthropic_main, scope: per_user, provider: anthropic } }23 system_prompt: "Classify unread mail. Draft replies. Never send without explicit human approval."# 1. install runtime
curl -sSL https://digitorn.ai/install | sh
# 2. save the YAML above to ~/.digitorn/apps/my-email-triage/app.yaml
mkdir -p ~/.digitorn/apps/my-email-triage
# paste the YAML into app.yaml
# 3. deploy
digitorn deploy my-email-triageEngineering notes from the Digitorn team. No marketing, no launch announcements, no "10 prompts that will change your life". Just the things we write that we'd want to read.