CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

pinia

Pinia official Vue state management library, type-safe and extensible. Use when defining stores, working with state/getters/actions, or implementing store patterns in Vue apps.

Quality

80%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./skills/pinia/SKILL.md

The canonical home for this skill is pinia in antfu/skills

SKILL.md
Quality
Evals
Security

Quality

Content

63%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

An exemplary progressive-disclosure structure: a lean, well-organized index that correctly keeps all detail in existing one-level-deep reference files, plus a concise list of concrete best-practice recommendations. Weaknesses are the redundant introductory paragraph restating the description, the unpinned placement of version/date stamp information, and the lack of any executable code or 'how' detail behind the recommendations.

Suggestions

Cut or tighten the opening paragraph that restates the frontmatter description ("official state management library for Vue... first-class TypeScript support and devtools integration") — Claude already knows what Pinia is, and the description already covers it.

Move the time-sensitive line ("based on Pinia v4.0.3, generated at 2026-09-25") into a dedicated compatibility/version note or the metadata rather than a prominent blockquote, per the rubric's penalty for inline version/date stamps.

Add a minimal copy-paste example for the top recommendation (e.g., a short setup-store snippet with storeToRefs and HMR), or point to where in core-stores.md it lives, so 'Add HMR support to each store' is actionable without opening multiple files.

DimensionReasoningScore

Conciseness

The body is mostly efficient, but the opening paragraph re-explains what Pinia is ("official state management library for Vue... type-safe... first-class TypeScript support and devtools integration") — largely restating the frontmatter description — and includes time-sensitive info ("based on Pinia v4.0.3, generated at 2026-09-25") not in a deprecation/old-patterns section, which the guidelines penalize. Not anchor 2 (no heavy padding or extensive known-concept explanation) and not anchor 4 (the redundancy is more than a minor trim).

3 / 5

Actionability

The "Key Recommendations" list gives concrete, named directives ("Use storeToRefs() when destructuring", "Call stores inside functions not at module scope", "Add HMR support"), but the body contains no executable code or commands, and recommendations like "Add HMR support to each store" give no detail on how. This matches anchor 3 (some concrete guidance but incomplete, missing key details); anchor 4 requires concrete code or commands, which are absent from the body.

3 / 5

Workflow Clarity

As a reference-index skill, its single action — find your topic in the category tables, then open the linked reference — is unambiguous, with "Core References" listed first to indicate a starting point. Anchor 5 would require explicit sequencing/checkpoints for a multi-step process that does not exist here; there is no destructive or batch operation requiring validation. Minor gap: no explicit guidance on where to start for a newcomer, so anchor 4 (clear structure, minor gaps) is the best fit.

4 / 5

Progressive Disclosure

The body is a lean overview of ~50 lines with all detailed content split into 9 one-level-deep reference files, all of which exist in references/, each clearly signaled in labeled tables with a topic and one-line description. The single cross-link found (advanced-ssr.md → advanced-nuxt.md) is a lateral signpost, not nested depth. This matches anchor 5 (clear overview, well-signaled one-level-deep references, easy navigation).

5 / 5

Total

15

/

20

Passed

Description

87%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description that clearly identifies the domain and provides an explicit 'Use when...' clause with concrete, natural trigger terms. It is concise, specific, and unlikely to fire for the wrong skill; the main improvement would be mentioning more of the bundle's covered areas (plugins, testing, SSR) as trigger terms.

DimensionReasoningScore

Specificity

Names the domain ("Pinia official Vue state management library, type-safe and extensible") and several concrete actions — "defining stores", "working with state/getters/actions", "implementing store patterns" — with only minor gaps (e.g., no mention of plugins, testing, or SSR which the bundle covers). It fits anchor 4 (several specific actions, minor gaps) better than 5 (comprehensive coverage) and better than 3 (only 1–2 actions).

4 / 5

Completeness

Both parts are explicit: "what" — "Pinia official Vue state management library, type-safe and extensible" — and "when" — "Use when defining stores, working with state/getters/actions, or implementing store patterns in Vue apps". The 'when' clause uses concrete trigger phrases matching anchor 5; anchor 4 would require the 'when' to be less explicit or specific, which is not the case.

5 / 5

Trigger Term Quality

Natural user phrasing is well covered: "defining stores", "state/getters/actions", "store patterns", "Vue apps", "state management". It sits between anchor 4 and 5 — common variations users might say like "defineStore", "Vuex", or "store" alone are not explicitly covered, so it is not comprehensive, but it clearly exceeds the partial keyword coverage of anchor 3.

4 / 5

Distinctiveness Conflict Risk

"Pinia" and "Vue state management" carve out a clear niche with distinct triggers (stores, state/getters/actions), matching anchor 5. The only conceivable overlap would be a Vuex skill, but naming Pinia explicitly keeps conflict risk minimal; anchor 4's 'minor overlap risk with closely related skills' is a slightly worse fit.

5 / 5

Total

18

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

onmax/nuxt-skills

Path

skills/pinia/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.