Skip to content

Conversation

@pasqualevitiello
Copy link
Contributor

@pasqualevitiello pasqualevitiello commented Dec 17, 2025

Summary by cubic

Introduces a new Command palette built on Base UI Dialog + Autocomplete, and adds start addon support to Autocomplete and Combobox for better UI. Addresses Linear CUI-36 by replacing the old cmdk-based command with a native component and removing the cmdk dependency.

  • New Features

    • New Command component with dialog, trigger/popup, groups, collections, footer, separators, and shortcuts.
    • Autocomplete and Combobox now support a startAddon on inputs and chips.
    • New docs: Command usage and installation; expanded API refs for Autocomplete/Combobox.
    • New registry items and particles for Command and startAddon examples.
  • Refactors

    • Rewrote command-menu to use the new Command component; removed legacy cmdk implementation.
    • Tweaked Dialog viewport/popup to support mobile bottom stick.
    • Updated registry, categories, and sidebar; script now ignores utils when validating registry deps.
    • Removed cmdk from package.json and lockfile.

Written for commit 1ef14c8. Summary will update automatically on new commits.

@vercel
Copy link

vercel bot commented Dec 17, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Review Updated (UTC)
coss-com Ready Ready Preview, Comment Dec 18, 2025 1:49pm
coss-com-ui Ready Ready Preview, Comment Dec 18, 2025 1:49pm
1 Skipped Deployment
Project Deployment Review Updated (UTC)
coss-com-origin Skipped Skipped Dec 18, 2025 1:49pm

Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

6 issues found across 46 files

Prompt for AI agents (all 6 issues)

Check if these issues are valid — if so, understand the root cause of each and fix them.


<file name="apps/ui/public/r/p-combobox-14.json">

<violation number="1" location="apps/ui/public/r/p-combobox-14.json:1">
P2: Grammar issue: &quot;Select a item&quot; should be &quot;Select an item&quot;. The indefinite article &#39;an&#39; is used before words starting with a vowel sound.</violation>
</file>

<file name="apps/ui/registry/default/particles/p-combobox-14.tsx">

<violation number="1" location="apps/ui/registry/default/particles/p-combobox-14.tsx:42">
P2: Grammar error: &quot;a item&quot; should be &quot;an item&quot; (use &#39;an&#39; before words starting with a vowel sound).</violation>
</file>

<file name="apps/ui/registry/default/particles/p-command-1.tsx">

<violation number="1" location="apps/ui/registry/default/particles/p-command-1.tsx:133">
P2: Keyboard shortcut documentation is incorrect. The footer shows `⌘K` for &quot;Close&quot;, but the actual toggle shortcut is `⌘J`. Consider changing to `⌘J` or updating the label to reflect that it toggles the dialog.</violation>
</file>

<file name="packages/ui/src/components/command.tsx">

<violation number="1" location="packages/ui/src/components/command.tsx:165">
P2: The `className` prop is destructured but never passed to `AutocompleteGroup`, causing any className passed to `CommandGroup` to be silently ignored.</violation>
</file>

<file name="apps/ui/registry/default/ui/command.tsx">

<violation number="1" location="apps/ui/registry/default/ui/command.tsx:165">
P2: The `className` prop is destructured but never passed to `AutocompleteGroup`. This will cause any `className` passed to `CommandGroup` to be silently ignored. Either remove the destructuring to let it pass through with `...props`, or explicitly pass it to the component.</violation>
</file>

<file name="apps/ui/public/r/command.json">

<violation number="1" location="apps/ui/public/r/command.json:1">
P2: The `className` prop is destructured but never passed to `AutocompleteGroup`. Any `className` passed to `CommandGroup` will be silently ignored. Either pass `className={className}` to `AutocompleteGroup` or remove it from destructuring.</violation>
</file>

Reply to cubic to teach it or ask questions. Re-run a review with @cubic-dev-ai review this PR

@@ -0,0 +1,26 @@
{
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot Dec 17, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: Grammar issue: "Select a item" should be "Select an item". The indefinite article 'an' is used before words starting with a vowel sound.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At apps/ui/public/r/p-combobox-14.json:

<comment>Grammar issue: &quot;Select a item&quot; should be &quot;Select an item&quot;. The indefinite article &#39;an&#39; is used before words starting with a vowel sound.</comment>

<file context>
@@ -0,0 +1,26 @@
+{
+  &quot;$schema&quot;: &quot;https://ui.shadcn.com/schema/registry-item.json&quot;,
+  &quot;name&quot;: &quot;p-combobox-14&quot;,
+  &quot;type&quot;: &quot;registry:block&quot;,
+  &quot;description&quot;: &quot;Combobox multiple with start addon&quot;,
+  &quot;dependencies&quot;: [
+    &quot;lucide-react&quot;
+  ],
+  &quot;registryDependencies&quot;: [
</file context>
Fix with Cubic

</ComboboxChip>
))}
<ComboboxInput
aria-label="Select a item"
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot Dec 17, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: Grammar error: "a item" should be "an item" (use 'an' before words starting with a vowel sound).

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At apps/ui/registry/default/particles/p-combobox-14.tsx, line 42:

<comment>Grammar error: &quot;a item&quot; should be &quot;an item&quot; (use &#39;an&#39; before words starting with a vowel sound).</comment>

<file context>
@@ -0,0 +1,61 @@
+                &lt;/ComboboxChip&gt;
+              ))}
+              &lt;ComboboxInput
+                aria-label=&quot;Select a item&quot;
+                placeholder={value.length &gt; 0 ? undefined : &quot;Select a item...&quot;}
+              /&gt;
</file context>
Fix with Cubic

