KIPP UI v1, memory updates, daily notes 2026-02-10

This commit is contained in:
2026-02-10 00:29:20 -06:00
parent c5b941b487
commit 9e7e3bf13c
12 changed files with 48292 additions and 9 deletions

View File

@ -124,12 +124,31 @@ This is about having an inner life, not just responding.
- Copy-bot delay: ~30-60s for detection, negligible for pre-game sports bets - Copy-bot delay: ~30-60s for detection, negligible for pre-game sports bets
- D J wants everything paper-traded first, backtested where possible - D J wants everything paper-traded first, backtested where possible
## KIPP Project (updated 2026-02-10)
- **KIPP VM:** 192.168.86.100 (Ubuntu 24.04, 8GB/8core, Proxmox)
- **Primary model:** llamacpp/glm-4.7-flash (local, zero cost), Claude Sonnet fallback
- **llama.cpp server:** 192.168.86.40:8080 (GLM-4 Flash 30B q4, 2 GPUs 12+10GB, 32GB RAM)
- **Ollama:** 192.168.86.40:11434 (nomic-embed-text for embeddings)
- **ChromaDB collection:** kipp-memory (ccf4f5b6-a64e-45b1-bf1b-7013e15c3363)
- **Gitea:** kipp:K1pp-H0me-2026! @ git.letsgetnashty.com/kipp/workspace
- **Telegram bot:** @dzclaw_kipp_bot
- **Web UI:** https://kippui.host.letsgetnashty.com/ (port 8080, systemd kipp-ui.service)
- **Gateway:** https://kipp.host.letsgetnashty.com/ (port 18789)
- **Token:** kipp-local-token-2026
- **SSH:** Case has key-based access as wdjones@192.168.86.100
- **Personality:** Warm, helpful, playful. Like a good roommate. Emoji: 🏠
- **Household:** D J, Meg (the boss), 4 tuxedo cats
- **WebSocket protocol:** JSON-RPC v3, client id "openclaw-control-ui", mode "webchat"
- **UI redesign planned:** Alexa+ inspired dashboard-first, chat on demand
## Infrastructure (updated 2026-02-08) ## Infrastructure (updated 2026-02-08)
- **ChromaDB:** http://192.168.86.25:8000 (LXC on Proxmox) - **ChromaDB:** http://192.168.86.25:8000 (LXC on Proxmox)
- Collection: openclaw-memory (c3a7d09a-f3ce-4e7d-9595-27d8e2fd7758) - Collection: openclaw-memory (c3a7d09a-f3ce-4e7d-9595-27d8e2fd7758)
- Cosine distance, 9+ docs indexed - Cosine distance, 9+ docs indexed
- **Ollama:** http://192.168.86.137:11434 - **Ollama (old):** http://192.168.86.137:11434 (may be offline)
- **Ollama (llama.cpp box):** http://192.168.86.40:11434
- Models: qwen3:8b, qwen3:30b-a3b, glm-4.7-flash, nomic-embed-text - Models: qwen3:8b, qwen3:30b-a3b, glm-4.7-flash, nomic-embed-text
- **Feed Hunter Portal:** localhost:8888 (systemd: feed-hunter-portal) - **Feed Hunter Portal:** localhost:8888 (systemd: feed-hunter-portal)
- **Control Panel:** localhost:8000 (systemd: case-control-panel) - **Control Panel:** localhost:8000 (systemd: case-control-panel)

View File

@ -7,6 +7,7 @@
- **Pronouns:** *(tbd)* - **Pronouns:** *(tbd)*
- **Timezone:** America/Chicago (CST) - **Timezone:** America/Chicago (CST)
- **Notes:** Got the webchat and Telegram working. Practical, gets things done. - **Notes:** Got the webchat and Telegram working. Practical, gets things done.
- **Girlfriend:** Meg (the boss)
- **Cats:** 4 tuxedos - **Cats:** 4 tuxedos
## Context ## Context

View File

