fix(i18n): interpolate localhost so the pseudo-locale leaves it intact (#2280)

Co-authored-by: Kandev Agent <agent@kandev.dev>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
João Salavisa
2026-08-05 18:00:38 +02:00
committed by GitHub
parent 409fdcd3da
commit 08b3932011
3 changed files with 10 additions and 3 deletions
@@ -70,7 +70,14 @@ export function ExternalMcpSettings() {
discoveryTargetId={STANDALONE_SETTINGS_TARGETS.externalMcpEndpoints}
icon={<IconPlugConnected className="h-5 w-5" />}
title={t("settings:externalMcpEndpoints")}
description={t("settings:externalMcpEndpointsDescription")}
// `localhost` is a hostname the user types, not copy. Interpolated so
// the pseudo-locale leaves it intact — baked into the message it renders
// as `ĺōćàĺĥōśţ`, a dead pointer to something the reader must reproduce
// verbatim. Same reasoning as `voiceUnavailableInsecure`, which already
// passes its scheme and host as values.
description={t("settings:externalMcpEndpointsDescription", {
localhostHost: "localhost",
})}
>
<Card>
<CardHeader>
+1 -1
View File
@@ -482,7 +482,7 @@
"externalMcpIntro": "Use this if you want to manage Kandev from coding agents that run <2>outside</2> Kandev (e.g. Claude Code, Cursor, or Codex on your host), or from <4>passthrough agents</4> running inside Kandev.",
"externalMcpIntroPassthrough": "Agents launched inside Kandev in their normal mode already have the Kandev MCP wired in automatically, no setup needed.",
"externalMcpEndpoints": "Endpoints",
"externalMcpEndpointsDescription": "Available on the same host and port as Kandev. Use localhost for same-machine agents, or the reachable Kandev URL for LAN, VPN, and reverse-proxy clients.",
"externalMcpEndpointsDescription": "Available on the same host and port as Kandev. Use {{localhostHost}} for same-machine agents, or the reachable Kandev URL for LAN, VPN, and reverse-proxy clients.",
"externalMcpStreamableHttp": "Streamable HTTP",
"externalMcpStreamableHttpHint": "Recommended for Claude Code, Cursor, and Codex.",
"externalMcpSse": "Server-Sent Events (SSE)",
+1 -1
View File
@@ -482,7 +482,7 @@
"externalMcpIntro": "Ũśē ţĥĩś ĩƒ ŷōũ ŵàńţ ţō ḿàńàĝē Ķàńďēv ƒŕōḿ ćōďĩńĝ àĝēńţś ţĥàţ ŕũń <2>ōũţśĩďē</2> Ķàńďēv (ē.ĝ. Ćĺàũďē Ćōďē, Ćũŕśōŕ, ōŕ Ćōďēx ōń ŷōũŕ ĥōśţ), ōŕ ƒŕōḿ <4>ƥàśśţĥŕōũĝĥ àĝēńţś</4> ŕũńńĩńĝ ĩńśĩďē Ķàńďēv.",
"externalMcpIntroPassthrough": "Àĝēńţś ĺàũńćĥēď ĩńśĩďē Ķàńďēv ĩń ţĥēĩŕ ńōŕḿàĺ ḿōďē àĺŕēàďŷ ĥàvē ţĥē Ķàńďēv ḾĆƤ ŵĩŕēď ĩń àũţōḿàţĩćàĺĺŷ, ńō śēţũƥ ńēēďēď.",
"externalMcpEndpoints": "Ēńďƥōĩńţś",
"externalMcpEndpointsDescription": "Àvàĩĺàƀĺē ōń ţĥē śàḿē ĥōśţ àńď ƥōŕţ àś Ķàńďēv. Ũśē ĺōćàĺĥōśţ ƒōŕ śàḿē-ḿàćĥĩńē àĝēńţś, ōŕ ţĥē ŕēàćĥàƀĺē Ķàńďēv ŨŔĹ ƒōŕ ĹÀŃ, VƤŃ, àńď ŕēvēŕśē-ƥŕōxŷ ćĺĩēńţś.",
"externalMcpEndpointsDescription": "Àvàĩĺàƀĺē ōń ţĥē śàḿē ĥōśţ àńď ƥōŕţ àś Ķàńďēv. Ũśē {{localhostHost}} ƒōŕ śàḿē-ḿàćĥĩńē àĝēńţś, ōŕ ţĥē ŕēàćĥàƀĺē Ķàńďēv ŨŔĹ ƒōŕ ĹÀŃ, VƤŃ, àńď ŕēvēŕśē-ƥŕōxŷ ćĺĩēńţś.",
"externalMcpStreamableHttp": "Śţŕēàḿàƀĺē ĤŢŢƤ",
"externalMcpStreamableHttpHint": "Ŕēćōḿḿēńďēď ƒōŕ Ćĺàũďē Ćōďē, Ćũŕśōŕ, àńď Ćōďēx.",
"externalMcpSse": "Śēŕvēŕ-Śēńţ Ēvēńţś (ŚŚĒ)",