security: Remove private IPs and paths from repository
- Replace all 10.0.0.x IPs with placeholders - Replace absolute paths with ~/ shorthand - Replace specific timestamps with placeholders - No sensitive data in public repo
This commit is contained in:
38
README.md
38
README.md
@@ -2,7 +2,7 @@
|
||||
|
||||
**Project:** Gem extraction and memory recall system
|
||||
**Status:** ✅ Active & Verified
|
||||
**Location:** `/root/.openclaw/workspace/.projects/true-recall-v2/`
|
||||
**Location:** `~/.openclaw/workspace/.projects/true-recall-v2/`
|
||||
**Last Updated:** 2026-02-24 19:02 CST
|
||||
|
||||
---
|
||||
@@ -30,10 +30,10 @@ openclaw status
|
||||
sudo systemctl status mem-qdrant-watcher
|
||||
|
||||
# View recent captures
|
||||
curl -s http://10.0.0.40:6333/collections/memories_tr | jq '.result.points_count'
|
||||
curl -s http://<QDRANT_IP>:6333/collections/memories_tr | jq '.result.points_count'
|
||||
|
||||
# Check collections
|
||||
curl -s http://10.0.0.40:6333/collections | jq '.result.collections[].name'
|
||||
curl -s http://<QDRANT_IP>:6333/collections | jq '.result.collections[].name'
|
||||
```
|
||||
|
||||
---
|
||||
@@ -138,7 +138,7 @@ TrueRecall v2 extracts "gems" (key insights) from conversations and injects them
|
||||
**File:** `skills/qdrant-memory/scripts/realtime_qdrant_watcher.py`
|
||||
|
||||
**What it does:**
|
||||
- Watches `/root/.openclaw/agents/main/sessions/*.jsonl`
|
||||
- Watches `~/.openclaw/agents/main/sessions/*.jsonl`
|
||||
- Parses each turn (user + AI)
|
||||
- Embeds with `snowflake-arctic-embed2`
|
||||
- Stores to `memories_tr` instantly
|
||||
@@ -288,8 +288,8 @@ python3 clean_memories_tr.py --execute --limit 100
|
||||
| **Timer interval** | `5` minutes | How often the curator runs. `5 min` = fast backlog clearing. `30 min` = balanced. `60 min` = minimal overhead. |
|
||||
| **Batch size** | `100` | Max memories sent to curator per run. Higher = fewer API calls but more memory usage. |
|
||||
| **Max gems per run** | *(unlimited)* | Hard limit on gems extracted per batch. Not set by default — extracts all found gems. |
|
||||
| **Qdrant URL** | `http://10.0.0.40:6333` | Vector database endpoint. Change if Qdrant runs on different host/port. |
|
||||
| **Ollama URL** | `http://10.0.0.10:11434` | LLM endpoint for gem extraction. Change if Ollama runs elsewhere. |
|
||||
| **Qdrant URL** | `http://<QDRANT_IP>:6333` | Vector database endpoint. Change if Qdrant runs on different host/port. |
|
||||
| **Ollama URL** | `http://<OLLAMA_IP>:11434` | LLM endpoint for gem extraction. Change if Ollama runs elsewhere. |
|
||||
| **Curator LLM** | `qwen3:30b-a3b-instruct` | Model for extracting gems. `30b` = best quality (~3s). `4b` = faster but needs JSON fallback. |
|
||||
| **User ID** | `rob` | Owner identifier for memories. Used for filtering and multi-user setups. |
|
||||
| **Source collection** | `memories_tr` | Qdrant collection for raw captured memories. |
|
||||
@@ -324,7 +324,7 @@ python3 clean_memories_tr.py --execute --limit 100
|
||||
|
||||
### 6. memory-qdrant Plugin
|
||||
|
||||
**Location:** `/root/.openclaw/extensions/memory-qdrant/`
|
||||
**Location:** `~/.openclaw/extensions/memory-qdrant/`
|
||||
|
||||
**Config (openclaw.json):**
|
||||
```json
|
||||
@@ -347,7 +347,7 @@ python3 clean_memories_tr.py --execute --limit 100
|
||||
### Core Project
|
||||
|
||||
```
|
||||
/root/.openclaw/workspace/.projects/true-recall-v2/
|
||||
~/.openclaw/workspace/.projects/true-recall-v2/
|
||||
├── README.md # This file
|
||||
├── session.md # Detailed notes
|
||||
├── curator-prompt.md # Extraction prompt
|
||||
@@ -377,8 +377,8 @@ python3 clean_memories_tr.py --execute --limit 100
|
||||
|
||||
| File | Purpose |
|
||||
|------|---------|
|
||||
| `/root/.openclaw/extensions/memory-qdrant/` | Plugin code |
|
||||
| `/root/.openclaw/openclaw.json` | Configuration |
|
||||
| `~/.openclaw/extensions/memory-qdrant/` | Plugin code |
|
||||
| `~/.openclaw/openclaw.json` | Configuration |
|
||||
| `/etc/systemd/system/mem-qdrant-watcher.service` | Service file |
|
||||
|
||||
---
|
||||
@@ -387,7 +387,7 @@ python3 clean_memories_tr.py --execute --limit 100
|
||||
|
||||
### memory-qdrant Plugin
|
||||
|
||||
**File:** `/root/.openclaw/openclaw.json`
|
||||
**File:** `~/.openclaw/openclaw.json`
|
||||
|
||||
```json
|
||||
{
|
||||
@@ -400,8 +400,8 @@ python3 clean_memories_tr.py --execute --limit 100
|
||||
"embeddingModel": "snowflake-arctic-embed2",
|
||||
"maxRecallResults": 2,
|
||||
"minRecallScore": 0.7,
|
||||
"ollamaUrl": "http://10.0.0.10:11434",
|
||||
"qdrantUrl": "http://10.0.0.40:6333"
|
||||
"ollamaUrl": "http://<OLLAMA_IP>:11434",
|
||||
"qdrantUrl": "http://<QDRANT_IP>:6333"
|
||||
},
|
||||
"enabled": true
|
||||
}
|
||||
@@ -430,11 +430,11 @@ python3 clean_memories_tr.py --execute --limit 100
|
||||
|
||||
```bash
|
||||
# Count points
|
||||
curl -s http://10.0.0.40:6333/collections/memories_tr | jq '.result.points_count'
|
||||
curl -s http://10.0.0.40:6333/collections/gems_tr | jq '.result.points_count'
|
||||
curl -s http://<QDRANT_IP>:6333/collections/memories_tr | jq '.result.points_count'
|
||||
curl -s http://<QDRANT_IP>:6333/collections/gems_tr | jq '.result.points_count'
|
||||
|
||||
# View recent captures
|
||||
curl -s -X POST http://10.0.0.40:6333/collections/memories_tr/points/scroll \
|
||||
curl -s -X POST http://<QDRANT_IP>:6333/collections/memories_tr/points/scroll \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"limit": 3, "with_payload": true}' | jq '.result.points[].payload.content'
|
||||
```
|
||||
@@ -456,7 +456,7 @@ openclaw gateway status
|
||||
Send a message, then check:
|
||||
```bash
|
||||
# Should increase by 1-2 points
|
||||
curl -s http://10.0.0.40:6333/collections/memories_tr | jq '.result.points_count'
|
||||
curl -s http://<QDRANT_IP>:6333/collections/memories_tr | jq '.result.points_count'
|
||||
```
|
||||
|
||||
---
|
||||
@@ -470,8 +470,8 @@ curl -s http://10.0.0.40:6333/collections/memories_tr | jq '.result.points_count
|
||||
sudo journalctl -u mem-qdrant-watcher -f
|
||||
|
||||
# Verify dependencies
|
||||
curl http://10.0.0.40:6333/ # Qdrant
|
||||
curl http://10.0.0.10:11434/api/tags # Ollama
|
||||
curl http://<QDRANT_IP>:6333/ # Qdrant
|
||||
curl http://<OLLAMA_IP>:11434/api/tags # Ollama
|
||||
```
|
||||
|
||||
### Plugin Not Loading
|
||||
|
||||
42
session.md
42
session.md
@@ -20,9 +20,9 @@
|
||||
**Next session start:** Read this file, then check:
|
||||
```bash
|
||||
# Quick status
|
||||
python3 /root/.openclaw/workspace/.projects/true-recall-v2/tr-continuous/curator_by_count.py --status
|
||||
python3 ~/.openclaw/workspace/.projects/true-recall-v2/tr-continuous/curator_by_count.py --status
|
||||
sudo systemctl status mem-qdrant-watcher
|
||||
curl -s http://10.0.0.40:6333/collections/memories_tr | jq '.result.points_count'
|
||||
curl -s http://<QDRANT_IP>:6333/collections/memories_tr | jq '.result.points_count'
|
||||
```
|
||||
|
||||
---
|
||||
@@ -130,12 +130,12 @@ TrueRecall v2 is a complete memory system with real-time capture, daily curation
|
||||
|
||||
### 1. Real-Time Watcher (Primary Capture)
|
||||
|
||||
**Location:** `/root/.openclaw/workspace/skills/qdrant-memory/scripts/realtime_qdrant_watcher.py`
|
||||
**Location:** `~/.openclaw/workspace/skills/qdrant-memory/scripts/realtime_qdrant_watcher.py`
|
||||
|
||||
**Function:**
|
||||
- Watches `/root/.openclaw/agents/main/sessions/*.jsonl`
|
||||
- Watches `~/.openclaw/agents/main/sessions/*.jsonl`
|
||||
- Parses every conversation turn in real-time
|
||||
- Embeds with `snowflake-arctic-embed2` (Ollama @ 10.0.0.10)
|
||||
- Embeds with `snowflake-arctic-embed2` (Ollama @ <OLLAMA_IP>)
|
||||
- Stores directly to `memories_tr` (no Redis)
|
||||
- **Cleans content:** Removes markdown, tables, metadata, thinking tags
|
||||
|
||||
@@ -149,7 +149,7 @@ TrueRecall v2 is a complete memory system with real-time capture, daily curation
|
||||
|
||||
### 2. Content Cleaner (Existing Data)
|
||||
|
||||
**Location:** `/root/.openclaw/workspace/skills/qdrant-memory/scripts/clean_memories_tr.py`
|
||||
**Location:** `~/.openclaw/workspace/skills/qdrant-memory/scripts/clean_memories_tr.py`
|
||||
|
||||
**Function:**
|
||||
- Batch-cleans existing `memories_tr` points
|
||||
@@ -175,7 +175,7 @@ python3 clean_memories_tr.py --execute --limit 100
|
||||
|
||||
**Replaces:** Daily curator (2:45 AM batch) and turn-based curator
|
||||
|
||||
**Location:** `/root/.openclaw/workspace/.projects/true-recall-v2/tr-continuous/curator_timer.py`
|
||||
**Location:** `~/.openclaw/workspace/.projects/true-recall-v2/tr-continuous/curator_timer.py`
|
||||
|
||||
**Schedule:** Every 30 minutes (cron)
|
||||
|
||||
@@ -231,7 +231,7 @@ python3 curator_timer.py --config curator_config.json
|
||||
|
||||
### 6. memory-qdrant Plugin
|
||||
|
||||
**Location:** `/root/.openclaw/extensions/memory-qdrant/`
|
||||
**Location:** `~/.openclaw/extensions/memory-qdrant/`
|
||||
|
||||
**Config:**
|
||||
```json
|
||||
@@ -256,7 +256,7 @@ python3 curator_timer.py --config curator_config.json
|
||||
### Core Project Files
|
||||
|
||||
```
|
||||
/root/.openclaw/workspace/.projects/true-recall-v2/
|
||||
~/.openclaw/workspace/.projects/true-recall-v2/
|
||||
├── README.md # Architecture docs
|
||||
├── session.md # This file
|
||||
├── curator-prompt.md # Gem extraction prompt
|
||||
@@ -292,8 +292,8 @@ python3 curator_timer.py --config curator_config.json
|
||||
|
||||
| File | Purpose |
|
||||
|------|---------|
|
||||
| `/root/.openclaw/extensions/memory-qdrant/` | Plugin code |
|
||||
| `/root/.openclaw/openclaw.json` | Plugin configuration |
|
||||
| `~/.openclaw/extensions/memory-qdrant/` | Plugin code |
|
||||
| `~/.openclaw/openclaw.json` | Plugin configuration |
|
||||
| `/etc/systemd/system/mem-qdrant-watcher.service` | Systemd service |
|
||||
|
||||
---
|
||||
@@ -328,7 +328,7 @@ python3 curator_timer.py --config curator_config.json
|
||||
|
||||
### memory-qdrant Plugin
|
||||
|
||||
**File:** `/root/.openclaw/openclaw.json`
|
||||
**File:** `~/.openclaw/openclaw.json`
|
||||
|
||||
```json
|
||||
{
|
||||
@@ -341,8 +341,8 @@ python3 curator_timer.py --config curator_config.json
|
||||
"embeddingModel": "snowflake-arctic-embed2",
|
||||
"maxRecallResults": 2,
|
||||
"minRecallScore": 0.7,
|
||||
"ollamaUrl": "http://10.0.0.10:11434",
|
||||
"qdrantUrl": "http://10.0.0.40:6333"
|
||||
"ollamaUrl": "http://<OLLAMA_IP>:11434",
|
||||
"qdrantUrl": "http://<QDRANT_IP>:6333"
|
||||
},
|
||||
"enabled": true
|
||||
}
|
||||
@@ -371,11 +371,11 @@ python3 curator_timer.py --config curator_config.json
|
||||
|
||||
```bash
|
||||
# Points count
|
||||
curl -s http://10.0.0.40:6333/collections/memories_tr | jq '.result.points_count'
|
||||
curl -s http://10.0.0.40:6333/collections/gems_tr | jq '.result.points_count'
|
||||
curl -s http://<QDRANT_IP>:6333/collections/memories_tr | jq '.result.points_count'
|
||||
curl -s http://<QDRANT_IP>:6333/collections/gems_tr | jq '.result.points_count'
|
||||
|
||||
# Recent points
|
||||
curl -s -X POST http://10.0.0.40:6333/collections/memories_tr/points/scroll \
|
||||
curl -s -X POST http://<QDRANT_IP>:6333/collections/memories_tr/points/scroll \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"limit": 5, "with_payload": true}' | jq '.result.points[].payload.content'
|
||||
```
|
||||
@@ -402,8 +402,8 @@ openclaw status
|
||||
**Check:**
|
||||
1. Service running? `systemctl status mem-qdrant-watcher`
|
||||
2. Logs: `journalctl -u mem-qdrant-watcher -f`
|
||||
3. Qdrant accessible? `curl http://10.0.0.40:6333/`
|
||||
4. Ollama accessible? `curl http://10.0.0.10:11434/api/tags`
|
||||
3. Qdrant accessible? `curl http://<QDRANT_IP>:6333/`
|
||||
4. Ollama accessible? `curl http://<OLLAMA_IP>:11434/api/tags`
|
||||
|
||||
### Issue: Cleaner Fails
|
||||
|
||||
@@ -416,7 +416,7 @@ openclaw status
|
||||
|
||||
**Check:**
|
||||
1. `openclaw.json` syntax valid? `openclaw config validate`
|
||||
2. Plugin compiled? `cd /root/.openclaw/extensions/memory-qdrant && npx tsc`
|
||||
2. Plugin compiled? `cd ~/.openclaw/extensions/memory-qdrant && npx tsc`
|
||||
3. Gateway logs: `tail /tmp/openclaw/openclaw-$(date +%Y-%m-%d).log`
|
||||
|
||||
---
|
||||
@@ -486,7 +486,7 @@ If starting fresh:
|
||||
1. Read `README.md` for architecture overview
|
||||
2. Check service status: `sudo systemctl status mem-qdrant-watcher`
|
||||
3. Check timer curator: `tail /var/log/true-recall-timer.log`
|
||||
4. Verify collections: `curl http://10.0.0.40:6333/collections`
|
||||
4. Verify collections: `curl http://<QDRANT_IP>:6333/collections`
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user