|
|
|
|
|
by sanreds
18 days ago
|
|
The "agents as daemons" framing is the right one. The piece that bit me trying this: every scheduled run needs to be safely re-runnable, because the agent will occasionally retry a step it actually finished last cycle. Does CLAW.md have a convention for marking a step idempotent, or is that left to the prompt? |
|
Yeah, it is left to a claw's tasks to be idempotent. A rollback mechanism could be interesting but many of the tasks have irreversible side effects. For example, you can't undo sending an email that has already been delivered.
So far it seems to be the case that by default most tasks are "naturally" idempotent. Even when there are minor issues, agents tend to come up with good workarounds, which is a very different kind of solution from how we've had to do it in the past.
It would be possible to add runtime options that enable certain environments to do fancy things like block-level snapshots/rollbacks, API level undos, etc. The spec for CLAW.md is designed to be simple but very flexible by letting claw runtimes define sandboxing and other advanced features.