# TODO ## Done - [x] Firecracker CLI runner with snapshots (~1.1s) - [x] Multi-agent system — overseer + agent VMs + IRC + Ollama - [x] 5 templates, 5+ models, hot-reload, non-root agents - [x] Tools: run_command, web_search, fetch_url, save_memory - [x] Discoverable skill system — SKILL.md + run.py, auto-loaded - [x] Persistent workspace + memory (MEMORY.md pattern) - [x] Overseer: !invoke, !destroy, !list, !model, !models, !templates, !persona, !status, !help - [x] Health checks, crash recovery, graceful shutdown, systemd - [x] Network policies, thread safety, trigger fix, race condition fix - [x] Install/uninstall scripts, deployed on 2 machines - [x] Refactor: firecracker-vm.ts shared helpers, skill extraction ## Next up (Phase 5 — by priority) ### Quick wins - [ ] Large output handling — save >2K results to file, preview + read_file - [ ] Iteration budget — configurable max rounds per template, prevent runaway loops ### Medium effort - [ ] Skill registry git repo — shared skills on Gitea, `fireclaw skills pull` - [ ] Session persistence — SQLite + FTS5 in workspace - [ ] Context compression — summarize old turns when context gets long - [ ] !logs — tail agent history from workspace ### Bigger items - [ ] Skill learning — agents create new skills from experience - [ ] Cron agents — scheduled agent spawns - [ ] Dangerous command approval — pattern detection + allowlist - [ ] Parallel tool execution — concurrent independent tool calls ## Polish - [ ] Agent-to-agent response quality — 7B models parrot, needs better prompting or larger models - [ ] Cost tracking per interaction - [ ] Execution recording / audit trail - [ ] Update regression tests for skill system + channel layout