v0.1.0 — Phase 1 MVP + Cold Start Optimization
Overview
First release of Serverless OpenClaw — an open-source project that runs OpenClaw on-demand on AWS serverless infrastructure, providing a web UI and Telegram bot as interfaces. Inspired by Cloudflare MoltWorker, built as an independent AWS-native solution.
Alpha Release — Development in progress. Use for development and testing purposes only.
Highlights
- On-demand Fargate Spot containers — ~$1/month for personal use
- Web Chat UI — React SPA on S3 + CloudFront with Cognito authentication
- Telegram Bot — Webhook-based integration with Web-Telegram identity linking
- Predictive Pre-Warming — Optional EventBridge cron eliminates ~68s cold start (0s first response)
- One-command deployment — `cdk deploy --all` deploys 8 CDK stacks
Features
Core Platform
- ECS Fargate Spot containers with automatic startup/shutdown (watchdog)
- API Gateway (WebSocket + REST) with 7 Lambda handlers
- DynamoDB (5 tables, PAY_PER_REQUEST) for conversations, settings, task state, connections, pending messages
- S3 for file storage and backups
- Cognito JWT authentication for all API requests
Web UI
- React + Vite SPA hosted on S3 + CloudFront (OAC)
- Real-time chat via WebSocket with streaming responses
- Cognito SRP authentication (sign-up, sign-in)
- Telegram account linking via 6-digit OTP
Telegram Bot
- Webhook-only integration with secret token verification
- Progress messages during container cold start
- AI response streaming with 4096-char message splitting
- OTP-based identity linking for container sharing with Web UI
Cold Start Optimization
- Docker image reduced from 2.22GB to 1.27GB (43% reduction)
- Container startup parallelization (~3-5s saved)
- zstd image compression (-16%)
- SOCI lazy loading support (~50% additional reduction)
- Stale IP detection with 3s Bridge timeout + fallback
- Dynamic watchdog timeout (active/inactive hours)
- OpenClaw v2026.2.13 pinned (fastest compatible version)
- Predictive Pre-Warming (P9): EventBridge cron proactively starts containers before scheduled usage, claimed by first real user message
Security
- 6-layer Bridge defense (Security Group → Bearer token → TLS → localhost binding → non-root → SSM Parameter Store)
- SSM Parameter Store SecureString for all secrets (no secrets on disk)
- Server-side userId only (IDOR prevention)
- Telegram webhook secret token verification
Monitoring
- CloudWatch custom metrics (10 metrics, namespace: ServerlessOpenClaw)
- Dashboard with 6 sections: cold start, messages, Lambda, API Gateway, ECS/DynamoDB, pre-warming
- 7-day Lambda log retention, 14-day Fargate log retention
Infrastructure
| Stack | Resources |
|---|---|
| SecretsStack | 5 SSM SecureString parameters |
| NetworkStack | VPC, public subnets, VPC Gateway Endpoints |
| StorageStack | 5 DynamoDB tables, 2 S3 buckets, ECR |
| AuthStack | Cognito User Pool + App Client |
| ComputeStack | ECS Cluster, Fargate task definition |
| ApiStack | API Gateway (WS+REST), 7 Lambda functions, EventBridge |
| WebStack | S3 + CloudFront |
| MonitoringStack | CloudWatch dashboard |
Test Coverage
- 198 unit tests (vitest)
- 28 E2E tests (CDK synth verification for all 8 stacks)
Getting Started
See the Deployment Guide for full instructions.
npm install
npm run build
cd packages/web && npx vite build && cd ../..
cd packages/cdk && npx cdk deploy --all