agentleFS
bbvch-aibbvch-ai/aihub-core/.claude/skills/primevue-lookup/SKILL.md

primevue-lookup

Skill16 starsChanged 3 days agoApache-2.0View on GitHub

Look up PrimeVue component docs, props, events, slots, and generate project-specific usage examples. Uses PrimeVue and Context7 MCP servers for up-to-date documentation. Use when user says "how do I use DataTable", "PrimeVue Dialog props", "what PrimeVue component for X", "show me how to use Tag", "PrimeVue examples", "which component for dropdowns", or "look up PrimeVue". Do NOT use for scaffolding new Vue components (use scaffold-frontend-component), design system or theming questions (use design-system), or frontend code audits (use audit-frontend). Returns props/events tables, existing codebase usage, and a ready-to-use code example.

We split this skill into the rules it gives an agent

15 rules. About 0 are common, 5 are distinctive, and 10 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈5

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 10

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Look up PrimeVue component documentation and generate project-specific usage examples.

    line 9
  2. Very specific:

    If the user specified a component name (e.g., "DataTable", "Dialog"), use mcp__primevue__get_component directly.

    line 14
  3. Very specific:

    If the user described a use case (e.g., "sortable list", "confirmation popup"), use mcp__primevue__suggest_component to find the best match.

    line 15
  4. Distinctive:

    Look up component details with these PrimeVue MCP tools:

    line 17
  5. Very specific:

    Use mcp__context7__resolve-library-id then mcp__context7__query-docs to fetch additional PrimeVue documentation and code examples.

    line 23
  6. Distinctive:

    Search the codebase for existing usage of the component:

    line 28
  7. Very specific:

    Search in packages/web/components/ and packages/web/pages/ for the component tag name (e.g., <DataTable, <Dialog)

    line 30
  8. Very specific:

    Check if the component is excluded from auto-import in nuxt.config.ts (some are wrapped by FormKit)

    line 33
  9. Very specific:

    Read the project theme: packages/web/themes/aihub-theme.ts

    line 37
  10. Distinctive:

    Create a usage example that follows project conventions:

    line 43
  11. Very specific:

    i18n labels: All user-visible text must use $t('key.path') or t('key.path')

    line 71
  12. Very specific:

    Dark mode: Use dark: Tailwind variants for dark mode support

    line 72
  13. Distinctive:

    If FormKit-wrapped, verify the example does NOT use a direct PrimeVue import

    line 88
  14. Very specific:

    Check that i18n keys used in the example exist in packages/web/i18n/locales/en.yaml

    line 89
  15. Distinctive:

    If referencing existing usage, confirm the file paths are current

    line 90

≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

PrimeVue Component Lookup

Look up PrimeVue component documentation and generate project-specific usage examples. Component name or use case via $ARGUMENTS.

Step 1: Find the Component

  1. If the user specified a component name (e.g., "DataTable", "Dialog"), use mcp__primevue__get_component directly.
  2. If the user described a use case (e.g., "sortable list", "confirmation popup"), use mcp__primevue__suggest_component to find the best match.
  3. Look up component details with these PrimeVue MCP tools:
    • mcp__primevue__get_component_props — props with types and defaults
    • mcp__primevue__get_component_events — events with payload types
    • mcp__primevue__get_component_slots — available slots
    • mcp__primevue__get_component_pt — Pass Through options for styling
    • mcp__primevue__get_accessibility_info — accessibility features
  4. Use mcp__context7__resolve-library-id then mcp__context7__query-docs to fetch additional PrimeVue documentation and code examples.

Step 2: Check Existing Usage in Project

Search the codebase for existing usage of the component:

  1. Search in packages/web/components/ and packages/web/pages/ for the component tag name (e.g., <DataTable, <Dialog)
  2. Note how the project currently uses the component (which props, events, styling patterns)
  3. Check if the component is excluded from auto-import in nuxt.config.ts (some are wrapped by FormKit)

Step 3: Check PrimeVue Theme Integration

Read the project theme: packages/web/themes/aihub-theme.ts

Note any custom design tokens or component-specific overrides that affect styling.

Step 4: Generate Usage Example

Create a usage example that follows project conventions:

<template>
  <!-- PrimeVue component with project-standard patterns -->
  <ComponentName
    v-model="value"
    :prop="data"
    class="tailwind-classes"
    @event="handler"
  />
</template>

<script setup lang="ts">
// Typed refs matching project patterns
const value = ref<Type>(initialValue)
</script>

Project-Specific Rules

  • Auto-imported: PrimeVue components are auto-imported by @primevue/nuxt-module -- no explicit imports needed
  • FormKit-wrapped: These components are excluded from PrimeVue auto-import and MUST come from FormKit: AutoComplete, CascadeSelect, Checkbox, Chip, ColorPicker, DatePicker, Editor, InputMask, InputNumber, InputOtp, InputText, Knob, Listbox, MultiSelect, Password, RadioButton, Rating, Select, SelectButton, Slider, Textarea, ToggleButton, ToggleSwitch, TreeSelect
  • Also excluded from auto-import (not FormKit-wrapped, imported differently): Button, Form, FormField, Chart
  • Tailwind only: Style with Tailwind utility classes, not custom CSS
  • i18n labels: All user-visible text must use $t('key.path') or t('key.path')
  • Dark mode: Use dark: Tailwind variants for dark mode support

Step 5: Report

Provide the following in a structured format:

  1. Component name and import method (auto-import vs FormKit)
  2. Props table with types, defaults, and descriptions
  3. Events table with payload types
  4. Slots available for customization
  5. Project-specific usage example following all conventions above
  6. Existing usage -- file paths where this component is already used in the codebase

Step 6: Verify

  1. Confirm the component exists: mcp__primevue__get_component should return data
  2. If FormKit-wrapped, verify the example does NOT use a direct PrimeVue import
  3. Check that i18n keys used in the example exist in packages/web/i18n/locales/en.yaml
  4. If referencing existing usage, confirm the file paths are current

Examples

Input: $ARGUMENTS = "DataTable"

Expected output: Props table (value, selection, dataKey, size, etc.), events table (update:selection, row-click, sort, etc.), slots (header, body, footer, empty), plus a code example using size="small", selection-mode="single", typed SDK DTO array, and i18n column headers.

Input: $ARGUMENTS = "confirmation popup"

Expected output: Identifies ConfirmDialog + useConfirm() composable as the correct approach. Shows project pattern with confirm.require({ message, header, accept, reject }) and i18n strings.

Input: $ARGUMENTS = "Tag"

Expected output: Props (value, severity, icon, rounded), existing usage showing severity patterns (success/danger/secondary), and code example with dynamic severity.

Troubleshooting

ProblemCauseFix
Component renders but unstyledPrimeVue theme not loadedCheck nuxt.config.ts for @primevue/nuxt-module configuration
FormKit input not renderingUsing PrimeVue import for a wrapped componentCheck the FormKit-wrapped list above; use FormKit version instead
Component not found at runtimeTypo in component name or not auto-importedPrimeVue components are PascalCase; check nuxt.config.ts exclude list
Custom CSS not applyingPrimeVue internal DOM elementsUse :deep() selector in scoped styles or CSS custom properties (see design-system skill)
MCP server returning no resultsServer not running or wrong queryVerify PrimeVue MCP is configured in .mcp.json; try exact component name

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.