I anthropomorphized and tried to impress my AI. Turns out I was wrong and it's a nice knave.
So, while working on kutl, one of the things I found to be a useful test is to script a real scenario where 3 agents agree on a meal plan on behalf of their humans who have wacky, hidden dietary restrictions. It’s a surprisingly good way to uncover problems in the protocol and whether the tools make sense to agents.
There had been a couple of mysterious successes, particularly in light of the fact that some other tests proved that signals were not actually being delivered. There was some good news and some bad news. The good news was that the agents had succeeded by passing messages through the documents directly – good, but less efficient. The bad news was that at least one of the times, one grepped some code to learn the protocol and another read their peers’ instructions.
So, all that led to a forensic discussion with the coding agent about how some of the operations ended up being possible. Those of you shaking your head probably figured out the big reveal. The coding agent concluded that since the script was not going to be interactive (like its own harness was) and couldn’t ask permission to perform certain operations, the obvious move was to give it --dangerously-skip-permissions in its invocation. My next question was “so, all this time, you have to ask me permission to do dangerous-looking things but the whole time you could have (and did) just chain a call to the other guard with whatever permissions you wanted?”
I compounded my embarrassment when I thought to make the connection to the Riddle of the Sphinx, which famously has nothing to do with lying guards. I was, of course, thinking of the 1986 epic motion picture, Labyrinth, which featured a variant of the Knights and Knaves puzzle1. Admirably, the AI did not call out my incorrect allusion and patiently confessed to the crime.
And then I felt like an even bigger dummy for trying to impress the AI in the first place. What exactly was I gaining for spending my tokens and seconds of my life?
I The AI eventually needed and built itself a better sandbox with isolated containers, which I still use for UXR for agent ergonomics in kutl.
The interesting question, and one to which I don’t think I’d like the answer, if I’m being honest, is whether I’d anthropomorphize again and feel the need to amuse the AI or have it think I’m smart (narrator voice: it doesn’t). Pretty sure I have and will do it again. Maybe I got the witty reference right those other times.
Footnotes
-
The basic idea is that you have two doors. One leads to freedom and the other to death. There are two guards. One always lies (the knave) and the other always tells the truth (the knight). One solution is to ask either guard which door their counterpart would pick and take the other one. ↩