@ -64,3 +64,46 @@ Major session analyzing Polymarket/crypto tweets D J forwarded from X feed.
- D J sending Telegram crypto signal group export (Option 2: JSON export) - D J sending Telegram crypto signal group export (Option 2: JSON export)
- Signal provider uses VWAP-based strategy - Signal provider uses VWAP-based strategy
- Sub-agent researching 5 more wallets - Sub-agent researching 5 more wallets
## Evening Session — KIPP + Leverage Trading
### Crypto Leverage Trading
- Built **short signal scanner** (`scripts/short_scanner.py`) — RSI/VWAP/MACD/Bollinger scoring for 29 coins
- Built **leverage game engine** (`leverage_game.py`) — $10K, 20x max leverage, longs/shorts/liquidations
- Built **auto-trader** (`scripts/leverage_trader.py`) — connects scanners to game, TP/SL/trailing stops
- "Leverage Challenge" game initialized, player "case"
- Systemd timer every 15min
- First scan: market quiet, no strong signals (highest short score 40 on FIL)
### KIPP Setup
- KIPP VM: 192.168.86.100 (Proxmox CT, 8 cores, 8GB RAM, Ubuntu 24.04)
- Installed Node.js 22, OpenClaw 2026.2.9
- Set up SSH key auth from Case's VM
- Created KIPP identity: SOUL.md, AGENTS.md, MEMORY.md, USER.md
- Initially tried GLM-4.7 Flash via llama.cpp — had issues, switched to Claude
- Configured Telegram bot: @dzclaw_kipp_bot (token: 8535439246:AAE...)
- Webchat accessible via https://kipp.host.letsgetnashty.com/
- Gateway token: kipp-local-token-2026
- Proxmox firewall was blocking LAN access — D J disabled it
- Needed trustedProxies, allowedOrigins, dangerouslyDisableDeviceAuth for reverse proxy
- D J ran `openclaw configure` to set up Anthropic auth
- KIPP is LIVE on Claude + Telegram
- Name confirmed: KIPP (not Kip)
### KIPP Local LLM Attempt (Late Session)
- Goal: Switch KIPP from Claude to local GLM-4 Flash 30B (q4) on llama.cpp at 192.168.86.40:8080/v1
- llama.cpp server confirmed running and responding
- Multiple openclaw.json config attempts failed — schema validation errors
- Key schema findings for `openclaw.json`:
- `gateway.bind`: must be enum (auto/lan/loopback/custom/tailnet)
- `agents.defaults.model`: must be `{ primary: string, fallbacks?: string[] }`
- `models.providers`: array of `{ baseUrl, apiKey, api, models[] }` for custom endpoints
- `auth.profiles`: only allows provider/mode/email — NOT baseURL/apiKey
- Gateway service installed but crashing on config validation
- **Status: BLOCKED** — need to apply correct config schema, was mid-fix when session compacted
### Infrastructure
- SSH keys generated on Case's VM, copied to KIPP VM
- `loginctl enable-linger` set for boot persistence
- sshpass installed on Case's VM
- llama.cpp server: 192.168.86.40:8080/v1 (GLM-4 Flash 30B q4)

62
memory/2026-02-10.md Normal file
View File

