mirror of
https://github.com/stablyai/orca.git
synced 2026-11-01 09:37:33 +00:00
* fix(opencode): allow picked models across CLI updates * test(opencode): prune obsolete timeout ratchet allowance * fix(opencode): use resolved agents and refuse unsafe workers upfront * fix(i18n): include OpenCode refusal messages in runtime catalog
30 lines
867 B
TypeScript
30 lines
867 B
TypeScript
import { resolveStartupShell, tokenizeStartupCommand } from '../../shared/tui-agent-startup-shell'
|
|
import { resolveCommandOnLocalPath } from '../ipc/command-path-resolver'
|
|
|
|
export async function resolveOpenCodeDirectModelExecutable(options: {
|
|
command: string | undefined
|
|
env: NodeJS.ProcessEnv
|
|
cwd?: string
|
|
wsl?: { distro?: string }
|
|
}): Promise<string | null> {
|
|
// WSL needs the same guest account/profile environment as its actual launch.
|
|
if (options.wsl || !options.cwd) {
|
|
return null
|
|
}
|
|
const parsed = tokenizeStartupCommand(
|
|
options.command ?? '',
|
|
resolveStartupShell(process.platform)
|
|
)
|
|
if (
|
|
!parsed.ok ||
|
|
parsed.tokens.length !== 1 ||
|
|
parsed.spans.some((span) => span.divergesFromShell)
|
|
) {
|
|
return null
|
|
}
|
|
return resolveCommandOnLocalPath(parsed.tokens[0], {
|
|
env: options.env,
|
|
cwd: options.cwd
|
|
})
|
|
}
|