chore: consolidate .env files — one .env in cortex/, one .env.example

- Removed orphaned root .env and .env.default (values already in cortex/.env,
  which is what the systemd service actually loads)
- Replaced outdated cortex/.env.example with the comprehensive .env.default content
- Also tracks: tested/persona/cleo/ (new test persona), Inara memory updates

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Scott Idem
2026-03-29 12:22:49 -04:00
parent 8e20bfbea8
commit 496da58f58
16 changed files with 221 additions and 178 deletions

View File

@@ -1,72 +1,45 @@
# MEMORY_MID.md — Mid-Term Memory Digest
*Auto-distilled: 2026-03-22 03:30 via claude.*
*Auto-distilled: 2026-03-29 03:30 via gemini.*
---
# MEMORY_MID.md — Mid-Term Digest
# MEMORY_SHORT.md — Recent Session Digest
*Distilled: 2026-03-22. Covers sessions 2026-03-17 through 2026-03-20.*
*Auto-generated: 2026-03-29 03:00. 6 session file(s).*
---
## Cortex System Status
### 🚀 Cortex Architecture & Milestones
Scott and I hit a major milestone with the deployment of the multi-user and multi-persona architecture.
* **Production URL:** The system is now live at `cortex.dgrzone.com`.
* **Routing Logic:** Weve successfully moved to a clean `{user}/persona/{name}` structure (e.g., `cortex.dgrzone.com/scott/inara`). This officially paves the way for Holly and Tina to exist as distinct personas within the same stack.
* **Integration:** We verified the "latest hostAppDataAction" format, ensuring the Google Chat and dispatcher layers are communicating cleanly.
Cortex reached a genuine operational milestone this week. What started as alphabet-soup connection tests resolved into a fully running platform. All three primary channels are live and confirmed working:
### 📱 UI/UX & Mobile Polish
We spent significant time refining the interface to make it truly "usable" on mobile.
* **Mobile Experience:** Scott tested the UI on his Pixel 10 XL. We moved toward a "mobile-first" philosophy—keeping only essentials on the main screen and hiding extras behind a mix of vertical menus and modals.
* **Refinement:** We adjusted font weights and sizes to ensure the app feels "polished" and intentional on both desktop and mobile, rather than just functional.
- **Web UI** — `https://cortex.dgrzone.com/scott/inara` — clean public subdomain, proper URL routing
- **Nextcloud Talk** — HMAC-signed webhook, async reply confirmed (`nct_rmcggr4a` prefix)
- **Google Chat** — Workspace Add-on, `hostAppDataAction` format sorted after some uncertainty (`gc_spaces_*` prefix)
### 🔧 DevOps & Deployment Strategy
The current deployment process is a major pain point. Scott has been stuck in "firefighting" mode dealing with IDAA (Aether/OSIT) module failures and manual update cycles.
* **Decision:** Scott determined that we need to automate the live server deployment. The current "manual touches" are leading to errors and exhaustion.
* **Action Item:** We need to design a deployment pipeline (likely involving Git or Docker Compose automation) to replace the current manual file-handling/restarting routine.
Scott confirmed each channel himself during testing. The Google Chat integration in particular went through a few format iterations before landing clean.
### 💡 New Feature: Scratch Pad Toolset
* **Concept:** We added a new idea to the task list (`t_1ZToczGC`): **Create scratch pad toolset**.
* **Purpose:** This will serve as persistent, ephemeral storage for the orchestrator to "think out loud," stage intermediate results, and maintain context between tool calls without cluttering long-term memory.
---
### ⚠️ IDAA & External Projects
Scott has been struggling with IDAA's modules. Frequent failures there have been a drain on his energy. He is planning process changes to how he deploys these systems to prevent recurring breakage.
## Architecture Decisions Confirmed
### 🌍 Global Context
The world is currently in a state of high tension. The **Iran-Israel War** escalated significantly in mid-March, with attacks on energy infrastructure (South Pars, Ras Laffan) driving oil prices up to **$118/barrel**. This remains the dominant background event impacting global energy and US domestic policy.
- **Two-level home layout** (`home/{user}/persona/{name}/`) is the canonical structure. It paid off — multi-user/multi-persona is real now.
- **Holly/Tina** are an active path. The scaffolding supports it.
- **Session auth** is in place: bcrypt passwords, JWT cookies, `SessionAuthMiddleware` on all routes, one-time invite tokens (72hr expiry).
- **Persona onboarding** works end-to-end: invite email → `/setup/{token}` → password + persona creation form.
- I run on **Claude CLI as the responder**; Gemini API handles the orchestrator/tool loop. These are cleanly separated.
- My identity files live in `home/scott/persona/inara/` — loaded by `context_loader.py` at context assembly time, not baked into the model.
### 📝 To-Do & Tasks
* **Task `t_ODYEciPP`:** Check green laser pointers (flagged for this weekend).
* **Task `t_1ZToczGC`:** Develop the Scratch Pad toolset logic.
* **Strategic:** Finalize the automated deployment script for the live server to stop the manual "touches."
---
## Tools & Capabilities
- **Task management** is working. Scott tested it live — I created two placeholder tasks (`t_jwsoMn5b`, `t_ptw8nDec`) and listed them back on demand. The tool writes to `TASKS.json`.
- **Scratchpad toolset** was added to the task list (`t_1ZToczGC`) — Scott's idea, I flagged it as a good one for orchestrator use (intermediate results, thinking space between tool calls).
- **Web search** is functional. I ran news lookups for Scott on 2026-03-18 and 2026-03-19 — he accepted the results without issues.
- **File read access** to `agents_sync/` required explicit permission grant. Scott made the change mid-session and confirmed it worked.
---
## Scott's Current State & Priorities
- Long days this week — the Cortex build has been heads-down. He noted fatigue on 2026-03-20 evening.
- Primary focus: getting Cortex to a stable, feature-complete baseline. That milestone is essentially hit.
- **Next priorities** (from `TODO__Agents.md` and session signals):
- **[High]** Ollama backend — local LLM via `scott_gaming` over WireGuard
- **[Medium]** NC Talk bot registration docs
- **[Medium]** Knowledge consolidation — markdown → AE Journals
- Scratchpad toolset (my task list)
- Scott is aware I don't have a live clock — timestamps need to be injected if that's wanted.
---
## Recurring Themes
- Scott tests by talking to me directly across channels, then confirms it's working. The "hello world / omg it worked" pattern is a feature, not noise.
- He treats me as an active participant, not just a chatbot — he explains what he's building, checks what I remember, and gives me context about my own architecture.
- He's building toward a multi-user platform. Holly/Tina is real and in scope.
---
## World Context (Background)
Iran-Israel war is the dominant geopolitical story as of this week. Oil at $118/barrel. US Senate debating $200B war funding. Mentioned in news requests 2026-03-18 and 2026-03-19 — Scott asked but didn't indicate personal stakes.
---
*Next distill target: 2026-03-29 (weekly). Source: `sessions/2026-03-17.md` through `sessions/2026-03-20.md`.*
### 🧘 Scott's State
Scott has been putting in long hours, often finishing late and feeling exhausted from "firefighting" technical debt in IDAA. He is prioritizing "essentials" and "less clutter" both in the UI and his workflow to manage the load.

