Skip to content

Commit 5ffca3c

Browse files
author
JiaDe
committed
docs: update README multi-tenant status to verified, rewrite ROADMAP for Apr 30 v1.0 deadline, remove personal SQL file
1 parent 009cd26 commit 5ffca3c

2 files changed

Lines changed: 152 additions & 119 deletions

File tree

README.md

Lines changed: 30 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -244,21 +244,39 @@ Best for most users. Fixed cost, full control, 24/7 availability.
244244

245245
### Multi-Tenant Platform (AgentCore Runtime) — [README_AGENTCORE.md](README_AGENTCORE.md)
246246

247-
> ⚠️ In developmenttargeting v1.0 by June 2026. [Roadmap ](ROADMAP.md)
247+
> **E2E verified**Full pipeline running: IM → Gateway → Bedrock H2 Proxy → Tenant Router → AgentCore Firecracker microVM → OpenClaw CLI → Bedrock → response. [Demo Guide ](demo/README.md)
248248
249-
Turn OpenClaw from a single-user tool into an enterprise platform: every employee gets an AI assistant, every team gets an AI assistant, every department gets an AI assistant — with clear boundaries, shared skills, and centralized governance.
249+
Turn OpenClaw from a single-user tool into an enterprise platform: every employee gets an isolated AI assistant in a Firecracker microVM, with shared skills, centralized governance, and per-tenant permissions. Zero changes to OpenClaw code.
250250

251-
| What you get | How |
252-
|---|---|
253-
| Tenant isolation | Firecracker microVM per user (AgentCore Runtime) |
254-
| Shared model access | One Bedrock account, per-tenant metering (~$1-2/person/month) |
255-
| Shared skills with bundled SaaS keys | Install once, authorize per tenant, credentials never exposed |
256-
| Per-tenant permission profiles | SSM-based rules, hot-reload, Plan A + E enforcement |
257-
| Controlled info sharing | Cross-tenant data policies, audited, opt-in |
258-
| Human approval workflow | Auth Agent → admin notification → approve/reject via messaging |
259-
| Elastic compute | Auto-scaling microVMs, burst capacity, pay-per-use |
251+
```
252+
Telegram/WhatsApp message
253+
→ OpenClaw Gateway (IM channels, Web UI)
254+
→ Bedrock H2 Proxy (intercepts AWS SDK HTTP/2 calls)
255+
→ Tenant Router (derives tenant_id per employee)
256+
→ AgentCore Runtime (Firecracker microVM, per-tenant isolation)
257+
→ OpenClaw CLI → Bedrock Nova 2 Lite
258+
→ Response returns to employee's IM
259+
```
260260

261-
**[→ Full Multi-Tenant Guide](README_AGENTCORE.md)** · **[→ Roadmap](ROADMAP.md)**
261+
| What you get | How | Status |
262+
|---|---|---|
263+
| Tenant isolation | Firecracker microVM per user (AgentCore Runtime) | ✅ Verified |
264+
| Shared model access | One Bedrock account, per-tenant metering (~$1-2/person/month) | ✅ Verified |
265+
| Per-tenant permission profiles | SSM-based rules, Plan A (prompt injection) + Plan E (audit) | ✅ Verified |
266+
| IM channel management | Same setup as single-user (WhatsApp/Telegram/Discord) | ✅ Verified |
267+
| Zero OpenClaw code changes | All management via external layers (proxy, router, entrypoint) | ✅ Verified |
268+
| Shared skills with bundled SaaS keys | Install once, authorize per tenant | 🔜 Next |
269+
| Human approval workflow | Auth Agent → admin notification → approve/reject | 🔜 Next |
270+
| Elastic compute | Auto-scaling microVMs, burst capacity, pay-per-use | ✅ Verified |
271+
272+
| Metric | Value |
273+
|--------|-------|
274+
| Cold start (first request) | ~30s |
275+
| Warm request | ~10s |
276+
| Cost for 50 users | ~$65-110/month (~$1.30-2.20/person) |
277+
| vs ChatGPT Plus (50 users) | $1,000/month |
278+
279+
**[→ Full Multi-Tenant Guide](README_AGENTCORE.md)** · **[→ Demo Guide](demo/README.md)** · **[→ Roadmap](ROADMAP.md)**
262280

263281
### macOS (Apple Silicon) — For iOS/macOS Development
264282

ROADMAP.md

Lines changed: 122 additions & 107 deletions
Original file line numberDiff line numberDiff line change
@@ -1,162 +1,177 @@
11
# Roadmap
22

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.
44

55
---
66

7-
## ✅ Done (March 2026)
7+
## ✅ Done (as of March 17, 2026)
88

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
1013

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
2021

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 |
3227

3328
---
3429

35-
## 🔨 March — April 2026: Wire It Up
30+
## Week 1: Mar 17-23 — Optimize & Stabilize
3631

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
3837

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
4043

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
4648

47-
### Auth Agent Channel Delivery
49+
---
4850

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
5352

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
5559

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
6070

6171
---
6272

63-
## 🎯 April — May 2026: Enterprise Features
73+
## Week 3: Mar 31 - Apr 6 — Shared Skills & Rules
6474

6575
### 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
7180

7281
### 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
7886

7987
### 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+
---
8093

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
8595

8696
### 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
87101

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)
92106

93107
---
94108

95-
## 🚀 May — June 2026: Platform & Ecosystem
109+
## Week 5: Apr 14-20 — Platform & Marketplace
96110

97111
### Skills Marketplace
112+
- [ ] Skill catalog API: list, search, install
113+
- [ ] Permission declaration per skill
114+
- [ ] Security review workflow
115+
- [ ] Community submissions via GitHub PR
98116

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
104121

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
106127

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+
---
111129

112-
### Hard Enforcement (AgentCore Gateway MCP Mode)
130+
## Week 6: Apr 21-27 — Hardening & Documentation
113131

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
118137

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
120144

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+
---
125146

126-
### Production Hardening
147+
## Apr 28-30 — Final Testing & v1.0 Release
127148

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
132153

133154
---
134155

135-
## Beyond June 2026
156+
## Post v1.0 (May+)
136157

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
145163

146164
---
147165

148166
## How to Help
149167

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 |
161176

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

Comments
 (0)