I believe agents are the wrong abstraction. I came up with a superset called an Abject. See https://abject.world
Seems safebox went after a subset.