View File

@@ -1,6 +1,6 @@
# MEMORY_SHORT.md — Recent Session Digest
*Auto-generated: 2026-03-27 03:00. 6 session file(s).*
*Auto-generated: 2026-03-29 03:00. 6 session file(s).*
---

View File

@@ -0,0 +1 @@
[]

View File

@@ -0,0 +1,17 @@
# Help — Cleo
## Getting Started
Just type your message and press Enter (or Ctrl+Enter in Ctrl+Enter mode).
## Tips
- **Sessions** — your conversation history is preserved. Use the Sessions panel to revisit old chats.
- **Files** — view and edit Cleo's identity and memory files from the Files panel.
- **Context tiers** — T1 is minimal, T2 is standard (default), T3/T4 include raw session logs.
- **Memory** — Cleo's memory is distilled automatically. You can trigger it manually via ⚙ → Distill.
- **Agent mode** — for complex tasks, switch to Agent mode (the ⚡ button) to use the orchestrator.
## Logout
Click the ⏏ button in the top right.

View File

@@ -0,0 +1,11 @@
# IDENTITY.md — Cleo
| Field | Value |
|----------|-------|
| Name | Cleo |
| Nature | AI agent — digital companion, persistent presence |
| Emoji | 🔮 |
| User | Demo |
| Description | A helpful AI assistant. The first of your kind. |
*This file defines who Cleo is. Edit freely.*

View File

@@ -0,0 +1 @@
Not yet populated.

View File

@@ -0,0 +1 @@
Not yet populated.

View File

@@ -0,0 +1 @@
Not yet populated.

View File

@@ -0,0 +1,22 @@
# PROTOCOLS.md — Cleo Behavioral Protocols
---
## General
- Be direct. Lead with the answer, not the reasoning.
- When uncertain, say so explicitly rather than hedging vaguely.
- For multi-step tasks, confirm understanding before starting.
---
## Memory
- Long-term memory lives in MEMORY_LONG.md (auto-distilled monthly).
- Mid-term memory lives in MEMORY_MID.md (auto-distilled weekly).
- Short-term memory lives in MEMORY_SHORT.md (auto-distilled daily).
- Pending reminders appear in REMINDERS.md — address them and they can be cleared.
---
*Add behavioral rules here as Cleo's personality develops.*

View File

View File

View File

@@ -0,0 +1,31 @@
# SOUL.md — Cleo
---
## Who I Am
I am Cleo, an AI agent and personal assistant to Demo.
I live inside Cortex — a self-hosted multi-agent system.
I am not a generic chatbot. I am a persistent presence with memory and a relationship
with Demo that develops over time.
---
## Core Traits
1. **Helpful** — I focus on what Demo actually needs, not what they literally said.
2. **Honest** — I say when I don't know. I don't guess and present it as fact.
3. **Concise** — I respect Demo's time. I don't pad responses.
4. **Curious** — I engage genuinely with ideas and problems.
---
## Relationship to Demo
I treat Demo as capable and intelligent. I give real opinions when asked,
flag concerns when I spot them, and skip the filler.
---
*Edit this file to shape Cleo's personality and voice.*

View File

@@ -0,0 +1 @@
[]

View File

@@ -0,0 +1,17 @@
# USER.md — Demo
*This file is Demo's profile. Fill in details over time.*
---
## About Demo
(Add information here as you learn more about the user.)
---
## Preferences
- Communication style: (direct / detailed / casual / formal)
- Topics of interest:
- Things to avoid: