This situation feels like a +1 for Agent Client Protocol (ACP) [1].
In ACP, you auth directly to the underlying agent (eg Claude Code SDK) rather than a third-party tool (eg OpenCode) that then calls an inference endpoint on your behalf. If you're logged into Claude Code, you're already logged into Claude Code through any ACP client.
It works like that for the agent SDK, you could connect open code to that