= ({
size="icon"
className="size-7 shrink-0 rounded-full [&>svg]:!size-icon-sm [&>svg]:p-0"
disabled={
- isDisabled && !agentSetupNotice && !canUseWorkspacePicker
+ isDisabled &&
+ !showAgentSetupNotice &&
+ !canUseWorkspacePicker
}
aria-label="More options"
>
diff --git a/site/src/pages/AgentsPage/components/AgentCreateForm.stories.tsx b/site/src/pages/AgentsPage/components/AgentCreateForm.stories.tsx
index 2631a42970..bb9717a161 100644
--- a/site/src/pages/AgentsPage/components/AgentCreateForm.stories.tsx
+++ b/site/src/pages/AgentsPage/components/AgentCreateForm.stories.tsx
@@ -18,7 +18,6 @@ import {
} from "#/testHelpers/entities";
import { withDashboardProvider } from "#/testHelpers/storybook";
import { AgentCreateForm } from "./AgentCreateForm";
-import { AgentSetupNotice } from "./AgentSetupNotice";
// Query key used by permittedOrganizations() in the form.
const permittedOrgsKey = [
@@ -471,9 +470,9 @@ export const NoModelsConfigured: Story = {
export const MissingProviderAndModelSetup: Story = {
args: {
...defaultArgs,
- agentSetupNotice: (
-
- ),
+ canConfigureAgentSetup: true,
+ providerCount: 0,
+ modelCount: 0,
modelCatalog: { providers: [] },
modelOptions: [],
isModelCatalogLoading: false,
diff --git a/site/src/pages/AgentsPage/components/AgentCreateForm.tsx b/site/src/pages/AgentsPage/components/AgentCreateForm.tsx
index d4ec3b5956..8c8c9f291e 100644
--- a/site/src/pages/AgentsPage/components/AgentCreateForm.tsx
+++ b/site/src/pages/AgentsPage/components/AgentCreateForm.tsx
@@ -1,11 +1,4 @@
-import {
- type FC,
- type ReactNode,
- useEffect,
- useEffectEvent,
- useRef,
- useState,
-} from "react";
+import { type FC, useEffect, useEffectEvent, useRef, useState } from "react";
import { useQuery } from "react-query";
import { Link } from "react-router";
import { toast } from "sonner";
@@ -132,7 +125,9 @@ interface AgentCreateFormProps {
canCreateChat: boolean;
modelCatalog: TypesGen.ChatModelsResponse | null | undefined;
modelOptions: readonly ChatModelOption[];
- agentSetupNotice?: ReactNode;
+ canConfigureAgentSetup: boolean;
+ providerCount?: number;
+ modelCount?: number;
isModelCatalogLoading: boolean;
modelConfigs: readonly TypesGen.ChatModelConfig[];
isModelConfigsLoading: boolean;
@@ -154,7 +149,9 @@ export const AgentCreateForm: FC
= ({
canCreateChat,
modelCatalog,
modelOptions,
- agentSetupNotice,
+ canConfigureAgentSetup,
+ providerCount,
+ modelCount,
modelConfigs,
isModelCatalogLoading,
isModelConfigsLoading,
@@ -548,7 +545,9 @@ export const AgentCreateForm: FC = ({
selectedWorkspaceId={effectiveWorkspaceId}
onWorkspaceChange={handleWorkspaceChange}
isWorkspaceLoading={isWorkspacesLoading}
- agentSetupNotice={agentSetupNotice}
+ canConfigureAgentSetup={canConfigureAgentSetup}
+ providerCount={providerCount}
+ modelCount={modelCount}
/>
{modelSelectorHelp ? (
diff --git a/site/src/pages/AgentsPage/components/ChatPageContent.tsx b/site/src/pages/AgentsPage/components/ChatPageContent.tsx
index 135db09f81..84ca4fe606 100644
--- a/site/src/pages/AgentsPage/components/ChatPageContent.tsx
+++ b/site/src/pages/AgentsPage/components/ChatPageContent.tsx
@@ -169,7 +169,9 @@ interface ChatPageInputProps {
modelOptions: readonly ModelSelectorOption[];
modelSelectorPlaceholder: string;
modelSelectorHelp?: ReactNode;
- agentSetupNotice?: ReactNode;
+ canConfigureAgentSetup: boolean;
+ providerCount?: number;
+ modelCount?: number;
planModeEnabled?: boolean;
onPlanModeToggle?: (enabled: boolean) => void;
isModelCatalogLoading?: boolean;
@@ -234,7 +236,9 @@ export const ChatPageInput: FC = ({
modelOptions,
modelSelectorPlaceholder,
modelSelectorHelp,
- agentSetupNotice,
+ canConfigureAgentSetup,
+ providerCount,
+ modelCount,
planModeEnabled,
onPlanModeToggle,
isModelCatalogLoading = false,
@@ -490,7 +494,9 @@ export const ChatPageInput: FC = ({
sshCommand={sshCommand}
attachedWorkspace={attachedWorkspace}
folder={folder}
- agentSetupNotice={agentSetupNotice}
+ canConfigureAgentSetup={canConfigureAgentSetup}
+ providerCount={providerCount}
+ modelCount={modelCount}
/>
);