// LAN URLs fail secure-context checks in browsers. // Coerce only lan->loopback and preserve other bind modes. const links = resolveControlUiLinks({
port,
bind: bind === "lan" ? "loopback" : bind,
customBindHost,
basePath,
}); // Avoid embedding externally managed SecretRef tokens in terminal/clipboard/browser args. const includeTokenInUrl = token.length > 0 && !resolvedToken.secretRefConfigured; // Prefer URL fragment to avoid leaking auth tokens via query params. const dashboardUrl = includeTokenInUrl
? `${links.httpUrl}#token=${encodeURIComponent(token)}`
: links.httpUrl;
runtime.log(`Dashboard URL: ${links.httpUrl}`); if (includeTokenInUrl) {
runtime.log("Token auto-auth included in browser/clipboard URL.");
} if (resolvedToken.secretRefConfigured && token) {
runtime.log( "Token auto-auth is disabled for SecretRef-managed gateway.auth.token; use your external token source if prompted.",
);
} if (resolvedToken.unresolvedRefReason) {
runtime.log(`Token auto-auth unavailable: ${resolvedToken.unresolvedRefReason}`);
runtime.log( "Set OPENCLAW_GATEWAY_TOKEN in this shell or resolve your secret provider, then rerun `openclaw dashboard`.",
);
}
const copied = await copyToClipboard(dashboardUrl).catch(() => false);
runtime.log(copied ? "Copied to clipboard." : "Copy to clipboard unavailable.");
let opened = false;
let hint: string | undefined; if (!options.noOpen) { const browserSupport = await detectBrowserOpenSupport(); if (browserSupport.ok) {
opened = await openUrl(dashboardUrl);
} if (!opened) {
hint = formatControlUiSshHint({
port,
basePath,
});
}
} else {
hint =
copied && includeTokenInUrl
? "Browser launch disabled (--no-open). Token-authenticated URL copied to clipboard."
: "Browser launch disabled (--no-open). Use the URL above.";
}
if (opened) {
runtime.log("Opened in your browser. Keep that tab to control OpenClaw.");
} elseif (hint) {
runtime.log(hint);
}
}
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.10 Sekunden
(vorverarbeitet am 2026-06-10)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.