One AI agent used 1.06M tokens and never wrote the patch
A max-turn cap keeps an agent from running forever, but cannot tell work from waste. We catch repeated failures and save partial work before stopping.
Blog
Engineering writeups from running plori: agents that each get a persistent computer, a real disk over FUSE, and a bill that stops when they sleep. Measured numbers and production incidents, not launch announcements. For what the product does, see the docs.
A max-turn cap keeps an agent from running forever, but cannot tell work from waste. We catch repeated failures and save partial work before stopping.
Our router paid 33x more for every model call. A control run on the cheapest candidate resolved the same 34 of 50 tasks at 44% of the model spend.
A stateful AI agent warm pool should prewarm runtimes, then bind the existing disk, tenant identity, and final credentials atomically at claim time.
An RPC acknowledgement can be OK while a workflow step fails. The durable terminal record, not the transport ACK, must define the execution result.
JuiceFS CE enforces --subdir, quotas, and ACLs in the client. Our clients are untrusted AI agents, so isolation lives in a server in front.
How 443 dead FUSE mounts wedged kubelet teardown and starved a node, plus the 60-second janitor that fixed it. With the nsenter and /proc/mounts traps.
A production JuiceFS migration: metadata moved from Postgres to Redis, create+rename 22ms to 3.2ms (~7x). Durability config, RAM ceiling, dump/load steps.
Every post is also available as plain Markdown: request it with an Accept: text/markdown header, or append .md to the URL. Agents can start from llms.txt.