On the second, left a few nits on naming
I still feel that the idea of detaching it from agent context is worth considering, because we might cry later when we figure out how to move between deployments... but maybe I'm wrong.
On the other hand, I do think detaching, at its turn, brings questions on breaking the intended agent components immutability and/or system prompt event immutability... so it's not super-straightforward, idk, would need some thinking.
So IMHO we're good if you want it this way, addition-as-suffix nod