Skip to content

fix: surface LM Studio tool capability modes#35

Merged
agustif merged 1 commit into
mainfrom
release/rc2-tool-capability-diagnostics
Jun 21, 2026
Merged

fix: surface LM Studio tool capability modes#35
agustif merged 1 commit into
mainfrom
release/rc2-tool-capability-diagnostics

Conversation

@agustif

@agustif agustif commented Jun 21, 2026

Copy link
Copy Markdown
Owner

Summary

  • advertise tool calls for every discovered LM Studio LLM because LM Studio documents native and default tool-use support
  • classify model keys as native, default, or unknown from the typed native v1 capability record and include that signal in structured discovery logs
  • document why the plugin does not disable default support or guess at malformed tool calls by scanning assistant text
  • extend unit, live OpenCode config, packed-package, and native npm resolver checks for the tool capability contract

Contract

trained_for_tool_use: false does not mean tools are unsupported. LM Studio uses its default tool format for these models, with model-dependent reliability. OpenCode exposes only a tool_call support boolean, not native-vs-default quality, so discovered LLMs use tool_call: true and diagnostics preserve the distinction.

The plugin does not claim runtime malformed-call detection: LM Studio can return malformed tool-call text as ordinary assistant content, and the installed OpenCode plugin API exposes no unambiguous failure signal for that case.

Primary LM Studio reference: https://lmstudio.ai/docs/advanced/tool-use

Verification

  • npm run release:check
  • npm run smoke:opencode
  • npm run smoke:opencode:acp
  • packed candidate chat, ACP, and native npm resolver on OpenCode 1.17.7 and 1.17.9
  • packed candidate Microsoft TUI Test: 5/5 views
  • unit suite: 27/27
  • coverage: 92.41% statements, 83.63% branches, 97.14% functions, 92.64% lines
  • candidate SHA-256: bdd2d02df3ed881de18eb48a929618d74fd4098001b1f8a410add2990a612e05

@agustif agustif merged commit 7fa9b24 into main Jun 21, 2026
7 checks passed
@agustif agustif deleted the release/rc2-tool-capability-diagnostics branch June 21, 2026 21:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant