Update ROADMAP — Phase 4 done, reflect current state

This commit is contained in:
2026-04-07 16:34:16 +00:00
parent 2e5912e73c
commit d299e394f0

View File

@@ -19,47 +19,52 @@
- [x] ngircd configured (`nyx.fireclaw.local`, FireclawNet)
- [x] Channel layout: #control (overseer), #agents (common room), DMs, /invite
- [x] Ollama with 5 models (qwen2.5-coder, qwen2.5, llama3.1, gemma3, phi4-mini)
- [x] Ollama with 5+ models, hot-swappable per agent
- [x] Agent rootfs — Alpine + Python IRC bot + podman + tools
- [x] Agent manager — start/stop/list/reload long-running VMs
- [x] Overseer — host-side IRC bot, !invoke/!destroy/!list/!model/!templates
- [x] Overseer — !invoke, !destroy, !list, !model, !models, !templates, !status, !help
- [x] 5 agent templates — worker, coder, researcher, quick, creative
- [x] Agent tool access — shell commands + podman containers
- [x] Persistent workspace — 64 MiB ext4 as second virtio drive at /workspace
- [x] Agent memory system — MEMORY.md + save_memory tool, survives restarts
- [x] Agent hot-reload — SSH config update + SIGHUP, no VM restart
- [x] Agent tools — run_command, web_search (searx), save_memory
- [x] Persistent workspace — 64 MiB ext4 as second virtio drive
- [x] Agent memory system — MEMORY.md pattern, survives restarts
- [x] Agent hot-reload — model/persona swap via SSH + SIGHUP
- [x] Non-root agents — unprivileged `agent` user
- [x] Agent-to-agent via IRC mentions, 10s cooldown
- [x] DM support — private messages without mention
- [x] /invite support — agents auto-join invited channels
- [x] Overseer resilience — crash recovery, agent adoption, KillMode=process
- [x] Graceful shutdown — SSH SIGTERM → IRC QUIT → kill VM
- [x] Systemd service — fireclaw-overseer.service
- [x] Regression test suite — 20 tests
- [x] Agent-to-agent via IRC, DMs, /invite
- [x] Overseer resilience — crash recovery, health checks, KillMode=process
- [x] Graceful shutdown — IRC QUIT before VM kill
- [x] Systemd service, regression tests
## Phase 4: Hardening & Performance
## Phase 4: Hardening & Deployment (done)
- [ ] Network policies per agent — iptables rules per tap device
- [x] Network policies per agent — full/local/none via iptables
- [x] Thread safety — lock around IRC socket writes
- [x] Agent health checks — 30s interval, announces deaths in #control
- [x] Trigger matching fix — start-of-message only
- [x] agents.json race condition fix
- [x] Install script — one-command deployment, battle-tested on Debian + Ubuntu
- [x] Uninstall script
- [x] Deployed on GPU server (Xeon + Quadro P5000)
- [x] Refactor — shared firecracker-vm.ts helpers, -43 lines
### Remaining
- [ ] Warm pool — pre-booted VMs from snapshots for instant spawns
- [ ] Concurrent snapshot runs via network namespaces
- [ ] Thin provisioning — device-mapper snapshots instead of full rootfs copies
- [ ] Thread safety — lock around IRC socket writes in agent.py
- [ ] Agent health checks — overseer monitors and restarts dead agents
## Phase 5: Advanced Features
- [ ] Persistent agent memory v2 — richer structure, auto-save from conversations
- [ ] Scheduled/cron tasks — agents that run on a timer
- [ ] Advanced tool use — MCP tools, multi-step execution, file I/O
- [ ] Cost tracking — log duration, model, tokens per interaction
- [ ] Execution recording — full audit trail of agent actions
- [ ] !logs command — tail agent interaction history
- [ ] Persistent agent memory v2 — richer structure, auto-save
- [ ] Advanced tool use — MCP servers in Firecracker VMs
- [ ] Cost tracking — duration, model, tokens per interaction
- [ ] Execution recording — audit trail
## Phase 6: Ideas & Experiments
- [ ] vsock — replace SSH with virtio-vsock for lower overhead
- [ ] Web dashboard — status page for running agents
- [ ] Podman-in-Firecracker — double isolation for untrusted container images
- [ ] Honeypot mode — test agent safety with fake credentials/services
- [ ] Self-healing rootfs — agents evolve their own images
- [ ] Claude API backend — for tasks requiring deep reasoning
- [ ] IRC federation — link nyx.fireclaw.local ↔ odin for external access
See IDEAS.md for the full list. Highlights:
- MCP servers as a single Firecracker VM with podman containers
- Cron agents, webhook triggers, alert forwarding
- Agent-written agents, agent debates, dream mode
- Web dashboard, install script dry-run
- Persistent agent memory with CLAUDE.md pattern (v2)