diff --git a/apps/rowboat/app/projects/[projectId]/entities/agent_config.tsx b/apps/rowboat/app/projects/[projectId]/entities/agent_config.tsx index a47100c9..50ecbfc5 100644 --- a/apps/rowboat/app/projects/[projectId]/entities/agent_config.tsx +++ b/apps/rowboat/app/projects/[projectId]/entities/agent_config.tsx @@ -401,12 +401,8 @@ export function AgentConfig({
{/* Identity Section Card */} - - Identity - - } + icon={} + title="Identity" labelWidth="md:w-32" className="mb-1" > @@ -449,12 +445,8 @@ export function AgentConfig({ {/* Behavior Section Card */} - - Behavior - - } + icon={} + title="Behavior" labelWidth="md:w-32" className="mb-1" > @@ -603,12 +595,8 @@ export function AgentConfig({ {/* RAG Data Sources Section Card */} - - RAG - - } + icon={} + title="RAG" labelWidth="md:w-32" className="mb-1" > diff --git a/apps/rowboat/app/projects/[projectId]/entities/tool_config.tsx b/apps/rowboat/app/projects/[projectId]/entities/tool_config.tsx index 0d7ac401..f88c4dbc 100644 --- a/apps/rowboat/app/projects/[projectId]/entities/tool_config.tsx +++ b/apps/rowboat/app/projects/[projectId]/entities/tool_config.tsx @@ -2,12 +2,16 @@ import { WorkflowTool } from "../../../lib/types/workflow_types"; import { Checkbox, Select, SelectItem, RadioGroup, Radio } from "@heroui/react"; import { z } from "zod"; -import { ImportIcon, XIcon, PlusIcon, FolderIcon } from "lucide-react"; +import { ImportIcon, XIcon, PlusIcon, FolderIcon} from "lucide-react"; import { useState, useEffect } from "react"; import { Textarea } from "@/components/ui/textarea"; import { Panel } from "@/components/common/panel-common"; import { Button } from "@/components/ui/button"; import clsx from "clsx"; +import { SectionCard } from "@/components/common/section-card"; +import { ToolParamCard } from "@/components/common/tool-param-card"; +import { UserIcon, Settings, Settings2 } from "lucide-react"; +import { EditableField } from "@/app/lib/components/editable-field"; // Update textarea styles with improved states const textareaStyles = "rounded-lg p-3 border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-800 hover:bg-gray-50 dark:hover:bg-gray-750 focus:shadow-inner focus:ring-2 focus:ring-indigo-500/20 dark:focus:ring-indigo-400/20 placeholder:text-gray-400 dark:placeholder:text-gray-500"; @@ -256,6 +260,9 @@ export function ToolConfig({ if (value.length === 0) { return "Name cannot be empty"; } + if (value !== tool.name && usedToolNames.has(value)) { + return "This name is already taken"; + } return null; } @@ -297,23 +304,23 @@ export function ToolConfig({ }; return ( -
-
+
{tool.name}
{tool.isMcp && ( -
+
- MCP: {tool.mcpServerName} + MCP: {tool.mcpServerName}
)} {tool.isLibrary && ( -
+
- Library Tool + Library Tool
)}
@@ -329,114 +336,115 @@ export function ToolConfig({
} > -
- {!isReadOnly && ( -
-
- -
-