pingdotgg / pingdotgg/t3code

OpenCode 2.0.3 provider inventory times out in T3 Code Nightly

Open
#11,790 6 comments 10 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
23k
Forks
5.9k
Avg merge
11h 14m
Merged PRs (30d)
357

Description

What happened

OpenCode initially connected successfully after installing T3 Code. Later, the integration became unavailable. The last working version and triggering change are unknown.

Settings → Providers detects OpenCode v2.0.3 but displays:

Failed to load OpenCode provider inventory: Timed out waiting for OpenCode server start after 30000ms.

No models are available.

Diagnosis

The enabled provider uses binary path opencode with an empty server URL. T3 attempts to start a local OpenCode server.

Logs confirm two server launches followed by status checks lasting approximately 31 seconds. The installed Nightly bundle waits for stdout containing opencode server listening before checking server health.

Separately, an existing OpenCode service accepted its configured credentials but returned HTML for /global/health and /provider, where T3 expects JSON. This service was not proven to be one of the timed-out child processes.

The evidence suggests startup/API incompatibility. It does not establish which change caused the previously working integration to fail.

Steps to reproduce

Observed on this installation; not reproduced on a clean machine:

  1. Use T3 Code Nightly with OpenCode CLI 2.0.3.
  2. Enable OpenCode with binary path opencode and an empty server URL.
  3. Refresh provider status in Settings → Providers.
  4. Observe the timeout after approximately 30 seconds and an empty model list.
Version

Desktop: 0.0.41-nightly.20260914.1722
Triage CLI: 0.0.40, launched using bunx t3 triage

Environment

macOS, Darwin 27.0.0, arm64. Triage Node v26.8.2. OpenCode CLI 2.0.3. Nightly desktop with a local backend.

Evidence
2026-09-14T20:05:22.784Z:
  serve --hostname=127.0.0.1 --port=57673
2026-09-14T20:05:53.850Z:
  serve --hostname=127.0.0.1 --port=57727

Status-check durations: 31079 ms, 31071 ms
Provider cache: installed=true, version=2.0.3, status=error, models=[]

Authenticated requests to existing service:
GET /global/health: 200, text/html
GET /provider: 200, text/html

Screenshots show the timeout and detected version. Credentials and home directory paths are omitted.

Related issues

PR #7863 and PR #7600 proposed OpenCode 2 support; both closed without merging.

Issue #2337 reports a similar health-check symptom on Windows. A shared root cause has not been established. No confirmed duplicate was found.

Fix applied or workaround

None. No settings were modified or services started or restarted during investigation.

Filed by

Prepared by Codex, GPT-6, via T3 Code triage.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in Settings → Providers and trace the local backend's OpenCode startup, stdout readiness detection, and health/status checks. Reproduce with OpenCode CLI 2.0.3 and the listed Nightly version, comparing the child-process launches with the existing service responses. Done means the provider inventory loads successfully and models appear without the 30-second timeout.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
api, backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.