Upgrade Evernote SDK versions and migrate between API versions. Use when upgrading SDK, handling breaking changes, or migrating to newer API patterns. Trigger with phrases like "upgrade evernote sdk", "evernote migration", "update evernote", "evernote breaking changes".
74
70%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Advisory
Suggest reviewing before use
Optimize this skill with Tessl
npx tessl skill review --optimize ./plugins/saas-packs/evernote-pack/skills/evernote-upgrade-migration/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 solid skill description with clear 'what' and 'when' clauses, explicit trigger phrases, and a highly distinctive niche. The main weakness is that the specific capabilities could be more detailed — listing concrete migration actions beyond the general 'upgrade' and 'migrate' would strengthen it.
Suggestions
Add more specific concrete actions, e.g., 'update deprecated API calls, refactor authentication flows, update dependency versions in package configs' to improve specificity.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (Evernote SDK) and some actions (upgrade versions, migrate between API versions), but doesn't list specific concrete actions like 'update authentication methods', 'refactor deprecated API calls', or 'update dependency configurations'. | 2 / 3 |
Completeness | Clearly answers both 'what' (upgrade Evernote SDK versions and migrate between API versions) and 'when' (upgrading SDK, handling breaking changes, migrating to newer API patterns) with explicit trigger phrases. | 3 / 3 |
Trigger Term Quality | Includes explicit natural trigger phrases like 'upgrade evernote sdk', 'evernote migration', 'update evernote', 'evernote breaking changes' — these are terms users would naturally say when needing this skill. | 3 / 3 |
Distinctiveness Conflict Risk | Very specific niche — Evernote SDK upgrades and migrations. Unlikely to conflict with other skills due to the narrow, product-specific focus on Evernote SDK version migration. | 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.
This skill provides a reasonable framework for Evernote SDK migration with some useful concrete code (compatibility layer, error table), but suffers from vague steps (5 and 6), missing validation checkpoints critical for a migration workflow, and broken references to non-existent bundle files. The content could be tightened by removing filler and making every step as concrete as Steps 3 and 4.
Suggestions
Add explicit validation checkpoints between steps, e.g., 'Run `npm test` and verify all existing tests pass before proceeding to Step 4' — this is critical for a migration workflow with breaking changes.
Make Steps 5 and 6 actionable with concrete code examples: show a sample test update for new response shapes and a concrete deprecation warning implementation.
Either provide the referenced 'references/implementation-guide.md' bundle file or remove the reference and inline the essential content.
Remove the Prerequisites section and Overview paragraph — they add little value for Claude and consume tokens restating obvious context.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill includes some unnecessary filler (e.g., 'Understanding of current implementation patterns' as a prerequisite, the verbose Overview section restating what the title already conveys, and Step 5's vague instructions). However, the code examples and error table are reasonably efficient. | 2 / 3 |
Actionability | The callback-to-Promise conversion and compatibility layer code are concrete and useful, but Steps 1, 5, and 6 are vague descriptions rather than executable guidance. Step 5 says 'update test assertions' without showing how, and Step 6 mentions adding deprecation warnings without concrete code. | 2 / 3 |
Workflow Clarity | Steps are sequenced logically, but there are no explicit validation checkpoints or feedback loops. For a migration involving breaking changes, there should be explicit 'run tests and verify before proceeding' gates between steps, especially before and after the SDK upgrade. | 2 / 3 |
Progressive Disclosure | The skill references 'references/implementation-guide.md' and 'evernote-ci-integration' but no bundle files are provided, making these dead links. The content is reasonably structured with sections, but the inline content is somewhat long and the referenced files don't exist to support the disclosure pattern. | 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.