diff --git a/apps/web/src/components/SettingsDialog.tsx b/apps/web/src/components/SettingsDialog.tsx
index d9afb3f8e..8654eb91d 100644
--- a/apps/web/src/components/SettingsDialog.tsx
+++ b/apps/web/src/components/SettingsDialog.tsx
@@ -3147,11 +3147,8 @@ export function SettingsDialog({
?.path ||
selected.path ||
'';
- const cliStrings = cliPathStrings(
- locale,
- displayAgentName(selected),
- envKey,
- );
+ const agentName = displayAgentName(selected);
+ const cliStrings = cliPathStrings(locale, agentName, envKey);
return (
@@ -3180,7 +3177,11 @@ export function SettingsDialog({
{candidate.version ||
t('common.installed')}
{' · '}
- {candidate.source}
+ {cliExecutableSourceLabel(
+ locale,
+ agentName,
+ candidate.source,
+ )}
diff --git a/apps/web/tests/components/SettingsDialog.execution.test.tsx b/apps/web/tests/components/SettingsDialog.execution.test.tsx
index 59f328b22..da67508c0 100644
--- a/apps/web/tests/components/SettingsDialog.execution.test.tsx
+++ b/apps/web/tests/components/SettingsDialog.execution.test.tsx
@@ -2038,6 +2038,10 @@ describe('SettingsDialog execution settings Local CLI interactions', () => {
expect(screen.getByText('Detected OpenCode binaries')).toBeTruthy();
expect(screen.getByText('/opt/homebrew/bin/opencode')).toBeTruthy();
expect(screen.getByText('/Users/mac/.opencode/bin/opencode')).toBeTruthy();
+ expect(screen.getByText(/opencode 1\.1\.14 · the PATH OpenCode CLI/)).toBeTruthy();
+ expect(screen.getByText(/opencode 1\.2\.0 · the known OpenCode install/)).toBeTruthy();
+ expect(screen.queryByText(/opencode 1\.1\.14 · path/)).toBeNull();
+ expect(screen.queryByText(/opencode 1\.2\.0 · known/)).toBeNull();
fireEvent.click(screen.getByRole('button', { name: /Use OpenCode binary \/Users\/mac\/\.opencode\/bin\/opencode/i }));