Advanced Evernote SDK patterns and best practices. Use when implementing complex note operations, batch processing, search queries, or optimizing SDK usage. Trigger with phrases like "evernote sdk patterns", "evernote best practices", "evernote advanced", "evernote batch operations".
74
70%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./plugins/saas-packs/evernote-pack/skills/evernote-sdk-patterns/SKILL.mdQuality
Discovery
89%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
This is a reasonably well-structured skill description with clear 'Use when' and 'Trigger with' clauses that make it easy for Claude to select appropriately. Its main weakness is that the capabilities listed are somewhat abstract—terms like 'complex note operations' and 'optimizing SDK usage' could be more concrete with specific examples of what those operations entail. The niche domain (Evernote SDK) provides strong natural distinctiveness.
Suggestions
Replace abstract phrases like 'complex note operations' with concrete actions such as 'create notes with attachments, manage notebooks, handle note metadata, implement pagination'.
Add specific file types or API concepts (e.g., 'ENML formatting', 'note GUID lookups', '.enex exports') to strengthen specificity and trigger term coverage.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (Evernote SDK) and mentions some actions like 'complex note operations, batch processing, search queries, optimizing SDK usage', but these are somewhat abstract rather than concrete specific actions (e.g., doesn't specify what 'complex note operations' entails). | 2 / 3 |
Completeness | Clearly answers both 'what' (advanced Evernote SDK patterns covering complex note operations, batch processing, search queries, SDK optimization) and 'when' (explicit 'Use when' clause and 'Trigger with phrases' section providing clear activation guidance). | 3 / 3 |
Trigger Term Quality | Includes explicit trigger phrases like 'evernote sdk patterns', 'evernote best practices', 'evernote advanced', 'evernote batch operations' which are natural terms a developer would use. Also includes terms like 'search queries' and 'batch processing' in context. | 3 / 3 |
Distinctiveness Conflict Risk | Evernote SDK is a very specific niche domain, and the description further narrows to 'advanced' patterns and best practices. This is unlikely to conflict with other skills unless there's another Evernote-specific skill. | 3 / 3 |
Total | 11 / 12 Passed |
Implementation
50%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
The skill provides a reasonable overview of Evernote SDK patterns with some good executable code for search and attachments, but falls short by leaving three of five patterns without concrete implementations and deferring to a non-existent reference file. The error handling table is a strength, but the lack of validation checkpoints in multi-step workflows and missing bundle files weaken the overall quality.
Suggestions
Add executable code examples for Patterns 3 (error handling wrapper), 4 (batch operations), and 5 (tag/notebook management) instead of prose descriptions, or ensure the referenced implementation-guide.md exists in the bundle.
Define the `wrapInENML()` helper function that is referenced in multiple patterns but never implemented.
Add explicit validation/verification steps to multi-step workflows, e.g., verify attachment upload succeeded by calling getNote() with withResources:true as part of the Pattern 2 code example.
Include the referenced 'references/implementation-guide.md' bundle file or inline the critical implementations to make the skill self-contained.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is mostly efficient but includes some unnecessary explanatory text (e.g., 'This avoids fetching full note content when only metadata is needed' and the Prerequisites section explaining familiarity with async/await). Patterns 3-5 are described in prose without code, which is concise but shifts the burden to the referenced implementation guide. Some sections like Output feel redundant given the content above. | 2 / 3 |
Actionability | Patterns 1 and 2 have executable code examples, but Patterns 3, 4, and 5 are described only in prose with no concrete code. The 'wrapInENML()' helper is referenced but never defined. The Examples section describes scenarios in prose rather than providing executable code. Key implementations are deferred to a referenced file that doesn't exist in the bundle. | 2 / 3 |
Workflow Clarity | The error handling table provides good troubleshooting guidance, and batch operations mention rate limit retry. However, there are no explicit validation checkpoints or feedback loops for the multi-step processes described (e.g., attachment creation has no verification step after upload). The batch operations pattern lacks a concrete workflow with validation steps. | 2 / 3 |
Progressive Disclosure | The skill references 'references/implementation-guide.md' for complete implementations and links to external resources, but the bundle has no files, meaning the referenced implementation guide doesn't exist. The structure is reasonable with patterns as sections, but the split between inline partial examples and a missing reference file is problematic. | 2 / 3 |
Total | 8 / 12 Passed |
Validation
81%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 9 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
allowed_tools_field | 'allowed-tools' contains unusual tool name(s) | Warning |
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 9 / 11 Passed | |
3a2d27d
Table of Contents
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.