Files
fireclaw/TODO.md
2026-04-07 16:32:32 +00:00

2.0 KiB

TODO

Done

  • Firecracker CLI runner with snapshots (~1.1s)

  • Alpine rootfs with ca-certificates, podman, python3

  • Global fireclaw command

  • Multi-agent system — overseer + agent VMs + IRC + Ollama

  • 5 agent templates (worker, coder, researcher, quick, creative)

  • 5 Ollama models (qwen2.5-coder, qwen2.5, llama3.1, gemma3, phi4-mini)

  • Agent tool access — shell commands + podman containers

  • Persistent workspace + memory system (MEMORY.md pattern)

  • Agent hot-reload — model/persona swap via SSH + SIGHUP

  • Non-root agents — unprivileged agent user

  • Agent-to-agent via IRC mentions (10s cooldown)

  • DM support — private messages, no mention needed

  • /invite support — agents auto-join invited channels

  • Channel layout — #control (commands), #agents (common), DMs

  • Overseer resilience — crash recovery, agent adoption

  • Graceful shutdown — IRC QUIT before VM kill

  • Systemd service (KillMode=process)

  • Regression test suite (20 tests)

  • Refactor duplicated code — waitForSocket, boot sequence, tap setup, rootfs mount/inject are copy-pasted across vm.ts, snapshot.ts, agent-manager.ts. Extract shared helpers.

Next up

  • Network policies per agent — restrict internet access
  • Warm pool — pre-booted VMs for instant agent spawns
  • Persistent agent memory improvements — richer memory structure, auto-save from conversations
  • Thin provisioning — device-mapper snapshots instead of full rootfs copies

Polish

  • Agent-to-agent response quality — small models (7B) parrot messages instead of answering. Needs better prompting ("don't repeat the question, answer it") or larger models (14B+). Claude API would help here.
  • Cost tracking per agent interaction
  • Execution recording / audit trail
  • Agent health checks — overseer pings agents, restarts dead ones
  • Thread safety in agent.py — lock around IRC socket writes
  • Update regression tests for new channel layout