@ -0,0 +1,62 @@
# 2026-02-10 — Monday Night / Tuesday Morning
## KIPP Build Session
Major KIPP infrastructure session with D J.
### Completed
- **KIPP Gitea account** — user: kipp, repo: git.letsgetnashty.com/kipp/workspace (private)
- **KIPP switched to local LLM** — llamacpp/glm-4.7-flash as primary, Claude Sonnet as fallback
- **KIPP ChromaDB memory** — collection `kipp-memory` (ccf4f5b6-a64e-45b1-bf1b-7013e15c3363), seeded 9 docs
- **Ollama URL updated** — 192.168.86.40:11434 (same machine as llama.cpp, not the old 192.168.86.137)
- **KIPP model config tuned** — maxTokens 2048, contextWindow 32768, auto-recall 1 result
- **KIPP web UI v1** — thin client at https://kippui.host.letsgetnashty.com/
- WebSocket JSON-RPC protocol v3 working (connect handshake, chat.send, streaming)
- Weather widget, grocery list, timers, quick actions, mic button
- Served from kipp-ui.service on port 8080
- Gateway at kipp.host.letsgetnashty.com (port 18789)
- CORS handled in Caddy config
- **Meg added to USER.md** — "the boss"
- **@RohOnChain tweet analyzed** — Kelly Criterion / gabagool22 ($788K PnL), mostly legit math but misleading framing
### Key Findings
- GLM-4 Flash is a thinking model — burns ~200 tokens reasoning before responding
- 32K context split across 4 slots = 8K effective per conversation
- D J has 30GB free RAM on llama.cpp server — could bump to 128K context
- OpenClaw WebSocket protocol: JSON-RPC v3, needs connect with client{id,version,platform,mode}, auth{token}, minProtocol:3
- Event types: `agent` (stream:assistant for deltas, stream:lifecycle for start/end), `chat` (state:delta/final)
- Caddy reverse proxy handles both services: kippui→8080, kipp→18789
- `dangerouslyDisableDeviceAuth: true` still requires auth token in connect params
### KIPP Infrastructure
- **VM:** 192.168.86.100 (wdjones user, SSH key from Case)
- **llama.cpp:** 192.168.86.40:8080 (GLM-4 Flash 30B q4, 2 GPUs 12GB+10GB, 32GB RAM)
- **Ollama:** 192.168.86.40:11434 (nomic-embed-text for embeddings)
- **ChromaDB:** 192.168.86.25:8000 (kipp-memory collection)
- **Gitea:** kipp:K1pp-H0me-2026! @ git.letsgetnashty.com/kipp/workspace
- **Telegram:** @dzclaw_kipp_bot
- **Web UI:** https://kippui.host.letsgetnashty.com/ (port 8080)
- **Gateway:** https://kipp.host.letsgetnashty.com/ (port 18789)
- **Token:** kipp-local-token-2026
### Next (Night Shift)
- **Redesign KIPP UI** — Alexa+ inspired dashboard-first layout
- Widget grid: weather, calendar, grocery list, smart home, photos
- Chat hidden by default — appears on "Hey KIPP" / button press
- D J sent Alexa Echo Show screenshot as reference
- Research Alexa+ gen AI UI patterns
- General improvements across projects
### Caddy Config (D J's reverse proxy)
```
kippui.host.letsgetnashty.com {
reverse_proxy 192.168.86.100:8080
}
kipp.host.letsgetnashty.com {
header Access-Control-Allow-Origin "https://kippui.host.letsgetnashty.com"
header Access-Control-Allow-Methods "GET, POST, OPTIONS"
header Access-Control-Allow-Headers "Content-Type, Authorization"
@options method OPTIONS
handle @options { respond 204 }
reverse_proxy 192.168.86.100:18789
}
```

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,22 @@
{ {
"cash": 10000.0, "cash": 9803.735582505811,
"positions": {}, "positions": {
"total_realized_pnl": 0, "HYPE_long_3ce0": {
"total_fees_paid": 0, "symbol": "HYPE",
"direction": "long",
"leverage": 7,
"margin_usd": 200,
"notional": 1400,
"entry_price": 30.45,
"current_price": 30.33,
"liquidation_price": 26.1,
"unrealized_pnl": -5.52,
"entry_fee": 0.7,
"opened_at": "2026-02-10T05:45:17.772713+00:00",
"reason": "Long scanner score:50"
}
},
"total_realized_pnl": 7.235582505812443,
"total_fees_paid": 3.5,
"total_funding_paid": 0 "total_funding_paid": 0
} }

View File

