anomalyco / anomalyco/opencode

[FEATURE]: Show resolved model for delegated Task subagents

Open
#41,136 1 comment 1 reaction 1 assignee View on GitHub

@kitlangton is already working on this.

Since Aug 7, 2026.

Dominant language
TypeScript
Stars
209k
Forks
27.5k
PR merge metrics
PR metrics pending

Description

Feature hasn't been suggested before.
  • I have verified this feature I'm about to request hasn't been suggested before.
Describe the enhancement you want to request

First of all, thank you for OpenCode.

While building an AI orchestration framework on top of OpenCode, I spent some time investigating what I initially believed was a bug in Task model selection.

After tracing the framework implementation, I realized the behavior was actually correct. The confusion came from my own framework routing rather than from OpenCode itself.

Specifically:

  • Agent-configured models are propagated correctly.
  • Inline SubtaskPart.model is supported.
  • The HTTP Prompt API supports explicit model selection.
  • The Task tool itself does not support arbitrary runtime model overrides (as discussed in #17595).

The actual problem was that my Director delegated work to a generic worker agent, which was configured to use a Small model (MiMo), while my prompts kept referring to a Medium model (DeepSeek). OpenCode correctly executed the model configured for that delegated agent.

Once I changed my framework to delegate explicitly to worker-medium, everything behaved exactly as expected.

The usability issue

Although the framework is behaving correctly, it took a fairly deep investigation—including tracing the source code—to understand why a delegated task was running on a different model than I expected.

From a user's perspective, there are several different concepts involved:

  • The model mentioned in the prompt.
  • The model configured on the delegated agent.
  • The effective model that will actually execute the task.

At the moment, the last one is not obvious when reading the conversation.

Proposal

When a Task delegation is created, display the resolved execution model.

For example:

Delegating to: worker-medium
Resolved model: opencode-go/deepseek-v4-flash

or

Delegating to: worker
Configured model: opencode-go/mimo-v2.5

If the delegated agent inherits its model instead of defining one explicitly, that could also be indicated.

The goal is simply to make the effective execution path visible.

Why this is different from #17595

This proposal is not requesting runtime model overrides.

Issue #17595 proposed allowing the Task tool to receive a runtime model parameter.

This proposal keeps the current behavior exactly as it is.

The only suggestion is to expose the resolved execution model that OpenCode has already selected internally.

Benefits

  • Makes debugging multi-agent orchestration much easier.
  • Reduces confusion between requested, configured, inherited, and effective models.
  • Helps explain why a delegated task executed on a particular model.
  • Improves transparency without changing any existing behavior.
  • Fully backward compatible.

Closing

After completing the investigation, I concluded that OpenCode was behaving correctly and that my original assumption was incorrect.

However, understanding that required tracing the framework internals.

Making the resolved execution model visible during Task delegation would make this much easier for developers building orchestration frameworks while preserving the current architecture and behavior.

Thank you for considering the idea.

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.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.