@@ -26,6 +26,7 @@ import { fetchPost } from "@/api/http";
2626import { useChatStore } from "@/store/chatStore" ;
2727import { useAuthStore , useWorkerList } from "@/store/authStore" ;
2828import { useTranslation } from "react-i18next" ;
29+ import { TooltipSimple } from "../ui/tooltip" ;
2930
3031interface EnvValue {
3132 value : string ;
@@ -57,7 +58,8 @@ export function AddWorker({
5758} ) {
5859 const { t } = useTranslation ( ) ;
5960 const [ dialogOpen , setDialogOpen ] = useState ( false ) ;
60- const chatStore = useChatStore ( ) ;
61+ const activeTaskId = useChatStore ( ( state ) => state . activeTaskId ) ;
62+ const tasks = useChatStore ( ( state ) => state . tasks ) ;
6163 const [ showEnvConfig , setShowEnvConfig ] = useState ( false ) ;
6264 const [ activeMcp , setActiveMcp ] = useState < McpItem | null > ( null ) ;
6365 const [ envValues , setEnvValues ] = useState < { [ key : string ] : EnvValue } > ( { } ) ;
@@ -79,7 +81,7 @@ export function AddWorker({
7981 console . log ( mcp ) ;
8082 if ( mcp ?. install_command ?. env ) {
8183 const initialValues : { [ key : string ] : EnvValue } = { } ;
82- Object . keys ( mcp . install_command . env ) . forEach ( ( key ) => {
84+ for ( const key of Object . keys ( mcp . install_command . env ) ) {
8385 initialValues [ key ] = {
8486 value : "" ,
8587 required : true ,
@@ -88,7 +90,7 @@ export function AddWorker({
8890 ?. replace ( / { { / g, "" )
8991 ?. replace ( / } } / g, "" ) || "" ,
9092 } ;
91- } ) ;
93+ }
9294 setEnvValues ( initialValues ) ;
9395 }
9496 } ;
@@ -189,21 +191,19 @@ export function AddWorker({
189191 }
190192 const localTool : string [ ] = [ ] ;
191193 const mcpList : string [ ] = [ ] ;
192- selectedTools . map ( ( tool : any ) => {
194+ selectedTools . forEach ( ( tool : any ) => {
193195 if ( tool . isLocal ) {
194196 localTool . push ( tool . toolkit as string ) ;
195197 } else {
196198 mcpList . push ( tool ?. key || tool ?. mcp_name ) ;
197199 }
198200 } ) ;
199- Object . keys ( mcpLocal . mcpServers ) . map ( ( key ) => {
200- console . log ( "mcpList" , mcpList ) ;
201- console . log ( "mcpLocal.mcpServers" , mcpLocal . mcpServers ) ;
202-
201+ console . log ( "mcpLocal.mcpServers" , mcpLocal . mcpServers ) ;
202+ for ( const key of Object . keys ( mcpLocal . mcpServers ) ) {
203203 if ( ! mcpList . includes ( key ) ) {
204204 delete mcpLocal . mcpServers [ key ] ;
205205 }
206- } ) ;
206+ }
207207 if ( edit ) {
208208 const newWorkerList = workerList . map ( ( worker ) => {
209209 if ( worker . type === workerInfo ?. type ) {
@@ -232,8 +232,7 @@ export function AddWorker({
232232 } ) ;
233233 setWorkerList ( newWorkerList ) ;
234234 } else if (
235- chatStore . activeTaskId &&
236- chatStore . tasks [ chatStore . activeTaskId ] . messages . length === 0
235+ activeTaskId && tasks [ activeTaskId ] . messages . length === 0
237236 ) {
238237 const worker : Agent = {
239238 tasks : [ ] ,
@@ -255,7 +254,7 @@ export function AddWorker({
255254 } ;
256255 setWorkerList ( [ ...workerList , worker ] ) ;
257256 } else {
258- fetchPost ( `/task/${ chatStore . activeTaskId } /add-agent` , {
257+ fetchPost ( `/task/${ activeTaskId } /add-agent` , {
259258 name : workerName ,
260259 description : workerDescription ,
261260 tools : localTool ,
@@ -331,7 +330,9 @@ export function AddWorker({
331330 ? t ( "workforce.configure-mcp-server" )
332331 : t ( "workforce.add-your-mcp-server" ) }
333332 </ div >
334- < CircleAlert size = { 16 } />
333+ < TooltipSimple content = "Configure your MCP worker node here." >
334+ < CircleAlert size = { 16 } />
335+ </ TooltipSimple >
335336 </ div >
336337 </ DialogTitle >
337338 </ DialogHeader >
@@ -420,7 +421,7 @@ export function AddWorker({
420421 < div className = "flex items-center gap-sm pb-md border-[0px] border-b border-solid border-border-secondary" >
421422 < Bot size = { 32 } className = "text-icon-primary" />
422423 < Input
423- placeholder = ""
424+ placeholder = "Server Name "
424425 value = { workerName }
425426 onChange = { ( e ) => {
426427 setWorkerName ( e . target . value ) ;
@@ -430,6 +431,7 @@ export function AddWorker({
430431 className = { `!border-none !bg-transparent !shadow-none text-xl leading-2xl font-bold !ring-0 !ring-offset-0 ${
431432 nameError ? "border-red-500" : ""
432433 } `}
434+ required
433435 />
434436 < RefreshCw
435437 size = { 16 }
@@ -447,7 +449,7 @@ export function AddWorker({
447449 { t ( "workforce.description-optional" ) }
448450 </ div >
449451 < Textarea
450- placeholder = ""
452+ placeholder = "Mcp for ... "
451453 value = { workerDescription }
452454 onChange = { ( e ) => setWorkerDescription ( e . target . value ) }
453455 className = "rounded-sm border border-solid border-input-border-default bg-input-bg-default !shadow-none text-sm leading-normal !ring-0 !ring-offset-0 resize-none"
@@ -458,7 +460,9 @@ export function AddWorker({
458460 < div className = "text-text-body text-sm leading-normal font-bold" >
459461 { t ( "workforce.agent-tool" ) }
460462 </ div >
461- < CircleAlert size = { 16 } />
463+ < TooltipSimple content = "Select MCP tools for your worker node." >
464+ < CircleAlert size = { 16 } />
465+ </ TooltipSimple >
462466 </ div >
463467 </ div >
464468 < ToolSelect
0 commit comments