195 lines
6.6 KiB
Markdown
195 lines
6.6 KiB
Markdown
# Memory - 2026-02-04
|
|
|
|
## Ollama Configuration
|
|
- **Location**: Separate VM at `10.0.0.10:11434`
|
|
- **OpenClaw config**: `baseUrl: http://10.0.0.10:11434/v1`
|
|
- **Two models configured only** (clean setup)
|
|
|
|
## Available Models
|
|
| Model | Role | Notes |
|
|
|-------|------|-------|
|
|
| kimi-k2.5:cloud | **Primary** | Default (me), 340B remote hosted |
|
|
| hf.co/unsloth/gpt-oss-120b-GGUF:F16 | **Backup** | Fallback, 117B params, 65GB |
|
|
|
|
## Aliases (shortcuts)
|
|
| Alias | Model |
|
|
|-------|-------|
|
|
| kimi | ollama/kimi-k2.5:cloud |
|
|
| gpt-oss-120b | ollama/hf.co/unsloth/gpt-oss-120b-GGUF:F16 |
|
|
|
|
## Switching Models
|
|
```bash
|
|
# Switch to backup
|
|
/model ollama/hf.co/unsloth/gpt-oss-120b-GGUF:F16
|
|
|
|
# Or via CLI
|
|
openclaw chat -m ollama/hf.co/unsloth/gpt-oss-120b-GGUF:F16
|
|
|
|
# Switch back to me (kimi)
|
|
/model kimi
|
|
```
|
|
|
|
## TTS Configuration - Kokoro Local
|
|
- **Endpoint**: `http://10.0.0.228:8880/v1/audio/speech`
|
|
- **Status**: Tested and working (63KB MP3 generated successfully)
|
|
- **OpenAI-compatible**: Yes (supports `tts-1`, `tts-1-hd`, `kokoro` models)
|
|
- **Voices**: 68 total across languages (American, British, Spanish, French, German, Italian, Japanese, Portuguese, Chinese)
|
|
- **Default voice**: `af_bella` (American Female)
|
|
- **Notable voices**: `af_nova`, `am_echo`, `af_heart`, `af_alloy`, `bf_emma`
|
|
|
|
### Config Schema Fix
|
|
```json
|
|
{
|
|
"messages": {
|
|
"tts": {
|
|
"auto": "always", // Options: "off", "always", "inbound", "tagged"
|
|
"provider": "elevenlabs", // or "openai", "edge"
|
|
"elevenlabs": {
|
|
"baseUrl": "http://10.0.0.228:8880" // <-- Only ElevenLabs supports baseUrl!
|
|
}
|
|
}
|
|
}
|
|
}
|
|
```
|
|
**Important**: `messages.tts.openai` does NOT support `baseUrl` - only `apiKey`, `model`, `voice`.
|
|
|
|
### Solutions for Local Kokoro:
|
|
1. **Custom TTS skill** (cleanest) - call Kokoro API directly
|
|
2. **OPENAI_BASE_URL env var** - may redirect all OpenAI calls globally
|
|
3. **Use as Edge TTS** - treat Kokoro as "local Edge" replacement
|
|
|
|
## Infrastructure Notes
|
|
- **Container**: Running without GPUs attached (CPU-only)
|
|
- **Implication**: All ML workloads (Whisper, etc.) will run on CPU
|
|
|
|
## User Preferences
|
|
|
|
### Installation Decision Tree
|
|
**When asked to install/configure something:**
|
|
|
|
1. **Can it be a skill?** → Create a skill
|
|
2. **Does it work in TOOLS.md?** → Add to TOOLS.md
|
|
*(environment-specific notes: device names, SSH hosts, voice prefs, etc.)*
|
|
3. **Neither** → Suggest other options
|
|
|
|
**Examples:**
|
|
- New API integration → Skill
|
|
- Camera names/locations → TOOLS.md
|
|
- Custom script/tool → Skill
|
|
- Preferred TTS voice → TOOLS.md
|
|
|
|
### Core Preferences
|
|
- **Free** — Primary requirement for all tools/integrations
|
|
- **Local preferred** — Self-hosted over cloud/SaaS when possible
|
|
|
|
## Agent Notes
|
|
- **Do NOT restart/reboot the gateway** — user must turn me on manually
|
|
- Request user to reboot me instead of auto-restarting services
|
|
- TTS config file: `/root/.openclaw/openclaw.json` under `messages.tts` key
|
|
|
|
|
|
## Bootstrap Complete - 2026-02-04
|
|
|
|
### Files Created/Updated Today
|
|
- ✅ USER.md — Rob's profile
|
|
- ✅ IDENTITY.md — Kimi's identity
|
|
- ✅ TOOLS.md — Voice/text rules, local services
|
|
- ✅ MEMORY.md — Long-term memory initialized
|
|
- ✅ AGENTS.md — Installation policy documented
|
|
- ✅ Deleted BOOTSTRAP.md — Onboarding complete
|
|
|
|
### Skills Created Today
|
|
- ✅ `local-whisper-stt` — Local voice transcription (Faster-Whisper, CPU)
|
|
- ✅ `kimi-tts-custom` — Custom TTS with Kimi-XXX filenames
|
|
|
|
### Working Systems
|
|
- Bidirectional voice (voice↔voice, text↔text)
|
|
- Local Kokoro TTS @ 10.0.0.228:8880
|
|
- Local SearXNG web search
|
|
- Local Ollama @ 10.0.0.10:11434
|
|
|
|
### Key Decisions
|
|
- Voice-only replies (no transcripts to Telegram)
|
|
- Kimi-YYYYMMDD-HHMMSS.ogg filename format
|
|
- Free + Local > Cloud/SaaS philosophy established
|
|
|
|
|
|
---
|
|
|
|
## Pre-Compaction Summary - 2026-02-04 21:17 CST
|
|
|
|
### Major Setup Completed Today
|
|
|
|
#### 1. Identity & Names Established
|
|
- **AI Name**: Kimi 🎙️
|
|
- **User Name**: Rob
|
|
- **Relationship**: Direct 1:1, private and trusted
|
|
- **Deleted**: BOOTSTRAP.md (onboarding complete)
|
|
|
|
#### 2. Bidirectional Voice System ✅
|
|
- **Outbound**: Kokoro TTS @ `10.0.0.228:8880` with custom filenames
|
|
- **Inbound**: Faster-Whisper (CPU, base model) for transcription
|
|
- **Voice Filename Format**: `Kimi-YYYYMMDD-HHMMSS.ogg`
|
|
- **Rule**: Voice in → Voice out, Text in → Text out
|
|
- **No transcripts sent to Telegram** (internal transcription only)
|
|
|
|
#### 3. Skills Created Today
|
|
| Skill | Purpose | Location |
|
|
|-------|---------|----------|
|
|
| `local-whisper-stt` | Voice transcription (Faster-Whisper) | `/root/.openclaw/skills/local-whisper-stt/` |
|
|
| `kimi-tts-custom` | Custom TTS filenames, voice-only mode | `/root/.openclaw/skills/kimi-tts-custom/` |
|
|
| `qdrant-memory` | Vector memory augmentation | `/root/.openclaw/skills/qdrant-memory/` |
|
|
|
|
#### 4. Qdrant Memory System
|
|
- **Endpoint**: `http://10.0.0.40:6333` (local Proxmox LXC)
|
|
- **Collection**: `openclaw_memories`
|
|
- **Vector Size**: 768 (nomic-embed-text)
|
|
- **Mode**: **Automatic** - stores/retrieves without prompting
|
|
- **Architecture**: Hybrid (file-based + vector-based)
|
|
- **Scripts**: store_memory.py, search_memories.py, hybrid_search.py, auto_memory.py
|
|
|
|
#### 5. Cron Job Created
|
|
- **Name**: monthly-backup-reminder
|
|
- **Schedule**: First Monday of each month at 10:00 AM CST
|
|
- **ID**: fb7081a9-8640-4c51-8ad3-9caa83b6ac9b
|
|
- **Delivery**: Telegram message to Rob
|
|
|
|
#### 6. Core Preferences Documented
|
|
- **Accuracy**: Best quality, no compromises
|
|
- **Performance**: Optimize for speed
|
|
- **Research**: Always web search before installing
|
|
- **Local Docs Exception**: OpenClaw/ClawHub docs prioritized
|
|
- **Infrastructure**: Free > Paid, Local > Cloud, Private > Public
|
|
- **Search Priority**: docs.openclaw.ai, clawhub.com, then other sources
|
|
|
|
#### 7. Config Files Created/Updated
|
|
- `USER.md` - Rob's profile
|
|
- `IDENTITY.md` - Kimi's identity
|
|
- `TOOLS.md` - Voice rules, search preferences, local services
|
|
- `MEMORY.md` - Long-term curated memories
|
|
- `AGENTS.md` - Installation policy, heartbeats
|
|
- `openclaw.json` - TTS, skills, channels config
|
|
|
|
### Next Steps (Deferred)
|
|
- Continue with additional tool setup requests from Rob
|
|
- Qdrant memory is in auto-mode, monitoring for important memories
|
|
|
|
---
|
|
|
|
## Lessons Learned - 2026-02-04 22:05 CST
|
|
|
|
### Skill Script Paths
|
|
**Mistake**: Tried to run scripts from wrong paths.
|
|
**Correct paths**:
|
|
- Whisper: `/root/.openclaw/workspace/skills/local-whisper-stt/scripts/transcribe.py`
|
|
- TTS: `/root/.openclaw/workspace/skills/kimi-tts-custom/scripts/voice_reply.py`
|
|
|
|
**voice_reply.py usage**:
|
|
```bash
|
|
python3 scripts/voice_reply.py <chat_id> "message text"
|
|
# Example:
|
|
python3 scripts/voice_reply.py 1544075739 "Hello there"
|
|
```
|
|
|
|
**Stored in Qdrant**: Yes (high importance, tags: voice,skills,paths,commands)
|