chore: auto-commit uncommitted changes

This commit is contained in:
James 2026-03-20 00:01:58 -04:00
parent cd47e78156
commit fba2b14f73
5 changed files with 147 additions and 69 deletions

52
memory/2026-03-19.md Normal file
View File

@ -0,0 +1,52 @@
# Daily Notes — 2026-03-19 (Thursday)
## Summary
Evening session focused on: OC vs Claude.ai value discussion, then creating Luca (employment lawyer agent for Tanya).
---
## Events
### Morning/Afternoon
- Claude usage alert fired at 6 AM (54% weekly, 6% spike in 2h) — approaching reset (Friday)
- Bird CLI cookies expired; Johan fixed manually ~1:35 PM
### Evening (~8 PM EDT)
**OC Value Discussion with Johan**
- Topic: Is running OpenClaw still worth it vs Claude.ai/Cowork Dispatch?
- OC's unreleased Discord/Telegram Claude Code binding still in `main` — NOT shipped in 2026.3.13
- Johan's view: OC still valuable for home lab integration, custom channels, proactive work
- Me: honest about what Claude.ai now covers (persistent memory, mobile, multi-agent, Cowork Dispatch)
- No decision to change anything — continued status quo confirmed
**Luca Agent Created (~8:178:21 PM)**
- Johan asked to create an employment lawyer agent for Tanya (his wife, at N-able global HR)
- Agent: **Luca Ferrara** — employment lawyer CoS
- Bocconi + LSE LLM
- Barred: Italy, England & Wales, New York
- 8 years Freshfields (Magic Circle), then Head of Employment EMEA in-house, then Global Employment Counsel during US tech expansion
- 12 jurisdiction coverage cold: Germany (Betriebsrat), UK (TUPE/IR35), Philippines (DOLE), India (IT sector), France (CSE), Netherlands, Poland, Israel, Canada, Australia, Singapore, Brazil
- Bilateral expertise: represents both employers AND employees — knows when a company is low-balling
- Workspace: `/home/johan/luca/` — all files written
- Added to openclaw.json agents list
- SOUL.md iterated multiple times for depth (Freshfields history, bilateral angle)
- **Needs Discord bot token to go live** — Johan to create at discord.com/developers/applications
---
## Nightly Maintenance (~9 PM EDT)
- OS: `apt update && apt upgrade -y` — 11 packages upgraded (binutils family)
- Note: kernel 6.8.0-101 running, 6.8.0-106 available — reboot needed for new kernel
- Claude Code: updated 2.1.77 → 2.1.80 via `npm update -g @anthropic-ai/claude-code`
- OpenClaw: current (2026.3.13) — no update available
- Working context updated
- Session cleanup: removed stale :run: keys from sessions.json
---
## Pending / Carry-forward
1. **Hugo bot token** — pending since Mar 17
2. **Luca bot token** — new, needs creation
3. **inou DICOM VR bug** — parked, no progress
4. **Kernel reboot** — low urgency, can wait for scheduled maintenance

Binary file not shown.

View File

@ -1,9 +1,9 @@
{ {
"last_updated": "2026-03-19T22:00:01.352762Z", "last_updated": "2026-03-20T04:00:02.264382Z",
"source": "api", "source": "api",
"session_percent": 5, "session_percent": 0,
"session_resets": "2026-03-19T23:00:00.310948+00:00", "session_resets": null,
"weekly_percent": 69, "weekly_percent": 0,
"weekly_resets": "2026-03-20T03:00:00.310975+00:00", "weekly_resets": "2026-03-27T03:00:00.216879+00:00",
"sonnet_percent": 90 "sonnet_percent": 1
} }

View File

