@romiluz/clawmongo 2026.3.22 → 2026.3.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +156 -692
- package/dist/build-info.json +3 -3
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/docs/design/clawmongo-onboarding-flow.md +213 -0
- package/docs/plans/2026-03-22-clawmongo-presentation-plan.md +630 -0
- package/docs/reference/clawmongo-vs-default-memory.md +112 -0
- package/docs/reference/mongodb-capabilities.md +548 -0
- package/docs/research/2026-03-22-company-os-mongodb-web.md +397 -0
- package/docs/research/2026-03-22-memory-pain-points-web.md +338 -0
- package/docs/research/2026-03-22-openclaw-ecosystem-github.md +306 -0
- package/docs/research/2026-03-22-openclaw-positioning-web.md +353 -0
- package/docs/start/clawmongo-getting-started.md +287 -0
- package/package.json +25 -4
|
@@ -0,0 +1,630 @@
|
|
|
1
|
+
# ClawMongo Public Presentation and MongoDB Feature Showcase
|
|
2
|
+
|
|
3
|
+
> **For Claude:** REQUIRED: Follow this plan phase-by-phase. Each phase has explicit file paths, content structure, and acceptance checks.
|
|
4
|
+
> **Research:** See `docs/research/2026-03-22-openclaw-positioning-web.md` and `docs/research/2026-03-22-openclaw-ecosystem-github.md`.
|
|
5
|
+
|
|
6
|
+
**Goal:** Rewrite ClawMongo's public-facing surfaces (README, npm metadata, docs) to position it as "the MongoDB edition of OpenClaw" with deep technical content on WHY MongoDB is the best agentic data layer and HOW each feature works.
|
|
7
|
+
|
|
8
|
+
**Architecture:** Documentation-only changes across 4 surfaces: README.md, package.json metadata, a new MongoDB capability deep-dive doc page, and a new getting-started guide. No code changes. The README is the hero page; the docs pages are the technical depth.
|
|
9
|
+
|
|
10
|
+
**Tech Stack:** Markdown, JSON (package.json metadata only)
|
|
11
|
+
|
|
12
|
+
**Prerequisites:** All existing ClawMongo code is already built and working (205 v2 memory unit tests, 573 total memory tests, 53 live e2e tests against MongoDB 8.2 + Voyage AI, 20 collections, 53 indexes). This plan covers presentation, not implementation.
|
|
13
|
+
|
|
14
|
+
**Note on upstream default memory name:** Use "QMD (SQLite + Markdown)" consistently when referring to OpenClaw's default memory backend.
|
|
15
|
+
|
|
16
|
+
**Note on forward references:** Phase 2 (README) links to doc files created in Phases 3-5. Use relative paths; they will resolve after all phases complete.
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## Requirements Snapshot
|
|
21
|
+
|
|
22
|
+
1. README must position ClawMongo as "the MongoDB edition of OpenClaw" (distribution, not competitor)
|
|
23
|
+
2. README must showcase all 12 MongoDB capabilities with WHY + HOW for each
|
|
24
|
+
3. npm package.json must have keywords, description, and author filled in
|
|
25
|
+
4. A new deep-dive doc page must explain each MongoDB capability in technical detail
|
|
26
|
+
5. A new getting-started guide must cover MongoDB-specific prerequisites and setup
|
|
27
|
+
6. A comparison section (ClawMongo vs OpenClaw default memory) must exist, NOT vs Mem0/Zep
|
|
28
|
+
7. Target three audiences in priority order: OpenClaw power users, MongoDB developers, production teams
|
|
29
|
+
8. Onboarding flow design doc for future ClawMongo-specific onboarding (design only, no code)
|
|
30
|
+
|
|
31
|
+
## Constraints Snapshot
|
|
32
|
+
|
|
33
|
+
- DO NOT change any source code (TypeScript, tests, build)
|
|
34
|
+
- DO NOT position ClawMongo as competing with Mem0/Zep (different category entirely)
|
|
35
|
+
- DO NOT remove upstream OpenClaw feature sections from README (channels, apps, tools still matter)
|
|
36
|
+
- DO NOT add i18n/translations (out of scope)
|
|
37
|
+
- Use American English spelling throughout
|
|
38
|
+
- No emojis in file content unless already present in upstream sections
|
|
39
|
+
- README-header image reference must be preserved as-is
|
|
40
|
+
|
|
41
|
+
## In Scope
|
|
42
|
+
|
|
43
|
+
- README.md complete rewrite with MongoDB-first positioning
|
|
44
|
+
- package.json metadata (keywords, description, author)
|
|
45
|
+
- New doc: `docs/reference/mongodb-capabilities.md` (12 capabilities deep dive)
|
|
46
|
+
- New doc: `docs/start/clawmongo-getting-started.md` (MongoDB-specific setup)
|
|
47
|
+
- New doc: `docs/reference/clawmongo-vs-default-memory.md` (comparison page)
|
|
48
|
+
- New doc: `docs/design/clawmongo-onboarding-flow.md` (onboarding design, no code)
|
|
49
|
+
|
|
50
|
+
## Out of Scope
|
|
51
|
+
|
|
52
|
+
- Code architecture changes (already 8.2/10)
|
|
53
|
+
- Actual onboarding code implementation
|
|
54
|
+
- Managed/hosted tier documentation
|
|
55
|
+
- Marketing website
|
|
56
|
+
- i18n/translations
|
|
57
|
+
- Changes to upstream OpenClaw docs site (docs.openclaw.ai)
|
|
58
|
+
|
|
59
|
+
## Planning Mode
|
|
60
|
+
|
|
61
|
+
- Plan mode: `execution_plan`
|
|
62
|
+
- Verification rigor: `standard`
|
|
63
|
+
|
|
64
|
+
## Open Decisions
|
|
65
|
+
|
|
66
|
+
- None (all decisions pre-approved in brainstorming)
|
|
67
|
+
|
|
68
|
+
## Differences From Agreement
|
|
69
|
+
|
|
70
|
+
- None
|
|
71
|
+
|
|
72
|
+
## Recommended Defaults
|
|
73
|
+
|
|
74
|
+
- README length target: ~400-500 lines (down from current 796, which has significant duplication)
|
|
75
|
+
- MongoDB capability deep-dive format: WHY paragraph + HOW paragraph + code/config example for each capability
|
|
76
|
+
- Getting-started guide assumes Docker as quickest path for MongoDB + mongot
|
|
77
|
+
|
|
78
|
+
## Current State
|
|
79
|
+
|
|
80
|
+
- **README.md** (796 lines): Already has MongoDB memory sections but buries them below generic OpenClaw content. The "Why ClawMongo Is Different" section exists but reads like internal architecture docs, not developer marketing. Current structure: header -> why different -> sponsors -> install -> quick start -> upstream sync -> from source -> security -> highlights -> star history -> everything built -> how it works -> key subsystems -> tailscale -> remote -> macOS -> agent-to-agent -> skills -> chat commands. The MongoDB content is strong technically but poorly positioned.
|
|
81
|
+
- **package.json**: `description` says "MongoDB-first multi-channel agent runtime built on OpenClaw" (decent but undersells). `keywords` is empty array. `author` is empty string.
|
|
82
|
+
- **docs/reference/**: Has heart-brain-boundary.md, memory-config.md, upstream-sync.md but no MongoDB capability showcase page.
|
|
83
|
+
- **docs/start/**: Has getting-started.md, quickstart.md, wizard.md but all point to upstream OpenClaw docs, no ClawMongo-specific MongoDB setup guide.
|
|
84
|
+
- **docs/design/**: Exists, contains `clawmongo-memory-v2-improvement-plan.md`. New onboarding flow doc will go here.
|
|
85
|
+
|
|
86
|
+
### Context References (files the builder must read)
|
|
87
|
+
|
|
88
|
+
- `README.md` (current README to rewrite)
|
|
89
|
+
- `package.json:1-20` (metadata fields to update)
|
|
90
|
+
- `src/memory/mongodb-schema.ts:1-50` (collection definitions for accuracy)
|
|
91
|
+
- `src/memory/mongodb-events.ts` (event architecture for accuracy)
|
|
92
|
+
- `src/memory/mongodb-graph.ts` (knowledge graph for accuracy)
|
|
93
|
+
- `src/memory/mongodb-episodes.ts` (episode materialization for accuracy)
|
|
94
|
+
- `src/memory/mongodb-retrieval-planner.ts` (retrieval paths for accuracy)
|
|
95
|
+
- `src/memory/mongodb-hybrid.ts` (hybrid search for accuracy)
|
|
96
|
+
- `src/memory/mongodb-structured-memory.ts` (structured memory for accuracy)
|
|
97
|
+
- `src/memory/mongodb-manager.ts` (writeEventAndProject, searchV2 for accuracy)
|
|
98
|
+
- `docs/reference/heart-brain-boundary.md` (existing heart-brain docs)
|
|
99
|
+
- `docs/reference/memory-config.md` (existing memory config docs)
|
|
100
|
+
- `docs/research/2026-03-22-openclaw-positioning-web.md` (research: OpenClaw product identity)
|
|
101
|
+
- `docs/research/2026-03-22-openclaw-ecosystem-github.md` (research: ecosystem comparison)
|
|
102
|
+
- `docs/plans/2026-03-15-memory-architecture-v2-design.md` (v2 architecture design -- canonical reference)
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
## Phase 1: npm Metadata and Package Identity
|
|
107
|
+
|
|
108
|
+
**Objective:** Set the package.json metadata so npm listing, search, and install surfaces reflect ClawMongo's identity.
|
|
109
|
+
|
|
110
|
+
**Inputs:** Current package.json, research findings on npm positioning
|
|
111
|
+
|
|
112
|
+
**Files/surfaces:**
|
|
113
|
+
- Modify: `package.json:1-20` (metadata fields only)
|
|
114
|
+
|
|
115
|
+
**Expected artifacts:**
|
|
116
|
+
- Updated `description`, `keywords`, and `author` fields in package.json
|
|
117
|
+
|
|
118
|
+
**Content specification:**
|
|
119
|
+
|
|
120
|
+
```json
|
|
121
|
+
{
|
|
122
|
+
"description": "The MongoDB edition of OpenClaw - personal AI assistant with production-grade MongoDB memory, 22 channels, knowledge graph, episode materialization, and Voyage AI vector search",
|
|
123
|
+
"keywords": [
|
|
124
|
+
"mongodb",
|
|
125
|
+
"ai-assistant",
|
|
126
|
+
"personal-ai",
|
|
127
|
+
"openclaw",
|
|
128
|
+
"agent-memory",
|
|
129
|
+
"vector-search",
|
|
130
|
+
"knowledge-graph",
|
|
131
|
+
"voyage-ai",
|
|
132
|
+
"multi-channel",
|
|
133
|
+
"whatsapp",
|
|
134
|
+
"telegram",
|
|
135
|
+
"discord",
|
|
136
|
+
"slack",
|
|
137
|
+
"event-sourcing",
|
|
138
|
+
"graphlookup",
|
|
139
|
+
"mongot",
|
|
140
|
+
"hybrid-search",
|
|
141
|
+
"episode-materialization",
|
|
142
|
+
"retrieval-planner",
|
|
143
|
+
"typescript"
|
|
144
|
+
],
|
|
145
|
+
"author": "Rom Iluz <rom@openclaw.ai>"
|
|
146
|
+
}
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
**Required checks:**
|
|
150
|
+
- `cat package.json | head -20` shows updated fields
|
|
151
|
+
- `pnpm build` still passes (metadata-only change should not break build)
|
|
152
|
+
|
|
153
|
+
**Checkpoint type:** None (straightforward)
|
|
154
|
+
|
|
155
|
+
**Exit criteria:** package.json has non-empty description, keywords, and author fields. Build passes.
|
|
156
|
+
|
|
157
|
+
---
|
|
158
|
+
|
|
159
|
+
## Phase 2: README Rewrite - Structure and Hero Section
|
|
160
|
+
|
|
161
|
+
**Objective:** Restructure README.md with "MongoDB edition of OpenClaw" positioning as the hero, MongoDB capabilities as the showcase, and OpenClaw platform features as supporting context.
|
|
162
|
+
|
|
163
|
+
**Inputs:** Current README.md, both research files, approved positioning decisions
|
|
164
|
+
|
|
165
|
+
**Files/surfaces:**
|
|
166
|
+
- Modify: `README.md` (complete rewrite, preserve header image reference)
|
|
167
|
+
|
|
168
|
+
**Expected artifacts:**
|
|
169
|
+
- New README.md with restructured content
|
|
170
|
+
|
|
171
|
+
**Content structure (top to bottom):**
|
|
172
|
+
|
|
173
|
+
### Section 1: Hero (lines 1-30 approx)
|
|
174
|
+
- Header image (preserve existing `README-clawmongo-header-v2.png` reference)
|
|
175
|
+
- Tagline: "The MongoDB Edition of OpenClaw"
|
|
176
|
+
- One-paragraph elevator pitch: ClawMongo is OpenClaw (the most popular open-source personal AI assistant, 329K stars, 22 channels, native apps) with a production-grade MongoDB memory system replacing the default SQLite/Markdown backend
|
|
177
|
+
- Badges (preserve existing CI, release, Discord, license badges)
|
|
178
|
+
- Quick links row
|
|
179
|
+
|
|
180
|
+
### Section 2: What Is ClawMongo? (30 lines approx)
|
|
181
|
+
- Distribution framing: "Like Ubuntu is to Linux, ClawMongo is the MongoDB edition of OpenClaw"
|
|
182
|
+
- What you get: the FULL OpenClaw assistant (22 channels, 78 extensions, voice, canvas, native apps) PLUS MongoDB-native memory
|
|
183
|
+
- NOT a memory library, NOT competing with Mem0/Zep -- this is a complete personal AI assistant
|
|
184
|
+
- Three audiences explicitly addressed: OpenClaw users upgrading memory, MongoDB developers wanting an AI assistant, teams needing production-grade agent memory
|
|
185
|
+
|
|
186
|
+
### Section 3: Why MongoDB for Agent Memory? (40 lines approx)
|
|
187
|
+
- Opening argument: MongoDB is uniquely suited for agent memory because it combines document flexibility, vector search, full-text search, graph traversal, and operational guarantees in a single platform
|
|
188
|
+
- Brief intro to each of the 12 capabilities (2-3 lines each, linking to deep-dive doc for details):
|
|
189
|
+
1. Automated Embeddings (Voyage AI via mongot)
|
|
190
|
+
2. Vector Search ($vectorSearch)
|
|
191
|
+
3. Full-Text Search (mongot)
|
|
192
|
+
4. Hybrid Search ($rankFusion/$scoreFusion)
|
|
193
|
+
5. Knowledge Graph ($graphLookup)
|
|
194
|
+
6. Event-Sourcing (canonical events)
|
|
195
|
+
7. Schema Validation (JSON Schema)
|
|
196
|
+
8. Change Streams
|
|
197
|
+
9. TTL Indexes
|
|
198
|
+
10. Multi-Tenant Isolation
|
|
199
|
+
11. Idempotent Upserts
|
|
200
|
+
12. Relevance Telemetry
|
|
201
|
+
- Link to full deep-dive: `docs/reference/mongodb-capabilities.md`
|
|
202
|
+
|
|
203
|
+
### Section 4: ClawMongo vs Default OpenClaw Memory (30 lines approx)
|
|
204
|
+
- Comparison table (NOT vs Mem0/Zep -- vs OpenClaw's SQLite/QMD default)
|
|
205
|
+
- Columns: Capability | OpenClaw Default | ClawMongo
|
|
206
|
+
- Rows covering: storage backend, vector search, knowledge graph, episodes, structured memory, procedures, retrieval paths, operational visibility, collections/indexes, data model
|
|
207
|
+
- Decision rule: when to use default vs ClawMongo
|
|
208
|
+
- Link to full comparison: `docs/reference/clawmongo-vs-default-memory.md`
|
|
209
|
+
|
|
210
|
+
### Section 5: MongoDB Memory Architecture (40 lines approx)
|
|
211
|
+
- Event-sourcing diagram (preserve existing ASCII art, refine)
|
|
212
|
+
- 20 collections listed with purpose
|
|
213
|
+
- Retrieval planner and 8 paths table (preserve existing)
|
|
214
|
+
- Reranking summary
|
|
215
|
+
- This section is the "HOW it works" technical meat
|
|
216
|
+
|
|
217
|
+
### Section 6: Quick Start (30 lines approx)
|
|
218
|
+
- Prerequisites: MongoDB 7+ with mongot, Voyage AI API key, Node 22+
|
|
219
|
+
- `npm install -g @romiluz/clawmongo@latest`
|
|
220
|
+
- `clawmongo onboard --install-daemon`
|
|
221
|
+
- Link to full getting-started guide: `docs/start/clawmongo-getting-started.md`
|
|
222
|
+
|
|
223
|
+
### Section 7: The Full OpenClaw Platform (50 lines approx)
|
|
224
|
+
- Channels list (preserve existing 22 channels, this is a differentiator)
|
|
225
|
+
- Apps + nodes summary (macOS, iOS, Android -- preserve)
|
|
226
|
+
- Tools + automation summary (browser, canvas, cron -- preserve)
|
|
227
|
+
- Skills + extensions (78 plugins -- highlight the number)
|
|
228
|
+
- This section says: "You get ALL of this, plus MongoDB memory"
|
|
229
|
+
|
|
230
|
+
### Section 8: Development and Ops (30 lines approx)
|
|
231
|
+
- Install from source
|
|
232
|
+
- Keep in sync with upstream (preserve `pnpm upstream:steady`)
|
|
233
|
+
- Development channels (stable/beta/dev)
|
|
234
|
+
- Security defaults (preserve DM pairing section)
|
|
235
|
+
|
|
236
|
+
### Section 9: Star History + Links (10 lines approx)
|
|
237
|
+
- Star History chart
|
|
238
|
+
- Contributing, license, upstream credit
|
|
239
|
+
|
|
240
|
+
**Key writing guidelines for the builder:**
|
|
241
|
+
- Lead with MongoDB value, not OpenClaw features (those come after)
|
|
242
|
+
- Every MongoDB capability gets a WHY (business value) and HOW (technical mechanism)
|
|
243
|
+
- Use "ClawMongo" as the primary name, "OpenClaw" when referring to the upstream project
|
|
244
|
+
- Technical depth over marketing fluff -- this is for developers
|
|
245
|
+
- American English throughout
|
|
246
|
+
- No emojis except the existing lobster in the H1 title
|
|
247
|
+
|
|
248
|
+
**Required checks:**
|
|
249
|
+
- README renders correctly in GitHub preview (no broken markdown)
|
|
250
|
+
- All links are valid (internal file references and external URLs)
|
|
251
|
+
- No mentions of Mem0, Zep, or other memory libraries as competitors
|
|
252
|
+
- "MongoDB edition of OpenClaw" phrasing appears in first 5 lines
|
|
253
|
+
- All 12 MongoDB capabilities are mentioned
|
|
254
|
+
|
|
255
|
+
**Checkpoint type:** [CHECKPOINT] README structure review before proceeding to deep-dive docs
|
|
256
|
+
|
|
257
|
+
**Exit criteria:** README.md is rewritten, renders correctly, positions ClawMongo as MongoDB edition of OpenClaw, and showcases all 12 MongoDB capabilities.
|
|
258
|
+
|
|
259
|
+
---
|
|
260
|
+
|
|
261
|
+
## Phase 3: MongoDB Capability Deep-Dive Page
|
|
262
|
+
|
|
263
|
+
**Objective:** Create a comprehensive reference doc that explains each of the 12 MongoDB capabilities ClawMongo uses, with WHY (business value), HOW (technical mechanism), and concrete examples.
|
|
264
|
+
|
|
265
|
+
**Inputs:** Source code (mongodb-schema.ts, mongodb-events.ts, mongodb-graph.ts, etc.), research findings, existing README technical sections
|
|
266
|
+
|
|
267
|
+
**Files/surfaces:**
|
|
268
|
+
- Create: `docs/reference/mongodb-capabilities.md`
|
|
269
|
+
|
|
270
|
+
**Expected artifacts:**
|
|
271
|
+
- New doc page with 12 capability sections
|
|
272
|
+
|
|
273
|
+
**Content structure:**
|
|
274
|
+
|
|
275
|
+
```markdown
|
|
276
|
+
# MongoDB Capabilities in ClawMongo
|
|
277
|
+
|
|
278
|
+
ClawMongo uses 12 MongoDB features that make it the best agentic data layer.
|
|
279
|
+
This page explains WHY each feature matters for agent memory and HOW ClawMongo implements it.
|
|
280
|
+
|
|
281
|
+
## Table of Contents
|
|
282
|
+
[12 capabilities listed]
|
|
283
|
+
|
|
284
|
+
## 1. Automated Embeddings (Voyage AI via mongot)
|
|
285
|
+
|
|
286
|
+
### Why This Matters
|
|
287
|
+
[2-3 paragraphs: No application-side embedding pipeline. No embedding library dependency.
|
|
288
|
+
No batch embedding jobs. mongot handles it at index time and query time. This eliminates
|
|
289
|
+
an entire class of infrastructure (embedding queues, retry logic, model version management)
|
|
290
|
+
that other solutions require.]
|
|
291
|
+
|
|
292
|
+
### How It Works
|
|
293
|
+
[Technical explanation: mongot reads the `text` field, calls Voyage AI API, stores
|
|
294
|
+
embedding in the index. At query time, $vectorSearch sends query text to mongot,
|
|
295
|
+
which embeds it and runs ANN search. Model: voyage-4-large, 1024 dimensions.]
|
|
296
|
+
|
|
297
|
+
### Configuration
|
|
298
|
+
[Code block: vector search index definition with autoEmbed]
|
|
299
|
+
[Code block: memory.mongodb.embeddingMode = "automated" config]
|
|
300
|
+
|
|
301
|
+
### Collections Using This
|
|
302
|
+
- chunks (conversation memory)
|
|
303
|
+
- kb_chunks (knowledge base)
|
|
304
|
+
- structured_mem (structured facts)
|
|
305
|
+
|
|
306
|
+
---
|
|
307
|
+
|
|
308
|
+
## 2. Vector Search ($vectorSearch)
|
|
309
|
+
[Same WHY/HOW/Config/Collections pattern]
|
|
310
|
+
|
|
311
|
+
## 3. Full-Text Search (mongot)
|
|
312
|
+
[Same pattern]
|
|
313
|
+
|
|
314
|
+
## 4. Hybrid Search ($rankFusion / $scoreFusion)
|
|
315
|
+
[Same pattern -- explain both fusion methods, when each is used]
|
|
316
|
+
|
|
317
|
+
## 5. Knowledge Graph ($graphLookup)
|
|
318
|
+
[Same pattern -- include bi-directional $facet expansion diagram]
|
|
319
|
+
|
|
320
|
+
## 6. Event-Sourcing (Canonical Events Collection)
|
|
321
|
+
[Same pattern -- include writeEventAndProject flow diagram]
|
|
322
|
+
|
|
323
|
+
## 7. Schema Validation (JSON Schema)
|
|
324
|
+
[Same pattern -- include example schema from mongodb-schema.ts]
|
|
325
|
+
|
|
326
|
+
## 8. Change Streams
|
|
327
|
+
[Same pattern -- explain real-time sync use case]
|
|
328
|
+
|
|
329
|
+
## 9. TTL Indexes
|
|
330
|
+
[Same pattern -- explain automatic lifecycle management]
|
|
331
|
+
|
|
332
|
+
## 10. Multi-Tenant Isolation
|
|
333
|
+
[Same pattern -- explain agentId compound indexes, $graphLookup restrictSearchWithMatch]
|
|
334
|
+
|
|
335
|
+
## 11. Idempotent Upserts
|
|
336
|
+
[Same pattern -- explain $setOnInsert/$set pattern, compound unique keys]
|
|
337
|
+
|
|
338
|
+
## 12. Relevance Telemetry
|
|
339
|
+
[Same pattern -- explain explain-driven diagnostics]
|
|
340
|
+
|
|
341
|
+
## The Full Picture
|
|
342
|
+
[Summary diagram showing how all 12 capabilities work together in a single query/write cycle]
|
|
343
|
+
```
|
|
344
|
+
|
|
345
|
+
**For each capability, the builder MUST:**
|
|
346
|
+
1. Read the relevant source file to verify technical accuracy
|
|
347
|
+
2. Include at least one code/config example
|
|
348
|
+
3. Explain WHY in terms of developer/team value (not just technical correctness)
|
|
349
|
+
4. Explain HOW with enough detail that a MongoDB developer could understand the implementation
|
|
350
|
+
|
|
351
|
+
**Required checks:**
|
|
352
|
+
- All 12 capabilities have WHY + HOW + example sections
|
|
353
|
+
- Code examples match actual implementation in source code
|
|
354
|
+
- No references to external vector DBs, graph DBs, or non-MongoDB solutions
|
|
355
|
+
- Technical claims are verifiable against source code
|
|
356
|
+
|
|
357
|
+
**Checkpoint type:** None (follows approved capability list)
|
|
358
|
+
|
|
359
|
+
**Exit criteria:** `docs/reference/mongodb-capabilities.md` exists with all 12 capabilities documented, each with WHY/HOW/example.
|
|
360
|
+
|
|
361
|
+
---
|
|
362
|
+
|
|
363
|
+
## Phase 4: ClawMongo vs Default Memory Comparison Page
|
|
364
|
+
|
|
365
|
+
**Objective:** Create a comparison page showing what developers get with ClawMongo's MongoDB memory vs OpenClaw's default SQLite/QMD memory.
|
|
366
|
+
|
|
367
|
+
**Inputs:** Research findings on OpenClaw default memory, ClawMongo architecture knowledge
|
|
368
|
+
|
|
369
|
+
**Files/surfaces:**
|
|
370
|
+
- Create: `docs/reference/clawmongo-vs-default-memory.md`
|
|
371
|
+
|
|
372
|
+
**Expected artifacts:**
|
|
373
|
+
- Comparison doc with feature-by-feature table and decision guidance
|
|
374
|
+
|
|
375
|
+
**Content structure:**
|
|
376
|
+
|
|
377
|
+
```markdown
|
|
378
|
+
# ClawMongo vs OpenClaw Default Memory
|
|
379
|
+
|
|
380
|
+
## Overview
|
|
381
|
+
OpenClaw ships with SQLite + Markdown files as its default memory backend.
|
|
382
|
+
ClawMongo replaces this with MongoDB Community + mongot + Voyage AI.
|
|
383
|
+
This page compares the two approaches feature by feature.
|
|
384
|
+
|
|
385
|
+
## Feature Comparison
|
|
386
|
+
|
|
387
|
+
| Capability | OpenClaw Default (SQLite/QMD) | ClawMongo (MongoDB) |
|
|
388
|
+
|---|---|---|
|
|
389
|
+
| Storage backend | SQLite file + Markdown files | MongoDB Community (replica set) |
|
|
390
|
+
| Vector search | sqlite-vec extension or LanceDB | mongot + Voyage AI autoEmbed |
|
|
391
|
+
| Embedding management | Application-side (OpenAI/Gemini/Voyage/Mistral/Ollama) | Automated via mongot (zero app-side code) |
|
|
392
|
+
| Full-text search | SQLite FTS5 or BM25 | mongot text indexes |
|
|
393
|
+
| Hybrid search | BM25 + vector with MMR | $rankFusion / $scoreFusion |
|
|
394
|
+
| Knowledge graph | None | $graphLookup with entities/relations |
|
|
395
|
+
| Episodes | None | Auto-materialized from event windows |
|
|
396
|
+
| Event sourcing | None (append-only Markdown) | Canonical events collection |
|
|
397
|
+
| Structured memory | Basic key-value | Salience, temporal validity, state, provenance |
|
|
398
|
+
| Procedures | None | Versioned workflow artifacts |
|
|
399
|
+
| Retrieval paths | 1 (search) | 8 (active-critical, procedural, structured, raw-window, graph, episodic, kb, hybrid) |
|
|
400
|
+
| Schema validation | None | JSON Schema on all collections |
|
|
401
|
+
| Multi-tenant isolation | Filesystem separation | Compound indexes with agentId prefix |
|
|
402
|
+
| Operational visibility | Limited | Ingest runs, projection runs, relevance telemetry |
|
|
403
|
+
| Data model | Flat files + SQLite rows | 20 collections, 53 indexes |
|
|
404
|
+
| Sync across instances | File sync (rsync, git) | MongoDB replica set |
|
|
405
|
+
|
|
406
|
+
## When to Use OpenClaw Default Memory
|
|
407
|
+
[Guidance: single user, small corpus, local-only, no operational requirements]
|
|
408
|
+
|
|
409
|
+
## When to Use ClawMongo
|
|
410
|
+
[Guidance: team scale, growing corpus, retrieval quality SLOs, operational visibility needs, production deployment]
|
|
411
|
+
|
|
412
|
+
## Migration Path
|
|
413
|
+
[Brief: ClawMongo includes v1-to-v2 migration (backfillEventsFromChunks). Existing OpenClaw users can migrate their SQLite/Markdown data into MongoDB.]
|
|
414
|
+
```
|
|
415
|
+
|
|
416
|
+
**Required checks:**
|
|
417
|
+
- Comparison is factually accurate for both sides
|
|
418
|
+
- No unfair characterization of OpenClaw default (it's good for what it does)
|
|
419
|
+
- Decision guidance is honest and helpful
|
|
420
|
+
- No mention of Mem0/Zep/external competitors
|
|
421
|
+
|
|
422
|
+
**Checkpoint type:** None
|
|
423
|
+
|
|
424
|
+
**Exit criteria:** `docs/reference/clawmongo-vs-default-memory.md` exists with complete comparison table and decision guidance.
|
|
425
|
+
|
|
426
|
+
---
|
|
427
|
+
|
|
428
|
+
## Phase 5: ClawMongo Getting Started Guide
|
|
429
|
+
|
|
430
|
+
**Objective:** Create a ClawMongo-specific getting-started guide that walks developers through MongoDB setup, mongot configuration, Voyage AI, and first agent interaction.
|
|
431
|
+
|
|
432
|
+
**Inputs:** Existing docs/start/getting-started.md (upstream), ClawMongo-specific requirements
|
|
433
|
+
|
|
434
|
+
**Files/surfaces:**
|
|
435
|
+
- Create: `docs/start/clawmongo-getting-started.md`
|
|
436
|
+
|
|
437
|
+
**Expected artifacts:**
|
|
438
|
+
- Step-by-step getting-started guide for ClawMongo
|
|
439
|
+
|
|
440
|
+
**Content structure:**
|
|
441
|
+
|
|
442
|
+
```markdown
|
|
443
|
+
# Getting Started with ClawMongo
|
|
444
|
+
|
|
445
|
+
ClawMongo is the MongoDB edition of OpenClaw. This guide gets you from zero
|
|
446
|
+
to a working personal AI assistant with MongoDB-native memory in about 10 minutes.
|
|
447
|
+
|
|
448
|
+
## Prerequisites
|
|
449
|
+
|
|
450
|
+
### Required
|
|
451
|
+
- **Node.js 22+** (24 recommended)
|
|
452
|
+
- **MongoDB 7.0+** with mongot (MongoDB Community Search)
|
|
453
|
+
- **Voyage AI API key** (for automated embeddings)
|
|
454
|
+
- **LLM API key** (Anthropic Claude recommended, or OpenAI, Google, etc.)
|
|
455
|
+
|
|
456
|
+
### MongoDB Setup Options
|
|
457
|
+
|
|
458
|
+
#### Option A: Docker (Quickest)
|
|
459
|
+
[Docker compose with mongodb + mongot, ready to go]
|
|
460
|
+
|
|
461
|
+
#### Option B: Local Install
|
|
462
|
+
[mongod + mongot install steps for macOS/Linux]
|
|
463
|
+
|
|
464
|
+
#### Option C: MongoDB Atlas
|
|
465
|
+
[Atlas cluster with Search enabled, connection string]
|
|
466
|
+
|
|
467
|
+
### Voyage AI Setup
|
|
468
|
+
[Sign up at voyageai.com, get API key, configure in mongot]
|
|
469
|
+
|
|
470
|
+
## Install ClawMongo
|
|
471
|
+
|
|
472
|
+
[npm install -g @romiluz/clawmongo@latest]
|
|
473
|
+
|
|
474
|
+
## Configure MongoDB Connection
|
|
475
|
+
|
|
476
|
+
[clawmongo config set memory.mongodb.uri "mongodb://..."]
|
|
477
|
+
[clawmongo config set memory.mongodb.embeddingMode "automated"]
|
|
478
|
+
|
|
479
|
+
## Run Onboarding
|
|
480
|
+
|
|
481
|
+
[clawmongo onboard --install-daemon]
|
|
482
|
+
[Step-by-step what happens during onboarding]
|
|
483
|
+
|
|
484
|
+
## Verify Memory
|
|
485
|
+
|
|
486
|
+
[clawmongo gateway status -- check MongoDB connection]
|
|
487
|
+
[clawmongo channels status --probe -- verify channels]
|
|
488
|
+
[Send a test message, verify it appears in MongoDB]
|
|
489
|
+
|
|
490
|
+
## Next Steps
|
|
491
|
+
- Connect a channel (Telegram is quickest)
|
|
492
|
+
- Import knowledge base documents
|
|
493
|
+
- Configure structured memory
|
|
494
|
+
- Read the MongoDB capability deep-dive: docs/reference/mongodb-capabilities.md
|
|
495
|
+
```
|
|
496
|
+
|
|
497
|
+
**Required checks:**
|
|
498
|
+
- All commands are correct and match actual CLI interface
|
|
499
|
+
- Docker compose example actually works (if included)
|
|
500
|
+
- Prerequisites are complete and accurate
|
|
501
|
+
- No references to SQLite/QMD setup steps
|
|
502
|
+
|
|
503
|
+
**Checkpoint type:** [CHECKPOINT] Getting-started guide accuracy review -- commands must match actual CLI
|
|
504
|
+
|
|
505
|
+
**Exit criteria:** `docs/start/clawmongo-getting-started.md` exists with complete setup guide.
|
|
506
|
+
|
|
507
|
+
---
|
|
508
|
+
|
|
509
|
+
## Phase 6: Onboarding Flow Design Document
|
|
510
|
+
|
|
511
|
+
**Objective:** Design the ClawMongo-specific onboarding flow (MongoDB connection, mongot verification, Voyage AI setup, channel configuration). Design only -- no code changes.
|
|
512
|
+
|
|
513
|
+
**Inputs:** Existing onboarding code (src/commands/onboard*.ts), ClawMongo-specific requirements
|
|
514
|
+
|
|
515
|
+
**Files/surfaces:**
|
|
516
|
+
- Create: `docs/design/clawmongo-onboarding-flow.md`
|
|
517
|
+
|
|
518
|
+
**Expected artifacts:**
|
|
519
|
+
- Design document for future onboarding code changes
|
|
520
|
+
|
|
521
|
+
**Content structure:**
|
|
522
|
+
|
|
523
|
+
```markdown
|
|
524
|
+
# ClawMongo Onboarding Flow Design
|
|
525
|
+
|
|
526
|
+
## Overview
|
|
527
|
+
ClawMongo's onboarding must verify MongoDB infrastructure before proceeding
|
|
528
|
+
to channel setup. This is a design document for future implementation.
|
|
529
|
+
|
|
530
|
+
## Current State
|
|
531
|
+
[Describe current onboarding: model provider -> API key -> gateway -> channels]
|
|
532
|
+
[What's missing: MongoDB connection verification, mongot check, Voyage AI check]
|
|
533
|
+
|
|
534
|
+
## Proposed Flow
|
|
535
|
+
|
|
536
|
+
### Step 1: MongoDB Connection
|
|
537
|
+
- Prompt for MongoDB URI (or detect from environment)
|
|
538
|
+
- Test connection with ping
|
|
539
|
+
- Verify replica set (required for change streams)
|
|
540
|
+
- Check MongoDB version >= 7.0
|
|
541
|
+
|
|
542
|
+
### Step 2: mongot Verification
|
|
543
|
+
- Check if mongot is running (search index creation test)
|
|
544
|
+
- If not: provide setup instructions
|
|
545
|
+
- If Atlas: verify Search is enabled
|
|
546
|
+
|
|
547
|
+
### Step 3: Voyage AI Configuration
|
|
548
|
+
- Prompt for Voyage AI API key
|
|
549
|
+
- Test embedding generation
|
|
550
|
+
- Configure embeddingMode = "automated"
|
|
551
|
+
|
|
552
|
+
### Step 4: Collection Bootstrap
|
|
553
|
+
- Run ensureCollections + ensureIndexes
|
|
554
|
+
- Verify all 20 collections created
|
|
555
|
+
- Verify all 53 standard indexes created
|
|
556
|
+
- If mongot available: create search indexes
|
|
557
|
+
|
|
558
|
+
### Step 5: LLM Provider (existing flow)
|
|
559
|
+
- Select model provider
|
|
560
|
+
- Enter API key
|
|
561
|
+
- Test model connection
|
|
562
|
+
|
|
563
|
+
### Step 6: Channel Setup (existing flow)
|
|
564
|
+
- Select channel(s)
|
|
565
|
+
- Configure credentials
|
|
566
|
+
- Test channel connection
|
|
567
|
+
|
|
568
|
+
### Step 7: Health Check
|
|
569
|
+
- clawmongo doctor (with MongoDB-specific checks)
|
|
570
|
+
- Verify memory write + read cycle
|
|
571
|
+
- Show status summary
|
|
572
|
+
|
|
573
|
+
## Error Handling
|
|
574
|
+
[What happens when MongoDB is unreachable, mongot not found, Voyage AI key invalid]
|
|
575
|
+
|
|
576
|
+
## Implementation Notes
|
|
577
|
+
[Which files to modify: onboard-interactive.ts, onboard-config.ts]
|
|
578
|
+
[New checks needed: MongoDB ping, mongot detection, Voyage AI verification]
|
|
579
|
+
[Estimated implementation effort: medium]
|
|
580
|
+
```
|
|
581
|
+
|
|
582
|
+
**Required checks:**
|
|
583
|
+
- Design references correct source files
|
|
584
|
+
- Flow is complete (no missing steps)
|
|
585
|
+
- Error handling is considered
|
|
586
|
+
- Clearly marked as design-only (no code changes expected from this phase)
|
|
587
|
+
|
|
588
|
+
**Checkpoint type:** None
|
|
589
|
+
|
|
590
|
+
**Exit criteria:** `docs/design/clawmongo-onboarding-flow.md` exists with complete onboarding design.
|
|
591
|
+
|
|
592
|
+
---
|
|
593
|
+
|
|
594
|
+
## Acceptance Checks
|
|
595
|
+
|
|
596
|
+
After all phases complete:
|
|
597
|
+
|
|
598
|
+
1. **README test:** Open `README.md` in GitHub preview -- verify it renders correctly, "MongoDB edition of OpenClaw" appears in first 5 lines, all 12 MongoDB capabilities are mentioned, no broken links
|
|
599
|
+
2. **package.json test:** `node -e "const p = require('./package.json'); console.log(p.description, p.keywords.length, p.author)"` -- all three are non-empty
|
|
600
|
+
3. **Docs existence test:** All 4 new docs exist:
|
|
601
|
+
- `docs/reference/mongodb-capabilities.md`
|
|
602
|
+
- `docs/reference/clawmongo-vs-default-memory.md`
|
|
603
|
+
- `docs/start/clawmongo-getting-started.md`
|
|
604
|
+
- `docs/design/clawmongo-onboarding-flow.md`
|
|
605
|
+
4. **Build test:** `pnpm build` passes (no code changes, but verify)
|
|
606
|
+
5. **Content audit:** No mentions of Mem0/Zep as competitors anywhere in new content
|
|
607
|
+
6. **Positioning audit:** ClawMongo is consistently framed as "MongoDB edition of OpenClaw" (distribution), not as a standalone product or memory library
|
|
608
|
+
|
|
609
|
+
## Risks and Mitigations
|
|
610
|
+
|
|
611
|
+
| Risk | Probability | Impact | Score | Mitigation |
|
|
612
|
+
|------|-------------|--------|-------|------------|
|
|
613
|
+
| README too long/unfocused | 3 | 3 | 9 | Strict section structure with line count targets |
|
|
614
|
+
| Technical claims inaccurate | 2 | 4 | 8 | Builder must verify against source code for each capability |
|
|
615
|
+
| Upstream links become stale | 2 | 2 | 4 | Use docs.openclaw.ai links which are more stable than file paths |
|
|
616
|
+
| MongoDB version requirements unclear | 2 | 3 | 6 | Getting-started guide explicitly lists version requirements |
|
|
617
|
+
| Onboarding design becomes stale | 3 | 2 | 6 | Clearly marked as design doc, references current source files |
|
|
618
|
+
|
|
619
|
+
## Summary
|
|
620
|
+
|
|
621
|
+
- Plan saved: `docs/plans/2026-03-22-clawmongo-presentation-plan.md`
|
|
622
|
+
- Phases: 6
|
|
623
|
+
- Risks: 5 identified
|
|
624
|
+
- Key decisions: Distribution positioning (approved), three-audience priority (approved), no Mem0/Zep comparison (approved)
|
|
625
|
+
- All decisions pre-approved from brainstorming session
|
|
626
|
+
|
|
627
|
+
## Recommended Skills for BUILD
|
|
628
|
+
|
|
629
|
+
- `cc10x:architecture-patterns` (multi-component documentation work)
|
|
630
|
+
- No MongoDB agent skills (per project patterns: use ONLY mcp__mongodb__search-knowledge)
|