|
1 | 1 | # Roadmap |
2 | 2 |
|
3 | | -Target: **v1.0 by June 2026** — a production-ready multi-tenant OpenClaw platform. |
| 3 | +Target: **v1.0 by April 30, 2026** — production-ready multi-tenant OpenClaw platform. |
4 | 4 |
|
5 | 5 | --- |
6 | 6 |
|
7 | | -## ✅ Done (March 2026) |
| 7 | +## ✅ Done (as of March 17, 2026) |
8 | 8 |
|
9 | | -### Standard Deployment (EC2) — Production Ready |
| 9 | +### Standard Deployment — Production Ready |
| 10 | +- One-click CloudFormation (Linux/Mac/China), 10 Bedrock models, Graviton ARM |
| 11 | +- SSM Session Manager, VPC Endpoints, CloudTrail, Docker sandbox |
| 12 | +- S3 Files Skill, Kiro conversational deploy guide |
10 | 13 |
|
11 | | -- One-click CloudFormation deploy (Linux/Mac/China regions) |
12 | | -- 10 Bedrock models, Graviton ARM, VPC Endpoints |
13 | | -- SSM Session Manager (no public ports) |
14 | | -- Gateway token in SSM SecureString (never on disk) |
15 | | -- Supply-chain hardened (no `curl | sh`) |
16 | | -- S3 Files Skill auto-installed |
17 | | -- Docker sandbox for code isolation |
18 | | -- Kiro conversational deployment guide |
19 | | -- Bedrock Mantle regional support (conditional VPC endpoint) |
| 14 | +### Multi-Tenant E2E Pipeline — Verified ✅ |
| 15 | +- Agent Container: `openclaw agent` CLI subprocess, Plan A + Plan E |
| 16 | +- Bedrock H2 Proxy: Node.js HTTP/2, intercepts AWS SDK calls via `AWS_ENDPOINT_URL` |
| 17 | +- Tenant Router: tenant_id derivation, AgentCore invoke (300s timeout) |
| 18 | +- AgentCore Runtime: Firecracker microVM per tenant, ECR image |
| 19 | +- IM bridging: zero OpenClaw code changes, IM config same as single-user |
| 20 | +- systemd services, CloudFormation one-stack, Admin Console UI |
20 | 21 |
|
21 | | -### Multi-Tenant Core Components |
22 | | - |
23 | | -- Agent Container: Plan A (system prompt injection) + Plan E (response audit) |
24 | | -- Auth Agent: risk assessment, 30-min auto-reject, ApprovalToken issuance (max 24h) |
25 | | -- Safety module: 13 memory poisoning patterns, input validation, path traversal checks |
26 | | -- Identity module: token lifecycle (issue/validate/revoke) |
27 | | -- Observability: structured CloudWatch JSON per tenant |
28 | | -- CloudFormation: EC2 + ECR + SSM + CloudWatch (one stack) |
29 | | -- Gateway Tenant Router: tenant_id derivation, AgentCore Runtime invocation |
30 | | -- Auth Agent input validation: 7 prompt injection patterns on approval messages |
31 | | -- Admin Console: visual management UI (dashboard, tenant permissions, approvals, audit log, live demo) |
| 22 | +| Metric | Current | |
| 23 | +|--------|---------| |
| 24 | +| Cold start | ~30s | |
| 25 | +| Warm request | ~10s | |
| 26 | +| Cost (50 users) | ~$1.30-2.20/person/month | |
32 | 27 |
|
33 | 28 | --- |
34 | 29 |
|
35 | | -## 🔨 March — April 2026: Wire It Up |
| 30 | +## Week 1: Mar 17-23 — Optimize & Stabilize |
36 | 31 |
|
37 | | -The critical path to a working end-to-end multi-tenant flow. |
| 32 | +### Cold Start Optimization (30s → <15s) |
| 33 | +- [ ] `NODE_COMPILE_CACHE` + `OPENCLAW_NO_RESPAWN=1` in Dockerfile |
| 34 | +- [ ] Lazy S3 sync: serve first request from default workspace, pull in background |
| 35 | +- [ ] Slim image: strip dev deps, pre-compile node_modules |
| 36 | +- [ ] Benchmark each phase, identify bottleneck |
38 | 37 |
|
39 | | -### End-to-End Integration |
| 38 | +### Production Reliability |
| 39 | +- [ ] Tenant Router as systemd service (auto-start on boot) |
| 40 | +- [ ] Health check endpoint for all 3 services |
| 41 | +- [ ] Log rotation, crash recovery |
| 42 | +- [ ] Automated E2E smoke test script |
40 | 43 |
|
41 | | -- [ ] Integration test suite: WhatsApp message → Tenant Router → AgentCore → Container → response |
42 | | -- [ ] Tenant Router systemd service (auto-start on EC2 boot) |
43 | | -- [ ] OpenClaw webhook configuration to forward messages to Tenant Router (port 8090) |
44 | | -- [ ] Verify Firecracker microVM isolation per tenant (filesystem, memory, network) |
45 | | -- [ ] Load test: 50 concurrent tenants, measure latency and cost |
| 44 | +### IM End-to-End Validation |
| 45 | +- [ ] Configure Telegram bot, send real message through full pipeline |
| 46 | +- [ ] Two different users → verify different tenant_ids and microVM isolation |
| 47 | +- [ ] WhatsApp QR pairing through multi-tenant gateway |
46 | 48 |
|
47 | | -### Auth Agent Channel Delivery |
| 49 | +--- |
48 | 50 |
|
49 | | -- [ ] Send approval notifications to admin's WhatsApp via OpenClaw Gateway API |
50 | | -- [ ] Send approval notifications to admin's Telegram via Bot API |
51 | | -- [ ] Parse admin replies: "approve", "reject", "approve temporary 2h", "approve persistent" |
52 | | -- [ ] Handle edge cases: admin offline, message delivery failure, duplicate replies |
| 51 | +## Week 2: Mar 24-30 — Permission & Cost |
53 | 52 |
|
54 | | -### Cost Validation |
| 53 | +### Permission Enforcement |
| 54 | +- [ ] Test Plan A bypass attempts, measure and fix gaps |
| 55 | +- [ ] Plan E real-time blocking option (not just audit) |
| 56 | +- [ ] Tool allowlist in openclaw.json per tenant |
| 57 | +- [ ] Permission hot-reload from SSM (no microVM restart) |
| 58 | +- [ ] Cedar policy engine evaluation |
55 | 59 |
|
56 | | -- [ ] Benchmark AgentCore cold start latency (first message per tenant) |
57 | | -- [ ] Measure cost at 10, 100, 1000 conversations/day |
58 | | -- [ ] Document break-even point: when AgentCore becomes cheaper than dedicated EC2 |
59 | | -- [ ] Per-tenant cost metering and chargeback reporting |
| 60 | +### Per-Tenant Cost Metering |
| 61 | +- [ ] Track Bedrock tokens per tenant_id (from server.py response) |
| 62 | +- [ ] CloudWatch metric: `BedrockTokens` by tenant_id |
| 63 | +- [ ] Monthly cost report (S3 CSV) |
| 64 | +- [ ] Budget alerts when tenant exceeds threshold |
| 65 | + |
| 66 | +### Auth Agent Channel Delivery |
| 67 | +- [ ] Send approval notifications via WhatsApp/Telegram |
| 68 | +- [ ] Parse admin replies: approve/reject/temporary |
| 69 | +- [ ] Handle offline admin, delivery failure |
60 | 70 |
|
61 | 71 | --- |
62 | 72 |
|
63 | | -## 🎯 April — May 2026: Enterprise Features |
| 73 | +## Week 3: Mar 31 - Apr 6 — Shared Skills & Rules |
64 | 74 |
|
65 | 75 | ### Shared Skills with Bundled Credentials |
66 | | - |
67 | | -- [ ] Skill packaging format: manifest declaring required permissions, bundled SaaS keys |
68 | | -- [ ] Skill installation API: install once, authorize per tenant profile |
69 | | -- [ ] Credential isolation: SaaS keys stored in SSM SecureString, injected at runtime, never exposed to tenants |
70 | | -- [ ] Example skills: Jira (ticket management), Slack (cross-channel messaging), S3 (file sharing) |
| 76 | +- [ ] Skill packaging format: manifest + bundled SaaS keys |
| 77 | +- [ ] Install once, authorize per tenant profile |
| 78 | +- [ ] Credential isolation: SSM SecureString, injected at runtime |
| 79 | +- [ ] Example: Jira skill, S3 file sharing skill |
71 | 80 |
|
72 | 81 | ### Per-Tenant Enterprise Rules |
73 | | - |
74 | | -- [ ] Rule templates: "finance-readonly", "engineering-full", "intern-basic" |
75 | | -- [ ] SSM-based rule hot-reload (no redeployment) |
76 | | -- [ ] Rule inheritance: department rules → team rules → individual overrides |
77 | | -- [ ] Compliance presets: HIPAA, SOC2, PCI-DSS (restrict tools + enable audit) |
| 82 | +- [ ] Rule templates: finance-readonly, engineering-full, intern-basic |
| 83 | +- [ ] Rule inheritance: department → team → individual |
| 84 | +- [ ] Compliance presets: HIPAA, SOC2 |
| 85 | +- [ ] Admin Console: visual rule editor |
78 | 86 |
|
79 | 87 | ### Controlled Information Sharing |
| 88 | +- [ ] Cross-tenant data sharing policies |
| 89 | +- [ ] Shared knowledge base (read-only across tenants) |
| 90 | +- [ ] Audit trail for cross-boundary access |
| 91 | + |
| 92 | +--- |
80 | 93 |
|
81 | | -- [ ] Cross-tenant data sharing policies in SSM |
82 | | -- [ ] Team → Department aggregation: team agent outputs readable by department agent |
83 | | -- [ ] Shared knowledge base: company policies, product docs (read-only across all tenants) |
84 | | -- [ ] Audit trail for every cross-boundary data access |
| 94 | +## Week 4: Apr 7-13 — Agent Orchestration & Hierarchy |
85 | 95 |
|
86 | 96 | ### Agent Orchestration |
| 97 | +- [ ] Agent-to-agent invocation via AgentCore session |
| 98 | +- [ ] Workflow chains: Finance → Compliance → Executive |
| 99 | +- [ ] Scheduled orchestration: weekly summaries |
| 100 | +- [ ] Event-driven triggers |
87 | 101 |
|
88 | | -- [ ] Agent-to-agent invocation: agent A triggers agent B via AgentCore session |
89 | | -- [ ] Workflow chains: Finance agent → Compliance agent → Executive agent |
90 | | -- [ ] Scheduled orchestration: Monday 8am, all team agents generate weekly summaries → department agent aggregates |
91 | | -- [ ] Event-driven triggers: PR merged → Engineering agent notifies QA agent |
| 102 | +### Agent Hierarchy |
| 103 | +- [ ] Org → Department → Team → Individual agent tree |
| 104 | +- [ ] Hierarchical permission inheritance |
| 105 | +- [ ] Cross-level communication (controlled, audited) |
92 | 106 |
|
93 | 107 | --- |
94 | 108 |
|
95 | | -## 🚀 May — June 2026: Platform & Ecosystem |
| 109 | +## Week 5: Apr 14-20 — Platform & Marketplace |
96 | 110 |
|
97 | 111 | ### Skills Marketplace |
| 112 | +- [ ] Skill catalog API: list, search, install |
| 113 | +- [ ] Permission declaration per skill |
| 114 | +- [ ] Security review workflow |
| 115 | +- [ ] Community submissions via GitHub PR |
98 | 116 |
|
99 | | -- [ ] Skill catalog API: list, search, install, uninstall |
100 | | -- [ ] Permission declaration: each skill declares what tools/data/APIs it needs |
101 | | -- [ ] Security review workflow: submitted → reviewed → approved/rejected |
102 | | -- [ ] Community skill submissions via GitHub PR |
103 | | -- [ ] Skill versioning and rollback |
| 117 | +### Hard Enforcement (MCP Mode) |
| 118 | +- [ ] Evaluate AgentCore Gateway MCP for tool-call interception |
| 119 | +- [ ] MCP-based permission checks (replace Plan A soft enforcement) |
| 120 | +- [ ] Benchmark latency impact |
104 | 121 |
|
105 | | -### Agent Hierarchy |
| 122 | +### Observability Dashboard |
| 123 | +- [ ] CloudWatch dashboard CFN template (per-tenant metrics) |
| 124 | +- [ ] Cost anomaly detection |
| 125 | +- [ ] Permission denial trends |
| 126 | +- [ ] Agent health monitoring |
106 | 127 |
|
107 | | -- [ ] Organization → Department → Team → Individual agent tree |
108 | | -- [ ] Hierarchical permission inheritance with override |
109 | | -- [ ] Cross-level communication channels (controlled, audited) |
110 | | -- [ ] Dashboard: org-wide agent activity, cost, permission usage |
| 128 | +--- |
111 | 129 |
|
112 | | -### Hard Enforcement (AgentCore Gateway MCP Mode) |
| 130 | +## Week 6: Apr 21-27 — Hardening & Documentation |
113 | 131 |
|
114 | | -- [ ] Evaluate AgentCore Gateway MCP mode for tool-call interception |
115 | | -- [ ] Implement MCP-based permission checks (replace Plan A soft enforcement) |
116 | | -- [ ] Keep Plan E audit as defense-in-depth |
117 | | -- [ ] Benchmark latency impact of MCP interception |
| 132 | +### Production Hardening |
| 133 | +- [ ] Multi-region deployment support |
| 134 | +- [ ] Disaster recovery: tenant config backup/restore |
| 135 | +- [ ] Rate limiting per tenant |
| 136 | +- [ ] Tenant onboarding automation: new employee → auto-create agent |
118 | 137 |
|
119 | | -### Observability Dashboard |
| 138 | +### Documentation & Launch Prep |
| 139 | +- [ ] Deployment guide: step-by-step for enterprise IT |
| 140 | +- [ ] Security whitepaper: isolation model, threat analysis |
| 141 | +- [ ] Cost calculator: interactive tool for enterprise sizing |
| 142 | +- [ ] Video demo: 5-min walkthrough |
| 143 | +- [ ] Blog post draft |
120 | 144 |
|
121 | | -- [ ] CloudWatch dashboard CloudFormation template (per-tenant metrics) |
122 | | -- [ ] Cost anomaly detection (alert on unusual Bedrock spend per tenant) |
123 | | -- [ ] Permission denial trends (identify misconfigured tenants) |
124 | | -- [ ] Agent health monitoring (response latency, error rates) |
| 145 | +--- |
125 | 146 |
|
126 | | -### Production Hardening |
| 147 | +## Apr 28-30 — Final Testing & v1.0 Release |
127 | 148 |
|
128 | | -- [ ] Multi-region deployment support |
129 | | -- [ ] Disaster recovery: tenant config backup/restore via SSM export |
130 | | -- [ ] Rate limiting per tenant (prevent single tenant from consuming all capacity) |
131 | | -- [ ] Tenant onboarding automation: new employee → auto-create agent with role-based profile |
| 149 | +- [ ] Full regression: single-user + multi-tenant |
| 150 | +- [ ] Load test: 50 concurrent tenants |
| 151 | +- [ ] Security audit: penetration test on Plan A/E |
| 152 | +- [ ] Tag v1.0, publish release notes |
132 | 153 |
|
133 | 154 | --- |
134 | 155 |
|
135 | | -## Beyond June 2026 |
| 156 | +## Post v1.0 (May+) |
136 | 157 |
|
137 | | -The platform foundation enables: |
138 | | - |
139 | | -- **OpenClaw SaaS**: hosted multi-tenant OpenClaw as a service |
140 | | -- **Enterprise MSP**: managed OpenClaw platform for organizations (deploy, operate, optimize) |
141 | | -- **Lightsail integration**: simpler infrastructure for smaller deployments |
142 | | -- **Permissions Vending Machine**: temporary IAM elevation with approval workflow ([Issue #29](https://github.com/aws-samples/sample-OpenClaw-on-AWS-with-Bedrock/issues/29)) |
143 | | -- **AgentCore Memory**: persistent cross-session memory with poisoning detection on load |
144 | | -- **Federation**: connect OpenClaw platforms across organizations for B2B agent collaboration |
| 158 | +- **OpenClaw SaaS**: hosted multi-tenant as a service |
| 159 | +- **Enterprise MSP**: managed platform for organizations |
| 160 | +- **Permissions Vending Machine**: temporary IAM elevation |
| 161 | +- **AgentCore Memory**: persistent cross-session memory |
| 162 | +- **Federation**: B2B agent collaboration across organizations |
145 | 163 |
|
146 | 164 | --- |
147 | 165 |
|
148 | 166 | ## How to Help |
149 | 167 |
|
150 | | -We're building this in the open and moving fast. Pick what interests you: |
151 | | - |
152 | | -| What | Why it matters | How to start | |
153 | | -|------|---------------|-------------| |
154 | | -| Integration testing | Validates the core flow works | Run the deployment, report issues | |
155 | | -| Auth Agent delivery | Makes approval workflow real | Implement WhatsApp/Telegram sending in `handler.py` | |
156 | | -| Skill packaging | Enables the shared skills vision | Design the manifest format, open a PR | |
157 | | -| Agent orchestration | Enables agent hierarchy | Prototype agent-to-agent invocation | |
158 | | -| Cost benchmarking | Proves the economics | Deploy, measure, share data | |
159 | | -| Security review | Builds trust | Audit the code, file issues | |
160 | | -| Documentation | Lowers the barrier | Write guides, improve READMEs | |
| 168 | +| What | Deadline | How to start | |
| 169 | +|------|----------|-------------| |
| 170 | +| Cold start optimization | Mar 23 | Profile container startup, submit PR | |
| 171 | +| Permission bypass testing | Mar 30 | Try to bypass Plan A, file issues | |
| 172 | +| Cost benchmarking | Mar 30 | Deploy, measure, share data | |
| 173 | +| Skill packaging format | Apr 6 | Design manifest, open PR | |
| 174 | +| Agent orchestration | Apr 13 | Prototype agent-to-agent invocation | |
| 175 | +| Security audit | Apr 27 | Audit code, file issues | |
161 | 176 |
|
162 | | -**[→ Contributing Guide](CONTRIBUTING.md)** · **[→ GitHub Issues](https://github.com/aws-samples/sample-OpenClaw-on-AWS-with-Bedrock/issues)** · **[→ Discussions](https://github.com/aws-samples/sample-OpenClaw-on-AWS-with-Bedrock/discussions)** |
| 177 | +**[→ Contributing Guide](CONTRIBUTING.md)** · **[→ GitHub Issues](https://github.com/aws-samples/sample-OpenClaw-on-AWS-with-Bedrock/issues)** |
0 commit comments