svs / svs/compos

OpenCode model picker shows stale seed models before ACP discovery

Open
#3 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Scheme
Stars
28
Forks
3
Avg merge
11h 30m
Merged PRs (30d)
2

Description

Summary

Selecting the opencode connector in M-x agent-switch shows only five hard-coded seed models, even though the installed OpenCode catalog contains many newer models.

Reproduction

  1. Open or create a chat.
  2. Run M-x agent-switch.
  3. Choose opencode.
  4. Inspect the model picker.

The picker offers only:

  • opencode/big-pickle
  • opencode/claude-sonnet-5
  • opencode/claude-opus-5
  • opencode/claude-haiku-4-5
  • opencode/gemini-3.1-pro

Expected

The picker should use OpenCode’s current model catalog, or initially offer only the connector default and populate the picker after ACP reports its live model options. It should not present an old seed list as if it were current.

Cause

agent-connectors.scm declares those five models statically. chat-model-options uses that seed until a live OpenCode session reports model configOptions. But agent-switch asks for a model before the new ACP session starts, creating a chicken-and-egg path.

The ACP backend already ingests OpenCode configOptions, emits model-state, and persists the reported connector models. The missing piece is obtaining or deferring the live list before the initial model choice.

Environment and evidence

  • OpenCode: 1.18.31
  • opencode models reports 586 models on this machine.
  • Current workaround: select OpenCode, submit an empty model to start with its default, then use C-c m / M-x chat-set-model after the ACP session reports its live list.

Contributor guide

No contributing guide indexed for this repository

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 agent-connectors.scm and trace how chat-model-options supplies the OpenCode seed models to agent-switch before an ACP session begins. Read the ACP backend handling of configOptions, model-state, and persisted connector models; done means the picker no longer presents stale models and either offers the default first or reflects the live catalog after discovery.

Written by the indexing model from the issue text.

Assessment

Tech stack
emacs
Domain
developer-experience, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.