From 5f29b1668534fcac6645144f9e4585606ec5055d Mon Sep 17 00:00:00 2001
From: Sreeram Sreedhar
Date: Tue, 23 Jun 2026 18:24:14 -0700
Subject: [PATCH] Remove desktop API key login
---
apps/desktop/app/login/page.tsx | 50 ------------------------------
apps/desktop/lib/auth.ts | 6 ----
apps/desktop/src-tauri/src/auth.rs | 10 ++----
apps/desktop/src-tauri/src/lib.rs | 6 ----
4 files changed, 3 insertions(+), 69 deletions(-)
diff --git a/apps/desktop/app/login/page.tsx b/apps/desktop/app/login/page.tsx
index 1ce72f67..fddb7930 100644
--- a/apps/desktop/app/login/page.tsx
+++ b/apps/desktop/app/login/page.tsx
@@ -11,7 +11,6 @@ import { ExternalAuthButton } from "@ui/button/external-auth"
import { Badge } from "@ui/components/badge"
import { Button } from "@ui/components/button"
import { Input } from "@ui/components/input"
-import { Label } from "@ui/components/label"
import { TextSeparator } from "@ui/components/text-separator"
import { Loader2 } from "lucide-react"
import { useRouter } from "next/navigation"
@@ -24,19 +23,16 @@ import {
} from "react"
import {
beginSocialAuth,
- desktopDevAuthEnabled,
getSession,
onAuthChanged,
onAuthError,
sendMagicLink,
- storeToken,
verifyMagicLinkToken,
} from "@/lib/auth"
import { postAuthRedirectPath } from "@/lib/onboarding"
export default function LoginPage() {
const router = useRouter()
- const [token, setToken] = useState("")
const [email, setEmail] = useState("")
const [submittedEmail, setSubmittedEmail] = useState(null)
const [loginCode, setLoginCode] = useState("")
@@ -86,21 +82,6 @@ export default function LoginPage() {
}
}, [router])
- async function onSubmit(event: FormEvent) {
- event.preventDefault()
- setError(null)
- setIsSubmitting(true)
-
- try {
- await storeToken(token)
- router.replace(postAuthRedirectPath())
- } catch (err) {
- setError(formatError(err, "Could not sign in"))
- } finally {
- setIsSubmitting(false)
- }
- }
-
async function startSocialAuth(provider: "google" | "github") {
setError(null)
setSubmittedEmail(null)
@@ -335,37 +316,6 @@ export default function LoginPage() {
{error}
) : null}
-
- {desktopDevAuthEnabled ? (
-
-
- Development API key
-
-
-
- ) : null}
diff --git a/apps/desktop/lib/auth.ts b/apps/desktop/lib/auth.ts
index 112715cc..5d33883a 100644
--- a/apps/desktop/lib/auth.ts
+++ b/apps/desktop/lib/auth.ts
@@ -10,7 +10,6 @@ export type AuthSession = {
apiUrl: string
}
-export const desktopDevAuthEnabled = process.env.NEXT_PUBLIC_DESKTOP_DEV === "1"
export const AUTH_CHANGED_EVENT = "auth:changed"
export const AUTH_ERROR_EVENT = "auth:error"
@@ -27,11 +26,6 @@ export async function getSession() {
return invoke("auth_whoami")
}
-export async function storeToken(token: string) {
- await invoke("auth_store_token", { token })
- return getSession()
-}
-
export async function beginBrowserAuth() {
return invoke("auth_begin_browser")
}
diff --git a/apps/desktop/src-tauri/src/auth.rs b/apps/desktop/src-tauri/src/auth.rs
index 219e3515..f011042d 100644
--- a/apps/desktop/src-tauri/src/auth.rs
+++ b/apps/desktop/src-tauri/src/auth.rs
@@ -171,10 +171,6 @@ fn is_loopback_http_url(value: &str) -> bool {
.unwrap_or(false)
}
-pub fn store_token(token: String) -> Result<(), String> {
- store_token_with_api_url(token, Some(configured_api_url()))
-}
-
pub fn store_token_with_api_url(token: String, api_url: Option) -> Result<(), String> {
let token = token.trim();
if token.is_empty() {
@@ -682,7 +678,7 @@ fn complete_browser_auth(parsed: url::Url) -> Result<(), String> {
return Err(format!("Browser sign-in failed: {error}"));
}
- let api_key = params
+ let auth_token = params
.iter()
.find_map(|(key, value)| (key == "apikey").then(|| value.to_string()))
.or_else(|| {
@@ -695,7 +691,7 @@ fn complete_browser_auth(parsed: url::Url) -> Result<(), String> {
.iter()
.find_map(|(key, value)| (key == "token").then(|| value.to_string()))
})
- .ok_or_else(|| "Auth callback did not include API key".to_string())?;
+ .ok_or_else(|| "Auth callback did not include an auth token".to_string())?;
let callback_api_url = params
.iter()
.find_map(|(key, value)| (key == "apiUrl").then(|| value.to_string()))
@@ -706,7 +702,7 @@ fn complete_browser_auth(parsed: url::Url) -> Result<(), String> {
});
store_token_with_api_url(
- api_key,
+ auth_token,
callback_api_url.or_else(|| Some(browser_auth_api_url())),
)
}
diff --git a/apps/desktop/src-tauri/src/lib.rs b/apps/desktop/src-tauri/src/lib.rs
index 22b944a7..9ab3a66e 100644
--- a/apps/desktop/src-tauri/src/lib.rs
+++ b/apps/desktop/src-tauri/src/lib.rs
@@ -29,11 +29,6 @@ fn app_info() -> AppInfo {
}
}
-#[tauri::command]
-fn auth_store_token(token: String) -> Result<(), String> {
- auth::store_token(token)
-}
-
#[tauri::command]
fn auth_get_token() -> Result