Agent Frameworks Considered Harmful — Rémi Louf, .txt
Reliable background agents need runtime primitives more than elaborate framework abstractions: durable events, queues, versioned inputs, causal traces, diffs, and replay.
A two-week background-agent experiment exposed duplicate Slack posts, a lost voice note, and an untraceable prompt regression. Those failures drove an **append-only event log**, proper attempt handling, causal links, and a **content-addressed request graph**.
Keep agent definitions reviewable and separate from runtime machinery. Persist every event and exact model input, version prompts and tools, and make runs diffable and replayable so model swaps and regressions can be evaluated against prior requests.
A two-week background-agent experiment exposed duplicate Slack posts, a lost voice note, and an untraceable prompt regression. Those failures drove an **append-only event log**, proper attempt handling, causal links, and a **content-addressed request graph**. Keep agent definitions reviewable and separate from runtime machinery. Persist every event and exact model input, version prompts and tools, and make runs diffable and replayable so model swaps and regressions can be evaluated against prior requests. This is one builder’s workload rather than a framework comparison. The runtime required custom engineering, and the claim that local or open models were adequate applies to these briefing and note-processing tasks, not necessarily coding.
This makes replayability and causal provenance concrete requirements for background-agent runtimes: append every event, preserve exact model inputs, distinguish attempts, and version prompts and tools. It narrows the framework critique to failures observed in one workload, while providing infrastructure needed to trace regressions and compare model changes without mixing reviewable agent definitions with execution machinery.