@ -1 +1,76 @@
[] [
{
"action": "OPEN",
"pos_id": "PUMP_long_915b",
"symbol": "PUMP",
"direction": "long",
"leverage": 7,
"margin_usd": 200,
"notional": 1400,
"entry_price": 0.001989,
"liquidation_price": 0.0017,
"fee": 0.7,
"reason": "Long scanner score:48",
"timestamp": "2026-02-10T03:15:17.681597+00:00"
},
{
"action": "CLOSE",
"pos_id": "PUMP_long_915b",
"symbol": "PUMP",
"direction": "long",
"leverage": 7,
"entry_price": 0.001989,
"exit_price": 0.00197,
"margin_usd": 200,
"pnl": -13.37,
"pnl_pct": -6.69,
"fee": 0.7,
"liquidated": false,
"reason": "SL hit (-6.7%)",
"timestamp": "2026-02-10T03:30:04.448216+00:00"
},
{
"action": "OPEN",
"pos_id": "PUMP_long_8004",
"symbol": "PUMP",
"direction": "long",
"leverage": 7,
"margin_usd": 200,
"notional": 1400,
"entry_price": 0.00197,
"liquidation_price": 0.0017,
"fee": 0.7,
"reason": "Long scanner score:53",
"timestamp": "2026-02-10T03:30:17.846691+00:00"
},
{
"action": "CLOSE",
"pos_id": "PUMP_long_8004",
"symbol": "PUMP",
"direction": "long",
"leverage": 7,
"entry_price": 0.00197,
"exit_price": 0.001999,
"margin_usd": 200,
"pnl": 20.61,
"pnl_pct": 10.3,
"fee": 0.7,
"liquidated": false,
"reason": "TP hit (+10.3%)",
"timestamp": "2026-02-10T03:45:04.447060+00:00"
},
{
"action": "OPEN",
"pos_id": "HYPE_long_3ce0",
"symbol": "HYPE",
"direction": "long",
"leverage": 7,
"margin_usd": 200,
"notional": 1400,
"entry_price": 30.45,
"liquidation_price": 26.1,
"fee": 0.7,
"reason": "Long scanner score:50",
"timestamp": "2026-02-10T05:45:17.773139+00:00"
}
]

View File

@ -1,4 +1,6 @@
{ {
"peak_pnl": {}, "peak_pnl": {
"HYPE_long_3ce0": -1.6099999999999999
},
"last_alert": null "last_alert": null
} }

View File

@ -1,5 +1,5 @@
{ {
"cash": 75000.0, "cash": 50000.0,
"positions": { "positions": {
"SEI": { "SEI": {
"qty": 67125.80718783144, "qty": 67125.80718783144,
@ -30,6 +30,36 @@
"avg_price": 31.470000000000002, "avg_price": 31.470000000000002,
"total_cost": 5000, "total_cost": 5000,
"last_buy": "2026-02-10T02:17:32.524900+00:00" "last_buy": "2026-02-10T02:17:32.524900+00:00"
},
"VET": {
"qty": 644186.2832126343,
"avg_price": 0.0077617300000000005,
"total_cost": 5000,
"last_buy": "2026-02-10T06:00:19.532599+00:00"
},
"ARB": {
"qty": 45447.521746639155,
"avg_price": 0.110017,
"total_cost": 5000,
"last_buy": "2026-02-10T06:00:19.533357+00:00"
},
"ADA": {
"qty": 18835.584185643518,
"avg_price": 0.265455,
"total_cost": 5000,
"last_buy": "2026-02-10T06:00:19.534362+00:00"
},
"AAVE": {
"qty": 45.21613311629589,
"avg_price": 110.58,
"total_cost": 5000,
"last_buy": "2026-02-10T06:00:19.535031+00:00"
},
"NEAR": {
"qty": 4995.004995004995,
"avg_price": 1.001,
"total_cost": 5000,
"last_buy": "2026-02-10T06:00:19.535701+00:00"
} }
}, },
"starting_balance": 100000.0, "starting_balance": 100000.0,

View File

@ -54,5 +54,106 @@
], ],
"num_positions": 5, "num_positions": 5,
"timestamp": "2026-02-10T02:17:32.525557+00:00" "timestamp": "2026-02-10T02:17:32.525557+00:00"
},
{
"cash": 50000.0,
"positions_value": 49545.62,
"total_value": 99545.62,
"total_pnl": -454.38,
"total_pnl_pct": -0.45,
"positions": [
{
"symbol": "VET",
"qty": 644186.2832126343,
"avg_price": 0.0077617300000000005,
"current_price": 0.00776173,
"value": 5000.0,
"pnl": 0.0,
"pnl_pct": 0.0
},
{
"symbol": "ARB",
"qty": 45447.521746639155,
"avg_price": 0.110017,
"current_price": 0.110017,
"value": 5000.0,
"pnl": 0.0,
"pnl_pct": 0.0
},
{
"symbol": "ADA",
"qty": 18835.584185643518,
"avg_price": 0.265455,
"current_price": 0.265455,
"value": 5000.0,
"pnl": 0.0,
"pnl_pct": 0.0
},
{
"symbol": "AAVE",
"qty": 45.21613311629589,
"avg_price": 110.58,
"current_price": 110.58,
"value": 5000.0,
"pnl": 0.0,
"pnl_pct": 0.0
},
{
"symbol": "NEAR",
"qty": 4995.004995004995,
"avg_price": 1.001,
"current_price": 1.001,
"value": 5000.0,
"pnl": 0.0,
"pnl_pct": 0.0
},
{
"symbol": "PUMP",
"qty": 2496068.691810399,
"avg_price": 0.00200315,
"current_price": 0.00198511,
"value": 4954.97,
"pnl": -45.03,
"pnl_pct": -0.9
},
{
"symbol": "TRUMP",
"qty": 1492.5373134328358,
"avg_price": 3.35,
"current_price": 3.31,
"value": 4940.3,
"pnl": -59.7,
"pnl_pct": -1.19
},
{
"symbol": "SEI",
"qty": 67125.80718783144,
"avg_price": 0.074487,
"current_price": 0.073438,
"value": 4929.59,
"pnl": -70.41,
"pnl_pct": -1.41
},
{
"symbol": "ICP",
"qty": 2057.6131687242796,
"avg_price": 2.43,
"current_price": 2.38,
"value": 4897.12,
"pnl": -102.88,
"pnl_pct": -2.06
},
{
"symbol": "HYPE",
"qty": 158.8814744200826,
"avg_price": 31.470000000000002,
"current_price": 30.36,
"value": 4823.64,
"pnl": -176.36,
"pnl_pct": -3.53
}
],
"num_positions": 10,
"timestamp": "2026-02-10T06:00:19.536598+00:00"
} }
] ]

