@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,353 @@
|
|
|
1
|
+
# Web Research: OpenClaw Product Positioning
|
|
2
|
+
|
|
3
|
+
## Execution
|
|
4
|
+
- Preferred backend: websearch+webfetch
|
|
5
|
+
- Allowed fallbacks: webfetch-only
|
|
6
|
+
- Research round: 1
|
|
7
|
+
|
|
8
|
+
## Sources Used
|
|
9
|
+
- WebFetch succeeded on: openclaw.ai, docs.openclaw.ai (8 pages), github.com/openclaw/openclaw, npmjs.com/package/openclaw
|
|
10
|
+
- WebFetch failed on: docs.openclaw.ai/concepts/skills (404)
|
|
11
|
+
- Local codebase: README.md, package.json (ClawMongo fork context)
|
|
12
|
+
|
|
13
|
+
## Research Quality
|
|
14
|
+
- Status: COMPLETE
|
|
15
|
+
- Quality level: high
|
|
16
|
+
- Backend mode: webfetch-only (multiple pages fetched successfully, comprehensive coverage)
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## 1. What Is OpenClaw?
|
|
21
|
+
|
|
22
|
+
### Elevator Pitch
|
|
23
|
+
OpenClaw describes itself as **"The AI that actually does things."** and **"your own personal AI assistant"** that you run on your own devices.
|
|
24
|
+
|
|
25
|
+
### Product Identity
|
|
26
|
+
OpenClaw is NOT a chatbot framework, NOT a memory library, NOT an agent SDK. It is a **complete personal AI assistant product** with:
|
|
27
|
+
- A **Gateway daemon** (always-on control plane)
|
|
28
|
+
- **22+ messaging channel integrations** (WhatsApp, Telegram, Discord, Slack, Signal, iMessage, etc.)
|
|
29
|
+
- **Agent runtime** built on Pi agent core (Claude Agent SDK lineage)
|
|
30
|
+
- **Memory system** (Markdown files + SQLite + optional QMD sidecar)
|
|
31
|
+
- **Tool system** (browser automation, shell access, file operations, web search)
|
|
32
|
+
- **Companion apps** (macOS menubar, iOS, Android)
|
|
33
|
+
- **Voice Wake + Talk Mode** on macOS/iOS/Android
|
|
34
|
+
- **Live Canvas** with A2UI visualization
|
|
35
|
+
- **Extensible skills/plugins** system
|
|
36
|
+
|
|
37
|
+
### Core Philosophy
|
|
38
|
+
- **Local-first**: runs on your machine, data stays with you
|
|
39
|
+
- **Multi-channel**: one assistant reachable from any chat app
|
|
40
|
+
- **Always-on**: gateway daemon runs in background
|
|
41
|
+
- **Single-user**: personal assistant, not enterprise multi-tenant
|
|
42
|
+
- **"AI as teammate, not tool"**: positioned as a persistent companion, not a one-shot API
|
|
43
|
+
|
|
44
|
+
### Key Taglines Used
|
|
45
|
+
- "The AI that actually does things."
|
|
46
|
+
- "your own personal AI assistant"
|
|
47
|
+
- "Any OS. Any Platform. The lobster way."
|
|
48
|
+
- "a better version of Siri built outside corporate constraints"
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## 2. Who Uses OpenClaw?
|
|
53
|
+
|
|
54
|
+
### Target Audience
|
|
55
|
+
- **Primary**: Developers and technical power users who want AI automation with full control
|
|
56
|
+
- **Secondary**: Privacy-conscious users who want local-first AI
|
|
57
|
+
- **Aspirational**: Non-technical users (onboarding wizard tries to lower the bar)
|
|
58
|
+
|
|
59
|
+
### Use Cases Marketed
|
|
60
|
+
- Clear inboxes, send emails, manage calendars
|
|
61
|
+
- Check flight reservations
|
|
62
|
+
- Autonomous background tasks (cron jobs)
|
|
63
|
+
- Browser automation (fill forms, extract data)
|
|
64
|
+
- File system operations (read/write/execute)
|
|
65
|
+
- Code assistance (built on agent SDK with coding tools)
|
|
66
|
+
|
|
67
|
+
### NOT Positioned For
|
|
68
|
+
- Enterprise/team deployments (single-user focused)
|
|
69
|
+
- Chatbot-as-a-service platforms
|
|
70
|
+
- API-only agent frameworks
|
|
71
|
+
- Customer-facing bot builders
|
|
72
|
+
|
|
73
|
+
---
|
|
74
|
+
|
|
75
|
+
## 3. Channel Support (Complete List)
|
|
76
|
+
|
|
77
|
+
### Built-in Channels (10)
|
|
78
|
+
1. WhatsApp (via Baileys)
|
|
79
|
+
2. Telegram (via grammY)
|
|
80
|
+
3. Discord (via discord.js)
|
|
81
|
+
4. Slack (via Bolt)
|
|
82
|
+
5. Signal
|
|
83
|
+
6. iMessage (legacy)
|
|
84
|
+
7. BlueBubbles (iMessage modern)
|
|
85
|
+
8. Google Chat
|
|
86
|
+
9. IRC
|
|
87
|
+
10. WebChat
|
|
88
|
+
|
|
89
|
+
### Plugin/Extension Channels (12)
|
|
90
|
+
11. Microsoft Teams
|
|
91
|
+
12. Matrix
|
|
92
|
+
13. Feishu
|
|
93
|
+
14. LINE
|
|
94
|
+
15. Mattermost
|
|
95
|
+
16. Nextcloud Talk
|
|
96
|
+
17. Nostr
|
|
97
|
+
18. Synology Chat
|
|
98
|
+
19. Tlon
|
|
99
|
+
20. Twitch
|
|
100
|
+
21. Zalo
|
|
101
|
+
22. Zalo Personal
|
|
102
|
+
|
|
103
|
+
### Channel Marketing
|
|
104
|
+
- **22 total channels** -- by far the broadest multi-channel AI assistant
|
|
105
|
+
- Telegram marketed as "quickest setup" (bot token only)
|
|
106
|
+
- WhatsApp requires QR auth, more complex
|
|
107
|
+
- Text works universally; media/reaction support varies by channel
|
|
108
|
+
- Group chat support with allowlists and mention rules
|
|
109
|
+
|
|
110
|
+
---
|
|
111
|
+
|
|
112
|
+
## 4. How OpenClaw Handles Memory (Default)
|
|
113
|
+
|
|
114
|
+
### Architecture: Markdown-First
|
|
115
|
+
OpenClaw's default memory is **plain Markdown files as the source of truth**:
|
|
116
|
+
- `memory/YYYY-MM-DD.md` -- daily append-only logs
|
|
117
|
+
- `MEMORY.md` -- curated long-term memory (human-authored)
|
|
118
|
+
- Located in agent workspace (`~/.openclaw/workspace`)
|
|
119
|
+
|
|
120
|
+
### Memory Tools
|
|
121
|
+
- `memory_search` -- semantic recall over indexed snippets
|
|
122
|
+
- `memory_get` -- targeted file/line-range reads
|
|
123
|
+
|
|
124
|
+
### Storage Backend: SQLite
|
|
125
|
+
- **Primary storage**: SQLite at `~/.openclaw/memory/<agentId>.sqlite`
|
|
126
|
+
- Uses `sqlite-vec` extension for vector acceleration
|
|
127
|
+
- BM25 keyword + vector similarity hybrid search
|
|
128
|
+
- MMR (Maximal Marginal Relevance) for diversity ranking
|
|
129
|
+
- Recency weighting with configurable half-life decay
|
|
130
|
+
|
|
131
|
+
### QMD (Experimental)
|
|
132
|
+
- **"Local-first search sidecar combining BM25 + vectors + reranking"**
|
|
133
|
+
- Uses its own SQLite with extensions
|
|
134
|
+
- Separate from main SQLite backend
|
|
135
|
+
- Has its own search modes: `search`, `vsearch`, `query`
|
|
136
|
+
- Configurable collection paths, update intervals, timeouts
|
|
137
|
+
|
|
138
|
+
### Embedding Providers (auto-selected order)
|
|
139
|
+
1. Local (if `modelPath` exists)
|
|
140
|
+
2. OpenAI
|
|
141
|
+
3. Gemini
|
|
142
|
+
4. Voyage
|
|
143
|
+
5. Mistral
|
|
144
|
+
6. Ollama (manual config only)
|
|
145
|
+
|
|
146
|
+
### Memory Limitations (Why ClawMongo Exists)
|
|
147
|
+
- Recall quality drops as corpus grows (flat file indexing)
|
|
148
|
+
- No real database backend -- SQLite is the ceiling
|
|
149
|
+
- Sync/consistency hard across multiple runtimes
|
|
150
|
+
- No operational visibility or retrieval diagnostics
|
|
151
|
+
- No structured knowledge base ingestion pipeline
|
|
152
|
+
- No graph traversal or entity relationships
|
|
153
|
+
- No event-sourcing or canonical data model
|
|
154
|
+
|
|
155
|
+
---
|
|
156
|
+
|
|
157
|
+
## 5. Installation Experience
|
|
158
|
+
|
|
159
|
+
### One-liner Install
|
|
160
|
+
```bash
|
|
161
|
+
# macOS/Linux
|
|
162
|
+
curl -fsSL https://openclaw.ai/install.sh | bash
|
|
163
|
+
|
|
164
|
+
# Windows (PowerShell)
|
|
165
|
+
iwr -useb https://openclaw.ai/install.ps1 | iex
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
### Also Available Via
|
|
169
|
+
```bash
|
|
170
|
+
npm install -g openclaw@latest
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
### Onboarding Flow (approx. 2 minutes)
|
|
174
|
+
1. `openclaw onboard --install-daemon`
|
|
175
|
+
2. Select model provider (Anthropic, OpenAI, Google, etc.)
|
|
176
|
+
3. Enter API key
|
|
177
|
+
4. Gateway auto-configures on port 18789
|
|
178
|
+
5. `openclaw gateway status` to verify
|
|
179
|
+
6. `openclaw dashboard` opens Control UI in browser
|
|
180
|
+
7. Send first message via Control UI
|
|
181
|
+
8. Optionally connect a channel (Telegram is quickest)
|
|
182
|
+
|
|
183
|
+
### Prerequisites
|
|
184
|
+
- Node.js 24 (recommended) or Node 22.16+
|
|
185
|
+
- API key from any supported model provider
|
|
186
|
+
|
|
187
|
+
### Companion Apps
|
|
188
|
+
- macOS menubar app (beta)
|
|
189
|
+
- iOS app
|
|
190
|
+
- Android app
|
|
191
|
+
|
|
192
|
+
---
|
|
193
|
+
|
|
194
|
+
## 6. GitHub Positioning
|
|
195
|
+
|
|
196
|
+
### Metrics (March 2026)
|
|
197
|
+
- **Stars**: 329,000 (329k) -- extremely popular
|
|
198
|
+
- **Forks**: 63,900 (63.9k)
|
|
199
|
+
- **License**: MIT
|
|
200
|
+
- **Primary Language**: TypeScript/JavaScript
|
|
201
|
+
- **Release format**: vYYYY.M.D (date-based versioning)
|
|
202
|
+
|
|
203
|
+
### README Structure
|
|
204
|
+
- Hero image with lobster branding
|
|
205
|
+
- "EXFOLIATE! EXFOLIATE!" tagline
|
|
206
|
+
- One-paragraph product description
|
|
207
|
+
- Quick links (docs, Discord, getting started, FAQ, showcase)
|
|
208
|
+
- Feature sections with details
|
|
209
|
+
- Installation instructions
|
|
210
|
+
- Architecture overview
|
|
211
|
+
|
|
212
|
+
### GitHub Topics/Tags
|
|
213
|
+
- Personal AI assistant
|
|
214
|
+
- Local-first
|
|
215
|
+
- Multi-channel
|
|
216
|
+
- Open source
|
|
217
|
+
|
|
218
|
+
### Community Signals
|
|
219
|
+
- Very high star count (329k) puts it in top-tier GitHub projects
|
|
220
|
+
- 63.9k forks indicates massive developer interest
|
|
221
|
+
- Active release cadence (date-based versioning with frequent releases)
|
|
222
|
+
- Discord community linked prominently
|
|
223
|
+
|
|
224
|
+
---
|
|
225
|
+
|
|
226
|
+
## 7. npm Positioning
|
|
227
|
+
|
|
228
|
+
### Package Details
|
|
229
|
+
- **Name**: `openclaw`
|
|
230
|
+
- **Version**: 2026.3.13 (at time of research)
|
|
231
|
+
- **Weekly Downloads**: 1,109,169 (1.1M+)
|
|
232
|
+
- **License**: MIT
|
|
233
|
+
- **Maintainer**: steipete
|
|
234
|
+
- **Dependencies**: 55 direct (Discord.js, Slack Bolt, Anthropic Claude, AI/agent frameworks)
|
|
235
|
+
|
|
236
|
+
### npm Description
|
|
237
|
+
"Personal AI assistant you run on your own devices" with multi-channel integration and local-first control.
|
|
238
|
+
|
|
239
|
+
### Download Significance
|
|
240
|
+
1.1M weekly downloads is very high -- indicates broad adoption and/or CI pipeline inclusion. This is enterprise-grade download volume for an open-source tool.
|
|
241
|
+
|
|
242
|
+
---
|
|
243
|
+
|
|
244
|
+
## 8. Documentation Quality
|
|
245
|
+
|
|
246
|
+
### Site: docs.openclaw.ai (Mintlify-hosted)
|
|
247
|
+
|
|
248
|
+
### Structure (key sections)
|
|
249
|
+
- **Getting Started**: install, onboard, first message
|
|
250
|
+
- **Channels**: 22 individual channel setup guides
|
|
251
|
+
- **Concepts**: memory, context engine, agent runtime, session management, compaction, streaming, multi-agent routing, delegate architecture
|
|
252
|
+
- **Gateway**: architecture, configuration, remote setup, multiple gateways
|
|
253
|
+
- **Reference**: memory config, session management deep dive, configuration reference
|
|
254
|
+
- **Install**: Docker, Kubernetes, Node.js, Podman, Railway, Render, DigitalOcean, Azure, GCP, Fly.io, Hetzner
|
|
255
|
+
- **Help**: FAQ, troubleshooting, testing
|
|
256
|
+
|
|
257
|
+
### Documentation Quality Assessment
|
|
258
|
+
- Comprehensive and well-organized
|
|
259
|
+
- Covers 11+ deployment targets (Docker, K8s, cloud providers)
|
|
260
|
+
- Individual guides for all 22 channels
|
|
261
|
+
- Deep technical reference for memory, sessions, context
|
|
262
|
+
- `llms.txt` available for LLM consumption of docs
|
|
263
|
+
- Architecture docs explain gateway, agent loop, context engine
|
|
264
|
+
|
|
265
|
+
---
|
|
266
|
+
|
|
267
|
+
## 9. Competitive Positioning
|
|
268
|
+
|
|
269
|
+
### Implicit Comparisons (from website)
|
|
270
|
+
- Positioned as **"a better version of Siri"** built outside corporate constraints
|
|
271
|
+
- Contrasted with cloud-dependent AI services (ChatGPT, Gemini, etc.)
|
|
272
|
+
- Differentiator: local execution, data sovereignty, multi-channel reach
|
|
273
|
+
|
|
274
|
+
### No Explicit Comparison Page Found
|
|
275
|
+
- No "OpenClaw vs X" page found in docs
|
|
276
|
+
- No formal competitor comparison matrix
|
|
277
|
+
- Positioning is aspirational/unique rather than comparative
|
|
278
|
+
|
|
279
|
+
### Key Differentiators vs Competitors
|
|
280
|
+
| vs | OpenClaw Advantage |
|
|
281
|
+
|---|---|
|
|
282
|
+
| ChatGPT/Claude apps | Runs locally, multi-channel, persistent memory, tool access |
|
|
283
|
+
| Siri/Alexa | Open source, customizable, real task execution |
|
|
284
|
+
| LangChain/CrewAI | Complete product (not just framework), built-in channels |
|
|
285
|
+
| Custom agent builds | Turnkey install, 22 channels, companion apps, community |
|
|
286
|
+
|
|
287
|
+
---
|
|
288
|
+
|
|
289
|
+
## 10. Community Presence
|
|
290
|
+
|
|
291
|
+
### Discord
|
|
292
|
+
- Active Discord server (discord.gg/clawd)
|
|
293
|
+
- Badge displayed prominently on GitHub and README
|
|
294
|
+
- Primary community hub
|
|
295
|
+
|
|
296
|
+
### GitHub
|
|
297
|
+
- 329k stars, 63.9k forks
|
|
298
|
+
- Active issue tracker and PR flow
|
|
299
|
+
- Multiple maintainers contributing
|
|
300
|
+
|
|
301
|
+
### Social/Web Presence
|
|
302
|
+
- openclaw.ai website (product marketing)
|
|
303
|
+
- docs.openclaw.ai (comprehensive documentation)
|
|
304
|
+
- DeepWiki page (deepwiki.com/openclaw/openclaw)
|
|
305
|
+
- NPM presence with 1.1M+ weekly downloads
|
|
306
|
+
|
|
307
|
+
### Community Health Signals
|
|
308
|
+
- Very active development (frequent releases)
|
|
309
|
+
- Multiple deployment guides for different platforms
|
|
310
|
+
- Extensive channel integration ecosystem (22 channels)
|
|
311
|
+
- Plugin/extension system allows community contributions
|
|
312
|
+
- Maintained by steipete (primary) with contributor community
|
|
313
|
+
|
|
314
|
+
---
|
|
315
|
+
|
|
316
|
+
## What Changed the Recommendation
|
|
317
|
+
|
|
318
|
+
The single highest-signal finding is that **OpenClaw is NOT an agent framework or memory library -- it is a complete, turnkey personal AI assistant product with 329k GitHub stars and 1.1M+ weekly npm downloads**. ClawMongo's positioning should reflect this: it is not "a MongoDB memory backend" but rather "OpenClaw (the most popular open-source personal AI assistant) with a production-grade MongoDB memory system that replaces the default SQLite/Markdown approach." The product IS the assistant. The memory upgrade is what makes it enterprise/team-ready.
|
|
319
|
+
|
|
320
|
+
Key implication: ClawMongo should position as "OpenClaw for production" or "OpenClaw for teams" rather than as a memory library or database integration.
|
|
321
|
+
|
|
322
|
+
---
|
|
323
|
+
|
|
324
|
+
## Gotchas / Warnings
|
|
325
|
+
|
|
326
|
+
- OpenClaw's default memory (Markdown + SQLite) is intentionally simple and local-first. ClawMongo adds complexity. Positioning must address when that complexity is worth it vs. when default memory is sufficient.
|
|
327
|
+
- OpenClaw has 329k stars. ClawMongo must be careful not to position as a "competitor" but as a "distribution" or "flavor" of the same product.
|
|
328
|
+
- The upstream has pivoted to QMD as its experimental advanced memory backend. ClawMongo's MongoDB approach diverges from upstream's direction.
|
|
329
|
+
- OpenClaw's 22-channel support is a massive differentiator. ClawMongo inherits ALL of this. This should be front-and-center in positioning.
|
|
330
|
+
- The product is marketed as single-user/personal. ClawMongo's "team-scale" positioning extends beyond upstream's intended use case.
|
|
331
|
+
- npm downloads at 1.1M+/week means OpenClaw has significant market presence. ClawMongo benefits from this ecosystem.
|
|
332
|
+
- steipete is the primary npm maintainer -- important to acknowledge upstream authorship.
|
|
333
|
+
|
|
334
|
+
---
|
|
335
|
+
|
|
336
|
+
## References
|
|
337
|
+
|
|
338
|
+
- https://openclaw.ai (product website)
|
|
339
|
+
- https://docs.openclaw.ai (documentation hub)
|
|
340
|
+
- https://docs.openclaw.ai/concepts/memory (memory architecture)
|
|
341
|
+
- https://docs.openclaw.ai/reference/memory-config (memory configuration)
|
|
342
|
+
- https://docs.openclaw.ai/concepts/architecture (gateway architecture)
|
|
343
|
+
- https://docs.openclaw.ai/concepts/context-engine (context engine)
|
|
344
|
+
- https://docs.openclaw.ai/concepts/agent (agent runtime)
|
|
345
|
+
- https://docs.openclaw.ai/channels (channel list)
|
|
346
|
+
- https://docs.openclaw.ai/start/getting-started (installation)
|
|
347
|
+
- https://docs.openclaw.ai/gateway (gateway docs)
|
|
348
|
+
- https://docs.openclaw.ai/llms.txt (documentation index)
|
|
349
|
+
- https://github.com/openclaw/openclaw (GitHub repository)
|
|
350
|
+
- https://www.npmjs.com/package/openclaw (npm package)
|
|
351
|
+
|
|
352
|
+
---
|
|
353
|
+
Web research complete.
|
|
@@ -0,0 +1,287 @@
|
|
|
1
|
+
# Getting Started with ClawMongo
|
|
2
|
+
|
|
3
|
+
ClawMongo is the MongoDB edition of OpenClaw. This guide gets you from zero to a working personal AI assistant with MongoDB-native memory in about 10 minutes.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Prerequisites
|
|
8
|
+
|
|
9
|
+
### Required
|
|
10
|
+
|
|
11
|
+
- **Node.js 22+** (24 recommended)
|
|
12
|
+
- **MongoDB 7.0+** with mongot (MongoDB Community Search)
|
|
13
|
+
- **Voyage AI API key** (for automated embeddings via mongot)
|
|
14
|
+
- **LLM API key** (Anthropic Claude recommended, or OpenAI, Google, Mistral, etc.)
|
|
15
|
+
|
|
16
|
+
### MongoDB Setup Options
|
|
17
|
+
|
|
18
|
+
#### Option A: Docker (Quickest)
|
|
19
|
+
|
|
20
|
+
Use the MongoDB Community image with mongot. Create a `docker-compose.yml`:
|
|
21
|
+
|
|
22
|
+
```yaml
|
|
23
|
+
version: "3.8"
|
|
24
|
+
services:
|
|
25
|
+
mongodb:
|
|
26
|
+
image: mongodb/mongodb-community-server:latest
|
|
27
|
+
ports:
|
|
28
|
+
- "27017:27017"
|
|
29
|
+
volumes:
|
|
30
|
+
- mongodb_data:/data/db
|
|
31
|
+
command: ["--replSet", "rs0", "--bind_ip_all"]
|
|
32
|
+
environment:
|
|
33
|
+
- MONGODB_INIT_REPLICA_SET=true
|
|
34
|
+
|
|
35
|
+
mongot:
|
|
36
|
+
image: mongodb/mongodb-atlas-search:latest
|
|
37
|
+
depends_on:
|
|
38
|
+
- mongodb
|
|
39
|
+
environment:
|
|
40
|
+
- MONGOD_HOST=mongodb
|
|
41
|
+
- MONGOD_PORT=27017
|
|
42
|
+
- VOYAGE_API_KEY=${VOYAGE_API_KEY}
|
|
43
|
+
|
|
44
|
+
volumes:
|
|
45
|
+
mongodb_data:
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
Start the services:
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
export VOYAGE_API_KEY="your-voyage-ai-key"
|
|
52
|
+
docker compose up -d
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
Initialize the replica set (required for change streams):
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
docker exec -it $(docker compose ps -q mongodb) mongosh --eval "rs.initiate()"
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
#### Option B: Local Install (macOS/Linux)
|
|
62
|
+
|
|
63
|
+
Install MongoDB Community and mongot using Homebrew (macOS) or your package manager:
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
# macOS
|
|
67
|
+
brew tap mongodb/brew
|
|
68
|
+
brew install mongodb-community
|
|
69
|
+
brew install mongodb-atlas-cli
|
|
70
|
+
|
|
71
|
+
# Start as a replica set (required for change streams)
|
|
72
|
+
mongod --replSet rs0 --dbpath /usr/local/var/mongodb --logpath /usr/local/var/log/mongodb/mongod.log --fork
|
|
73
|
+
mongosh --eval "rs.initiate()"
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
Install and configure mongot separately. See [MongoDB Community Search documentation](https://www.mongodb.com/docs/atlas/atlas-search/) for platform-specific instructions.
|
|
77
|
+
|
|
78
|
+
#### Option C: MongoDB Atlas
|
|
79
|
+
|
|
80
|
+
Create a free or paid cluster on [MongoDB Atlas](https://www.mongodb.com/atlas):
|
|
81
|
+
|
|
82
|
+
1. Create a cluster (M0 free tier works for development)
|
|
83
|
+
2. Enable Atlas Search on the cluster
|
|
84
|
+
3. Configure the Voyage AI integration in Atlas Search settings
|
|
85
|
+
4. Get the connection string from the Atlas dashboard
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
### Voyage AI Setup
|
|
90
|
+
|
|
91
|
+
1. Sign up at [voyageai.com](https://www.voyageai.com)
|
|
92
|
+
2. Generate an API key from the dashboard
|
|
93
|
+
3. Configure the key in your mongot deployment (Docker env var, Atlas Search settings, or local config)
|
|
94
|
+
|
|
95
|
+
ClawMongo uses `voyage-4-large` (1024 dimensions) for all embeddings. This is configured in the search index definitions, not in application code.
|
|
96
|
+
|
|
97
|
+
---
|
|
98
|
+
|
|
99
|
+
## Install ClawMongo
|
|
100
|
+
|
|
101
|
+
```bash
|
|
102
|
+
npm install -g @romiluz/clawmongo@latest
|
|
103
|
+
# or
|
|
104
|
+
pnpm add -g @romiluz/clawmongo@latest
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
Verify installation:
|
|
108
|
+
|
|
109
|
+
```bash
|
|
110
|
+
clawmongo --version
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
The `openclaw` command is also available as an alias for compatibility.
|
|
114
|
+
|
|
115
|
+
---
|
|
116
|
+
|
|
117
|
+
## Configure MongoDB Connection
|
|
118
|
+
|
|
119
|
+
```bash
|
|
120
|
+
# Set the MongoDB connection URI
|
|
121
|
+
clawmongo config set memory.mongodb.uri "mongodb://localhost:27017/clawmongo?replicaSet=rs0"
|
|
122
|
+
|
|
123
|
+
# Enable automated embeddings via mongot
|
|
124
|
+
clawmongo config set memory.mongodb.embeddingMode "automated"
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
For Atlas, use the full connection string:
|
|
128
|
+
|
|
129
|
+
```bash
|
|
130
|
+
clawmongo config set memory.mongodb.uri "mongodb+srv://user:password@cluster.mongodb.net/clawmongo"
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
---
|
|
134
|
+
|
|
135
|
+
## Run Onboarding
|
|
136
|
+
|
|
137
|
+
```bash
|
|
138
|
+
clawmongo onboard --install-daemon
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
The onboarding wizard walks you through:
|
|
142
|
+
|
|
143
|
+
1. **Model provider selection** -- choose Anthropic, OpenAI, Google, or another supported provider
|
|
144
|
+
2. **API key entry** -- enter your LLM provider API key
|
|
145
|
+
3. **Gateway setup** -- configures the gateway daemon on port 18789
|
|
146
|
+
4. **Collection bootstrap** -- creates all 20 MongoDB collections and 53 standard indexes
|
|
147
|
+
5. **Search index creation** -- creates text and vector search indexes (requires mongot)
|
|
148
|
+
|
|
149
|
+
The `--install-daemon` flag installs the gateway as a system service (launchd on macOS, systemd on Linux) so it stays running.
|
|
150
|
+
|
|
151
|
+
---
|
|
152
|
+
|
|
153
|
+
## Verify the Setup
|
|
154
|
+
|
|
155
|
+
### Check gateway status
|
|
156
|
+
|
|
157
|
+
```bash
|
|
158
|
+
clawmongo gateway status
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
### Check channel connectivity
|
|
162
|
+
|
|
163
|
+
```bash
|
|
164
|
+
clawmongo channels status --probe
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
### Check MongoDB connection and memory health
|
|
168
|
+
|
|
169
|
+
```bash
|
|
170
|
+
clawmongo doctor
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
The doctor command verifies MongoDB connectivity, collection existence, index counts, and mongot availability.
|
|
174
|
+
|
|
175
|
+
### Send a test message
|
|
176
|
+
|
|
177
|
+
```bash
|
|
178
|
+
clawmongo agent --message "Hello, remember that my name is Alice" --thinking low
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
Then verify memory was written:
|
|
182
|
+
|
|
183
|
+
```bash
|
|
184
|
+
clawmongo agent --message "What is my name?" --thinking low
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
---
|
|
188
|
+
|
|
189
|
+
## Connect a Channel (Optional)
|
|
190
|
+
|
|
191
|
+
Telegram is the quickest channel to set up:
|
|
192
|
+
|
|
193
|
+
1. Create a bot via [@BotFather](https://t.me/BotFather) on Telegram
|
|
194
|
+
2. Copy the bot token
|
|
195
|
+
3. Configure it:
|
|
196
|
+
|
|
197
|
+
```bash
|
|
198
|
+
clawmongo config set channels.telegram.botToken "YOUR_BOT_TOKEN"
|
|
199
|
+
```
|
|
200
|
+
|
|
201
|
+
4. Restart the gateway:
|
|
202
|
+
|
|
203
|
+
```bash
|
|
204
|
+
clawmongo gateway restart
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
5. Send a message to your bot on Telegram
|
|
208
|
+
|
|
209
|
+
For other channels (WhatsApp, Slack, Discord, etc.), see the [channel setup guides](https://docs.openclaw.ai/channels).
|
|
210
|
+
|
|
211
|
+
---
|
|
212
|
+
|
|
213
|
+
## Configuration Reference
|
|
214
|
+
|
|
215
|
+
Minimal `~/.openclaw/openclaw.json` for ClawMongo:
|
|
216
|
+
|
|
217
|
+
```json5
|
|
218
|
+
{
|
|
219
|
+
agent: {
|
|
220
|
+
model: "anthropic/claude-opus-4-6"
|
|
221
|
+
},
|
|
222
|
+
memory: {
|
|
223
|
+
mongodb: {
|
|
224
|
+
uri: "mongodb://localhost:27017/clawmongo?replicaSet=rs0",
|
|
225
|
+
embeddingMode: "automated"
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
For the full configuration reference: [docs.openclaw.ai/gateway/configuration](https://docs.openclaw.ai/gateway/configuration)
|
|
232
|
+
|
|
233
|
+
For MongoDB-specific memory configuration: [docs/reference/memory-config.md](../reference/memory-config.md)
|
|
234
|
+
|
|
235
|
+
---
|
|
236
|
+
|
|
237
|
+
## Next Steps
|
|
238
|
+
|
|
239
|
+
- **Import knowledge base documents**: Use `clawmongo kb import` to add reference material
|
|
240
|
+
- **Configure structured memory**: The agent writes structured facts automatically during conversations
|
|
241
|
+
- **Read the MongoDB capability deep-dive**: [docs/reference/mongodb-capabilities.md](../reference/mongodb-capabilities.md)
|
|
242
|
+
- **Understand the architecture**: [docs/reference/heart-brain-boundary.md](../reference/heart-brain-boundary.md)
|
|
243
|
+
- **Compare with default memory**: [docs/reference/clawmongo-vs-default-memory.md](../reference/clawmongo-vs-default-memory.md)
|
|
244
|
+
- **Set up additional channels**: [docs.openclaw.ai/channels](https://docs.openclaw.ai/channels)
|
|
245
|
+
|
|
246
|
+
---
|
|
247
|
+
|
|
248
|
+
## Troubleshooting
|
|
249
|
+
|
|
250
|
+
### MongoDB connection refused
|
|
251
|
+
|
|
252
|
+
Verify MongoDB is running and accessible:
|
|
253
|
+
|
|
254
|
+
```bash
|
|
255
|
+
mongosh "mongodb://localhost:27017" --eval "db.runCommand({ ping: 1 })"
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
### Replica set not initialized
|
|
259
|
+
|
|
260
|
+
Change streams require a replica set. Initialize it:
|
|
261
|
+
|
|
262
|
+
```bash
|
|
263
|
+
mongosh --eval "rs.initiate()"
|
|
264
|
+
```
|
|
265
|
+
|
|
266
|
+
### mongot not available
|
|
267
|
+
|
|
268
|
+
If search index creation fails, verify mongot is running and connected to your MongoDB instance. ClawMongo falls back to BSON `$text` indexes when mongot is unavailable, but vector search requires mongot.
|
|
269
|
+
|
|
270
|
+
### Voyage AI embedding errors
|
|
271
|
+
|
|
272
|
+
Verify your Voyage AI API key is correctly configured in mongot. Test embedding generation:
|
|
273
|
+
|
|
274
|
+
```bash
|
|
275
|
+
curl -X POST "https://api.voyageai.com/v1/embeddings" \
|
|
276
|
+
-H "Authorization: Bearer YOUR_VOYAGE_KEY" \
|
|
277
|
+
-H "Content-Type: application/json" \
|
|
278
|
+
-d '{"input": "test", "model": "voyage-4-large"}'
|
|
279
|
+
```
|
|
280
|
+
|
|
281
|
+
### Run the doctor
|
|
282
|
+
|
|
283
|
+
```bash
|
|
284
|
+
clawmongo doctor
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
The doctor command checks for common configuration issues and provides actionable fix suggestions.
|
package/package.json
CHANGED
|
@@ -1,14 +1,35 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@romiluz/clawmongo",
|
|
3
|
-
"version": "2026.3.
|
|
4
|
-
"description": "MongoDB-
|
|
5
|
-
"keywords": [
|
|
3
|
+
"version": "2026.3.24",
|
|
4
|
+
"description": "OpenClaw, but it remembers. Full AI assistant (22 channels, 78 extensions, voice, apps) with MongoDB memory - vector search, knowledge graph, event-sourcing, KB, and 8 retrieval paths. Nothing is ever lost.",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"mongodb",
|
|
7
|
+
"ai-assistant",
|
|
8
|
+
"personal-ai",
|
|
9
|
+
"openclaw",
|
|
10
|
+
"agent-memory",
|
|
11
|
+
"vector-search",
|
|
12
|
+
"knowledge-graph",
|
|
13
|
+
"voyage-ai",
|
|
14
|
+
"multi-channel",
|
|
15
|
+
"whatsapp",
|
|
16
|
+
"telegram",
|
|
17
|
+
"discord",
|
|
18
|
+
"slack",
|
|
19
|
+
"event-sourcing",
|
|
20
|
+
"graphlookup",
|
|
21
|
+
"mongot",
|
|
22
|
+
"hybrid-search",
|
|
23
|
+
"episode-materialization",
|
|
24
|
+
"retrieval-planner",
|
|
25
|
+
"typescript"
|
|
26
|
+
],
|
|
6
27
|
"homepage": "https://github.com/romiluz13/ClawMongo#readme",
|
|
7
28
|
"bugs": {
|
|
8
29
|
"url": "https://github.com/romiluz13/ClawMongo/issues"
|
|
9
30
|
},
|
|
10
31
|
"license": "MIT",
|
|
11
|
-
"author": "",
|
|
32
|
+
"author": "Rom Iluz <rom@iluz.net>",
|
|
12
33
|
"repository": {
|
|
13
34
|
"type": "git",
|
|
14
35
|
"url": "git+https://github.com/romiluz13/ClawMongo.git"
|