CtrlK
BlogDocsLog inGet started
Tessl Logo

novu-manage-preferences

Configure notification preferences in Novu at the workflow and subscriber level. Set default channel preferences (email, SMS, push, chat, in-app), mark preferences as read-only or subscriber-editable, and manage subscriber-specific overrides. Use when setting up notification opt-in/opt-out, configuring per-channel delivery preferences, or building a preferences management UI.

68

Quality

83%

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

SKILL.md
Quality
Evals
Security

Quality

Content

75%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.

A well-built reference skill: executable code for both workflow- and subscriber-level preferences, an explicit resolution-order model, a readOnly-vs-critical distinction, and a pitfalls section, backed by three real one-level-deep reference files. Main improvements are trimming the duplicated 'Common Patterns' examples and linking references inline where each topic is discussed.

Suggestions

Cut or merge the 'Common Patterns' section — its Critical Alerts and Marketing blocks duplicate the earlier Read-Only and Optional Preferences examples — and keep only the unique 'In-App Only by Default' pattern.

Signal references at the point of use (e.g., after the subscriber update snippet: 'For cURL and more variants see ./references/subscriber-preferences-examples.md') instead of only in the bottom References list.

Make the workflow examples more copy-paste ready by noting where `execute` comes from (a one-line pointer to the framework-integration skill's Bridge pattern) and by reading React identifiers from environment variables as the reference file already does.

DimensionReasoningScore

Conciseness

The body is code-forward, assumes competence (no explanations of what Novu or React are), and every section earns its place — matching the 'efficient; minor instances that could be trimmed' anchor. It is not a 5 because the 'Common Patterns' section re-shows preference blocks nearly identical to the earlier 'Read-Only' and 'Optional Preferences' examples, adding repetition.

4 / 5

Actionability

Guidance is mostly executable: complete TypeScript/TSX snippets with imports for workflow preferences, subscriber list/update, global updates, and both Inbox/Preferences UI components, plus a channel-type table. It falls short of fully copy-paste ready (5) because the workflow examples reference an undefined `execute` handler and the React sample hardcodes placeholder identifiers, leaving minor gaps.

4 / 5

Workflow Clarity

The two-level system is clearly sequenced (workflow defaults → subscriber overrides → explicit 4-step resolution order → pitfalls), and no destructive/batch validation cap applies since preference updates are non-destructive single calls. It is a reference-style skill without multi-step procedures, so it sits at 'clear sequence, most checkpoints present' (4) rather than the 5 anchor's explicit validate/fix/retry loops, which don't apply here.

4 / 5

Progressive Disclosure

Good structure: a well-sectioned SKILL.md overview with three real, one-level-deep reference files (workflow, subscriber, and UI examples) listed in a References section, plus cross-links to sibling skills. It misses the 5 anchor because the references are only listed at the bottom rather than signaled at the point of use (e.g., 'see ./references/subscriber-preferences-examples.md for cURL variants'), so navigation is good but not seamlessly integrated.

4 / 5

Total

16

/

20

Passed

Description

92%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: third-person, concrete, and comprehensive, with an explicit 'Use when...' clause covering the main use cases. The only gap is a handful of natural synonyms (unsubscribe, notification settings) that would broaden trigger coverage.

DimensionReasoningScore

Specificity

Lists multiple concrete, comprehensive actions: 'Set default channel preferences (email, SMS, push, chat, in-app)', 'mark preferences as read-only or subscriber-editable', and 'manage subscriber-specific overrides'. This matches the anchor for several specific concrete actions with full coverage; there is no vagueness to push it to 4 or below.

5 / 5

Completeness

Explicitly answers both: what ('Configure notification preferences in Novu at the workflow and subscriber level... manage subscriber-specific overrides') and when ('Use when setting up notification opt-in/opt-out, configuring per-channel delivery preferences, or building a preferences management UI'). Clear what and explicit when with concrete trigger phrases — the 5 anchor; not the 4 anchor since the when clause is fully specific.

5 / 5

Trigger Term Quality

Good natural-term coverage: 'notification opt-in/opt-out', 'per-channel delivery preferences', 'preferences management UI', plus all channel names. A few common user phrasings are missing (e.g., 'unsubscribe', 'notification settings', 'mute'), so it fits the 'good keyword coverage; a few natural terms missing' anchor rather than the comprehensive anchor at 5.

4 / 5

Distinctiveness Conflict Risk

Clear niche (Novu notification preferences at workflow/subscriber level) with distinct triggers ('opt-in/opt-out', 'read-only', 'subscriber overrides') that would not naturally fire for unrelated skills. Only the narrowest overlap with other Novu skills, matching the minimal-conflict anchor at 5.

5 / 5

Total

19

/

20

Passed

Validation

87%

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

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

relative_links

Relative link issues: 2 suspicious

Warning

Total

14

/

16

Passed

Repository
novuhq/novu
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.