mirror of
https://github.com/claude-code-best/claude-code.git
synced 2026-06-15 12:55:51 +00:00
* feat: 支持自托管的 remote-control-server (#214) --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
47 lines
1.7 KiB
TypeScript
47 lines
1.7 KiB
TypeScript
/**
|
|
* Shared bridge auth/URL resolution. Consolidates the ant-only
|
|
* CLAUDE_BRIDGE_* dev overrides that were previously copy-pasted across
|
|
* a dozen files — inboundAttachments, BriefTool/upload, bridgeMain,
|
|
* initReplBridge, remoteBridgeCore, daemon workers, /rename,
|
|
* /remote-control.
|
|
*
|
|
* Two layers: *Override() returns the ant-only env var (or undefined);
|
|
* the non-Override versions fall through to the real OAuth store/config.
|
|
* Callers that compose with a different auth source (e.g. daemon workers
|
|
* using IPC auth) use the Override getters directly.
|
|
*/
|
|
|
|
import { getOauthConfig } from '../constants/oauth.js'
|
|
import { getClaudeAIOAuthTokens } from '../utils/auth.js'
|
|
|
|
/** Dev override: CLAUDE_BRIDGE_OAUTH_TOKEN, else undefined. */
|
|
export function getBridgeTokenOverride(): string | undefined {
|
|
return process.env.CLAUDE_BRIDGE_OAUTH_TOKEN || undefined
|
|
}
|
|
|
|
/** Dev override: CLAUDE_BRIDGE_BASE_URL, else undefined. */
|
|
export function getBridgeBaseUrlOverride(): string | undefined {
|
|
return process.env.CLAUDE_BRIDGE_BASE_URL || undefined
|
|
}
|
|
|
|
/**
|
|
* Access token for bridge API calls: dev override first, then the OAuth
|
|
* keychain. Undefined means "not logged in".
|
|
*/
|
|
export function getBridgeAccessToken(): string | undefined {
|
|
return getBridgeTokenOverride() ?? getClaudeAIOAuthTokens()?.accessToken
|
|
}
|
|
|
|
/**
|
|
* Base URL for bridge API calls: dev override first, then the production
|
|
* OAuth config. Always returns a URL.
|
|
*/
|
|
export function getBridgeBaseUrl(): string {
|
|
return getBridgeBaseUrlOverride() ?? getOauthConfig().BASE_API_URL
|
|
}
|
|
|
|
/** True when the user has explicitly configured a custom bridge server. */
|
|
export function isSelfHostedBridge(): boolean {
|
|
return !!getBridgeBaseUrlOverride()
|
|
}
|