fix: switch login mechanism for claude code

This commit is contained in:
simosmik
2026-01-25 23:55:05 +00:00
parent ae5a21cd6e
commit 477bc404b0
3 changed files with 12 additions and 4 deletions

View File

@@ -4975,7 +4975,7 @@ function ChatInterface({ selectedProject, selectedSession, ws, sendMessage, mess
<div className="flex flex-col items-center justify-center h-full gap-3"> <div className="flex flex-col items-center justify-center h-full gap-3">
<ClaudeLogo className="w-10 h-10" /> <ClaudeLogo className="w-10 h-10" />
<div> <div>
<p className="font-semibold text-gray-900 dark:text-white">Claude</p> <p className="font-semibold text-gray-900 dark:text-white">Claude Code</p>
<p className="text-xs text-gray-500 dark:text-gray-400">{t('providerSelection.providerInfo.anthropic')}</p> <p className="text-xs text-gray-500 dark:text-gray-400">{t('providerSelection.providerInfo.anthropic')}</p>
</div> </div>
</div> </div>

View File

@@ -11,6 +11,7 @@ import StandaloneShell from './StandaloneShell';
* @param {Object} props.project - Project object containing name and path information * @param {Object} props.project - Project object containing name and path information
* @param {Function} props.onComplete - Callback when login process completes (receives exitCode) * @param {Function} props.onComplete - Callback when login process completes (receives exitCode)
* @param {string} props.customCommand - Optional custom command to override defaults * @param {string} props.customCommand - Optional custom command to override defaults
* @param {boolean} props.isAuthenticated - Whether user is already authenticated (for re-auth flow)
*/ */
function LoginModal({ function LoginModal({
isOpen, isOpen,
@@ -18,7 +19,8 @@ function LoginModal({
provider = 'claude', provider = 'claude',
project, project,
onComplete, onComplete,
customCommand customCommand,
isAuthenticated = false
}) { }) {
if (!isOpen) return null; if (!isOpen) return null;
@@ -29,13 +31,13 @@ function LoginModal({
switch (provider) { switch (provider) {
case 'claude': case 'claude':
return 'claude setup-token --dangerously-skip-permissions'; return isAuthenticated ? 'claude /login --dangerously-skip-permissions' : 'claude setup-token --dangerously-skip-permissions';
case 'cursor': case 'cursor':
return 'cursor-agent login'; return 'cursor-agent login';
case 'codex': case 'codex':
return isPlatform ? 'codex login --device-auth' : 'codex login'; return isPlatform ? 'codex login --device-auth' : 'codex login';
default: default:
return 'claude setup-token --dangerously-skip-permissions'; return isAuthenticated ? 'claude /login --dangerously-skip-permissions' : 'claude setup-token --dangerously-skip-permissions';
} }
}; };

View File

@@ -1966,6 +1966,12 @@ function Settings({ isOpen, onClose, projects = [], initialTab = 'agents' }) {
provider={loginProvider} provider={loginProvider}
project={selectedProject} project={selectedProject}
onComplete={handleLoginComplete} onComplete={handleLoginComplete}
isAuthenticated={
loginProvider === 'claude' ? claudeAuthStatus.authenticated :
loginProvider === 'cursor' ? cursorAuthStatus.authenticated :
loginProvider === 'codex' ? codexAuthStatus.authenticated :
false
}
/> />
</div> </div>
); );