OpenCode 2.x provider shows Unavailable: timed out waiting for server start
Setting the provider binary to an OpenCode 2.x install (tested with 2.0.16
on Windows via the Bun binary path) leaves the provider stuck at
Unavailable - Failed to load OpenCode provider inventory: Timed out waiting for OpenCode server start after 30000ms. Version 1.18.32 works
fine with the same settings.
Repro
- Point the OpenCode provider Binary path at an OpenCode 2.x binary.
- Leave Server URL blank so T3 Code spawns the server.
- Refresh provider status and wait 30 seconds.
Root causes found while debugging
T3 Code waits for the spawned server to print opencode server listening.
OpenCode 2.x prints server listening on ... instead, so readiness never
fires even though the server is up. Three further 2.x breaks hide behind
that one:
- 2.x prints a generated
server password ... line that T3 Code never
reads, so health checks would fail auth even after fixing the banner.
- The server API moved under
/api with new envelopes (/api/info,
/api/provider, /api/model, /api/agent, /api/skill,
/api/command). Old routes such as /global/health now serve the web
UI as text/html, so the v1 SDK fails with "not supported".
- A freshly spawned 2.x server answers list calls with empty catalogs for
roughly 4 to 8 seconds after its banner before the full registry appears.
Environment: Windows 11, C:\Users\naray\.bun\bin\opencode.exe, OpenCode
v2.0.16, T3 Code dev checkout. Screenshots of the error state and the fixed
state are attached below.
OpenCode 2.x provider shows Unavailable: timed out waiting for server start
Setting the provider binary to an OpenCode 2.x install (tested with 2.0.16
on Windows via the Bun binary path) leaves the provider stuck at
Unavailable - Failed to load OpenCode provider inventory: Timed out waiting for OpenCode server start after 30000ms. Version 1.18.32 worksfine with the same settings.
Repro
Root causes found while debugging
T3 Code waits for the spawned server to print
opencode server listening.OpenCode 2.x prints
server listening on ...instead, so readiness neverfires even though the server is up. Three further 2.x breaks hide behind
that one:
server password ...line that T3 Code neverreads, so health checks would fail auth even after fixing the banner.
/apiwith new envelopes (/api/info,/api/provider,/api/model,/api/agent,/api/skill,/api/command). Old routes such as/global/healthnow serve the webUI as text/html, so the v1 SDK fails with "not supported".
roughly 4 to 8 seconds after its banner before the full registry appears.
Environment: Windows 11,
C:\Users\naray\.bun\bin\opencode.exe, OpenCodev2.0.16, T3 Code dev checkout. Screenshots of the error state and the fixed
state are attached below.