@ -1,98 +1,89 @@
# Working Context — 2026-03-18 (updated 9 PM nightly maintenance) # Working Context — 2026-03-19 (updated 9 PM nightly maintenance)
## Current State ## Current State
Johan is starting his night shift (Sophia care: 10:30 PM 5 AM). Active work day is done. Johan finished his evening work session (~8:20 PM) and is entering night shift (Sophia care: 10:30 PM 5 AM weekdays). Session ended just before the 9 PM cron maintenance window.
Session ended cleanly after OC restart to activate OpenRouter/MiniMax M2.7 config (~8:17 PM).
--- ---
## Projects ## Projects
### OpenRouter + MiniMax M2.7 (NEW — COMPLETED today) ### Luca — New Agent (JUST CREATED — needs Discord bot token)
- Johan asked to add MiniMax M2.7 to OC after reading the MiniMax self-evolution announcement - **Who:** Luca Ferrara — employment lawyer persona, Johan's CoS for HR/employment law matters
- OpenRouter API key found: `sk-or-v1-e2b05c6b...` (stored in env/config) - **Background:** Bocconi + LSE LLM, barred Italy/E&W/NY, 8 years at Freshfields then in-house employment counsel at US tech (EMEA + global)
- OpenRouter provider added to OC config, M2.7 wired as `openrouter/minimax/minimax-m2.7` - **12 jurisdictions:** Germany (Betriebsrat), UK (TUPE/IR35), Philippines (DOLE), India (IT sector exemption), etc.
- OC restarted to activate (~8:17 PM) - **Primary use:** Tanya at N-able — global employment decisions, comp/layoff strategy, employment agreement review
- **Status:** Live. Subagents can now be spawned with `model="openrouter/minimax/minimax-m2.7"` - **Workspace:** `/home/johan/luca/` — SOUL.md, IDENTITY.md, USER.md, AGENTS.md, MEMORY.md all written
- Also available on OpenRouter: M2.5, M2.5:free, M2.1, M2 (legacy), M2-her, M1 - **Config:** Added to openclaw.json agents list ✅
- **BLOCKER:** Needs Discord bot token from Johan to go live
1. Go to https://discord.com/developers/applications
2. New Application → "Luca" → Bot → Reset Token → paste to James
- **Status:** Workspace ready, waiting for bot token
### Git Backlog (RESOLVED — late evening) ### Hugo — DJ Rosie Agent (STILL WAITING)
- Johan triggered git push of all repos before 9 PM - Workspace: `/home/johan/hugo/`
- All repos pushed to Zurich: agentchat, dealspace, james-dashboard, vault1984, inou, clawd ✅ - Config in openclaw.json ✅
- dealspace: committed fix for DealOrgPerms VisibleLists field (permissions save was silently dropping visible_lists) - **Still needs Discord bot token** — carried over from Mar 17, still pending
- inou: marketing Twitter images committed
### Hugo (pending — waiting for bot token) ### OpenRouter + MiniMax M2.7 (ACTIVE — from Mar 18)
- Johan asked to set up a new Discord bot agent for DJ Rozemarijn Jongsma (DJ Rosie, his daughter) as PR/artist management agent - OpenRouter provider added to OC config
- Agent named **Hugo** — PR manager persona for DJ Rosie - `openrouter/minimax/minimax-m2.7` available for subagents
- Workspace created: `/home/johan/hugo/` with SOUL.md written (2026-03-17) - Live since ~8:17 PM Mar 18
- **BLOCKER:** Needs Discord bot token from Johan. Bot creation at discord.com/developers/applications
1. Create new application → name it "Hugo"
2. Add Bot → enable all 3 privileged intents
3. Reset Token → paste to James
- **Status:** Workspace ready, waiting for bot token (carried over from yesterday)
### Mira (Discord bot — working)
- Mira's Discord bot wired up (app ID 1483483480435458240)
- Online in Discord as of 2026-03-17
- `allowBots` config enabled for cross-bot communication in vault1984 guild
### inou health ### inou health
- DICOM VR validation bug still outstanding: `readStringTag` / `findTag(0x0018, 0x0015)` corrupting `body_part` and `summary` fields on Sophia's Siemens MAGNETOM Sola MRIs - DICOM VR validation bug still outstanding: `readStringTag` / `findTag(0x0018, 0x0015)` corrupting `body_part` and `summary` fields on Sophia's Siemens MAGNETOM Sola MRIs
- No progress on this in 2 days - No progress recent days — parked
- `portal/mcp_http.go` has uncommitted changes (was pending at 8 PM but got pushed)
### Dealspace (muskepo.com — live) ### Dealspace (muskepo.com — live)
- Fix pushed: `DealOrgPerms.VisibleLists` was silently dropped on unmarshal → savePermissions now preserves members - Fix pushed Mar 18: `DealOrgPerms.VisibleLists` was silently dropped on unmarshal → fixed
- Live at muskepo.com (Shannon VPS 82.24.174.112, root pw: gUB-C63-EN, paid till 2026-04-09) - Shannon VPS 82.24.174.112, paid till 2026-04-09
### Bird CLI / X (Twitter) ### Bird CLI / X (Twitter)
- Cookies were expired as of March 18 morning - Cookies expired Mar 18 morning, Johan fixed ~1:35 PM
- Johan fixed them manually (~1:35 PM) - If they expire again → ping Johan, don't work around it
- If they expire again → ping Johan, don't try to work around it
--- ---
## MiniMax M2.7 — Key Notes (for next session) ## Tonight's Key Discussion
Johan read the MiniMax blog post about M2.7's "self-evolution" capability: Johan asked about OC vs Claude.ai/Cowork Dispatch: is OC still worth running?
- Used itself (via agent harness) to run 100+ iteration rounds of analyze→plan→modify→evaluate - OC advantages that remain: custom channels (this Discord DM), home lab integration (HA, forge SSH, MC), proactive/async capability
- Achieved ~30% performance improvement over M2.5 - Cowork Dispatch / claude.ai covers: persistent memory, mobile, multi-agent
- Built "MM Claw" benchmark based on OpenClaw use cases → scored 62.7% (close to Sonnet 4.6) - OC's Discord/Telegram Claude Code binding is still in **unreleased** state on main (not shipped as of 2026.3.13)
- OpenRoom: interop protocol for multi-agent communication across vendors - Johan's conclusion implied: still worth running for the home lab integration layer
- Johan's take: fascinating but not verified externally yet. Legitimate new capability direction.
- **Now available via OpenRouter** — use for grunt work / coding subagents
--- ---
## Open Threads / Pending ## Open Threads / Pending
### Hugo Bot Token (IMMEDIATE when Johan wakes) ### TWO Bot Tokens Needed (IMMEDIATE when Johan is available)
- Need Discord bot token from Johan to complete Hugo agent setup 1. **Luca** — new employment lawyer agent (created tonight)
2. **Hugo** — DJ Rosie PR agent (pending since Mar 17)
### inou DICOM Bug (ONGOING) ### inou DICOM Bug (ONGOING)
- `findTag(0x0018, 0x0015)` VR mismatch on Siemens MRIs — body_part/summary corrupted - `findTag(0x0018, 0x0015)` VR mismatch on Siemens MRIs
- body_part/summary fields corrupted on Sophia's scans
- No ETA, parked - No ETA, parked
### Claude Usage
- Weekly usage at 54% as of 6 AM (weekly resets Friday 2026-03-20)
- Usage alert was triggered at 6 AM for 6% jump in 2 hours
--- ---
## Infrastructure Notes ## Infrastructure Notes
- **MC**: Healthy. Proton Bridge running. - **MC**: Healthy
- **OC**: Restarted at ~8:17 PM (OpenRouter config). Running clean post-restart. - **OC**: Running (2026.3.13) — no update needed
- **OpenRouter**: Newly configured provider — MiniMax M2.7 available - **Claude Code**: Updated 2.1.77 → 2.1.80 (tonight via npm)
- **All repos**: Pushed to Zurich ✅ - **OS**: 11 packages available (binutils family) — apt upgrade ran, kernel note: running 6.8.0-101 vs 6.8.0-106 (reboot needed to activate new kernel)
- **Disk**: 58% used, 191G free — fine - **All repos**: Pushed to Zurich ✅ (Mar 18 evening)
- **Failed units**: Only `xdg-desktop-portal*.service` — headless GUI portal, expected/harmless - **Claude usage**: Weekly reset Friday 2026-03-20 (tomorrow)
- **Mira**: Discord bot online, vault1984 guild
--- ---
## Today's Key Events Summary ## Today's Key Events Summary
- 6 AM: Claude usage alert (54% weekly, 6% spike in 2h) - Evening session: Claude.ai/OC value discussion with Johan
- ~1:35 PM: Bird CLI cookies expired → Johan fixed them - Built Luca agent (employment lawyer for Tanya at N-able) — workspace written, added to OC config
- ~7:45 PM: Johan pushed git backlog across all repos (dealspace bug fix + inou marketing assets) - Luca SOUL.md revised multiple times to add depth (Freshfields history, bilateral employer/employee perspective)
- ~8:08 PM: MiniMax M2.7 release discussed — self-evolution claims, OpenRoom protocol - Concluded around 8:21 PM EDT
- ~8:16 PM: OpenRouter added to OC config, M2.7 wired up
- ~8:17 PM: OC restarted to activate OpenRouter ## Previous Context (Mar 18)
- OpenRouter + MiniMax M2.7 added to OC
- Git backlog pushed (dealspace fix, inou marketing assets)
- Bird cookies expired + fixed
- Claude usage alert (54% weekly)

35
scripts/session-cleanup.sh Executable file
View File

@ -0,0 +1,35 @@
#!/bin/bash
# session-cleanup.sh — remove stale cron:run and openai subagent sessions
# Run at the start of each cron job to prevent accumulation
SESSIONS_DIR="$HOME/.openclaw/agents/main/sessions"
SESSIONS_JSON="$SESSIONS_DIR/sessions.json"
python3 - << 'EOF'
import json, os, sys
sessions_dir = os.path.expanduser("~/.openclaw/agents/main/sessions")
sessions_path = os.path.join(sessions_dir, "sessions.json")
with open(sessions_path) as f:
data = json.load(f)
keep = {}
removed = 0
for key, val in data.items():
sid = val.get("sessionId", "")
if ":run:" in key or key.startswith("agent:main:openai:"):
removed += 1
jsonl = os.path.join(sessions_dir, sid + ".jsonl")
if os.path.exists(jsonl):
os.remove(jsonl)
else:
keep[key] = val
with open(sessions_path, "w") as f:
json.dump(keep, f, indent=2)
if removed > 0:
print(f"[session-cleanup] removed {removed} stale sessions", flush=True)
EOF