coss ui
coss ui is a component library built on Base UI with a shadcn-like developer experience plus a large particle catalog.
What this skill is for
Use this skill to:
- pick the right coss primitive(s) for a UI task
- write correct coss usage code (imports, composition, props)
- avoid common migration mistakes from shadcn/Radix assumptions
- reference particle examples to produce practical, production-like patterns
Source of truth
- coss components docs:
apps/ui/content/docs/components/*.mdx
https://github.com/cosscom/coss/tree/main/apps/ui/content/docs/components
- coss particle examples:
apps/ui/registry/default/particles/p-*.tsx
https://github.com/cosscom/coss/tree/main/apps/ui/registry/default/particles
- coss particles catalog:
https://coss.com/ui/particles
- docs map for agents:
https://coss.com/ui/llms.txt
Out of scope
- Maintaining coss monorepo internals/build pipelines.
- Editing registry internals unless explicitly requested.
Principles for agent output
- Use existing primitives and particles first before inventing custom markup.
- Prefer composition over custom behavior reimplementation.
- Follow coss naming and APIs from docs exactly.
- Keep examples accessible and production-realistic.
- Prefer concise code that mirrors coss docs/particles conventions.
- Assume Tailwind CSS v4 conventions in coss examples and setup guidance.
Critical usage rules
Always apply before returning coss code:
- Do not invent coss APIs. Verify against component docs first.
- For trigger-based primitives (Dialog, Menu, Select, Popover, Tooltip), follow each primitive's documented trigger/content hierarchy and composition API; do not mix patterns across components.
- Preserve accessibility labels and error semantics.
- Consult primitive-specific guides for component invariants and edge cases.
- For manual install guidance, include all required dependencies and local component files referenced by imports.
- Prefer styled coss exports first; use
*Primitive exports only when custom composition/styling requires it.
Rule references (read on demand when the task touches these areas):
./references/rules/styling.md — Tailwind tokens, icon conventions, data-slot selectors
./references/rules/forms.md — Field composition, validation, input patterns
./references/rules/composition.md — Trigger/popup hierarchies, grouped controls
./references/rules/migration.md — shadcn/Radix to coss/Base UI migration patterns
./references/segmented-control.md — choose Radio Group, links, Toggle Group, or Tabs before applying segmented-control styling
./references/portal-props.md — optional portalProps on composed popups and toast providers (keepMounted, container, which surfaces support it)
Component discovery
All 54 primitives have dedicated reference guides at ./references/primitives/<name>.md. To find the right one for a task, consult the component registry index:
./references/component-registry.md
Usage workflow
- Identify user intent (single primitive, composed flow, form flow, overlay flow, feedback flow).
- Consult
references/component-registry.md to identify candidate primitives.
- Select primitives from coss docs first; avoid custom fallback unless needed.
- Check at least one particle example for practical composition patterns. Particle files live at
apps/ui/registry/default/particles/p-<name>-<N>.tsx (e.g. p-dialog-1.tsx).
- Write minimal code using documented imports/props.
- Self-check accessibility and composition invariants.
Installation reference
See ./references/cli.md for full install/discovery workflow.
Quick CLI pattern:
npx shadcn@latest add @coss/<component>
Quick manual pattern:
- install dependencies listed in the component docs page
- copy required component file(s)
- update imports to match the target app alias setup
Primitive Guidance
Every primitive has a reference guide at ./references/primitives/<name>.md with imports, minimal patterns, inline code examples, pitfalls, and particle references. Use the component registry to find the right file.
High-risk primitives (read these guides first -- they have the most composition gotchas):
./references/primitives/dialog.md — modal overlays, form-in-dialog, responsive dialog/drawer
./references/primitives/menu.md — dropdown actions, checkbox/radio items, submenus
./references/primitives/context-menu.md — right-click/long-press menus at the pointer
./references/primitives/select.md — items-first pattern, multiple, object values, groups
./references/primitives/form.md — Field composition, validation, submission
./references/primitives/input-group.md — addons, DOM order invariant, textarea layouts
./references/primitives/toast.md — toastManager (not Sonner), anchored toasts, providers
Output Checklist
Before returning code:
- imports and props match coss docs
- composition structure is valid for selected primitive(s)
- accessibility and explicit control types (
button, input, etc.) are present
- migration-sensitive flows are verified (type/lint, keyboard/a11y behavior, and SSR-sensitive primitives like Select/Command)
1---2name: coss3description: Helps implement coss UI components correctly. Use when building UIs with coss primitives and patterns (buttons, dialogs, selects, forms, menus, tabs, segmented controls, inputs, toasts, etc.), migrating from shadcn/Radix to coss/Base UI, composing trigger-based overlays, or troubleshooting coss component behavior. Covers imports, accessibility, Tailwind styling, and common pitfalls.4license: MIT5---6
7# coss ui
8
9coss ui is a component library built on Base UI with a shadcn-like developer experience plus a large particle catalog.
10
11## What this skill is for
12
13Use this skill to:
14
15- pick the right coss primitive(s) for a UI task
16- write correct coss usage code (imports, composition, props)
17- avoid common migration mistakes from shadcn/Radix assumptions
18- reference particle examples to produce practical, production-like patterns
19
20## Source of truth
21
22- coss components docs: `apps/ui/content/docs/components/*.mdx`
23 - `https://github.com/cosscom/coss/tree/main/apps/ui/content/docs/components`
24- coss particle examples: `apps/ui/registry/default/particles/p-*.tsx`
25 - `https://github.com/cosscom/coss/tree/main/apps/ui/registry/default/particles`
26- coss particles catalog: `https://coss.com/ui/particles`
27- docs map for agents: `https://coss.com/ui/llms.txt`
28
29## Out of scope
30
31- Maintaining coss monorepo internals/build pipelines.
32- Editing registry internals unless explicitly requested.
33
34## Principles for agent output
35
361. Use existing primitives and particles first before inventing custom markup.
372. Prefer composition over custom behavior reimplementation.
383. Follow coss naming and APIs from docs exactly.
394. Keep examples accessible and production-realistic.
405. Prefer concise code that mirrors coss docs/particles conventions.
416. Assume Tailwind CSS v4 conventions in coss examples and setup guidance.
42
43## Critical usage rules
44
45Always apply before returning coss code:
46
47- Do not invent coss APIs. Verify against component docs first.
48- For trigger-based primitives (Dialog, Menu, Select, Popover, Tooltip), follow each primitive's documented trigger/content hierarchy and composition API; do not mix patterns across components.
49- Preserve accessibility labels and error semantics.
50- Consult primitive-specific guides for component invariants and edge cases.
51- For manual install guidance, include all required dependencies and local component files referenced by imports.
52- Prefer styled coss exports first; use `*Primitive` exports only when custom composition/styling requires it.
53
54Rule references (read on demand when the task touches these areas):
55
56- `./references/rules/styling.md` — Tailwind tokens, icon conventions, data-slot selectors
57- `./references/rules/forms.md` — Field composition, validation, input patterns
58- `./references/rules/composition.md` — Trigger/popup hierarchies, grouped controls
59- `./references/rules/migration.md` — shadcn/Radix to coss/Base UI migration patterns
60- `./references/segmented-control.md` — choose Radio Group, links, Toggle Group, or Tabs before applying segmented-control styling
61- `./references/portal-props.md` — optional `portalProps` on composed popups and toast providers (`keepMounted`, `container`, which surfaces support it)
62
63## Component discovery
64
65All 54 primitives have dedicated reference guides at `./references/primitives/<name>.md`. To find the right one for a task, consult the component registry index:
66
67- `./references/component-registry.md`
68
69## Usage workflow
70
711. Identify user intent (single primitive, composed flow, form flow, overlay flow, feedback flow).
722. Consult `references/component-registry.md` to identify candidate primitives.
733. Select primitives from coss docs first; avoid custom fallback unless needed.
744. Check at least one particle example for practical composition patterns. Particle files live at `apps/ui/registry/default/particles/p-<name>-<N>.tsx` (e.g. `p-dialog-1.tsx`).
755. Write minimal code using documented imports/props.
766. Self-check accessibility and composition invariants.
77
78## Installation reference
79
80See `./references/cli.md` for full install/discovery workflow.
81
82Quick CLI pattern:
83
84```bash
85npx shadcn@latest add @coss/<component>
86```
87
88Quick manual pattern:
89
90- install dependencies listed in the component docs page
91- copy required component file(s)
92- update imports to match the target app alias setup
93
94## Primitive Guidance
95
96Every primitive has a reference guide at `./references/primitives/<name>.md` with imports, minimal patterns, inline code examples, pitfalls, and particle references. Use the component registry to find the right file.
97
98High-risk primitives (read these guides first -- they have the most composition gotchas):
99
100- `./references/primitives/dialog.md` — modal overlays, form-in-dialog, responsive dialog/drawer
101- `./references/primitives/menu.md` — dropdown actions, checkbox/radio items, submenus
102- `./references/primitives/context-menu.md` — right-click/long-press menus at the pointer
103- `./references/primitives/select.md` — items-first pattern, multiple, object values, groups
104- `./references/primitives/form.md` — Field composition, validation, submission
105- `./references/primitives/input-group.md` — addons, DOM order invariant, textarea layouts
106- `./references/primitives/toast.md` — toastManager (not Sonner), anchored toasts, providers
107
108## Output Checklist
109
110Before returning code:
111
112- imports and props match coss docs
113- composition structure is valid for selected primitive(s)
114- accessibility and explicit control types (`button`, `input`, etc.) are present
115- migration-sensitive flows are verified (type/lint, keyboard/a11y behavior, and SSR-sensitive primitives like Select/Command)