What Is This?
This is a personal AI agent built on Cloudflare Moltworker — a piece of middleware from Cloudflare that runs OpenClaw (an open-source AI agent) inside a Cloudflare Sandbox container. The agent connects to Telegram, and you just talk to it. Tell it what stocks to watch, and it handles the rest.
Done. I'm SEC Watcher now. Two things I need from you:
1. Your watchlist — which tickers should I monitor?
2. Your timezone — so I know when "business hours" means for alerting
EDGAR feed is live. I can see recent NVDA filings (mostly Form 4s from insider transactions). Let me record what's already filed so I only alert you on new ones, then set up monitoring.
📋 SEC Watcher is live
• Watching: NVDA (NVIDIA Corporation)
• Check frequency: Every 30 minutes
• Alerts: Telegram (right here)
No code. No config files. Just a conversation. The agent figured out how to connect to EDGAR, snapshot the current filings, and set up a polling schedule entirely on its own.
How It Works
The Stack
Step-by-Step Build
Create a Cloudflare account and activate Workers Paid plan
Go to dash.cloudflare.com. The Cloudflare Sandbox container runtime requires the Workers Paid plan at $5/month. Note your Account ID and workers.dev subdomain.
Create your Telegram bot via @BotFather
Open Telegram, search @BotFather, send /newbot, pick a name and username. Save the bot token — treat it like a password. Get your user ID from @userinfobot.
Get an Anthropic API key
Sign up at console.anthropic.com, add $5 in credits, create an API key. The agent uses Claude to summarize filings — costs pennies per summary.
Install tools: Node.js, Wrangler CLI, Docker Desktop
Download Node.js (Apple Silicon version for Mac), install Wrangler via npm, install Docker Desktop. Docker must be running whenever you deploy.
sudo npm install -g wrangler
wrangler login
Clone Moltworker and upload secrets
Clone the Cloudflare Moltworker repo and upload your credentials. Wrangler stores secrets directly in Cloudflare — they never touch your local files.
git clone https://github.com/cloudflare/moltworker
cd moltworker && npm install
npx wrangler secret put ANTHROPIC_API_KEY
npx wrangler secret put TELEGRAM_BOT_TOKEN
npx wrangler secret put MOLTBOT_GATEWAY_TOKEN
npx wrangler deploy
Configure Cloudflare Zero Trust to protect your admin panel
Set up a Zero Trust team, create a Self-hosted Access application for your worker URL, add an allow policy for your email, enable One-time PIN login. Upload the CF_ACCESS_TEAM_DOMAIN and CF_ACCESS_AUD secrets.
Set up R2 persistent storage
Create an R2 API token with Object Read & Write permissions, create the moltbot-memory bucket, upload the three R2 secrets. Without this, the agent loses its memory on every container restart.
npx wrangler r2 bucket create moltbot-memory
npx wrangler secret put R2_ACCESS_KEY_ID
npx wrangler secret put R2_SECRET_ACCESS_KEY
npx wrangler secret put CF_ACCOUNT_ID
npx wrangler deploy
Connect Telegram and start monitoring
Open Telegram, find your bot, tap Start. Once the admin panel shows your device as Paired, the bot responds. Just tell it what to watch — it connects to EDGAR live and sets up monitoring on its own.
Cost Estimate
| Resource | Details | Monthly Cost |
|---|---|---|
| Workers Paid Plan | Required for Sandbox containers | $5.00 |
| Container Memory (4 GiB) | 24/7 operation | ~$26.00 |
| Container CPU | ~10% utilization estimate | ~$2.00 |
| Container Disk (8 GB) | 24/7 operation | ~$1.50 |
| Anthropic Claude API | Pennies per summary | < $1.00 |
| Total (24/7) | Set SANDBOX_SLEEP_AFTER=10m to reduce to ~$10-11/mo | ~$34.50 |
Security
🔒 Security layers in this build
- Admin panel protected by Cloudflare Zero Trust — only your email can log in
- One-time PIN authentication for the admin panel login
- All secrets stored in Cloudflare's secret store via Wrangler — never in local files or GitHub
- Telegram bot set to "pairing" mode — new users must be approved before they can chat
- Container runs in an isolated Cloudflare Sandbox micro-VM
What's Next
This is a proof of concept. Some things I'm exploring next:
Adding more tickers beyond NVDA. Filtering by filing type — prioritizing 8-Ks (material events) over routine Form 4s. Adding a daily briefing mode that summarizes everything from the past 24 hours in one message. Expanding beyond SEC filings to earnings calls and analyst reports.
The interesting thing about OpenClaw is that you configure all of this through conversation — there's no config file to edit or code to change. You just tell it what you want.
Built With
Cloudflare Moltworker · OpenClaw · Cloudflare Sandbox · Anthropic Claude · SEC EDGAR