mirror of
https://github.com/OpenHands/OpenHands.git
synced 2026-10-07 16:38:34 +08:00
* fix(ui): move skills type filters into search row dropdown Put skill type filters in a dropdown beside full-width search and keep the result count below. Add SkillsTypeFilterDropdown and update tests to open the menu before selecting a filter option. Co-authored-by: Cursor <cursoragent@cursor.com> * fix(ui): full-width MCP toolbar with section filter Replace the half-width MCP search with a toolbar matching skills: flex search plus Installed/Library section filter. Remove the skills list count row for a cleaner toolbar layout. Co-authored-by: Cursor <cursoragent@cursor.com> * feat(ui): unify skills and MCP extension cards with detail modal and add toggles Polish the Skills and MCP pages with shared card chrome, circle plus/check install toggles, and richer skill inspection. Skills open a detail modal with metadata pills and a traditional enable switch; MCP library and installed cards use the same toggle and white-outline hover treatment, with installed servers opening the editor on card click. Co-authored-by: Cursor <cursoragent@cursor.com> * fix(ui): drop hover ring glow from extension module cards Remove the white ring on hover/focus so skills and MCP tiles keep the border highlight without the outer glow. Co-authored-by: Cursor <cursoragent@cursor.com> * fix(ui): align installed MCP cards with marketplace module layout Match the library tile structure: transport under the title, command or URL on a bottom grey detail line, and the same min-height and spacing. Co-authored-by: Cursor <cursoragent@cursor.com> * feat(ui): add enable/remove tooltips and hover X on circle toggles Show Enable on the plus state and swap the checkmark to an X on hover when selected, with a Remove tooltip, across skills and MCP add toggles. Co-authored-by: Cursor <cursoragent@cursor.com> * fix(ui): show catalog description on installed MCP server cards Restore the marketplace description text above the command detail line so installed tiles match the library card content layout. Co-authored-by: Cursor <cursoragent@cursor.com> * fix(ui): clamp installed MCP descriptions and grey the command line Limit catalog descriptions to two lines and style the command/URL metadata row with tertiary-alt so only that detail line reads as muted grey. Co-authored-by: Cursor <cursoragent@cursor.com> * Thicken remove X and add destructive hover on toggle. Use stroke-based x-mark at 14px to match checkmark weight, with a soft red background when hovering to remove. Co-authored-by: Cursor <cursoragent@cursor.com> * Use cool grey styling for Auto-discovery skill type badge. Replace yellow/gold agentskills pill colors with neutral cool-grey tones aligned to the design system. Co-authored-by: Cursor <cursoragent@cursor.com> * Add top-right close buttons to skill and MCP modals. Introduce a shared ModalCloseButton and wire it into the skill detail, MCP install, and custom server editor panels. Co-authored-by: Cursor <cursoragent@cursor.com> * Match MCP custom editor modal width to other modals. Use 520px panel width so the edit form aligns with the skill detail and install modals. Co-authored-by: Cursor <cursoragent@cursor.com> * Disable resizing on skill detail content textarea. Use resize-none on the readonly content field so the modal layout stays fixed. Co-authored-by: Cursor <cursoragent@cursor.com> * Move skill detail enable toggle below header row. Place the switch in a full-width settings bar so it no longer collides with the top-right close button. Co-authored-by: Cursor <cursoragent@cursor.com> * Add delete with confirmation to MCP custom editor. Show a destructive footer action in edit mode and reuse the shared confirmation modal before removing the server. Co-authored-by: Cursor <cursoragent@cursor.com> * Style MCP editor delete as secondary button with trash icon. Match the bordered secondary treatment used by Cancel while keeping a clear delete affordance via Trash2. Co-authored-by: Cursor <cursoragent@cursor.com> * Keep marketplace MCP cards in add-only toggle state. Library tiles always show the plus affordance since users may install multiple instances of the same server template. Co-authored-by: Cursor <cursoragent@cursor.com> * Use solid border on MCP installed empty states. Replace dashed outlines on the installed-servers empty and no-results panels with a standard border. Co-authored-by: Cursor <cursoragent@cursor.com> * Use shared Dropdown for MCP and skills filter controls. Replace bespoke filter menus with EnumFilterDropdown so toolbar filters match the site-wide combobox styling and behavior. Co-authored-by: Cursor <cursoragent@cursor.com> * Use tertiary-alt grey for MCP and skills secondary copy. Align card descriptions, modal hints, and empty-state text with the muted tone used for paths and subtitles elsewhere. Co-authored-by: Cursor <cursoragent@cursor.com> * Use tertiary-light for MCP and skills descriptive copy. Match card descriptions, modal body text, and empty states to the page header subtitle tone. Co-authored-by: Cursor <cursoragent@cursor.com> * Align MCP empty-state hint with tertiary-light copy tone. Co-authored-by: Cursor <cursoragent@cursor.com> * Make filter dropdown triggers hug their label width. Add fitContent mode to the shared Dropdown and use it for MCP/skills filters instead of a fixed 9rem trigger. Co-authored-by: Cursor <cursoragent@cursor.com> * Match filter dropdown trigger styling to toolbar search fields. Use rounded-lg, base-secondary background, and shared border/focus treatment; keep the active-filter highlight when not on All. Co-authored-by: Cursor <cursoragent@cursor.com> * Replace filter combobox with a simple right-aligned menu. Use a button-only toolbar filter with a menu anchored to the trigger's right edge and no type-to-search input. Co-authored-by: Cursor <cursoragent@cursor.com> * Add shared constants for the skills installation docs link. Centralize the OpenHands adding-skills guide URL and example /add-skill command so the skills UI can reference them without inline literals. Co-authored-by: Cursor <cursoragent@cursor.com> * Add an Add skill button and instructions modal on the skills page. Opens a fixed-header modal that explains using /add-skill in chat, highlights key paths with inline code chips, provides a copyable example command, and links to the OpenHands adding-skills documentation. Co-authored-by: Cursor <cursoragent@cursor.com> * Keep disabled skill cards at full opacity on the skills page. Remove the card-wide opacity-70 dimming so only the enable toggle reflects disabled state, matching clearer card readability when a skill is turned off. Co-authored-by: Cursor <cursoragent@cursor.com> * Add Use skill actions that open a new chat with a prefilled command. Share launch logic across the add-skill and skill detail modals, disable Use skill when a skill is off, and use the message-square-share icon for the primary action. Co-authored-by: Cursor <cursoragent@cursor.com> * Match recommended automation card hover styling to skills and MCP tiles. Reuse the shared extension module card surface and interactive hover classes so automation cards get the same border and background lift on hover. Co-authored-by: Cursor <cursoragent@cursor.com> * Use the same monochrome styling for all skill type badges. Trigger-based and Always active now share the cool grey Auto-discovery treatment instead of blue and green accents. Co-authored-by: Cursor <cursoragent@cursor.com> * Use container queries so Skills and MCP card grids collapse in narrow columns. Switch the shared grid from viewport md breakpoints to a 600px column-width container query so cards stay single-column when the extensions content area is tight, even on desktop layouts with the sidebar visible. Co-authored-by: Cursor <cursoragent@cursor.com> * Keep Skills extension pills on a single nowrap row with overflow. Harden pill chip styling and reuse SkillCardPillRow in the detail modal so badges never wrap to a second line in narrow cards or modals. Co-authored-by: Cursor <cursoragent@cursor.com> * Hide skill copy actions when the source is a scope label, not a path. Co-authored-by: Cursor <cursoragent@cursor.com> * Centralize extension module pill styling for reuse across Skills UI. Co-authored-by: Cursor <cursoragent@cursor.com> * Add MCP logo stack badge for multi-server automation card icons. Co-authored-by: Cursor <cursoragent@cursor.com> * Align recommended automation cards with Skills layout and shared pill row. Co-authored-by: Cursor <cursoragent@cursor.com> * Match automation list section headings to MCP Installed typography. Co-authored-by: Cursor <cursoragent@cursor.com> * Restore visible hover feedback on saved automation cards. Co-authored-by: Cursor <cursoragent@cursor.com> * Fix extension module card hover using valid tokens and a visible ring. Co-authored-by: Cursor <cursoragent@cursor.com> * Align saved automation cards with shared extension module surface chrome. Co-authored-by: Cursor <cursoragent@cursor.com> * Add a decorative plus badge to recommended automation cards. Co-authored-by: Cursor <cursoragent@cursor.com> * Limit extension card hover to a border highlight without glow or fill shift. Co-authored-by: Cursor <cursoragent@cursor.com> * Match saved automation card typography and pills to recommended cards. Co-authored-by: Cursor <cursoragent@cursor.com> * Make the automations search field span the full content width. Co-authored-by: Cursor <cursoragent@cursor.com> * Add an Add Automation header button that opens create instructions in a modal. Co-authored-by: Cursor <cursoragent@cursor.com> * Add hover and tooltip to recommended automation plus badges. Match the unselected CirclePlusCheckToggle affordance so decorative plus icons highlight on card hover and show a launch tooltip. Co-authored-by: Cursor <cursoragent@cursor.com> * Add a shared bordered empty-state panel class for extension pages. Centralize the rounded border/padding chrome used by MCP Installed and Automations list empty states. Co-authored-by: Cursor <cursoragent@cursor.com> * Redesign the automations empty state to match MCP installed styling. Use the shared bordered panel, drop the database icon, and add a secondary hint pointing users to the recommendations below. Co-authored-by: Cursor <cursoragent@cursor.com> * Align MCP installed empty state with shared panel and white title text. Reuse the shared empty-state container and render the primary line in white to match the automations empty state. Co-authored-by: Cursor <cursoragent@cursor.com> * Use the shared modal close button in Add Automation modal. Switch to ModalBackdrop and ModalCloseButton so the header and dismiss control match Skills and MCP modals. Co-authored-by: Cursor <cursoragent@cursor.com> * Add dispatchAutomation API for manual automation runs. Expose POST /api/automation/v1/{id}/dispatch for local and cloud backends with service-layer tests. Co-authored-by: Cursor <cursoragent@cursor.com> * Mock automation dispatch endpoint for manual runs. Return a pending run from POST /api/automation/v1/:id/dispatch in MSW with handler coverage. Co-authored-by: Cursor <cursoragent@cursor.com> * Add useDispatchAutomation mutation hook. Invalidate automation list, detail, and run history queries after a successful manual dispatch. Co-authored-by: Cursor <cursoragent@cursor.com> * Wire manual Run now dispatch through the automations list page. Pass dispatch handlers and pending state from the list route into automation groups and cards. Co-authored-by: Cursor <cursoragent@cursor.com> * Add i18n keys for automation card Run now and actions menu. Introduce AUTOMATIONS$RUN_NOW and AUTOMATIONS$ACTIONS_MENU for the saved automation card controls. Co-authored-by: Cursor <cursoragent@cursor.com> * Align automation kebab menu with shared context menu styling. Use ContextMenu rows, muted-to-foreground icon hover tokens, portal rendering to avoid overflow clipping, and drop the red delete styling. Co-authored-by: Cursor <cursoragent@cursor.com> * Replace saved automation card toggle with play Run now and menu actions. Add a play trigger, move Run now and View into the kebab menu with Lucide FileText, and keep turn on/off and delete under manage permissions. Co-authored-by: Cursor <cursoragent@cursor.com> * Show visible Run now label on saved automation cards. Co-authored-by: Cursor <cursoragent@cursor.com> * Tighten spacing between saved automation card title and description. Co-authored-by: Cursor <cursoragent@cursor.com> * Limit recommended automation plus badge hover to direct hover only. Co-authored-by: Cursor <cursoragent@cursor.com> * Set recommended automation plus badge tooltip to Add Automation. Co-authored-by: Cursor <cursoragent@cursor.com> * Add grid and list view toggle to the automations page. Let users switch saved automations between cards and table rows from a toggle beside search, with the choice persisted locally. Co-authored-by: Cursor <cursoragent@cursor.com> * Polish automations list view and replace view toggle with icon dropdown. Use secrets-style table surfaces and row hover, place pills beside the title, and swap the segmented control for a 36px icon menu without a caret. Co-authored-by: Cursor <cursoragent@cursor.com> * Show a checkmark on the selected automations view mode in the dropdown. Co-authored-by: Cursor <cursoragent@cursor.com> * Polish automations list layout, toolbar, and table row standards. Use two-column card grids, align search and view controls with skills/MCP toolbars, add shared compact table row sizing with lighter hover, and square icon actions with a Run now tooltip. Co-authored-by: Cursor <cursoragent@cursor.com> * Remove resting borders from extension module cards. Skills, MCP, and automation tiles now stay borderless until hover or keyboard focus, with shared CSS handling click focus without a stuck highlight. Co-authored-by: Cursor <cursoragent@cursor.com> * Match automation card Run now button height to the kebab menu. Use a shared h-8 text button class so grid card actions align with the 32px three-dot control. Co-authored-by: Cursor <cursoragent@cursor.com> * Tighten automation detail section header padding. Use symmetric py-3 on Configuration and Activity Log headers to match other modal section bars. Co-authored-by: Cursor <cursoragent@cursor.com> * Use theme tokens for skill type badge pill colors. Hardcoded cool-grey rgba values did not follow the active color theme; switch skill type badges to semantic text-secondary opacity tokens only. Co-authored-by: Cursor <cursoragent@cursor.com> * Fix skill toggle hover state and selected check styling. Use pointer hover instead of focus for the remove icon swap, show a white outline check when enabled, and let skill cards use a Disable tooltip. Co-authored-by: Cursor <cursoragent@cursor.com> * Show MCP stdio transport labels as STDIO in card headers. Co-authored-by: Cursor <cursoragent@cursor.com> * Remove Use skill action from the add skill modal. Co-authored-by: Cursor <cursoragent@cursor.com> * Redesign add-automation instructions and place chat caret after prefilled prompts. Replace the modal's plugin/conversation cards with inline guidance and a launch-in-chat action, and focus prefilled messages at the end for automation and skill flows. Co-authored-by: Cursor <cursoragent@cursor.com> * refactor: remove unrelated file * fix: failing tests --------- Co-authored-by: Cursor <cursoragent@cursor.com> Co-authored-by: hieptl <hieptl.developer@gmail.com>