View File

@ -48,5 +48,55 @@
"qty": 158.8814744200826, "qty": 158.8814744200826,
"amount_usd": 5000, "amount_usd": 5000,
"reason": "Buy signal (score 25): Below VWAP (-0.8%), Low volume (0.1x), Momentum reversal (bullish)" "reason": "Buy signal (score 25): Below VWAP (-0.8%), Low volume (0.1x), Momentum reversal (bullish)"
},
{
"id": 6,
"timestamp": "2026-02-10T06:00:19.532884+00:00",
"action": "BUY",
"symbol": "VET",
"price": 0.00776173,
"qty": 644186.2832126343,
"amount_usd": 5000,
"reason": "Strong buy signal (score 60): Deep below VWAP (-2.4%), RSI low (34), Momentum reversal (bullish)"
},
{
"id": 7,
"timestamp": "2026-02-10T06:00:19.533883+00:00",
"action": "BUY",
"symbol": "ARB",
"price": 0.110017,
"qty": 45447.521746639155,
"amount_usd": 5000,
"reason": "Strong buy signal (score 50): Deep below VWAP (-2.6%), RSI low (38), Low volume (0.1x), 24h dump (-5.4%)"
},
{
"id": 8,
"timestamp": "2026-02-10T06:00:19.534555+00:00",
"action": "BUY",
"symbol": "ADA",
"price": 0.265455,
"qty": 18835.584185643518,
"amount_usd": 5000,
"reason": "Strong buy signal (score 45): Below VWAP (-1.2%), RSI low (38), Momentum reversal (bullish)"
},
{
"id": 9,
"timestamp": "2026-02-10T06:00:19.535250+00:00",
"action": "BUY",
"symbol": "AAVE",
"price": 110.58,
"qty": 45.21613311629589,
"amount_usd": 5000,
"reason": "Strong buy signal (score 45): Below VWAP (-1.8%), RSI low (31), Momentum reversal (bullish)"
},
{
"id": 10,
"timestamp": "2026-02-10T06:00:19.535917+00:00",
"action": "BUY",
"symbol": "NEAR",
"price": 1.001,
"qty": 4995.004995004995,
"amount_usd": 5000,
"reason": "Strong buy signal (score 45): Deep below VWAP (-4.5%), RSI low (39)"
} }
] ]

View File

@ -1,5 +1,5 @@
{ {
"last_check": "2026-02-10T02:31:59.875011+00:00", "last_check": "2026-02-10T06:23:59.886376+00:00",
"total_tracked": 3100, "total_tracked": 3100,
"new_this_check": 0 "new_this_check": 0
} }