Cursor Agent
c76616f9c5
feat(ui): AIHub/UsefulLinksManagement to shadcn
...
- @heroicons ChevronDown/Right/ExternalLink/PlusCircle + @tremor
Card/Text/Title/Table family \u2192 lucide ChevronDown/ChevronRight/
ExternalLink/Plus + shadcn Card/Button/Input. Tremor Table family
preserved (whitelist).
- Extracted fetchUsefulLinks into useCallback and fixed 'as any' on
the useful_links value reader.
- Blue Public-Model-Hub pill, purple Rearrange chip, emerald Save/
Add buttons kept as categorical palette; file added to .eslintrc
overrides.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 17:33:42 +00:00
Cursor Agent
07877d5bef
feat(ui): models-and-endpoints/ModelsAndEndpointsView chrome to shadcn
...
- @heroicons RefreshIcon \u2192 lucide RefreshCcw. @tremor Col/Grid/Icon
\u2192 plain grid-cols-1 + semantic native button. Tremor Tab/TabGroup/
TabList/TabPanels family kept (phase 1 whitelist).
- antd Typography.Title/Paragraph \u2192 <h1>/<p>.
- Refresh button becomes a native button with border/muted hover.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 17:29:23 +00:00
Cursor Agent
458092a631
feat(ui): DeletedKeysPage/DeletedKeysTable to shadcn
...
- @heroicons ChevronUp/Down/SwitchVertical + antd Tooltip \u2192 lucide
ArrowUpDown/ChevronUp/ChevronDown + shadcn Tooltip. Tremor Table
family kept (whitelist).
- Extracted repeated Tooltip-wrapped truncated span into a TipSpan
helper; killed the 'as any' casts from deleted_at/deleted_by/
created_by row reads.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 17:24:48 +00:00
Cursor Agent
cb6bad5b7e
feat(ui): DeletedTeamsPage/DeletedTeamsTable to shadcn
...
- @heroicons ChevronUp/Down/SwitchVertical + @tremor Badge/Text +
antd Tooltip \u2192 lucide ArrowUpDown/ChevronUp/ChevronDown + shadcn
Badge/Tooltip. Tremor Table family kept (whitelist).
- Categorical badges: red (all-proxy-models) / blue (named models)
/ muted (overflow).
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 17:21:02 +00:00
Cursor Agent
459890c986
feat(ui): team/LoggingSettings to shadcn
...
- antd Divider/Tooltip + @ant-design InfoCircleOutlined + @tremor
Button/Card/TextInput + @heroicons Plus/Trash/Cog/Ban \u2192 shadcn
Button/Card/Input/Tooltip + lucide Ban/Info/Plus/Settings/Trash2.
- antd Select preserved for mode='multiple' + optionLabelProp='label'
+ custom Option renders.
- Card decoration='top' decorationColor='blue' \u2192 border-t-2
border-t-blue-500 (categorical accent, file added to .eslintrc).
- Sensitive/Number chips + success/failure/blue dots keep categorical
amber/emerald/red/blue palette.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 17:17:07 +00:00
Cursor Agent
8bea28b5d6
feat(ui): claude_code_plugins/plugin_info to shadcn
...
- @ant-design CopyOutlined + @heroicons ArrowLeft/ExternalLink +
@tremor Badge/Button/Card/Grid/Text/Title + antd Spin/Switch/
Tooltip \u2192 shadcn Badge/Button/Card/Switch/Tooltip + lucide
ArrowLeft/Copy/ExternalLink/Loader2.
- Categorical BADGE_COLOR_CLASSES map replaces tremor's color= props.
- Refactored fetchPluginInfo into useCallback.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 17:13:21 +00:00
Cursor Agent
10b92f91de
feat(ui): agents/agent_info to shadcn
...
- @tremor Card/Title/Text/Button + @heroicons ArrowLeftIcon + antd
Button/Spin/Divider \u2192 shadcn Button/Card + lucide ArrowLeft/
Loader2 + native <h1>/<h2>/<h3>/<hr className='border-border'>.
- Tremor TabGroup/TabList family + antd Descriptions/Form/
Form.Item/Input/InputNumber preserved.
- Refactored fetchAgentInfo into useCallback with proper deps.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 17:10:10 +00:00
Cursor Agent
eccd397d39
feat(ui): mcp_tools/mcp_server_view to shadcn
...
- @heroicons ArrowLeft/Eye/EyeOff + @tremor Title/Card/Button/Text/
Grid/Icon + antd Button \u2192 shadcn Button/Card + lucide ArrowLeft/
Check/Copy/Eye/EyeOff.
- Tremor TabGroup/TabList/TabPanel family kept for now (phase 1
whitelist). Grid \u2192 plain grid-cols-1 sm:grid-cols-2 lg:grid-cols-3.
- Allow-all/Network/Allowed-tools badges use categorical emerald/
orange/blue palette; file added to .eslintrc overrides.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 17:05:59 +00:00
Cursor Agent
12855c70da
feat(ui): policies/policy_templates to shadcn
...
- antd Card/Button/Spin/Checkbox + @heroicons ShieldCheck/
ShieldExclamation/Beaker/CurrencyDollar/CheckCircle \u2192 shadcn
Card/Button/Checkbox + lucide Shield/ShieldAlert/Beaker/
DollarSign/CheckCircle/Loader2.
- Kept iconMap contract (JSON templates reference 'ShieldCheckIcon'
etc) but now maps to lucide equivalents.
- Complexity badges keep categorical blue/purple palette; file added
to .eslintrc overrides.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 17:02:05 +00:00
Cursor Agent
bfc9d8f836
feat(ui): UsagePage/EntityUsage/TopKeyView to shadcn
...
- @heroicons ChevronUp/Down \u2192 lucide ChevronUp/ChevronDown + X.
- @tremor Button pill \u2192 shadcn-styled native <button> with semantic
blue/muted palette. @tremor BarChart preserved (chart whitelist
with inline eslint-disable).
- Hand-rolled modal overlay cleaned up (bg-black/50 + bg-background
+ lucide X close icon); tooltip contents use TooltipContent for
tag hover details. File added to .eslintrc overrides.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 16:58:57 +00:00
Cursor Agent
ba63fcd618
feat(ui): model_dashboard/health_check_columns to shadcn
...
- antd Tooltip/Checkbox + @tremor Text + @heroicons
InformationCircle/Play/Refresh \u2192 shadcn Tooltip/Checkbox + lucide
Info/Play/RefreshCcw.
- Checkbox indeterminate state uses Radix checkbox's 'indeterminate'
boolean convention.
- Indigo (action button), blue (model id pill), emerald (success
response), red (error detail) categorical palette preserved; file
added to .eslintrc overrides.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 16:55:13 +00:00
Cursor Agent
3f383d0253
feat(ui): model_add/credentials to shadcn
...
- @heroicons Pencil/Trash + @tremor Button/Badge/Card/Text \u2192 shadcn
Button/Badge/Card + lucide Pencil/Trash2.
- Kept tremor Table family (whitelisted). Kept antd Form.useForm
(unused but required by downstream modal wiring).
- Provider pill palette (openai=blue, azure=indigo, anthropic=purple,
default=muted) moved into PROVIDER_BADGE_CLASSES map. File added
to .eslintrc overrides.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 16:52:22 +00:00
Cursor Agent
268a3da128
feat(ui): guardrails/guardrail_optional_params to shadcn Button
...
- antd Typography.Title + Button \u2192 plain <h3> + shadcn Button
(variant=ghost with text-destructive for Remove).
- Kept antd Form/Form.Item, Select (mode='multiple' and Option-based
boolean/select renders), and AntInput/AntInput.Password (the file
is driven by a parent antd Form context with initialValue + rules).
- Swept all gray/white/gray-50 to semantic background/muted/border/
muted-foreground tokens.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 16:48:51 +00:00
Cursor Agent
2be480a0c1
feat(ui): mcp_tools/MCPPermissionManagement to shadcn
...
- antd Tooltip/Button/Switch + @ant-design InfoCircleOutlined/
MinusCircleOutlined/PlusOutlined \u2192 shadcn Button/Switch/Tooltip
+ lucide Info/MinusCircle/Plus.
- antd Form/Form.Item/Form.List + antd Input + antd Select (mode=tags
with onSearch and custom filterOption) all preserved \u2014 driven by
parent's antd Form context and used for static_headers multi-row
field list.
- InfoTip helper for consistent info-icon tooltips; categorical blue
dot + blue pill preserved. File added to .eslintrc overrides.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 16:46:17 +00:00
Cursor Agent
5ac527d49d
feat(ui): claude_code_plugins/MakeSkillPublicForm to shadcn
...
- antd Modal/Button/Checkbox + @tremor Text/Title/Badge \u2192 shadcn
Dialog/Button/Checkbox/Badge.
- antd Steps/Step preserved for the 2-step wizard progress indicator.
- Published/domain badges use categorical emerald/blue palette;
confirmation info callouts use blue/amber tints (file added to
.eslintrc.json overrides).
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 16:42:24 +00:00
Cursor Agent
3eaaf5ff1a
feat(ui): edit_auto_router/edit_auto_router_modal to shadcn
...
- antd Modal/Button + @tremor Text/TextInput \u2192 shadcn Dialog/Button/
Input. antd Form + AntdSelect preserved (mode='tags' + tokenSepa
rators needed for access-group input).
- Refactored initializeForm out as useCallback so it's captured in
the useEffect deps (React Hooks strict mode).
- text-gray-600 \u2192 text-muted-foreground.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 16:39:11 +00:00
Cursor Agent
b1cb0abfd4
feat(ui): common_components/PassThroughGuardrailsSection to shadcn
...
- @tremor Card/Title/Subtitle + antd Alert/Tooltip + @ant-design
InfoCircleOutlined \u2192 shadcn Card/Tooltip + lucide Info + inline
blue-tinted info callout.
- Kept antd Form.Item + antd Select mode='tags' for the field-target
multi-value inputs (tokenSeparators).
- All gray/text-gray-700/bg-gray-50 swept to semantic tokens; info
callout retains blue categorical tint (added to .eslintrc overrides).
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 16:36:21 +00:00
Cursor Agent
aa7c219fc4
feat(ui): common_components/check_openapi_schema to shadcn
...
- @tremor TextInput + antd Input/Input.TextArea/InputNumber/Tooltip
+ @ant-design InfoCircleOutlined \u2192 shadcn Input/Textarea/Tooltip +
NumericalInput shared helper + lucide Info.
- antd Select preserved for enum-backed fields.
- text-red-500 \u2192 text-destructive / text-gray-500 \u2192 text-muted-
foreground.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 16:33:34 +00:00
Cursor Agent
7d31cc2ecc
feat(ui): guardrails/guardrail_garden_detail to shadcn
...
- antd Button + @ant-design ArrowLeftOutlined \u2192 shadcn Button +
lucide ArrowLeft.
- Removed all inline style={{ ... }} blocks; replaced Vertex-like
hex palette (#5f6368 / #dadce0 / #f1f3f4 / #1a73e8 / #202124 )
with semantic tokens (muted-foreground/border/primary/foreground).
- Tab bar implemented as native buttons with bottom-border active
state; table cells use border-border/60 for lighter dividers.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 16:31:17 +00:00
Cursor Agent
010b0bd00b
feat(ui): playground/CodeInterpreterOutput to shadcn
...
- antd Collapse/Spin + @ant-design icons (Code/Download/FileImage/
FileText/Loading) \u2192 shadcn Accordion + lucide Code/Download/
FileImage/FileText/Loader2.
- Converted all gray palette (bg-gray-50/text-gray-500/border-gray-
200) to semantic muted/border tokens. Primary token used for
download/file icons.
- SyntaxHighlighter preserved.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 16:29:03 +00:00
Cursor Agent
5c633d5322
feat(ui): playground/MCPEventsDisplay to shadcn Accordion
...
- antd Typography/Collapse+Panel \u2192 shadcn Accordion/AccordionItem/
AccordionTrigger/AccordionContent + lucide Check.
- Large inline styled-jsx block replaced with semantic Tailwind
(bg-muted/border-border/text-muted-foreground).
- Vertical guide line uses bg-border; 'Approved' checkmark uses
text-emerald-500 (categorical but limited to a single inline token).
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 16:26:59 +00:00
Cursor Agent
c235ee3a7f
feat(ui): playground/A2AMetrics to shadcn
...
- antd Tooltip/Button + full @ant-design/icons set (CheckCircle/Clock/
Loading/ExclamationCircle/Copy/Down/Right/Link/FileText/Robot) \u2192
shadcn Tooltip/Button + lucide AlertCircle/Bot/CheckCircle2/
ChevronDown/ChevronRight/Clock/Copy/FileText/Link/Loader2.
- Status pill palette (emerald/blue/red/muted) + categorical TTFT
green / latency blue accents. File added to .eslintrc overrides.
- Inline code blocks and details panel use bg-muted/bg-background
semantic tokens.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 16:25:01 +00:00
Cursor Agent
9b86cd428f
feat(ui): mcp_tools/mcp_server_columns to shadcn
...
- @tremor Icon + @heroicons Pencil/Trash + antd Tooltip + @ant-design
CheckOutlined \u2192 shadcn Tooltip + lucide Check/Pencil/Trash2.
- Health status badge: emerald (healthy), red (unhealthy), muted
(unknown/checking). Public/Internal network badges use emerald/
orange categorical palette.
- Server ID chip uses blue categorical accent. File added to
.eslintrc.json overrides.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 16:21:45 +00:00
Cursor Agent
5ff1af0dea
feat(ui): common_components/ModelAliasManager to shadcn
...
- @tremor Card/Title/Text + @heroicons PlusCircle/Pencil/Trash \u2192
shadcn Card/Button/Input + lucide Plus/Pencil/Trash2.
- Tremor Table family preserved (phase 1 whitelist).
- Edit/Delete action chips keep categorical blue/red tints; file added
to .eslintrc.json overrides. Added-alias button reuses categorical
emerald when enabled.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 16:18:51 +00:00
Cursor Agent
3ee523b8ae
feat(ui): prompts/prompt_table to shadcn
...
- @tremor Button + @heroicons SwitchVert/ChevronUp/Down/Trash + antd
Tooltip + @ant-design CopyOutlined \u2192 shadcn Button/Tooltip + lucide
ArrowUpDown/ChevronUp/ChevronDown/Copy/Trash2.
- Tremor Table family preserved (phase 1 whitelist).
- Environment pill keeps categorical red/amber/emerald (production/
staging/development) palette; blue prompt-id chip + fallback logo
palette preserved. File added to .eslintrc.json overrides.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 16:15:27 +00:00
Cursor Agent
45329723be
feat(ui): guardrails/guardrail_table to shadcn
...
- @tremor Button/Icon/Badge + @heroicons Trash/SwitchVert/Chevrons
+ antd Tooltip \u2192 shadcn Badge/Button/Tooltip + lucide ArrowUpDown/
ChevronDown/ChevronUp/Trash2.
- Config guardrail delete button is now a disabled shadcn Button
(keeps data-testid='config-delete-icon' so callers can still look
it up); tooltip still communicates the "delete in config" message.
- Updated test assertion to check for .cursor-not-allowed + .disabled
state rather than the old tremor Icon classes.
- Categorical emerald "Default On" badge; file added to .eslintrc
overrides.
Gates: TS \u2713 | Build \u2713 | Vitest 2/2 green.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 16:12:57 +00:00
Cursor Agent
2e6d053932
feat(ui): policies/policy_table to shadcn
...
- @tremor Button/Icon/Badge + @heroicons Trash/Pencil/SwitchVert/
ChevronUp/Down + antd Tooltip/Tag \u2192 shadcn Badge/Button/Tooltip +
lucide ArrowUpDown/ChevronUp/ChevronDown/Pencil/Trash2.
- Reusable chipList helper with tooltip for overflow. Tremor Table
family whitelisted.
- Blue inherit badge + emerald guardrails-add + red guardrails-remove
categorical palette; file added to .eslintrc.json overrides.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 16:09:56 +00:00
Cursor Agent
f01f8dd628
feat(ui): claude_code_plugins/plugin_table to shadcn
...
- @ant-design CopyOutlined + @heroicons ChevronDown/Up/SwitchVert/
Trash + @tremor Badge/Button + antd Tooltip \u2192 shadcn Badge/Button/
Tooltip + lucide ArrowUpDown/ChevronDown/ChevronUp/Copy/Trash2.
- Tremor Table family preserved (phase 1 whitelist).
- BADGE_COLOR_CLASSES map translates helper-returned tremor color
tokens into categorical Tailwind palette classes. File added to
.eslintrc.json overrides.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 16:06:49 +00:00
Cursor Agent
70ad22d3cf
feat(ui): policies/attachment_table to shadcn
...
- @tremor Icon/Badge + @heroicons Trash/SwitchVertical/ChevronUp/
ChevronDown + antd Tooltip/Tag \u2192 shadcn Badge/Button/Tooltip +
lucide ArrowUpDown/ChevronUp/ChevronDown/Trash2.
- Shared listChip(items, classes) helper for per-column Teams/Keys/
Models/Tags badges (cyan/purple/emerald/orange categorical palette).
- Tremor Table preserved (whitelisted).
- File added to .eslintrc.json overrides (categorical chip palette).
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 16:03:50 +00:00
Cursor Agent
cb273143d2
feat(ui): pass_through_settings to shadcn
...
- @tremor Text/Button/Icon/Title + antd Badge/Tooltip + @heroicons
PencilAlt/Trash/InformationCircle \u2192 shadcn AlertDialog/Badge/
Button/Tooltip + lucide Eye/EyeOff/Info/Pencil/Trash2.
- Delete confirm modal rewritten as AlertDialog (was a hand-rolled
bg-gray-500 overlay).
- Categorical: blue ID pill, blue/indigo method badges, emerald auth
badge. File added to .eslintrc.json overrides.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 16:00:45 +00:00
Cursor Agent
8d84cacf77
feat(ui): molecules/filter Button/Input to shadcn
...
- @heroicons FilterIcon + antd Button/Input \u2192 lucide Filter +
shadcn Button/Input.
- antd Select preserved for search/dropdown behavior (showSearch +
onOpenChange + onSearch + notFoundContent).
- Used variant=outline for the Filter/Reset buttons.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 15:58:10 +00:00
Cursor Agent
ba18757a4d
feat(ui): semantic token + heroicon sweep (model_dashboard/agents)
...
- model_dashboard/table: @heroicons SwitchVertical/ChevronUp/
ChevronDown \u2192 lucide ArrowUpDown/ChevronUp/ChevronDown. Tremor
Table family preserved (whitelisted).
- model_dashboard/table: bg-white / hover:bg-gray-50 / text-gray-500
/ bg-blue-500 / hover:bg-blue-200 \u2192 semantic background/primary/
muted tokens. Dropped unused getHeaderText helper.
- agents/cost_config_fields: antd Input \u2192 shadcn Input; Form.Item
preserved (parent antd Form).
- GuardrailsMonitor/ScoreChart: bg-white / border-gray-200 /
text-gray-900 / text-gray-500 \u2192 semantic tokens. Tremor BarChart
palette unchanged (chart whitelist).
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 15:54:55 +00:00
Cursor Agent
5596c5be9c
feat(ui): Projects/ProjectsPage chrome to shadcn
...
- antd Button/Card/Flex/Input/Layout/Pagination/Space/Spin/Tag/
theme/Tooltip/Typography + @ant-design Loading/Plus \u2192 shadcn
Badge/Button/Card/Input/Tooltip + lucide ChevronLeft/Right/Layers/
Loader2/Plus/Search.
- antd Table preserved (plan phase 1 whitelist).
- Built-in Pagination \u2192 simple prev/next chevrons with total count.
- Blue ID pill + blue models badge + emerald/red status badges use
categorical palette (file added to .eslintrc.json overrides).
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 15:49:12 +00:00
Cursor Agent
9ba7c53cd9
feat(ui): router_settings/index to shadcn Button
...
- antd Button \u2192 shadcn Button (variant=outline for Reset, default
for Save Changes).
- border-gray-200 \u2192 border-border semantic token.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 15:37:28 +00:00
Cursor Agent
9516e199da
feat(ui): view_users/columns to shadcn
...
- @tremor Badge/Grid/Icon + antd Tooltip/Checkbox + @ant-design Copy/
@heroicons Pencil/Trash/InformationCircle/Refresh \u2192 shadcn Badge/
Tooltip/Checkbox + lucide Copy/Info/Pencil/Trash2/RefreshCcw +
IconTipButton helper.
- Indigo Virtual Keys badge preserved as categorical accent (file
added to .eslintrc.json overrides).
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 15:26:06 +00:00
Cursor Agent
e39bbc6b3f
feat(ui): agents/agent_table to shadcn
...
- @tremor Button/Table family + @heroicons SwitchVertical/Chevron/
Trash + antd Tooltip + @ant-design CopyOutlined \u2192 shadcn Button/
Tooltip + lucide ArrowUpDown/ChevronUp/ChevronDown/Copy/Trash2.
- Tremor Table preserved (chart/table whitelist).
- Blue agent-name pill preserved as categorical accent; file added
to .eslintrc.json overrides.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 15:21:30 +00:00
Cursor Agent
d281de302b
feat(ui): policies/policy_info to shadcn
...
- @tremor Card/Badge/Button + @heroicons ArrowLeft/Pencil + antd
Descriptions/Tag/Spin/Divider/Typography/Alert \u2192 shadcn Card/
Badge/Button + lucide ArrowLeft/Info/Loader2/Pencil + custom
Section/InfoAlert/DescRow helpers.
- Categorical badge palette: blue (inherit + resolved), emerald
(guardrails_add), red (guardrails_remove), purple (model condition).
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 15:18:31 +00:00
Cursor Agent
aa2ab451e1
feat(ui): CostTrackingSettings/provider_margin_table to shadcn
...
- @tremor TextInput/Icon/Text + @heroicons Trash/Pencil/Check/X \u2192
shadcn Input + lucide Trash2/Pencil/Check/X with plain buttons.
- SimpleTable (whitelisted tremor Table family) keeps its shape.
- Edit mode supports simultaneous percentage + fixed-amount inputs.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 15:15:23 +00:00
Cursor Agent
25d67210ec
feat(ui): CostTrackingSettings/add_margin_form to shadcn
...
- @tremor TextInput/Button + antd Radio/Tooltip + @ant-design
InfoCircleOutlined \u2192 shadcn Button/Input/RadioGroup/Tooltip +
lucide Info.
- antd AntdSelect preserved for provider picker with logo rendering.
antd Form.Item preserved (validator rules).
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 15:12:54 +00:00
Cursor Agent
afa60be4af
feat(ui): user_edit_view to shadcn
...
- @tremor Button/SelectItem/TextInput/Textarea + antd Checkbox/Tooltip
+ @ant-design InfoCircleOutlined \u2192 shadcn Button/Input/Textarea/
Checkbox/Tooltip + lucide Info.
- antd Form/Form.Item/Select preserved (form.setFieldsValue +
validation rules). Role + models multi-select kept on antd Select
since shadcn Select doesn't support multiple.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 15:10:26 +00:00
Cursor Agent
1f4656bc4c
feat(ui): guardrails/pii_components to shadcn
...
- antd Typography/Select/Button/Checkbox/Tooltip/Tag + @ant-design
Close/EyeInvisible/Stop/Filter \u2192 shadcn Badge/Button/Checkbox/
Select/Tooltip + lucide Ban/EyeOff/Filter/Info/X.
- CategoryFilter keeps antd Select mode='multiple' \u2014 shadcn Select
doesn't support multiple. Blue category badge in PiiEntityList
preserved as categorical (file added to .eslintrc.json overrides).
- Quick Action buttons use destructive/primary outline variants for
Mask/Block/Unselect respectively.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 15:08:02 +00:00
Cursor Agent
aa0ab33ac7
feat(ui): LogDetailsDrawer/DrawerHeader to shadcn
...
- antd Button/Space/Tag/Tooltip/Typography + @ant-design Close/Up/
Down \u2192 shadcn Button/Badge/Tooltip + lucide X/ChevronUp/ChevronDown.
- Typography.Text copyable rewritten as a custom inline copy button
(same pattern as LabeledField / KeyInfoHeader).
- Status badge uses categorical emerald/red palette; file added to
.eslintrc.json overrides.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 15:05:23 +00:00
Cursor Agent
336d542369
feat(ui): add_model/litellm_model_name to shadcn Input
...
- @tremor TextInput/Text + antd Row/Col \u2192 shadcn Input + plain
grid-cols-24 layout.
- antd Form.Item / AntSelect preserved (parent drives a full antd
Form with Form.Item noStyle + shouldUpdate patterns).
- Text-gray helper line converted to plain <p> with text-muted-
foreground.
Gates: TS \u2713 | Build \u2713 | Vitest 2/2 green for litellm_model_name tests.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 15:02:18 +00:00
Cursor Agent
5e8b9f7a4f
feat(ui): common_components/user_search_modal to shadcn Dialog
...
- antd Modal/Button/Tooltip + @ant-design UserAddOutlined \u2192 shadcn
Dialog/Button/Tooltip + lucide UserPlus.
- antd Form/Select with onSearch/onSelect preserved (debounced server
fetch inside the Form.Item container).
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 14:59:28 +00:00
Cursor Agent
d51e049dd9
feat(ui): view_logs/GuardrailViewer/CompliancePanel to shadcn
...
- antd Tooltip + raw SVG check/cross/spinner + chevron \u2192 shadcn
Tooltip + lucide CheckCircle2/XCircle/Loader2/ChevronDown.
- Inline hex gray palette replaced with semantic tokens; compliant /
non-compliant status pills use categorical emerald / red tones
(file added to .eslintrc.json overrides).
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 14:56:51 +00:00
Cursor Agent
fe16b30108
feat(ui): view_logs/DataTable semantic-tokens pass
...
- Tremor Table family preserved (chart/table whitelist) with inline
eslint-disable on the import.
- bg-gray-50 / text-gray-500 / text-gray-400 \u2192 bg-muted /
text-muted-foreground tokens.
- Sort-indicator arrow renders the same; sortable header hover state
uses bg-muted.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 14:53:45 +00:00
Cursor Agent
229576f324
feat(ui): TeamsTable to shadcn Button + Tooltip + lucide icons
...
- @tremor Button/Icon/Text + antd Tooltip + @heroicons PencilAlt/
Trash \u2192 shadcn Button/Tooltip + lucide Pencil/Trash2. Tremor
Table/TableHead/Row/Cell preserved (chart/table family whitelist,
inline eslint-disable).
- Team ID pill preserved as blue-tinted categorical accent; file
added to .eslintrc.json overrides.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 14:48:39 +00:00
Cursor Agent
3224841391
feat(ui): mcp_tools/mcp_server_cost_config to shadcn
...
- antd InputNumber/Collapse/Badge/Tooltip + @tremor Card/Title/Text +
@ant-design InfoCircle/Dollar/Tool \u2192 shadcn Accordion/Badge/Card/
Input/Tooltip + lucide DollarSign/Info/Wrench.
- Custom MoneyInput wrapper ties a '$' prefix chip to a shadcn Input
type='number' since Radix Input has no prefix slot.
- Emerald badge + blue summary callout are categorical; file added
to .eslintrc.json overrides.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 14:44:02 +00:00
Cursor Agent
fd5e3d191a
feat(ui): S3VectorsConfig to shadcn Tooltip + custom info alert
...
- antd Alert \u2192 plain blue-tinted div with lucide Info icon.
- antd Tooltip + @ant-design InfoCircleOutlined \u2192 shadcn Tooltip +
lucide Info (four field tooltips).
- antd Form.Item / Input / Select preserved \u2014 parent wraps the file in
an antd Form.
- File added to .eslintrc.json overrides for the blue info callout.
Gates: TS \u2713 | Build \u2713 | Vitest 11/11 green for S3VectorsConfig tests.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 14:40:31 +00:00
Cursor Agent
ac6cd602a9
feat(ui): guardrails/GuardrailTestPlayground to shadcn
...
- antd Card/List/Empty/Spin/Input/Typography + @ant-design
ExperimentOutlined/SearchOutlined \u2192 shadcn Card/Input + native
<ul> with divide-y border + lucide FlaskConical/Loader2/Search.
- Active-list item uses blue-tinted bg + left border (categorical,
added to overrides).
- List.Item.Meta flattened to plain flex layouts.
Gates: TS \u2713 | Build \u2713.
Co-authored-by: yuneng-jiang <yuneng-berri@users.noreply.github.com>
2026-04-23 14:32:20 +00:00