This is a great reality check. I’ve been using OpenCode for a while and never even tried Claude Code, so I didn't realize that probabilistic tool calling was such a huge bottleneck over there. I’m so used to the instant command lookups and lifecycle hooks in OpenCode that I just assumed every agent worked that way. It's wild that Claude Code burns 2 seconds of thinking time just to figure out which tool to use.