@burdenoff/microfe-botmanor 2026.1110.2 → 2026.1110.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,399 +1,405 @@
1
1
  import { useTr as e } from "../../shared/hooks/useTr.js";
2
2
  import { PageLayout as t } from "../components/PageLayout.js";
3
+ import { HandoffConfigPanel as ee } from "../components/HandoffConfigPanel.js";
3
4
  import { Card as n, CardContent as r, CardDescription as i, CardHeader as a, CardTitle as o } from "../components/Card.js";
4
5
  import { Button as s } from "../components/Button.js";
5
- import { Badge as c, StatusBadge as l } from "../components/Badge.js";
6
- import { BOTMANOR_PERMISSIONS as u } from "../permissions/botmanorPermissions.js";
7
- import { BotmanorPermissionGate as d, useBotmanorCan as f } from "../permissions/useBotmanorPermissions.js";
8
- import { EmptyState as p } from "../components/EmptyState.js";
9
- import { VersionHistoryPanel as m } from "../components/VersionHistoryPanel.js";
10
- import { AgentApprovalPanel as h } from "../components/AgentApprovalPanel.js";
11
- import { useAgentApprovalSettings as g } from "../hooks/useAgentApprovals.js";
12
- import { AssistantRuntimeSetupPanel as ee } from "../components/AssistantRuntimeSetupPanel.js";
13
- import { AssistantChannelPanel as te } from "../components/AssistantChannelPanel.js";
14
- import { AssistantWebsitePanel as ne } from "../components/AssistantWebsitePanel.js";
15
- import { AiOperationsPanel as re } from "../components/AiOperationsPanel.js";
16
- import { useAgent as _, useDeleteAgent as v, useUpdateAgent as y } from "../hooks/useAgents.js";
17
- import { useBotlit as ie } from "../providers/BotlitProvider.js";
6
+ import { BOTMANOR_PERMISSIONS as c } from "../permissions/botmanorPermissions.js";
7
+ import { BotmanorPermissionGate as l, useBotmanorCan as te } from "../permissions/useBotmanorPermissions.js";
8
+ import { Badge as u, StatusBadge as d } from "../components/Badge.js";
9
+ import { EmptyState as ne } from "../components/EmptyState.js";
10
+ import { VersionHistoryPanel as re } from "../components/VersionHistoryPanel.js";
11
+ import { AgentApprovalPanel as ie } from "../components/AgentApprovalPanel.js";
12
+ import { useAgentApprovalSettings as ae } from "../hooks/useAgentApprovals.js";
13
+ import { AssistantRuntimeSetupPanel as f } from "../components/AssistantRuntimeSetupPanel.js";
14
+ import { AssistantChannelPanel as p } from "../components/AssistantChannelPanel.js";
15
+ import { AssistantWebsitePanel as m } from "../components/AssistantWebsitePanel.js";
16
+ import { AiOperationsPanel as h } from "../components/AiOperationsPanel.js";
17
+ import { useAgent as g, useDeleteAgent as _, useUpdateAgent as v } from "../hooks/useAgents.js";
18
+ import { useBotlit as y } from "../providers/BotlitProvider.js";
18
19
  import { formatRelativeTime as b } from "../utils/formatters.js";
19
- import { cn as x } from "../utils/cn.js";
20
+ import { cn as oe } from "../utils/cn.js";
20
21
  import "../permissions/index.js";
21
- import { useState as ae } from "react";
22
- import { GlassCard as oe, NextSteps as se, PagePurpose as ce } from "@burdenoff/fe-libs/ui";
23
- import { Fragment as le, jsx as S, jsxs as C } from "react/jsx-runtime";
24
- import { useParams as ue } from "react-router";
25
- import { ArrowLeft as de, BarChart3 as fe, BookOpen as w, Brain as T, Edit as pe, FileText as E, History as me, MessageSquare as he, Play as D, Settings as O, Share2 as k, Shield as A, ShieldCheck as j, Trash2 as M, Wrench as N } from "lucide-react";
26
- import { toast as P } from "sonner";
22
+ import { useState as se } from "react";
23
+ import { GlassCard as ce, NextSteps as le, PagePurpose as ue } from "@burdenoff/fe-libs/ui";
24
+ import { Fragment as de, jsx as x, jsxs as S } from "react/jsx-runtime";
25
+ import { useParams as fe } from "react-router";
26
+ import { ArrowLeft as pe, BarChart3 as me, BookOpen as C, Brain as w, Edit as he, FileText as T, Headset as ge, History as _e, MessageSquare as ve, Play as E, Settings as D, Share2 as O, Shield as k, ShieldCheck as A, Trash2 as j, Wrench as M } from "lucide-react";
27
+ import { toast as N } from "sonner";
27
28
  // src/botlit/pages/AgentDetailPage.tsx
