ComboboxAsyncMulti
v1.0.8Updated 27 Aug 2026Multi-select counterpart to ComboboxAsync: the same host-driven async loading, spinner, error-and-retry panel, creatable and free-solo rows and grouped results, but the trigger carries one removable chip per value with a "+N more" count past `maxChips`. `maxValues` caps how many can be picked, and Backspace or Delete on the trigger removes the last chip. Values the current result set no longer contains still render as chips using the raw value as the label.
Preview
Live · 6 stories▸Why this is recommendedmulti-selectcomboboxautocompleteasync+6
ComboboxAsyncMulti handling multiple items at once.
- ✓Tagging an invoice or ticket with customers fetched from the server
- ✓Selecting multiple recipients from a user-search endpoint
- ✓Attaching several products from a large remote catalogue
- ✓Free-form tag entry capped at N tags
- ✓Multi-value filters backed by a search API
- Host-driven async loading via onSearchChange + options
- Chips in the trigger with a "+N more" overflow past maxChips
- Hard cap on selections via maxValues
- Backspace / Delete on the trigger removes the last chip
- Creatable and free-solo rows that append to the value array
- Loading spinner and error panel with a Retry button
- Grouped results with headings plus a meta line per option
- ✕Selecting a single value (use ComboboxAsync)
- ✕Static option sets already in memory (use MultiCombobox)
- ✕Small fixed sets of 2-5 options (use Checkbox group)
Install
Ask your agent, or call the MCP tool directly. The resolved bundle is written into your project.
Usage
Tick variants in the left menu — each adds a tab with that variant’s real story source, the same code the preview above renders.
Props
optionsCurrent result set — the host replaces it in response to onSearchChange
yesvaluesSelected values (default [])
—onValuesChangeFires with the next array on toggle, create, or chip removal
—onSearchChangeFires on every keystroke; the host should debounce and fetch. Supplying it also turns off the built-in cmdk filter
—maxChipsHow many chips render inline before collapsing to "+N more" (default 3)
—maxValuesCap on selections; further picks are ignored
—loadingShow the loading spinner in the list
—errorError message; replaces the list with an error panel
—onRetryShows a Retry button inside the error panel
—creatableShow a "Create '<query>'" row when no option matches exactly
—onCreateCalled with the query on create; the host owns value assignment. Without it, the query is appended to values
—freeSoloAllow appending any typed text as a value
—disabledDisable the trigger
—