diff --git a/src/agent/client.ts b/src/agent/client.ts index 5d6d34f..6214d52 100644 --- a/src/agent/client.ts +++ b/src/agent/client.ts @@ -54,14 +54,6 @@ export async function getClient() { process.exit(1); } - // Auto-cache: if LETTA_API_KEY is set in env but not in settings, write it to settings - // Note: LETTA_BASE_URL is intentionally NOT cached - it should only come from env vars - if (process.env.LETTA_API_KEY && !settings.env?.LETTA_API_KEY) { - const updatedEnv = { ...settings.env }; - updatedEnv.LETTA_API_KEY = process.env.LETTA_API_KEY; - settingsManager.updateSettings({ env: updatedEnv }); - } - return new Letta({ apiKey, baseURL, diff --git a/src/auth/setup-ui.tsx b/src/auth/setup-ui.tsx index 9eca704..e098be1 100644 --- a/src/auth/setup-ui.tsx +++ b/src/auth/setup-ui.tsx @@ -6,6 +6,7 @@ import { hostname } from "node:os"; import { Box, Text, useApp, useInput } from "ink"; import { useState } from "react"; import { asciiLogo } from "../cli/components/AsciiArt.ts"; +import { colors } from "../cli/components/colors"; import { settingsManager } from "../settings-manager"; import { pollForToken, requestDeviceCode } from "./oauth"; @@ -124,8 +125,8 @@ export function SetupUI({ onComplete }: SetupUIProps) { if (mode === "device-code") { return ( - {asciiLogo} - Login to Letta Cloud + {asciiLogo} + Login to the Letta Developer Platform Opening browser for authorization... @@ -145,14 +146,15 @@ export function SetupUI({ onComplete }: SetupUIProps) { // Main menu return ( - {asciiLogo} + {asciiLogo} Welcome to Letta Code! Let's get you authenticated: - {selectedOption === 0 ? "→" : " "} Login to Letta Cloud + {selectedOption === 0 ? "→" : " "} Login to the Letta Developer + Platform diff --git a/src/index.ts b/src/index.ts index 11f3a31..5d2ff1c 100755 --- a/src/index.ts +++ b/src/index.ts @@ -114,14 +114,6 @@ async function main() { // Silently ignore update failures }); - // set LETTA_API_KEY from environment if available - if (process.env.LETTA_API_KEY && !settings.env?.LETTA_API_KEY) { - settings.env = settings.env || {}; - settings.env.LETTA_API_KEY = process.env.LETTA_API_KEY; - - settingsManager.updateSettings({ env: settings.env }); - } - // Parse command-line arguments (Bun-idiomatic approach using parseArgs) let values: Record; let positionals: string[]; @@ -286,10 +278,12 @@ async function main() { LETTA_CLOUD_API_URL; // Check if refresh token is missing for Letta Cloud (only when not using env var) + // Skip this check if we already have an API key from env if ( !isHeadless && baseURL === LETTA_CLOUD_API_URL && - !settings.refreshToken + !settings.refreshToken && + !apiKey ) { // For interactive mode, show setup flow const { runSetup } = await import("./auth/setup");