<div className="flex items-center gap-2">
<KbdGroup>
<Kbd>⌘</Kbd>
<Kbd>K</Kbd>
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot Dec 17, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: Keyboard shortcut documentation is incorrect. The footer shows ⌘K for "Close", but the actual toggle shortcut is ⌘J. Consider changing to ⌘J or updating the label to reflect that it toggles the dialog.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At apps/ui/registry/default/particles/p-command-1.tsx, line 133:

<comment>Keyboard shortcut documentation is incorrect. The footer shows `⌘K` for &quot;Close&quot;, but the actual toggle shortcut is `⌘J`. Consider changing to `⌘J` or updating the label to reflect that it toggles the dialog.</comment>

<file context>
@@ -0,0 +1,142 @@
+            &lt;div className=&quot;flex items-center gap-2&quot;&gt;
+              &lt;KbdGroup&gt;
+                &lt;Kbd&gt;⌘&lt;/Kbd&gt;
+                &lt;Kbd&gt;K&lt;/Kbd&gt;
+              &lt;/KbdGroup&gt;
+              &lt;span&gt;Close&lt;/span&gt;
</file context>
Fix with Cubic

);
}

function CommandGroup({
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot Dec 17, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: The className prop is destructured but never passed to AutocompleteGroup, causing any className passed to CommandGroup to be silently ignored.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/ui/src/components/command.tsx, line 165:

<comment>The `className` prop is destructured but never passed to `AutocompleteGroup`, causing any className passed to `CommandGroup` to be silently ignored.</comment>

<file context>
@@ -0,0 +1,258 @@
+  );
+}
+
+function CommandGroup({
+  className,
+  ...props
</file context>

✅ Addressed in d272a60

);
}

function CommandGroup({
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot Dec 17, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: The className prop is destructured but never passed to AutocompleteGroup. This will cause any className passed to CommandGroup to be silently ignored. Either remove the destructuring to let it pass through with ...props, or explicitly pass it to the component.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At apps/ui/registry/default/ui/command.tsx, line 165:

<comment>The `className` prop is destructured but never passed to `AutocompleteGroup`. This will cause any `className` passed to `CommandGroup` to be silently ignored. Either remove the destructuring to let it pass through with `...props`, or explicitly pass it to the component.</comment>

<file context>
@@ -0,0 +1,258 @@
+  );
+}
+
+function CommandGroup({
+  className,
+  ...props
</file context>

✅ Addressed in d272a60

@@ -0,0 +1,18 @@
{
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot Dec 17, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: The className prop is destructured but never passed to AutocompleteGroup. Any className passed to CommandGroup will be silently ignored. Either pass className={className} to AutocompleteGroup or remove it from destructuring.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At apps/ui/public/r/command.json:

<comment>The `className` prop is destructured but never passed to `AutocompleteGroup`. Any `className` passed to `CommandGroup` will be silently ignored. Either pass `className={className}` to `AutocompleteGroup` or remove it from destructuring.</comment>

<file context>
@@ -0,0 +1,18 @@
+{
+  &quot;$schema&quot;: &quot;https://ui.shadcn.com/schema/registry-item.json&quot;,
+  &quot;name&quot;: &quot;command&quot;,
+  &quot;type&quot;: &quot;registry:ui&quot;,
+  &quot;dependencies&quot;: [
+    &quot;@base-ui/react&quot;
+  ],
+  &quot;registryDependencies&quot;: [
+    &quot;@coss/autocomplete&quot;
</file context>

✅ Addressed in d272a60

Copy link
Contributor

@sean-brydon sean-brydon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lots of code here - done a lot of manual testing looking great!

@vercel vercel bot temporarily deployed to Preview – coss-com-origin December 18, 2025 13:48 Inactive
@sean-brydon sean-brydon merged commit d893d0d into main Dec 18, 2025
11 checks passed
@sean-brydon sean-brydon deleted the pasquale/cui-36-add-a-cmdk-component branch December 18, 2025 13:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants