SKILLEMALL.ai

BF vue-best-practices

MUST be used for Vue.js tasks. Strongly recommends Composition API with `<script setup>` and TypeScript as the standard approach. Covers Vue 3, SSR, Volar, vue-tsc. Load for any Vue, .vue files, Vue Router, Pinia, or Vite with Vue work. ALWAYS use Composition API unless the project explicitly requires Options API.

LeoYeAI/openclaw-master-skills Agent Skills author: LeoYeAI MIT 80 files body ≈ 6 429 tokens Open the sourcegithub.com analyzed 2 d ago

MUST be used for Vue.js tasks. Strongly recommends Composition API with <script setup> and TypeScript as the standard approach. Covers Vue 3, SSR, Volar…

As a process F 36/100 · Will not run — References files that are not bundled: reference/ref-value-access.md, reference/reactive-destructuring.md, reference/refs-in-collections-need-value.md

IntegrationSoftware developmenttype and topics are labelled automatically from the skill text
JSON
Technical rating
B
85/100
safety, quality, tests
Safety 60%
100
Quality 40%
63
Run on models
none yet
Process rating
F
36/100
Will not run
References files that are not bundled: reference/ref-value-access.md, reference/reactive-destructuring.md, reference/refs-in-collections-need-value.md
Tools and files w 18
0
Result and completion w 14
0
Inputs and preconditions w 11
0
the three weakest of ten parameters · all ten
This is a copy of a skill from another catalog; the rating counts the canonical one: vue-best-practices (LeoYeAI/openclaw-master-skills)

How to improve

  1. The SKILL.md body is over 5,000 tokens: move reference detail into references/ and load it when needed.
  2. The text references files that are not there: add them or drop the references.
For the model run — optional
  • Your own cases (evals/evals.json, 4–6 real requests with expected answers): the full check would then run those instead of a model-drafted suite.
  • A spec.yaml with trigger phrases and assertions — a behaviour contract for CI; `skilltest init` writes a template.

Guard findings · 0

✓ No critical or high findings

Files scanned: 80. Evidence is masked. Grey chips explain why severity was lowered.

Against the Agent Skills spec

  • warning body-long SKILL.md body ≈ 6429 tokens (recommended < 5000); move details to references/
  • warning missing-ref reference to a missing file: reference/ref-value-access.md
  • warning missing-ref reference to a missing file: reference/reactive-destructuring.md
  • warning missing-ref reference to a missing file: reference/refs-in-collections-need-value.md
  • warning missing-ref reference to a missing file: reference/shallow-ref-for-performance.md
  • warning missing-ref reference to a missing file: reference/template-ref-unwrapping-top-level.md
  • warning missing-ref reference to a missing file: reference/reactivity-proxy-identity-hazard.md
  • warning missing-ref reference to a missing file: reference/reactivity-markraw-for-non-reactive.md
  • warning missing-ref reference to a missing file: reference/reactivity-same-tick-batching.md
  • warning missing-ref reference to a missing file: reference/reactivity-external-state-integration.md
  • warning missing-ref reference to a missing file: reference/reactivity-computed-over-watcheffect-mutations.md
  • warning missing-ref reference to a missing file: reference/watch-reactive-property-getter.md
  • warning missing-ref reference to a missing file: reference/watch-deep-performance.md
  • warning missing-ref reference to a missing file: reference/watcheffect-async-dependency-tracking.md
  • warning missing-ref reference to a missing file: reference/watch-flush-timing.md
  • warning missing-ref reference to a missing file: reference/watch-vs-watcheffect.md
  • warning missing-ref reference to a missing file: reference/watch-immediate-option.md
  • warning missing-ref reference to a missing file: reference/watch-deep-same-object-reference.md
  • warning missing-ref reference to a missing file: reference/watcheffect-flush-post-for-refs.md
  • warning missing-ref reference to a missing file: reference/self-referencing-component-name.md
  • warning missing-ref reference to a missing file: reference/v-html-xss-security.md
  • warning missing-ref reference to a missing file: reference/template-functions-no-side-effects.md
  • warning missing-ref reference to a missing file: reference/v-for-use-computed-for-filtering.md
  • warning missing-ref reference to a missing file: reference/v-if-vs-v-show-performance.md
  • warning missing-ref reference to a missing file: reference/v-model-vue3-breaking-changes.md
  • warning missing-ref reference to a missing file: reference/updated-hook-performance.md
  • warning missing-ref reference to a missing file: reference/slot-render-scope-parent-only.md
  • warning missing-ref reference to a missing file: reference/slot-named-scoped-explicit-default.md
  • warning missing-ref reference to a missing file: reference/slot-v-slot-on-components-or-templates-only.md
  • warning missing-ref reference to a missing file: reference/slot-conditional-rendering-with-slots.md
  • warning missing-ref reference to a missing file: reference/slot-define-slots-for-typescript.md
  • warning missing-ref reference to a missing file: reference/slot-fallback-content-default-values.md
  • warning missing-ref reference to a missing file: reference/slot-implicit-default-content.md
  • warning missing-ref reference to a missing file: reference/slot-name-reserved-prop.md
  • warning missing-ref reference to a missing file: reference/slot-renderless-components-vs-composables.md
  • warning missing-ref reference to a missing file: reference/provide-inject-symbol-keys.md
  • warning missing-ref reference to a missing file: reference/provide-inject-mutations-in-provider.md
  • warning missing-ref reference to a missing file: reference/transition-single-element-slot.md
  • warning missing-ref reference to a missing file: reference/transition-key-for-same-element.md
  • warning missing-ref reference to a missing file: reference/transition-js-hooks-done-callback.md
  • warning missing-ref reference to a missing file: reference/transition-group-key-requirement.md
  • warning missing-ref reference to a missing file: reference/transition-animate-transform-opacity.md
  • warning missing-ref reference to a missing file: reference/transition-group-flip-inline-elements.md
  • warning missing-ref reference to a missing file: reference/transition-group-move-animation-position-absolute.md
  • warning missing-ref reference to a missing file: reference/transition-group-no-default-wrapper-vue3.md
  • warning missing-ref reference to a missing file: reference/transition-group-no-mode-prop.md
  • warning missing-ref reference to a missing file: reference/transition-group-staggered-animations.md
  • warning missing-ref reference to a missing file: reference/transition-mode-out-in.md
  • warning missing-ref reference to a missing file: reference/transition-nested-duration.md
  • warning missing-ref reference to a missing file: reference/transition-reusable-scoped-style.md
  • warning missing-ref reference to a missing file: reference/transition-router-view-appear.md
  • warning missing-ref reference to a missing file: reference/transition-type-when-mixed.md
  • warning missing-ref reference to a missing file: reference/transition-unmount-hook-timing.md
  • warning missing-ref reference to a missing file: reference/rendering-render-function-return-from-setup.md
  • warning missing-ref reference to a missing file: reference/render-function-vnodes-must-be-unique.md
  • warning missing-ref reference to a missing file: reference/render-function-v-for-keys-required.md
  • warning missing-ref reference to a missing file: reference/render-function-event-modifiers.md
  • warning missing-ref reference to a missing file: reference/render-function-v-model-implementation.md
  • warning missing-ref reference to a missing file: reference/rendering-resolve-component-for-string-names.md
  • warning missing-ref reference to a missing file: reference/render-function-avoid-internal-vnode-properties.md
  • warning missing-ref reference to a missing file: reference/render-function-functional-components.md
  • warning missing-ref reference to a missing file: reference/render-function-custom-directives.md
  • warning missing-ref reference to a missing file: reference/rendering-excessive-rerenders-watch-vs-computed.md
  • warning missing-ref reference to a missing file: reference/rendering-prefer-templates-over-render-functions.md
  • warning missing-ref reference to a missing file: reference/rendering-render-function-h-import-vue3.md
  • warning missing-ref reference to a missing file: reference/rendering-render-function-slots-as-functions.md
  • warning missing-ref reference to a missing file: reference/rendering-understand-vdom-block-structure.md
  • warning missing-ref reference to a missing file: reference/teleport-css-positioning-issues.md
  • warning missing-ref reference to a missing file: reference/teleport-disabled-for-responsive.md
  • warning missing-ref reference to a missing file: reference/teleport-logical-hierarchy-preserved.md
  • warning missing-ref reference to a missing file: reference/teleport-multiple-to-same-target.md
  • warning missing-ref reference to a missing file: reference/teleport-scoped-styles-limitation.md
  • warning missing-ref reference to a missing file: reference/suspense-events-for-state-tracking.md
  • warning missing-ref reference to a missing file: reference/suspense-experimental-api-stability.md
  • warning missing-ref reference to a missing file: reference/suspense-fallback-not-immediate-on-revert.md
  • warning missing-ref reference to a missing file: reference/suspense-nested-suspensible-prop.md
  • warning missing-ref reference to a missing file: reference/suspense-nesting-order-with-router.md
  • warning missing-ref reference to a missing file: reference/suspense-revert-only-on-root-change.md
  • warning missing-ref reference to a missing file: reference/suspense-single-child-requirement.md
  • warning missing-ref reference to a missing file: reference/ts-defineprops-type-based-declaration.md
  • warning missing-ref reference to a missing file: reference/ts-withdefaults-mutable-factory-function.md
  • warning missing-ref reference to a missing file: reference/ts-reactive-no-generic-argument.md
  • warning missing-ref reference to a missing file: reference/ts-template-ref-null-handling.md
  • warning missing-ref reference to a missing file: reference/ts-component-ref-typeof-instancetype.md
  • warning missing-ref reference to a missing file: reference/ts-custom-directive-type-augmentation.md
  • warning missing-ref reference to a missing file: reference/ts-defineemits-type-based-syntax.md
  • warning missing-ref reference to a missing file: reference/ts-defineprops-boolean-default-false.md
  • warning missing-ref reference to a missing file: reference/ts-defineprops-imported-types-limitations.md
  • warning missing-ref reference to a missing file: reference/ts-event-handler-explicit-typing.md
  • warning missing-ref reference to a missing file: reference/ts-provide-inject-injection-key.md
  • warning missing-ref reference to a missing file: reference/ts-shallowref-for-dynamic-components.md
  • warning missing-ref reference to a missing file: reference/ts-template-type-casting.md
  • warning missing-ref reference to a missing file: reference/state-ssr-cross-request-pollution.md
  • warning missing-ref reference to a missing file: reference/ssr-platform-specific-apis.md
  • warning missing-ref reference to a missing file: reference/ssr-custom-directive-getssrprops.md
  • warning missing-ref reference to a missing file: reference/sfc-recommended-for-build-projects.md
  • warning missing-ref reference to a missing file: reference/sfc-scoped-css-child-component-styling.md
  • warning missing-ref reference to a missing file: reference/sfc-scoped-css-dynamic-content.md
  • warning missing-ref reference to a missing file: reference/sfc-scoped-css-performance.md
  • warning missing-ref reference to a missing file: reference/sfc-scoped-css-slot-content.md
  • warning missing-ref reference to a missing file: reference/sfc-separation-of-concerns-colocate.md
  • warning missing-ref reference to a missing file: reference/style-binding-camelcase.md
  • warning missing-ref reference to a missing file: reference/tailwind-dynamic-class-generation.md

Process rating: all ten parameters 36/100

Will not run. References files that are not bundled: reference/ref-value-access.md, reference/reactive-destructuring.md, reference/refs-in-collections-need-value.md
  • 0Tools and files. 102 referenced file(s) missing: reference/ref-value-access.md, reference/reactive-destructuring.md, reference/refs-in-collections-need-value.md
  • 0Result and completion. Does not say what the result is
  • 0Inputs and preconditions. Does not say what the process needs to start
  • 0Progress reporting. Says nothing while it works
  • 20When it triggers. No condition that starts the skill
  • 30Running it twice. 1 mutating operations with no state check
  • 50Failures and branches. 0 branches, has a failure section
  • 70Execution cost. Instruction body is 6429 tokens
  • 100Steps. 180 steps
  • 100Consistency. Name and required fields are in place

Everything here is measured from the skill text rather than judged by a model, so the numbers are checkable. A parameter weighs more when it is a more common reason for the process to stall.

Quality signals

  • +5Description has no quoted example phrases that should trigger the skill
  • +4Description does not say when NOT to use the skill (false activations)
  • +3Output format is not stated: the model decides each time
  • +4No input/output examples
  • +2Single-language instructions
  • +3Description length 315: enough signal without eating the budget
  • +4Structure: 28 headings
  • +3Step-by-step instructions: 180 items
  • +4Reference files are cited in the instructions (78 of 78)
  • +1License stated

Quality base 70; lint remarks subtract, signals add up to 100. Result: 63.