Files
orca/src/shared/agent-model-probe-spec.ts
Jinjing 3a212584ec feat(native-chat): Extra high grok effort per model (#14577)
* feat(native-chat): offer Extra high grok effort per model

Slice grok's reasoning-effort menu by each model's advertised ceiling so
4.6 can reach xhigh while 4.5 stays at high, and keep the untouched
default at high so launch argv does not silently escalate.

* fix(grok): parse dashed rows in grok models listing

Grok stars only the default model and dashes the rest. A star-only
bullet dropped 4.5 from the picker once discovered models were
authoritative.
2026-08-14 15:52:09 -07:00

31 lines
1.2 KiB
TypeScript

import { getCommitMessageAgentSpec, type CommitMessageAgentSpec } from './commit-message-agent-spec'
import { GROK_MODEL_LIST_ARGS, parseGrokModelList } from './grok-model-list-probe'
import type { TuiAgent } from './tui-agent'
/** Why: model discovery reads only these fields; excluding the prompt-delivery
* half is what keeps a probe-only agent out of the commit-message registry. */
export type AgentModelProbeSpec = Omit<CommitMessageAgentSpec, 'promptDelivery' | 'buildArgs'>
/** Agents that support model discovery but are not commit-message agents. */
const MODEL_DISCOVERY_ONLY_SPECS: Partial<Record<TuiAgent, AgentModelProbeSpec>> = {
grok: {
id: 'grok',
label: 'Grok',
binary: 'grok',
modelSource: 'dynamic',
modelDiscovery: {
binary: 'grok',
args: GROK_MODEL_LIST_ARGS,
parse: parseGrokModelList
},
// Why: empty so a failed probe degrades to the catalog seed instead of a
// second model list here that can drift from it.
models: [],
defaultModelId: 'grok-4.6'
}
}
export function getAgentModelProbeSpec(agentId: TuiAgent): AgentModelProbeSpec | undefined {
return getCommitMessageAgentSpec(agentId) ?? MODEL_DISCOVERY_ONLY_SPECS[agentId]
}