28
- var F = () => {
29
- let F = e(), { agentId: I } = ue(), { navigateTo: L } = ie(), R = f(), { data: z, loading: ge, refetch: B } = _(I), [V, H] = y(), [_e, ve] = v(), [U, W] = ae("overview"), ye = g();
30
- if (ge) return /* @__PURE__ */ S(t, {
31
- title: F("botlit.common.loading", "Loading..."),
32
- children: /* @__PURE__ */ S("div", { className: "h-96 bg-bg-sunken motion-safe:animate-vc-shimmer rounded-lg" })
29
+ var P = () => {
30
+ let P = e(), { agentId: F } = fe(), { navigateTo: I } = y(), L = te(), { data: R, loading: ye, refetch: z } = g(F), [B, V] = v(), [be, xe] = _(), [H, U] = se("overview"), Se = ae();
31
+ if (ye) return /* @__PURE__ */ x(t, {
32
+ title: P("botlit.common.loading", "Loading..."),
33
+ children: /* @__PURE__ */ x("div", { className: "h-96 bg-bg-sunken motion-safe:animate-vc-shimmer rounded-lg" })
33
34
  });
34
- if (!z) return /* @__PURE__ */ S(t, {
35
- title: F("botlit.agentDetail.notFound.title", "Agent Not Found"),
36
- children: /* @__PURE__ */ S(p, {
35
+ if (!R) return /* @__PURE__ */ x(t, {
36
+ title: P("botlit.agentDetail.notFound.title", "Agent Not Found"),
37
+ children: /* @__PURE__ */ x(ne, {
37
38
  illustration: "empty-agents",
38
- title: F("botlit.agentDetail.notFound.title", "Agent Not Found"),
39
- description: F("botlit.agentDetail.notFound.description", "The agent you're looking for doesn't exist."),
40
- action: /* @__PURE__ */ S(s, {
41
- onClick: () => L("agents"),
42
- children: F("botlit.agentDetail.notFound.backAction", "Back to Agents")
39
+ title: P("botlit.agentDetail.notFound.title", "Agent Not Found"),
40
+ description: P("botlit.agentDetail.notFound.description", "The agent you're looking for doesn't exist."),
41
+ action: /* @__PURE__ */ x(s, {
42
+ onClick: () => I("agents"),
43
+ children: P("botlit.agentDetail.notFound.backAction", "Back to Agents")
43
44
  })
44
45
  })
45
46
  });
46
- let G = z.systemPrompt || "", K = z.llmModelId || "", be = z.temperature, xe = z.maxTokens, q = z.mcpConnectionIds ?? [], J = z.knowledgeBaseIds ?? [], Y = z.workflowIds ?? [], X = z.capabilities ?? [], Z = z.tagIds ?? [], Q = z.maxConcurrentExecutions || 10, $ = z.metadata ?? null, Se = [
47
+ let W = R.systemPrompt || "", G = R.llmModelId || "", Ce = R.temperature, K = R.maxTokens, q = R.mcpConnectionIds ?? [], J = R.knowledgeBaseIds ?? [], Y = R.workflowIds ?? [], X = R.capabilities ?? [], Z = R.tagIds ?? [], Q = R.maxConcurrentExecutions || 10, $ = R.metadata ?? null, we = [
47
48
  {
48
49
  id: "assistant",
49
50
  label: "Assistant setup",
50
- icon: /* @__PURE__ */ S(O, { size: 16 })
51
+ icon: /* @__PURE__ */ x(D, { size: 16 })
51
52
  },
52
53
  {
53
54
  id: "overview",
54
- label: F("botlit.agentDetail.tabs.overview", "Overview"),
55
- icon: /* @__PURE__ */ S(fe, { size: 16 })
55
+ label: P("botlit.agentDetail.tabs.overview", "Overview"),
56
+ icon: /* @__PURE__ */ x(me, { size: 16 })
56
57
  },
57
58
  {
58
59
  id: "prompt",
59
- label: F("botlit.agentDetail.tabs.prompt", "Prompt"),
60
- icon: /* @__PURE__ */ S(E, { size: 16 })
60
+ label: P("botlit.agentDetail.tabs.prompt", "Prompt"),
61
+ icon: /* @__PURE__ */ x(T, { size: 16 })
61
62
  },
62
63
  {
63
64
  id: "llm",
64
- label: F("botlit.agentDetail.tabs.llmConfig", "LLM Config"),
65
- icon: /* @__PURE__ */ S(T, { size: 16 })
65
+ label: P("botlit.agentDetail.tabs.llmConfig", "LLM Config"),
66
+ icon: /* @__PURE__ */ x(w, { size: 16 })
66
67
  },
67
68
  {
68
69
  id: "tools",
69
- label: F("botlit.agentDetail.tabs.tools", "Tools"),
70
- icon: /* @__PURE__ */ S(N, { size: 16 })
70
+ label: P("botlit.agentDetail.tabs.tools", "Tools"),
71
+ icon: /* @__PURE__ */ x(M, { size: 16 })
71
72
  },
72
73
  {
73
74
  id: "knowledge",
74
- label: F("botlit.agentDetail.tabs.knowledge", "Knowledge"),
75
- icon: /* @__PURE__ */ S(w, { size: 16 })
75
+ label: P("botlit.agentDetail.tabs.knowledge", "Knowledge"),
76
+ icon: /* @__PURE__ */ x(C, { size: 16 })
76
77
  },
77
78
  {
78
79
  id: "guardrails",
79
- label: F("botlit.agentDetail.tabs.guardrails", "Guardrails"),
80
- icon: /* @__PURE__ */ S(A, { size: 16 })
80
+ label: P("botlit.agentDetail.tabs.guardrails", "Guardrails"),
81
+ icon: /* @__PURE__ */ x(k, { size: 16 })
82
+ },
83
+ {
84
+ id: "handoff",
85
+ label: P("botlit.agentDetail.tabs.handoff", "Handoff"),
86
+ icon: /* @__PURE__ */ x(ge, { size: 16 })
81
87
  },
82
88
  {
83
89
  id: "aiOperations",
84
- label: F("botlit.agentDetail.tabs.aiOperations", "AI Operations"),
85
- icon: /* @__PURE__ */ S(j, { size: 16 })
90
+ label: P("botlit.agentDetail.tabs.aiOperations", "AI Operations"),
91
+ icon: /* @__PURE__ */ x(A, { size: 16 })
86
92
  },
87
93
  {
88
94
  id: "a2a",
89
- label: F("botlit.agentDetail.tabs.a2a", "A2A"),
90
- icon: /* @__PURE__ */ S(k, { size: 16 })
95
+ label: P("botlit.agentDetail.tabs.a2a", "A2A"),
96
+ icon: /* @__PURE__ */ x(O, { size: 16 })
91
97
  },
92
98
  {
93
99
  id: "versions",
94
- label: F("botlit.agentDetail.tabs.versions", "Versions"),
95
- icon: /* @__PURE__ */ S(me, { size: 16 })
100
+ label: P("botlit.agentDetail.tabs.versions", "Versions"),
101
+ icon: /* @__PURE__ */ x(_e, { size: 16 })
96
102
  }
97
103
  ];
98
- return /* @__PURE__ */ S(t, {
99
- title: /* @__PURE__ */ C("div", {
104
+ return /* @__PURE__ */ x(t, {
105
+ title: /* @__PURE__ */ S("div", {
100
106
  className: "flex items-center gap-3",
101
107
  children: [
102
- /* @__PURE__ */ S(s, {
108
+ /* @__PURE__ */ x(s, {
103
109
  variant: "ghost",
104
110
  size: "icon",
105
- onClick: () => L("agents"),
106
- children: /* @__PURE__ */ S(de, { size: 20 })
111
+ onClick: () => I("agents"),
112
+ children: /* @__PURE__ */ x(pe, { size: 20 })
107
113
  }),
108
- /* @__PURE__ */ S("span", {
114
+ /* @__PURE__ */ x("span", {
109
115
  className: "text-3xl",
110
116
  children: "🤖"
111
117
  }),
112
- /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ C("div", {
118
+ /* @__PURE__ */ S("div", { children: [/* @__PURE__ */ S("div", {
113
119
  className: "flex items-center gap-2",
114
120
  children: [
115
- /* @__PURE__ */ S("span", { children: z.name }),
116
- /* @__PURE__ */ S(l, { status: z.status }),
117
- /* @__PURE__ */ S(c, {
121
+ /* @__PURE__ */ x("span", { children: R.name }),
122
+ /* @__PURE__ */ x(d, { status: R.status }),
123
+ /* @__PURE__ */ x(u, {
118
124
  variant: "outline",
119
- children: z.slug
125
+ children: R.slug
120
126
  })
121
127
  ]
122
- }), /* @__PURE__ */ S("p", {
128
+ }), /* @__PURE__ */ x("p", {
123
129
  className: "text-sm font-normal text-text-secondary",
124
- children: z.description
130
+ children: R.description
125
131
  })] })
126
132
  ]
127
133
  }),
128
- actions: /* @__PURE__ */ C("div", {
134
+ actions: /* @__PURE__ */ S("div", {
129
135
  className: "flex gap-2",
130
136
  children: [
131
- ye.data?.requireActivationApproval && (z.status === "DRAFT" || z.status === "ARCHIVED") && !z.currentVersionId ? /* @__PURE__ */ S(d, {
132
- permission: u.AGENT_UPDATE,
133
- children: /* @__PURE__ */ S(s, {
137
+ Se.data?.requireActivationApproval && (R.status === "DRAFT" || R.status === "ARCHIVED") && !R.currentVersionId ? /* @__PURE__ */ x(l, {
138
+ permission: c.AGENT_UPDATE,
139
+ children: /* @__PURE__ */ x(s, {
134
140
  variant: "default",
135
141
  onClick: () => {
136
- W("overview"), requestAnimationFrame(() => document.querySelector("[data-testid=\"agent-approval-panel\"]")?.scrollIntoView({
142
+ U("overview"), requestAnimationFrame(() => document.querySelector("[data-testid=\"agent-approval-panel\"]")?.scrollIntoView({
137
143
  behavior: "smooth",
138
144
  block: "start"
139
145
  }));
140
146
  },
141
- children: F("botlit.agentApproval.requestAction", "Request activation")
147
+ children: P("botlit.agentApproval.requestAction", "Request activation")
142
148
  })
143
- }) : z.status === "DRAFT" || z.status === "ARCHIVED" ? /* @__PURE__ */ S(d, {
144
- permission: u.AGENT_UPDATE,
145
- children: /* @__PURE__ */ S(s, {
149
+ }) : R.status === "DRAFT" || R.status === "ARCHIVED" ? /* @__PURE__ */ x(l, {
150
+ permission: c.AGENT_UPDATE,
151
+ children: /* @__PURE__ */ x(s, {
146
152
  variant: "default",
147
- isLoading: H.loading,
153
+ isLoading: V.loading,
148
154
  onClick: async () => {
149
155
  try {
150
- if (!I) return;
151
- await V({
152
- agentId: I,
156
+ if (!F) return;
157
+ await B({
158
+ agentId: F,
153
159
  input: { status: "ACTIVE" }
154
- }), await B(), P.success(`${F("botlit.agentDetail.activate.successPrefix", "Agent")} "${z.name}" ${F("botlit.agentDetail.activate.successSuffix", "activated")}`);
160
+ }), await z(), N.success(`${P("botlit.agentDetail.activate.successPrefix", "Agent")} "${R.name}" ${P("botlit.agentDetail.activate.successSuffix", "activated")}`);
155
161
  } catch (e) {
156
- P.error(e instanceof Error ? e.message : F("botlit.agentDetail.activate.error", "Failed to activate agent"));
162
+ N.error(e instanceof Error ? e.message : P("botlit.agentDetail.activate.error", "Failed to activate agent"));
157
163
  }
158
164
  },
159
- children: F("botlit.agentDetail.actions.activate", "Activate")
165
+ children: P("botlit.agentDetail.actions.activate", "Activate")
160
166
  })
161
- }) : /* @__PURE__ */ S(d, {
162
- permission: u.AGENT_UPDATE,
163
- children: /* @__PURE__ */ S(s, {
167
+ }) : /* @__PURE__ */ x(l, {
168
+ permission: c.AGENT_UPDATE,
169
+ children: /* @__PURE__ */ x(s, {
164
170
  variant: "outline",
165
- isLoading: H.loading,
171
+ isLoading: V.loading,
166
172
  onClick: async () => {
167
173
  try {
168
- if (!I) return;
169
- await V({
170
- agentId: I,
174
+ if (!F) return;
175
+ await B({
176
+ agentId: F,
171
177
  input: { status: "DRAFT" }
172
- }), await B(), P.success(`${F("botlit.agentDetail.deactivate.successPrefix", "Agent")} "${z.name}" ${F("botlit.agentDetail.deactivate.successSuffix", "deactivated")}`);
178
+ }), await z(), N.success(`${P("botlit.agentDetail.deactivate.successPrefix", "Agent")} "${R.name}" ${P("botlit.agentDetail.deactivate.successSuffix", "deactivated")}`);
173
179
  } catch (e) {
174
- P.error(e instanceof Error ? e.message : F("botlit.agentDetail.deactivate.error", "Failed to deactivate agent"));
180
+ N.error(e instanceof Error ? e.message : P("botlit.agentDetail.deactivate.error", "Failed to deactivate agent"));
175
181
  }
176
182
  },
177
- children: F("botlit.agentDetail.actions.deactivate", "Deactivate")
183
+ children: P("botlit.agentDetail.actions.deactivate", "Deactivate")
178
184
  })
179
185
  }),
180
- /* @__PURE__ */ S(d, {
181
- permission: u.AGENT_UPDATE,
182
- children: /* @__PURE__ */ S(s, {
186
+ /* @__PURE__ */ x(l, {
187
+ permission: c.AGENT_UPDATE,
188
+ children: /* @__PURE__ */ x(s, {
183
189
  variant: "outline",
184
- leftIcon: /* @__PURE__ */ S(pe, { size: 16 }),
185
- onClick: () => L(`agents/${I}/edit`),
186
- children: F("botlit.agentDetail.actions.editAgent", "Edit Agent")
190
+ leftIcon: /* @__PURE__ */ x(he, { size: 16 }),
191
+ onClick: () => I(`agents/${F}/edit`),
192
+ children: P("botlit.agentDetail.actions.editAgent", "Edit Agent")
187
193
  })
188
194
  }),
189
- /* @__PURE__ */ S(d, {
190
- permission: u.AGENT_EXECUTE,
191
- children: /* @__PURE__ */ S(s, {
192
- leftIcon: /* @__PURE__ */ S(D, { size: 16 }),
193
- onClick: () => L(`chat/${I}`),
194
- children: F("botlit.agentDetail.actions.testAgent", "Test Agent")
195
+ /* @__PURE__ */ x(l, {
196
+ permission: c.AGENT_EXECUTE,
197
+ children: /* @__PURE__ */ x(s, {
198
+ leftIcon: /* @__PURE__ */ x(E, { size: 16 }),
199
+ onClick: () => I(`chat/${F}`),
200
+ children: P("botlit.agentDetail.actions.testAgent", "Test Agent")
195
201
  })
196
202
  }),
197
- /* @__PURE__ */ S(d, {
198
- permission: u.AGENT_DELETE,
199
- children: /* @__PURE__ */ S(s, {
203
+ /* @__PURE__ */ x(l, {
204
+ permission: c.AGENT_DELETE,
205
+ children: /* @__PURE__ */ x(s, {
200
206
  variant: "destructive",
201
- leftIcon: /* @__PURE__ */ S(M, { size: 16 }),
202
- isLoading: ve.loading,
207
+ leftIcon: /* @__PURE__ */ x(j, { size: 16 }),
208
+ isLoading: xe.loading,
203
209
  onClick: async () => {
204
- if (I && confirm(`${F("botlit.agentDetail.delete.confirmPrefix", "Are you sure you want to delete")} "${z.name}"? ${F("botlit.agentDetail.delete.confirmSuffix", "This action cannot be undone.")}`)) try {
205
- await _e(I), P.success(`${F("botlit.agentDetail.delete.successPrefix", "Agent")} "${z.name}" ${F("botlit.agentDetail.delete.successSuffix", "deleted successfully")}`), L("agents");
210
+ if (F && confirm(`${P("botlit.agentDetail.delete.confirmPrefix", "Are you sure you want to delete")} "${R.name}"? ${P("botlit.agentDetail.delete.confirmSuffix", "This action cannot be undone.")}`)) try {
211
+ await be(F), N.success(`${P("botlit.agentDetail.delete.successPrefix", "Agent")} "${R.name}" ${P("botlit.agentDetail.delete.successSuffix", "deleted successfully")}`), I("agents");
206
212
  } catch (e) {
207
- P.error(e instanceof Error ? e.message : F("botlit.agentDetail.delete.error", "Failed to delete agent"));
213
+ N.error(e instanceof Error ? e.message : P("botlit.agentDetail.delete.error", "Failed to delete agent"));
208
214
  }
209
215
  },
210
- children: F("botlit.common.delete", "Delete")
216
+ children: P("botlit.common.delete", "Delete")
211
217
  })
212
218
  })
213
219
  ]
214
220
  }),
215
- children: /* @__PURE__ */ C("div", {
221
+ children: /* @__PURE__ */ S("div", {
216
222
  className: "space-y-6",
217
223
  children: [
218
- U === "assistant" && I && /* @__PURE__ */ C("div", {
224
+ H === "assistant" && F && /* @__PURE__ */ S("div", {
219
225
  className: "space-y-5",
220
226
  children: [
221
- R(u.AGENT_UPDATE) && /* @__PURE__ */ S(ee, {
222
- agentId: I,
223
- onConfigured: () => void B()
227
+ L(c.AGENT_UPDATE) && /* @__PURE__ */ x(f, {
228
+ agentId: F,
229
+ onConfigured: () => void z()
224
230
  }),
225
- R(u.AGENT_PUBLISH) && /* @__PURE__ */ C(le, { children: [/* @__PURE__ */ S(ne, {
226
- agentId: I,
231
+ L(c.AGENT_PUBLISH) && /* @__PURE__ */ S(de, { children: [/* @__PURE__ */ x(m, {
232
+ agentId: F,
227
233
  knowledgeBaseIds: J
228
- }), /* @__PURE__ */ S(te, { agentId: I })] }),
229
- !R(u.AGENT_UPDATE) && !R(u.AGENT_PUBLISH) && /* @__PURE__ */ S("p", {
234
+ }), /* @__PURE__ */ x(p, { agentId: F })] }),
235
+ !L(c.AGENT_UPDATE) && !L(c.AGENT_PUBLISH) && /* @__PURE__ */ x("p", {
230
236
  role: "status",
231
237
  className: "text-sm text-text-secondary",
232
- children: F("botlit.agentDetail.assistant.readOnly", "Assistant setup and publishing are available to members who can edit or publish agents in this workspace.")
238
+ children: P("botlit.agentDetail.assistant.readOnly", "Assistant setup and publishing are available to members who can edit or publish agents in this workspace.")
233
239
  })
234
240
  ]
235
241
  }),
236
- /* @__PURE__ */ S(ce, {
237
- icon: /* @__PURE__ */ S(T, { size: 18 }),
238
- children: F("botlit.agentDetail.purpose", "This is the full configuration for a single agent — its prompt, model settings, the tools and knowledge it can use, its guardrails and how it talks to other agents. Use the tabs to inspect or change any part, and test the agent in chat to confirm it behaves the way you expect before going live.")
242
+ /* @__PURE__ */ x(ue, {
243
+ icon: /* @__PURE__ */ x(w, { size: 18 }),
244
+ children: P("botlit.agentDetail.purpose", "This is the full configuration for a single agent — its prompt, model settings, the tools and knowledge it can use, its guardrails and how it talks to other agents. Use the tabs to inspect or change any part, and test the agent in chat to confirm it behaves the way you expect before going live.")
239
245
  }),
240
- /* @__PURE__ */ S("div", {
246
+ /* @__PURE__ */ x("div", {
241
247
  className: "flex gap-1 border-b border-border-subtle overflow-x-auto",
242
- children: Se.map((e) => /* @__PURE__ */ C("button", {
243
- onClick: () => W(e.id),
244
- className: x("flex items-center gap-2 px-4 py-2 text-sm font-medium border-b-2 transition-colors whitespace-nowrap", U === e.id ? "border-primary text-primary" : "border-transparent text-text-secondary hover:text-text-primary"),
248
+ children: we.map((e) => /* @__PURE__ */ S("button", {
249
+ onClick: () => U(e.id),
250
+ className: oe("flex items-center gap-2 px-4 py-2 text-sm font-medium border-b-2 transition-colors whitespace-nowrap", H === e.id ? "border-primary text-primary" : "border-transparent text-text-secondary hover:text-text-primary"),
245
251
  children: [e.icon, e.label]
246
252
  }, e.id))
247
253
  }),
248
- U === "overview" && /* @__PURE__ */ C("div", {
254
+ H === "overview" && /* @__PURE__ */ S("div", {
249
255
  className: "space-y-6",
250
256
  children: [
251
- /* @__PURE__ */ S(se, {
252
- storageKey: `botlit-agent-${I}`,
257
+ /* @__PURE__ */ x(le, {
258
+ storageKey: `botlit-agent-${F}`,
253
259
  steps: [
254
260
  {
255
261
  id: "test",
256
- label: F("botlit.agentDetail.nextSteps.test", "Test the agent in chat"),
257
- description: F("botlit.agentDetail.nextSteps.testDesc", "Send it a few real prompts to see how it responds."),
258
- icon: /* @__PURE__ */ S(D, { size: 16 }),
259
- onClick: () => L(`chat/${I}`)
262
+ label: P("botlit.agentDetail.nextSteps.test", "Test the agent in chat"),
263
+ description: P("botlit.agentDetail.nextSteps.testDesc", "Send it a few real prompts to see how it responds."),
264
+ icon: /* @__PURE__ */ x(E, { size: 16 }),
265
+ onClick: () => I(`chat/${F}`)
260
266
  },
261
267
  {
262
268
  id: "prompt",
263
- label: F("botlit.agentDetail.nextSteps.prompt", "Refine the system prompt"),
264
- description: F("botlit.agentDetail.nextSteps.promptDesc", "Tune its instructions and behaviour."),
265
- icon: /* @__PURE__ */ S(E, { size: 16 }),
266
- onClick: () => W("prompt")
269
+ label: P("botlit.agentDetail.nextSteps.prompt", "Refine the system prompt"),
270
+ description: P("botlit.agentDetail.nextSteps.promptDesc", "Tune its instructions and behaviour."),
271
+ icon: /* @__PURE__ */ x(T, { size: 16 }),
272
+ onClick: () => U("prompt")
267
273
  },
268
274
  {
269
275
  id: "tools",
270
- label: F("botlit.agentDetail.nextSteps.tools", "Connect tools & knowledge"),
271
- description: F("botlit.agentDetail.nextSteps.toolsDesc", "Give it MCP tools and knowledge bases to work with."),
272
- icon: /* @__PURE__ */ S(N, { size: 16 }),
273
- onClick: () => W("tools")
276
+ label: P("botlit.agentDetail.nextSteps.tools", "Connect tools & knowledge"),
277
+ description: P("botlit.agentDetail.nextSteps.toolsDesc", "Give it MCP tools and knowledge bases to work with."),
278
+ icon: /* @__PURE__ */ x(M, { size: 16 }),
279
+ onClick: () => U("tools")
274
280
  },
275
281
  {
276
282
  id: "activate",
277
- label: F("botlit.agentDetail.nextSteps.activate", "Activate and attach to a bot"),
278
- description: F("botlit.agentDetail.nextSteps.activateDesc", "Put it live so a bot can route conversations to it."),
279
- icon: /* @__PURE__ */ S(k, { size: 16 }),
280
- onClick: () => L(`agents/${I}/edit`),
281
- done: z.status === "ACTIVE"
283
+ label: P("botlit.agentDetail.nextSteps.activate", "Activate and attach to a bot"),
284
+ description: P("botlit.agentDetail.nextSteps.activateDesc", "Put it live so a bot can route conversations to it."),
285
+ icon: /* @__PURE__ */ x(O, { size: 16 }),
286
+ onClick: () => I(`agents/${F}/edit`),
287
+ done: R.status === "ACTIVE"
282
288
  }
283
289
  ]
284
290
  }),
285
- I && /* @__PURE__ */ S(h, {
286
- agentId: I,
287
- agentStatus: z.status,
288
- onChanged: () => void B()
291
+ F && /* @__PURE__ */ x(ie, {
292
+ agentId: F,
293
+ agentStatus: R.status,
294
+ onChanged: () => void z()
289
295
  }),
290
- /* @__PURE__ */ C("div", {
296
+ /* @__PURE__ */ S("div", {
291
297
  className: "grid grid-cols-1 lg:grid-cols-3 gap-6",
292
298
  children: [
293
- /* @__PURE__ */ C(n, {
299
+ /* @__PURE__ */ S(n, {
294
300
  className: "lg:col-span-1",
295
- children: [/* @__PURE__ */ S(a, { children: /* @__PURE__ */ S(o, { children: "Details" }) }), /* @__PURE__ */ C(r, {
301
+ children: [/* @__PURE__ */ x(a, { children: /* @__PURE__ */ x(o, { children: "Details" }) }), /* @__PURE__ */ S(r, {
296
302
  className: "space-y-4",
297
303
  children: [
298
- /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("p", {
304
+ /* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("p", {
299
305
  className: "text-sm text-text-secondary",
300
306
  children: "Status"
301
- }), /* @__PURE__ */ S(l, { status: z.status })] }),
302
- /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("p", {
307
+ }), /* @__PURE__ */ x(d, { status: R.status })] }),
308
+ /* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("p", {
303
309
  className: "text-sm text-text-secondary",
304
310
  children: "Type"
305
- }), /* @__PURE__ */ S(c, {
311
+ }), /* @__PURE__ */ x(u, {
306
312
  variant: "outline",
307
- children: z.type
313
+ children: R.type
308
314
  })] }),
309
- /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("p", {
315
+ /* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("p", {
310
316
  className: "text-sm text-text-secondary",
311
317
  children: "Visibility"
312
- }), /* @__PURE__ */ S(c, {
318
+ }), /* @__PURE__ */ x(u, {
313
319
  variant: "outline",
314
- children: z.visibility
320
+ children: R.visibility
315
321
  })] }),
316
- /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("p", {
322
+ /* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("p", {
317
323
  className: "text-sm text-text-secondary",
318
324
  children: "LLM Model"
319
- }), /* @__PURE__ */ S("p", {
325
+ }), /* @__PURE__ */ x("p", {
320
326
  className: "font-medium font-mono text-sm",
321
- children: K || "Not configured"
327
+ children: G || "Not configured"
322
328
  })] }),
323
- /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("p", {
329
+ /* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("p", {
324
330
  className: "text-sm text-text-secondary",
325
331
  children: "MCP Connections"
326
- }), /* @__PURE__ */ C("p", {
332
+ }), /* @__PURE__ */ S("p", {
327
333
  className: "font-medium",
328
334
  children: [q.length, " servers"]
329
335
  })] }),
330
- /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("p", {
336
+ /* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("p", {
331
337
  className: "text-sm text-text-secondary",
332
338
  children: "Knowledge Bases"
333
- }), /* @__PURE__ */ C("p", {
339
+ }), /* @__PURE__ */ S("p", {
334
340
  className: "font-medium",
335
341
  children: [J.length, " KBs"]
336
342
  })] }),
337
- /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("p", {
343
+ /* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("p", {
338
344
  className: "text-sm text-text-secondary",
339
345
  children: "Max Concurrent"
340
- }), /* @__PURE__ */ S("p", {
346
+ }), /* @__PURE__ */ x("p", {
341
347
  className: "font-medium",
342
348
  children: Q
343
349
  })] }),
344
- /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("p", {
350
+ /* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("p", {
345
351
  className: "text-sm text-text-secondary",
346
352
  children: "Executions"
347
- }), /* @__PURE__ */ S("p", {
353
+ }), /* @__PURE__ */ x("p", {
348
354
  className: "font-medium",
349
- children: z.executionCount ?? 0
355
+ children: R.executionCount ?? 0
350
356
  })] }),
351
- /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("p", {
357
+ /* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("p", {
352
358
  className: "text-sm text-text-secondary",
353
359
  children: "Created"
354
- }), /* @__PURE__ */ S("p", {
360
+ }), /* @__PURE__ */ x("p", {
355
361
  className: "font-medium",
356
- children: b(z.createdAt)
362
+ children: b(R.createdAt)
357
363
  })] }),
358
- /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("p", {
364
+ /* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("p", {
359
365
  className: "text-sm text-text-secondary",
360
366
  children: "Updated"
361
- }), /* @__PURE__ */ S("p", {
367
+ }), /* @__PURE__ */ x("p", {
362
368
  className: "font-medium",
363
- children: b(z.updatedAt)
369
+ children: b(R.updatedAt)
364
370
  })] })
365
371
  ]
366
372
  })]
367
373
  }),
368
- /* @__PURE__ */ C(oe, {
374
+ /* @__PURE__ */ S(ce, {
369
375
  treatment: "glass",
370
376
  glow: !0,
371
377
  className: "lg:col-span-2 p-6",
372
- children: [/* @__PURE__ */ S("h3", {
378
+ children: [/* @__PURE__ */ x("h3", {
373
379
  className: "mb-4 text-lg font-semibold tracking-tight text-text-primary",
374
- children: F("botlit.agentDetail.capabilities.title", "Capabilities")
375
- }), /* @__PURE__ */ S("div", { children: X.length > 0 ? /* @__PURE__ */ S("div", {
380
+ children: P("botlit.agentDetail.capabilities.title", "Capabilities")
381
+ }), /* @__PURE__ */ x("div", { children: X.length > 0 ? /* @__PURE__ */ x("div", {
376
382
  className: "grid grid-cols-2 md:grid-cols-3 gap-4",
377
- children: X.map((e) => /* @__PURE__ */ C("div", {
383
+ children: X.map((e) => /* @__PURE__ */ S("div", {
378
384
  className: "p-3 rounded-lg border border-status-success-border bg-status-success-bg-subtle",
379
- children: [/* @__PURE__ */ S("p", {
385
+ children: [/* @__PURE__ */ x("p", {
380
386
  className: "font-medium",
381
387
  children: e
382
- }), /* @__PURE__ */ S(c, {
388
+ }), /* @__PURE__ */ x(u, {
383
389
  variant: "success",
384
- children: F("botlit.agentDetail.capabilities.enabled", "Enabled")
390
+ children: P("botlit.agentDetail.capabilities.enabled", "Enabled")
385
391
  })]
386
392
  }, e))
387
- }) : /* @__PURE__ */ S("p", {
393
+ }) : /* @__PURE__ */ x("p", {
388
394
  className: "text-text-secondary",
389
- children: F("botlit.agentDetail.capabilities.empty", "No capabilities configured")
395
+ children: P("botlit.agentDetail.capabilities.empty", "No capabilities configured")
390
396
  }) })]
391
397
  }),
392
- Z.length > 0 && /* @__PURE__ */ C(n, {
398
+ Z.length > 0 && /* @__PURE__ */ S(n, {
393
399
  className: "lg:col-span-3",
394
- children: [/* @__PURE__ */ S(a, { children: /* @__PURE__ */ S(o, { children: F("botlit.agentDetail.tags.title", "Tags") }) }), /* @__PURE__ */ S(r, { children: /* @__PURE__ */ S("div", {
400
+ children: [/* @__PURE__ */ x(a, { children: /* @__PURE__ */ x(o, { children: P("botlit.agentDetail.tags.title", "Tags") }) }), /* @__PURE__ */ x(r, { children: /* @__PURE__ */ x("div", {
395
401
  className: "flex flex-wrap gap-2",
396
- children: Z.map((e) => /* @__PURE__ */ S(c, {
402
+ children: Z.map((e) => /* @__PURE__ */ x(u, {
397
403
  variant: "outline",
398
404
  children: e
399
405
  }, e))
@@ -403,190 +409,194 @@ var F = () => {
403
409
  })
404
410
  ]
405
411
  }),
406
- U === "prompt" && /* @__PURE__ */ S("div", {
412
+ H === "prompt" && /* @__PURE__ */ x("div", {
407
413
  className: "space-y-6",
408
- children: /* @__PURE__ */ C(n, { children: [/* @__PURE__ */ C(a, { children: [/* @__PURE__ */ C(o, {
414
+ children: /* @__PURE__ */ S(n, { children: [/* @__PURE__ */ S(a, { children: [/* @__PURE__ */ S(o, {
409
415
  className: "flex items-center gap-2",
410
- children: [/* @__PURE__ */ S(E, { size: 18 }), F("botlit.agentDetail.prompt.title", "System Prompt")]
411
- }), /* @__PURE__ */ S(i, { children: F("botlit.agentDetail.prompt.description", "The system prompt that defines this agent's behavior") })] }), /* @__PURE__ */ S(r, {
416
+ children: [/* @__PURE__ */ x(T, { size: 18 }), P("botlit.agentDetail.prompt.title", "System Prompt")]
417
+ }), /* @__PURE__ */ x(i, { children: P("botlit.agentDetail.prompt.description", "The system prompt that defines this agent's behavior") })] }), /* @__PURE__ */ x(r, {
412
418
  className: "space-y-4",
413
- children: G ? /* @__PURE__ */ S("pre", {
419
+ children: W ? /* @__PURE__ */ x("pre", {
414
420
  className: "p-4 bg-bg-sunken rounded-lg text-sm whitespace-pre-wrap font-mono",
415
- children: G
416
- }) : /* @__PURE__ */ S("p", {
421
+ children: W
422
+ }) : /* @__PURE__ */ x("p", {
417
423
  className: "text-text-secondary",
418
- children: F("botlit.agentDetail.prompt.empty", "No system prompt configured")
424
+ children: P("botlit.agentDetail.prompt.empty", "No system prompt configured")
419
425
  })
420
426
  })] })
421
427
  }),
422
- U === "llm" && /* @__PURE__ */ C("div", {
428
+ H === "llm" && /* @__PURE__ */ S("div", {
423
429
  className: "grid grid-cols-1 lg:grid-cols-2 gap-6",
424
- children: [/* @__PURE__ */ C(n, { children: [/* @__PURE__ */ S(a, { children: /* @__PURE__ */ C(o, {
430
+ children: [/* @__PURE__ */ S(n, { children: [/* @__PURE__ */ x(a, { children: /* @__PURE__ */ S(o, {
425
431
  className: "flex items-center gap-2",
426
- children: [/* @__PURE__ */ S(T, { size: 18 }), F("botlit.agentDetail.llm.title", "Model Configuration")]
427
- }) }), /* @__PURE__ */ C(r, {
432
+ children: [/* @__PURE__ */ x(w, { size: 18 }), P("botlit.agentDetail.llm.title", "Model Configuration")]
433
+ }) }), /* @__PURE__ */ S(r, {
428
434
  className: "space-y-4",
429
435
  children: [
430
- /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("p", {
436
+ /* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("p", {
431
437
  className: "text-sm text-text-secondary",
432
438
  children: "LLM Model ID"
433
- }), /* @__PURE__ */ S("p", {
439
+ }), /* @__PURE__ */ x("p", {
434
440
  className: "font-medium font-mono",
435
- children: K || "Not configured"
441
+ children: G || "Not configured"
436
442
  })] }),
437
- /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("p", {
443
+ /* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("p", {
438
444
  className: "text-sm text-text-secondary",
439
445
  children: "Temperature"
440
- }), /* @__PURE__ */ S("p", {
446
+ }), /* @__PURE__ */ x("p", {
441
447
  className: "font-medium",
442
- children: be ?? "Default"
448
+ children: Ce ?? "Default"
443
449
  })] }),
444
- /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("p", {
450
+ /* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("p", {
445
451
  className: "text-sm text-text-secondary",
446
452
  children: "Max Tokens"
447
- }), /* @__PURE__ */ S("p", {
453
+ }), /* @__PURE__ */ x("p", {
448
454
  className: "font-medium",
449
- children: xe ?? "Default"
455
+ children: K ?? "Default"
450
456
  })] })
451
457
  ]
452
- })] }), /* @__PURE__ */ C(n, { children: [/* @__PURE__ */ S(a, { children: /* @__PURE__ */ C(o, {
458
+ })] }), /* @__PURE__ */ S(n, { children: [/* @__PURE__ */ x(a, { children: /* @__PURE__ */ S(o, {
453
459
  className: "flex items-center gap-2",
454
- children: [/* @__PURE__ */ S(he, { size: 18 }), F("botlit.agentDetail.executionLimits.title", "Execution Limits")]
455
- }) }), /* @__PURE__ */ C(r, {
460
+ children: [/* @__PURE__ */ x(ve, { size: 18 }), P("botlit.agentDetail.executionLimits.title", "Execution Limits")]
461
+ }) }), /* @__PURE__ */ S(r, {
456
462
  className: "space-y-4",
457
463
  children: [
458
- /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("p", {
464
+ /* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("p", {
459
465
  className: "text-sm text-text-secondary",
460
466
  children: "Max Concurrent Executions"
461
- }), /* @__PURE__ */ S("p", {
467
+ }), /* @__PURE__ */ x("p", {
462
468
  className: "font-medium",
463
469
  children: Q
464
470
  })] }),
465
- /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("p", {
471
+ /* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("p", {
466
472
  className: "text-sm text-text-secondary",
467
473
  children: "Total Executions"
468
- }), /* @__PURE__ */ S("p", {
474
+ }), /* @__PURE__ */ x("p", {
469
475
  className: "font-medium",
470
- children: z.executionCount ?? 0
476
+ children: R.executionCount ?? 0
471
477
  })] }),
472
- z.lastExecutedAt && /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("p", {
478
+ R.lastExecutedAt && /* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("p", {
473
479
  className: "text-sm text-text-secondary",
474
480
  children: "Last Executed"
475
- }), /* @__PURE__ */ S("p", {
481
+ }), /* @__PURE__ */ x("p", {
476
482
  className: "font-medium",
477
- children: b(z.lastExecutedAt)
483
+ children: b(R.lastExecutedAt)
478
484
  })] })
479
485
  ]
480
486
  })] })]
481
487
  }),
482
- U === "tools" && /* @__PURE__ */ C("div", {
488
+ H === "tools" && /* @__PURE__ */ S("div", {
483
489
  className: "space-y-6",
484
- children: [/* @__PURE__ */ C(n, { children: [/* @__PURE__ */ C(a, { children: [/* @__PURE__ */ C(o, {
490
+ children: [/* @__PURE__ */ S(n, { children: [/* @__PURE__ */ S(a, { children: [/* @__PURE__ */ S(o, {
485
491
  className: "flex items-center gap-2",
486
- children: [/* @__PURE__ */ S(N, { size: 18 }), "MCP Server Connections"]
487
- }), /* @__PURE__ */ S(i, { children: "Connected MCP servers providing tools" })] }), /* @__PURE__ */ S(r, { children: q.length > 0 ? /* @__PURE__ */ S("div", {
492
+ children: [/* @__PURE__ */ x(M, { size: 18 }), "MCP Server Connections"]
493
+ }), /* @__PURE__ */ x(i, { children: "Connected MCP servers providing tools" })] }), /* @__PURE__ */ x(r, { children: q.length > 0 ? /* @__PURE__ */ x("div", {
488
494
  className: "grid grid-cols-1 md:grid-cols-2 gap-4",
489
- children: q.map((e) => /* @__PURE__ */ C("div", {
495
+ children: q.map((e) => /* @__PURE__ */ S("div", {
490
496
  className: "flex items-center gap-3 p-4 border border-border-subtle rounded-lg",
491
- children: [/* @__PURE__ */ S("div", {
497
+ children: [/* @__PURE__ */ x("div", {
492
498
  className: "p-2 bg-action-primary-bg/10 rounded-lg",
493
- children: /* @__PURE__ */ S(N, {
499
+ children: /* @__PURE__ */ x(M, {
494
500
  size: 18,
495
501
  className: "text-primary"
496
502
  })
497
- }), /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("p", {
503
+ }), /* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("p", {
498
504
  className: "font-medium",
499
505
  children: "MCP Server"
500
- }), /* @__PURE__ */ S("p", {
506
+ }), /* @__PURE__ */ x("p", {
501
507
  className: "text-sm text-text-secondary font-mono",
502
508
  children: e
503
509
  })] })]
504
510
  }, e))
505
- }) : /* @__PURE__ */ S("p", {
511
+ }) : /* @__PURE__ */ x("p", {
506
512
  className: "text-text-secondary",
507
513
  children: "No MCP servers connected"
508
- }) })] }), Y.length > 0 && /* @__PURE__ */ C(n, { children: [/* @__PURE__ */ S(a, { children: /* @__PURE__ */ C(o, {
514
+ }) })] }), Y.length > 0 && /* @__PURE__ */ S(n, { children: [/* @__PURE__ */ x(a, { children: /* @__PURE__ */ S(o, {
509
515
  className: "flex items-center gap-2",
510
- children: [/* @__PURE__ */ S(O, { size: 18 }), "Workflows"]
511
- }) }), /* @__PURE__ */ S(r, { children: /* @__PURE__ */ S("div", {
516
+ children: [/* @__PURE__ */ x(D, { size: 18 }), "Workflows"]
517
+ }) }), /* @__PURE__ */ x(r, { children: /* @__PURE__ */ x("div", {
512
518
  className: "grid grid-cols-1 md:grid-cols-2 gap-4",
513
- children: Y.map((e) => /* @__PURE__ */ S("div", {
519
+ children: Y.map((e) => /* @__PURE__ */ x("div", {
514
520
  className: "p-4 border border-border-subtle rounded-lg",
515
- children: /* @__PURE__ */ S("p", {
521
+ children: /* @__PURE__ */ x("p", {
516
522
  className: "font-mono text-sm",
517
523
  children: e
518
524
  })
519
525
  }, e))
520
526
  }) })] })]
521
527
  }),
522
- U === "knowledge" && /* @__PURE__ */ C(n, { children: [/* @__PURE__ */ C(a, { children: [/* @__PURE__ */ C(o, {
528
+ H === "knowledge" && /* @__PURE__ */ S(n, { children: [/* @__PURE__ */ S(a, { children: [/* @__PURE__ */ S(o, {
523
529
  className: "flex items-center gap-2",
524
- children: [/* @__PURE__ */ S(w, { size: 18 }), "Knowledge Bases"]
525
- }), /* @__PURE__ */ S(i, { children: "Connected knowledge bases for RAG" })] }), /* @__PURE__ */ S(r, { children: J.length > 0 ? /* @__PURE__ */ S("div", {
530
+ children: [/* @__PURE__ */ x(C, { size: 18 }), "Knowledge Bases"]
531
+ }), /* @__PURE__ */ x(i, { children: "Connected knowledge bases for RAG" })] }), /* @__PURE__ */ x(r, { children: J.length > 0 ? /* @__PURE__ */ x("div", {
526
532
  className: "space-y-4",
527
- children: J.map((e, t) => /* @__PURE__ */ C("div", {
533
+ children: J.map((e, t) => /* @__PURE__ */ S("div", {
528
534
  className: "p-4 border border-border-subtle rounded-lg space-y-2",
529
- children: [/* @__PURE__ */ C("div", {
535
+ children: [/* @__PURE__ */ S("div", {
530
536
  className: "flex items-center justify-between",
531
- children: [/* @__PURE__ */ S("p", {
537
+ children: [/* @__PURE__ */ x("p", {
532
538
  className: "font-medium",
533
539
  children: "Knowledge Base"
534
- }), /* @__PURE__ */ C(c, {
540
+ }), /* @__PURE__ */ S(u, {
535
541
  variant: "outline",
536
542
  children: ["#", t + 1]
537
543
  })]
538
- }), /* @__PURE__ */ S("p", {
544
+ }), /* @__PURE__ */ x("p", {
539
545
  className: "font-mono text-sm",
540
546
  children: e
541
547
  })]
542
548
  }, t))
543
- }) : /* @__PURE__ */ S("p", {
549
+ }) : /* @__PURE__ */ x("p", {
544
550
  className: "text-text-secondary",
545
551
  children: "No knowledge bases connected"
546
552
  }) })] }),
547
- U === "guardrails" && /* @__PURE__ */ C(n, { children: [/* @__PURE__ */ C(a, { children: [/* @__PURE__ */ C(o, {
553
+ H === "handoff" && F && /* @__PURE__ */ x("div", {
554
+ className: "mx-auto w-full max-w-3xl",
555
+ children: /* @__PURE__ */ x(ee, { agentId: F })
556
+ }),
557
+ H === "guardrails" && /* @__PURE__ */ S(n, { children: [/* @__PURE__ */ S(a, { children: [/* @__PURE__ */ S(o, {
548
558
  className: "flex items-center gap-2",
549
- children: [/* @__PURE__ */ S(A, { size: 18 }), "Guardrails & Policies"]
550
- }), /* @__PURE__ */ S(i, { children: "Security and policy configurations" })] }), /* @__PURE__ */ S(r, { children: $ ? /* @__PURE__ */ S("div", {
559
+ children: [/* @__PURE__ */ x(k, { size: 18 }), "Guardrails & Policies"]
560
+ }), /* @__PURE__ */ x(i, { children: "Security and policy configurations" })] }), /* @__PURE__ */ x(r, { children: $ ? /* @__PURE__ */ x("div", {
551
561
  className: "grid grid-cols-1 md:grid-cols-2 gap-4",
552
- children: Object.entries($).filter(([e, t]) => t).map(([e, t]) => /* @__PURE__ */ C("div", {
562
+ children: Object.entries($).filter(([e, t]) => t).map(([e, t]) => /* @__PURE__ */ S("div", {
553
563
  className: "p-4 border border-border-subtle rounded-lg",
554
- children: [/* @__PURE__ */ S("p", {
564
+ children: [/* @__PURE__ */ x("p", {
555
565
  className: "text-sm text-text-secondary capitalize",
556
566
  children: e.replace("Id", "").replace(/([A-Z])/g, " $1").trim()
557
- }), /* @__PURE__ */ S("p", {
567
+ }), /* @__PURE__ */ x("p", {
558
568
  className: "font-mono text-sm",
559
569
  children: String(t)
560
570
  })]
561
571
  }, e))
562
- }) : /* @__PURE__ */ S("p", {
572
+ }) : /* @__PURE__ */ x("p", {
563
573
  className: "text-text-secondary",
564
574
  children: "No policy bindings configured"
565
575
  }) })] }),
566
- U === "aiOperations" && I && /* @__PURE__ */ S(re, {
576
+ H === "aiOperations" && F && /* @__PURE__ */ x(h, {
567
577
  filter: {
568
578
  subjectType: "AGENT",
569
- subjectId: I
579
+ subjectId: F
570
580
  },
571
- description: F("botlit.agentDetail.aiOperationsDescription", "What the supervisor flagged for this agent — drift, evidence and the recommended action.")
581
+ description: P("botlit.agentDetail.aiOperationsDescription", "What the supervisor flagged for this agent — drift, evidence and the recommended action.")
572
582
  }),
573
- U === "a2a" && /* @__PURE__ */ C(n, { children: [/* @__PURE__ */ C(a, { children: [/* @__PURE__ */ C(o, {
583
+ H === "a2a" && /* @__PURE__ */ S(n, { children: [/* @__PURE__ */ S(a, { children: [/* @__PURE__ */ S(o, {
574
584
  className: "flex items-center gap-2",
575
- children: [/* @__PURE__ */ S(k, { size: 18 }), "A2A Configuration"]
576
- }), /* @__PURE__ */ S(i, { children: "Agent-to-Agent communication settings" })] }), /* @__PURE__ */ S(r, { children: /* @__PURE__ */ S("p", {
585
+ children: [/* @__PURE__ */ x(O, { size: 18 }), "A2A Configuration"]
586
+ }), /* @__PURE__ */ x(i, { children: "Agent-to-Agent communication settings" })] }), /* @__PURE__ */ x(r, { children: /* @__PURE__ */ x("p", {
577
587
  className: "text-text-secondary",
578
588
  children: "A2A is not enabled for this agent"
579
589
  }) })] }),
580
- U === "versions" && I && /* @__PURE__ */ S(m, {
581
- agentId: I,
582
- draftVersionId: z.draftVersionId,
583
- currentVersionId: z.currentVersionId,
584
- onChanged: () => void B()
590
+ H === "versions" && F && /* @__PURE__ */ x(re, {
591
+ agentId: F,
592
+ draftVersionId: R.draftVersionId,
593
+ currentVersionId: R.currentVersionId,
594
+ onChanged: () => void z()
585
595
  })
586
596
  ]
587
597
  })
588
598
  });
589
599
  };
590
- export { F as AgentDetailPage };
600
+ export { P as AgentDetailPage };
591
601
 
592
602
  //# sourceMappingURL=AgentDetailPage.js.map