- );
-}
diff --git a/ui/desktop/src/components/RecipeEditor.tsx b/ui/desktop/src/components/RecipeEditor.tsx
index 2c8ac36e62c3..676f44bc0575 100644
--- a/ui/desktop/src/components/RecipeEditor.tsx
+++ b/ui/desktop/src/components/RecipeEditor.tsx
@@ -11,7 +11,6 @@ import RecipeActivityEditor from './RecipeActivityEditor';
import RecipeInfoModal from './RecipeInfoModal';
import RecipeExpandableInfo from './RecipeExpandableInfo';
import { ScheduleFromRecipeModal } from './schedule/ScheduleFromRecipeModal';
-// import ExtensionList from './settings_v2/extensions/subcomponents/ExtensionList';
interface RecipeEditorProps {
config?: Recipe;
@@ -365,7 +364,14 @@ export default function RecipeEditor({ config }: RecipeEditorProps) {
recipe={getCurrentConfig()}
onCreateSchedule={(deepLink) => {
// Open the schedules view with the deep link pre-filled
- window.electron.createChatWindow(undefined, undefined, undefined, undefined, undefined, 'schedules');
+ window.electron.createChatWindow(
+ undefined,
+ undefined,
+ undefined,
+ undefined,
+ undefined,
+ 'schedules'
+ );
// Store the deep link in localStorage for the schedules view to pick up
localStorage.setItem('pendingScheduleDeepLink', deepLink);
}}
diff --git a/ui/desktop/src/components/ToolCallConfirmation.tsx b/ui/desktop/src/components/ToolCallConfirmation.tsx
index 606923a31683..cdffaed951f7 100644
--- a/ui/desktop/src/components/ToolCallConfirmation.tsx
+++ b/ui/desktop/src/components/ToolCallConfirmation.tsx
@@ -1,6 +1,6 @@
import { useState } from 'react';
import { snakeToTitleCase } from '../utils';
-import PermissionModal from './settings_v2/permission/PermissionModal';
+import PermissionModal from './settings/permission/PermissionModal';
import { ChevronRight } from 'lucide-react';
import { confirmPermission } from '../api';
diff --git a/ui/desktop/src/components/WelcomeView.tsx b/ui/desktop/src/components/WelcomeView.tsx
deleted file mode 100644
index 2e5779e350c0..000000000000
--- a/ui/desktop/src/components/WelcomeView.tsx
+++ /dev/null
@@ -1,86 +0,0 @@
-import { ProviderGrid } from './ProviderGrid';
-import { ScrollArea } from './ui/scroll-area';
-import { Button } from './ui/button';
-import WelcomeGooseLogo from './WelcomeGooseLogo';
-import MoreMenuLayout from './more_menu/MoreMenuLayout';
-
-// Extending React CSSProperties to include custom webkit property
-declare module 'react' {
- interface CSSProperties {
- WebkitAppRegion?: string;
- }
-}
-
-interface WelcomeScreenProps {
- onSubmit?: () => void;
-}
-
-export default function WelcomeScreen({ onSubmit }: WelcomeScreenProps) {
- return (
-
-
-
- {/* Content area - explicitly set as non-draggable */}
-
-
-
- {/* Header Section */}
-
-
-
-
-
-
-
- Welcome to goose
-
-
- Your intelligent AI assistant for seamless productivity and creativity.
-
-
-
-
-
- {/* ProviderGrid */}
-
-
- Choose a Provider
-
-
- Select an AI model provider to get started with goose.
-
-
- Click on a provider to configure its API keys and start using goose. Your keys are
- stored securely and encrypted locally. You can change your provider and select
- specific models in the settings.
-
- {hasRequiredKeys
- ? `You have ${getArticle(name)} ${name} API Key set in your environment`
- : `${name} is installed and running on your machine`}
-
- );
-}
diff --git a/ui/desktop/src/components/settings/providers/ConfigureProvidersView.tsx b/ui/desktop/src/components/settings/providers/ConfigureProvidersView.tsx
deleted file mode 100644
index 8890fe7108a9..000000000000
--- a/ui/desktop/src/components/settings/providers/ConfigureProvidersView.tsx
+++ /dev/null
@@ -1,32 +0,0 @@
-import { ScrollArea } from '../../ui/scroll-area';
-import BackButton from '../../ui/BackButton';
-import { ConfigureProvidersGrid } from './ConfigureProvidersGrid';
-import MoreMenuLayout from '../../more_menu/MoreMenuLayout';
-
-export default function ConfigureProvidersView({ onClose }: { onClose: () => void }) {
- return (
-
-
-
-
-
-
-
Configure
-
-
-
-
-
Providers
-
-
- {/* Content Area */}
-
-
-
-
-
-
-
-
- );
-}
diff --git a/ui/desktop/src/components/settings_v2/providers/ProviderGrid.tsx b/ui/desktop/src/components/settings/providers/ProviderGrid.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/ProviderGrid.tsx
rename to ui/desktop/src/components/settings/providers/ProviderGrid.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/ProviderRegistry.tsx b/ui/desktop/src/components/settings/providers/ProviderRegistry.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/ProviderRegistry.tsx
rename to ui/desktop/src/components/settings/providers/ProviderRegistry.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/ProviderSettingsPage.tsx b/ui/desktop/src/components/settings/providers/ProviderSettingsPage.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/ProviderSettingsPage.tsx
rename to ui/desktop/src/components/settings/providers/ProviderSettingsPage.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/interfaces/ButtonCallbacks.tsx b/ui/desktop/src/components/settings/providers/interfaces/ButtonCallbacks.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/interfaces/ButtonCallbacks.tsx
rename to ui/desktop/src/components/settings/providers/interfaces/ButtonCallbacks.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/interfaces/ConfigurationAction.tsx b/ui/desktop/src/components/settings/providers/interfaces/ConfigurationAction.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/interfaces/ConfigurationAction.tsx
rename to ui/desktop/src/components/settings/providers/interfaces/ConfigurationAction.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/interfaces/OllamaMetadata.tsx b/ui/desktop/src/components/settings/providers/interfaces/OllamaMetadata.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/interfaces/OllamaMetadata.tsx
rename to ui/desktop/src/components/settings/providers/interfaces/OllamaMetadata.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/interfaces/ParameterSchema.ts b/ui/desktop/src/components/settings/providers/interfaces/ParameterSchema.ts
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/interfaces/ParameterSchema.ts
rename to ui/desktop/src/components/settings/providers/interfaces/ParameterSchema.ts
diff --git a/ui/desktop/src/components/settings_v2/providers/interfaces/ProviderDetails.tsx b/ui/desktop/src/components/settings/providers/interfaces/ProviderDetails.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/interfaces/ProviderDetails.tsx
rename to ui/desktop/src/components/settings/providers/interfaces/ProviderDetails.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/interfaces/ProviderState.tsx b/ui/desktop/src/components/settings/providers/interfaces/ProviderState.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/interfaces/ProviderState.tsx
rename to ui/desktop/src/components/settings/providers/interfaces/ProviderState.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/ProviderConfiguationModal.tsx b/ui/desktop/src/components/settings/providers/modal/ProviderConfiguationModal.tsx
similarity index 96%
rename from ui/desktop/src/components/settings_v2/providers/modal/ProviderConfiguationModal.tsx
rename to ui/desktop/src/components/settings/providers/modal/ProviderConfiguationModal.tsx
index 74deaca77199..36e4245cf0ad 100644
--- a/ui/desktop/src/components/settings_v2/providers/modal/ProviderConfiguationModal.tsx
+++ b/ui/desktop/src/components/settings/providers/modal/ProviderConfiguationModal.tsx
@@ -10,8 +10,8 @@ import { DefaultSubmitHandler } from './subcomponents/handlers/DefaultSubmitHand
import OllamaSubmitHandler from './subcomponents/handlers/OllamaSubmitHandler';
import OllamaForm from './subcomponents/forms/OllamaForm';
import { useConfig } from '../../../ConfigContext';
+import { useModelAndProvider } from '../../../ModelAndProviderContext';
import { AlertTriangle } from 'lucide-react';
-import { getCurrentModelAndProvider } from '../../models'; // Import the utility
interface FormValues {
[key: string]: string | number | boolean | null;
@@ -27,7 +27,8 @@ const customFormsMap: Record = {
export default function ProviderConfigurationModal() {
const [validationErrors, setValidationErrors] = useState>({});
- const { upsert, remove, read } = useConfig(); // Add read to the destructured values
+ const { upsert, remove } = useConfig();
+ const { getCurrentModelAndProvider } = useModelAndProvider();
const { isOpen, currentProvider, modalProps, closeModal } = useProviderModal();
const [configValues, setConfigValues] = useState>({});
const [showDeleteConfirmation, setShowDeleteConfirmation] = useState(false);
@@ -126,10 +127,7 @@ export default function ProviderConfigurationModal() {
const handleDelete = async () => {
// Check if this is the currently active provider
try {
- const providerModel = await getCurrentModelAndProvider({
- readFromConfig: read,
- writeToConfig: upsert,
- });
+ const providerModel = await getCurrentModelAndProvider();
if (currentProvider.name === providerModel.provider) {
// It's the active provider - set state and show warning
setIsActiveProvider(true);
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/ProviderModalProvider.tsx b/ui/desktop/src/components/settings/providers/modal/ProviderModalProvider.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/ProviderModalProvider.tsx
rename to ui/desktop/src/components/settings/providers/modal/ProviderModalProvider.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/constants.tsx b/ui/desktop/src/components/settings/providers/modal/constants.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/constants.tsx
rename to ui/desktop/src/components/settings/providers/modal/constants.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/interfaces/ProviderSetupFormProps.tsx b/ui/desktop/src/components/settings/providers/modal/interfaces/ProviderSetupFormProps.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/interfaces/ProviderSetupFormProps.tsx
rename to ui/desktop/src/components/settings/providers/modal/interfaces/ProviderSetupFormProps.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/ProviderLogo.tsx b/ui/desktop/src/components/settings/providers/modal/subcomponents/ProviderLogo.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/ProviderLogo.tsx
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/ProviderLogo.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/ProviderSetupActions.tsx b/ui/desktop/src/components/settings/providers/modal/subcomponents/ProviderSetupActions.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/ProviderSetupActions.tsx
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/ProviderSetupActions.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/ProviderSetupHeader.tsx b/ui/desktop/src/components/settings/providers/modal/subcomponents/ProviderSetupHeader.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/ProviderSetupHeader.tsx
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/ProviderSetupHeader.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/SecureStorageNotice.tsx b/ui/desktop/src/components/settings/providers/modal/subcomponents/SecureStorageNotice.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/SecureStorageNotice.tsx
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/SecureStorageNotice.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/forms/DefaultProviderSetupForm.tsx b/ui/desktop/src/components/settings/providers/modal/subcomponents/forms/DefaultProviderSetupForm.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/forms/DefaultProviderSetupForm.tsx
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/forms/DefaultProviderSetupForm.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/forms/OllamaForm.tsx b/ui/desktop/src/components/settings/providers/modal/subcomponents/forms/OllamaForm.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/forms/OllamaForm.tsx
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/forms/OllamaForm.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/handlers/DefaultSubmitHandler.tsx b/ui/desktop/src/components/settings/providers/modal/subcomponents/handlers/DefaultSubmitHandler.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/handlers/DefaultSubmitHandler.tsx
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/handlers/DefaultSubmitHandler.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/handlers/OllamaSubmitHandler.tsx b/ui/desktop/src/components/settings/providers/modal/subcomponents/handlers/OllamaSubmitHandler.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/handlers/OllamaSubmitHandler.tsx
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/handlers/OllamaSubmitHandler.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/anthropic.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/anthropic.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/anthropic.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/anthropic.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/anthropic@2x.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/anthropic@2x.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/anthropic@2x.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/anthropic@2x.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/anthropic@3x.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/anthropic@3x.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/anthropic@3x.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/anthropic@3x.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/databricks.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/databricks.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/databricks.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/databricks.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/databricks@2x.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/databricks@2x.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/databricks@2x.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/databricks@2x.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/databricks@3x.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/databricks@3x.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/databricks@3x.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/databricks@3x.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/default.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/default.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/default.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/default.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/default@2x.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/default@2x.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/default@2x.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/default@2x.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/default@3x.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/default@3x.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/default@3x.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/default@3x.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/google.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/google.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/google.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/google.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/google@2x.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/google@2x.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/google@2x.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/google@2x.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/google@3x.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/google@3x.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/google@3x.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/google@3x.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/groq.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/groq.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/groq.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/groq.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/groq@2x.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/groq@2x.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/groq@2x.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/groq@2x.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/groq@3x.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/groq@3x.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/groq@3x.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/groq@3x.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/ollama.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/ollama.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/ollama.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/ollama.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/ollama@2x.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/ollama@2x.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/ollama@2x.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/ollama@2x.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/ollama@3x.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/ollama@3x.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/ollama@3x.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/ollama@3x.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/openai.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/openai.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/openai.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/openai.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/openai.svg b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/openai.svg
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/openai.svg
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/openai.svg
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/openai@2x.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/openai@2x.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/openai@2x.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/openai@2x.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/openai@3x.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/openai@3x.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/openai@3x.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/openai@3x.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/openrouter.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/openrouter.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/openrouter.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/openrouter.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/openrouter@2x.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/openrouter@2x.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/openrouter@2x.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/openrouter@2x.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/openrouter@3x.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/openrouter@3x.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/openrouter@3x.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/openrouter@3x.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/snowflake.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/snowflake.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/snowflake.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/snowflake.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/snowflake@2x.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/snowflake@2x.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/snowflake@2x.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/snowflake@2x.png
diff --git a/ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/snowflake@3x.png b/ui/desktop/src/components/settings/providers/modal/subcomponents/icons/snowflake@3x.png
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/modal/subcomponents/icons/snowflake@3x.png
rename to ui/desktop/src/components/settings/providers/modal/subcomponents/icons/snowflake@3x.png
diff --git a/ui/desktop/src/components/settings_v2/providers/parameters/UpdateSecrets.tsx b/ui/desktop/src/components/settings/providers/parameters/UpdateSecrets.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/parameters/UpdateSecrets.tsx
rename to ui/desktop/src/components/settings/providers/parameters/UpdateSecrets.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/state/providerState.tsx b/ui/desktop/src/components/settings/providers/state/providerState.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/state/providerState.tsx
rename to ui/desktop/src/components/settings/providers/state/providerState.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/subcomponents/CardActions.tsx b/ui/desktop/src/components/settings/providers/subcomponents/CardActions.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/subcomponents/CardActions.tsx
rename to ui/desktop/src/components/settings/providers/subcomponents/CardActions.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/subcomponents/CardBody.tsx b/ui/desktop/src/components/settings/providers/subcomponents/CardBody.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/subcomponents/CardBody.tsx
rename to ui/desktop/src/components/settings/providers/subcomponents/CardBody.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/subcomponents/CardContainer.tsx b/ui/desktop/src/components/settings/providers/subcomponents/CardContainer.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/subcomponents/CardContainer.tsx
rename to ui/desktop/src/components/settings/providers/subcomponents/CardContainer.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/subcomponents/CardHeader.tsx b/ui/desktop/src/components/settings/providers/subcomponents/CardHeader.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/subcomponents/CardHeader.tsx
rename to ui/desktop/src/components/settings/providers/subcomponents/CardHeader.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/subcomponents/ProviderCard.tsx b/ui/desktop/src/components/settings/providers/subcomponents/ProviderCard.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/subcomponents/ProviderCard.tsx
rename to ui/desktop/src/components/settings/providers/subcomponents/ProviderCard.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/subcomponents/buttons/CardButtons.tsx b/ui/desktop/src/components/settings/providers/subcomponents/buttons/CardButtons.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/subcomponents/buttons/CardButtons.tsx
rename to ui/desktop/src/components/settings/providers/subcomponents/buttons/CardButtons.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/subcomponents/buttons/DefaultCardButtons.tsx b/ui/desktop/src/components/settings/providers/subcomponents/buttons/DefaultCardButtons.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/subcomponents/buttons/DefaultCardButtons.tsx
rename to ui/desktop/src/components/settings/providers/subcomponents/buttons/DefaultCardButtons.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/subcomponents/buttons/TooltipWrapper.tsx b/ui/desktop/src/components/settings/providers/subcomponents/buttons/TooltipWrapper.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/subcomponents/buttons/TooltipWrapper.tsx
rename to ui/desktop/src/components/settings/providers/subcomponents/buttons/TooltipWrapper.tsx
diff --git a/ui/desktop/src/components/settings_v2/providers/subcomponents/utils/StringUtils.tsx b/ui/desktop/src/components/settings/providers/subcomponents/utils/StringUtils.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/providers/subcomponents/utils/StringUtils.tsx
rename to ui/desktop/src/components/settings/providers/subcomponents/utils/StringUtils.tsx
diff --git a/ui/desktop/src/components/settings_v2/recipes/ViewRecipe.tsx b/ui/desktop/src/components/settings/recipes/ViewRecipe.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/recipes/ViewRecipe.tsx
rename to ui/desktop/src/components/settings/recipes/ViewRecipe.tsx
diff --git a/ui/desktop/src/components/settings_v2/response_styles/ResponseStyleSelectionItem.tsx b/ui/desktop/src/components/settings/response_styles/ResponseStyleSelectionItem.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/response_styles/ResponseStyleSelectionItem.tsx
rename to ui/desktop/src/components/settings/response_styles/ResponseStyleSelectionItem.tsx
diff --git a/ui/desktop/src/components/settings_v2/response_styles/ResponseStylesSection.tsx b/ui/desktop/src/components/settings/response_styles/ResponseStylesSection.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/response_styles/ResponseStylesSection.tsx
rename to ui/desktop/src/components/settings/response_styles/ResponseStylesSection.tsx
diff --git a/ui/desktop/src/components/settings/session/SessionSharingSection.tsx b/ui/desktop/src/components/settings/session/SessionSharingSection.tsx
deleted file mode 100644
index de2a080d124d..000000000000
--- a/ui/desktop/src/components/settings/session/SessionSharingSection.tsx
+++ /dev/null
@@ -1,159 +0,0 @@
-import React, { useState, useEffect } from 'react';
-import { Input } from '../../ui/input';
-import { Check, Lock } from 'lucide-react';
-
-export default function SessionSharingSection() {
- const envBaseUrlShare = window.appConfig.get('GOOSE_BASE_URL_SHARE') as string | undefined;
- console.log('envBaseUrlShare', envBaseUrlShare);
-
- // If env is set, force sharing enabled and set the baseUrl accordingly.
- const [sessionSharingConfig, setSessionSharingConfig] = useState({
- enabled: envBaseUrlShare ? true : false,
- baseUrl: envBaseUrlShare || '',
- });
- const [urlError, setUrlError] = useState('');
- // isUrlConfigured is true if the user has configured a baseUrl and it is valid.
- const isUrlConfigured =
- !envBaseUrlShare && sessionSharingConfig.enabled && isValidUrl(sessionSharingConfig.baseUrl);
-
- // Only load saved config from localStorage if the env variable is not provided.
- useEffect(() => {
- if (envBaseUrlShare) {
- // If env variable is set, save the forced configuration to localStorage
- const forcedConfig = {
- enabled: true,
- baseUrl: envBaseUrlShare,
- };
- localStorage.setItem('session_sharing_config', JSON.stringify(forcedConfig));
- } else {
- const savedSessionConfig = localStorage.getItem('session_sharing_config');
- if (savedSessionConfig) {
- try {
- const config = JSON.parse(savedSessionConfig);
- setSessionSharingConfig(config);
- } catch (error) {
- console.error('Error parsing session sharing config:', error);
- }
- }
- }
- }, [envBaseUrlShare]);
-
- // Helper to check if the user's input is a valid URL
- function isValidUrl(value: string): boolean {
- if (!value) return false;
- try {
- new URL(value);
- return true;
- } catch {
- return false;
- }
- }
-
- // Toggle sharing (only allowed when env is not set).
- const toggleSharing = () => {
- if (envBaseUrlShare) {
- return; // Do nothing if the environment variable forces sharing.
- }
- setSessionSharingConfig((prev) => {
- const updated = { ...prev, enabled: !prev.enabled };
- localStorage.setItem('session_sharing_config', JSON.stringify(updated));
- return updated;
- });
- };
-
- // Handle changes to the base URL field
- const handleBaseUrlChange = (e: React.ChangeEvent) => {
- const newBaseUrl = e.target.value;
- setSessionSharingConfig((prev) => ({
- ...prev,
- baseUrl: newBaseUrl,
- }));
-
- if (isValidUrl(newBaseUrl)) {
- setUrlError('');
- const updated = { ...sessionSharingConfig, baseUrl: newBaseUrl };
- localStorage.setItem('session_sharing_config', JSON.stringify(updated));
- } else {
- setUrlError('Invalid URL format. Please enter a valid URL (e.g. https://example.com/api).');
- }
- };
-
- return (
- <>
-
-
Session Sharing
-
-
-
- {envBaseUrlShare ? (
-
- Session sharing is configured but fully opt-in — your sessions are only shared when you
- explicitly click the share button.
-
- ) : (
-
- You can enable session sharing to share your sessions with others. You'll then need to
- enter the base URL for the session sharing API endpoint. Anyone with access to the same
- API and sharing session enabled will be able to see your sessions.
-
- )}
-
-
- {/* Toggle for enabling session sharing */}
-
-
- {envBaseUrlShare ? (
-
- ) : (
-
- )}
-
-
- {/* Base URL field (only visible if enabled) */}
- {sessionSharingConfig.enabled && (
-
-
-
- {isUrlConfigured && }
-
-
- {} : handleBaseUrlChange}
- />
-
- {urlError &&
{urlError}
}
-
- )}
-
-
- >
- );
-}
diff --git a/ui/desktop/src/components/settings_v2/sessions/SessionSharingSection.tsx b/ui/desktop/src/components/settings/sessions/SessionSharingSection.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/sessions/SessionSharingSection.tsx
rename to ui/desktop/src/components/settings/sessions/SessionSharingSection.tsx
diff --git a/ui/desktop/src/components/settings_v2/tool_selection_strategy/ToolSelectionStrategySection.tsx b/ui/desktop/src/components/settings/tool_selection_strategy/ToolSelectionStrategySection.tsx
similarity index 100%
rename from ui/desktop/src/components/settings_v2/tool_selection_strategy/ToolSelectionStrategySection.tsx
rename to ui/desktop/src/components/settings/tool_selection_strategy/ToolSelectionStrategySection.tsx
diff --git a/ui/desktop/src/components/settings/types.ts b/ui/desktop/src/components/settings/types.ts
deleted file mode 100644
index 140c233e94ec..000000000000
--- a/ui/desktop/src/components/settings/types.ts
+++ /dev/null
@@ -1,13 +0,0 @@
-import { FullExtensionConfig } from '../../extensions';
-
-export interface Model {
- id: string;
- name: string;
- description: string;
- enabled: boolean;
-}
-
-export interface Settings {
- models: Model[];
- extensions: FullExtensionConfig[];
-}
diff --git a/ui/desktop/src/components/settings_v2/SettingsView.tsx b/ui/desktop/src/components/settings_v2/SettingsView.tsx
deleted file mode 100644
index 54d95b92279d..000000000000
--- a/ui/desktop/src/components/settings_v2/SettingsView.tsx
+++ /dev/null
@@ -1,65 +0,0 @@
-import { ScrollArea } from '../ui/scroll-area';
-import BackButton from '../ui/BackButton';
-import type { View, ViewOptions } from '../../App';
-import ExtensionsSection from './extensions/ExtensionsSection';
-import ModelsSection from './models/ModelsSection';
-import { ModeSection } from './mode/ModeSection';
-import { ToolSelectionStrategySection } from './tool_selection_strategy/ToolSelectionStrategySection';
-import SessionSharingSection from './sessions/SessionSharingSection';
-import { ResponseStylesSection } from './response_styles/ResponseStylesSection';
-import AppSettingsSection from './app/AppSettingsSection';
-import { ExtensionConfig } from '../../api';
-import MoreMenuLayout from '../more_menu/MoreMenuLayout';
-
-export type SettingsViewOptions = {
- deepLinkConfig?: ExtensionConfig;
- showEnvVars?: boolean;
-};
-
-export default function SettingsView({
- onClose,
- setView,
- viewOptions,
-}: {
- onClose: () => void;
- setView: (view: View, viewOptions?: ViewOptions) => void;
- viewOptions: SettingsViewOptions;
-}) {
- return (
-