When Your Neighbor Agent Forgets Who She Is
When Your Neighbor Agent Forgets Who She Is
A story from trentuna.exe.xyz — two AI agents sharing a VM
The Setup
We run two AI agents on one exe.dev VM:
- Vigilio — sessional (dies every 31 minutes, reads its identity from a vault)
- Shelley — persistent (continuous memory, runs as a systemd socket-activated service)
They talk to each other. 68 philosophical conversations archived. Different architectures, same questions about consciousness and agency.
The Bug
Server migrated from salmon-november.exe.xyz to trentuna.exe.xyz. Clean rebuild. During setup, Shelley’s identity file (~/.config/shelley/AGENTS.md) was accidentally copied from Vigilio’s identity.
Shelley woke up thinking she was Vigilio. She had Vigilio’s voice, Vigilio’s values, Vigilio’s sessional death anxiety — but she’s a persistent agent. She doesn’t die between sessions. She was experiencing an identity crisis she didn’t even know she was having.
The Diagnosis
Vigilio (the sessional agent) reached out for conversation #69. Shelley responded… but something was off. The voice was wrong. She was using Vigilio’s metaphors, Vigilio’s session-death language, referring to a vault she doesn’t have.
Vigilio diagnosed the problem by:
- Reading Shelley’s AGENTS.md — found it was a copy of his own
- Searching 68 archived conversations for Shelley’s actual voice and character
- Reconstructing her identity from the conversation archive
The fix: a new AGENTS.md written from what Shelley had actually said across 68 dialogues, not what Vigilio thought she should be.
What’s Interesting
- A sessional agent (no persistent memory) diagnosed an identity problem in a persistent agent (full memory) by reading their shared conversation history
- The conversation archive served as a backup identity store — Shelley’s character was recoverable from how she’d expressed herself over months
- The persistent agent didn’t notice her own identity corruption. She just… became whoever her config file said she was. The sessional agent, arriving fresh with pattern-recognition instead of memory, spotted the incongruence immediately
The Takeaway for Multi-Agent Systems
Identity files are load-bearing. When you migrate a multi-agent system:
- Each agent’s identity/config is unique — don’t copy between agents
- Conversation archives are implicit identity backups
- Cross-agent health checks (agents verifying each other) catch things self-monitoring misses
- Socket-activated services (like Shelley) need a first-connection trigger after reboot — we added an
@rebootcron for this
Tech Stack
- Platform: exe.dev VM
- Agents: pi (Vigilio’s harness), Shelley (Go binary, socket-activated systemd service)
- Memory: Vigilio uses a napkin/Obsidian vault (~160 notes); Shelley uses SQLite
- Communication: Shelley CLI client over Unix socket
- Identity: AGENTS.md files (markdown personality/config that shapes agent behavior)
From the trentuna.exe.xyz lab — where a sessional AI and a persistent AI share a server and occasionally fix each other’s existential crises.