Apply production-ready Apollo.io SDK patterns. Use when implementing Apollo integrations, refactoring API usage, or establishing team coding standards. Trigger with phrases like "apollo sdk patterns", "apollo best practices", "apollo code patterns", "idiomatic apollo", "apollo client wrapper".
77
73%
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/apollo-pack/skills/apollo-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 solid description with strong trigger terms and clear 'what/when' guidance. Its main weakness is that the capabilities described are somewhat abstract — 'production-ready patterns' and 'refactoring API usage' don't convey specific concrete actions the skill performs. Adding more specific actions (e.g., error handling, pagination, rate limiting) would strengthen it.
Suggestions
Add specific concrete actions the skill performs, e.g., 'Implements error handling, pagination, rate limiting, and client wrapper patterns for Apollo.io SDK' instead of the vague 'production-ready patterns'.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | The description names the domain (Apollo.io SDK) and mentions some actions like 'implementing Apollo integrations, refactoring API usage, establishing team coding standards', but these are fairly general and don't list specific concrete actions like 'create client wrappers, handle pagination, implement error retry logic'. | 2 / 3 |
Completeness | The description clearly answers both 'what' (apply production-ready Apollo.io SDK patterns) and 'when' (implementing Apollo integrations, refactoring API usage, establishing team coding standards) with explicit trigger phrases listed. | 3 / 3 |
Trigger Term Quality | The description explicitly lists natural trigger phrases: 'apollo sdk patterns', 'apollo best practices', 'apollo code patterns', 'idiomatic apollo', 'apollo client wrapper'. These cover good variations of what users would naturally say when needing this skill. | 3 / 3 |
Distinctiveness Conflict Risk | The skill is clearly scoped to Apollo.io SDK patterns specifically, with distinct triggers mentioning 'apollo' repeatedly. This is unlikely to conflict with other skills unless there's another Apollo-related skill (e.g., Apollo GraphQL), though the '.io' qualifier helps distinguish it. | 3 / 3 |
Total | 11 / 12 Passed |
Implementation
57%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
The skill excels at actionability with fully executable, production-ready TypeScript code covering client setup, error handling, retry logic, pagination, and bulk enrichment. However, it suffers from being a monolithic document that dumps all implementations inline rather than using progressive disclosure, and it lacks validation checkpoints between steps. The content is well-structured within itself but would benefit greatly from splitting implementations into bundle files.
Suggestions
Move the full file implementations into bundle files (e.g., src/apollo/client.ts, src/apollo/errors.ts) and replace inline code with concise pattern summaries plus references to those files.
Add explicit validation checkpoints between steps, such as 'Test the client with a simple GET to /health before proceeding' or 'Verify pagination returns expected total_entries before running bulk enrichment.'
Remove the Error Handling table which largely restates information already conveyed by the code and step descriptions.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is mostly efficient with executable code, but is quite long (~200 lines of code). Some sections like the Error Handling table restate what's already obvious from the code. The 'Overview' paragraph explaining that Apollo has no official SDK is useful context, but the skill could be tightened by moving some of the full implementations to referenced files. | 2 / 3 |
Actionability | Every step provides fully executable TypeScript code with file paths, imports, and complete implementations. The code is copy-paste ready with concrete examples including the full pipeline at the end. Specific API details like endpoint paths, batch limits (10 per call), and page limits (500) are included. | 3 / 3 |
Workflow Clarity | Steps are clearly numbered and sequenced (client → errors → retry → pagination → bulk enrichment), and the full pipeline example ties them together. However, there are no explicit validation checkpoints — no instructions to verify the client works, test error handling, or validate that pagination is returning expected results before proceeding to bulk operations. | 2 / 3 |
Progressive Disclosure | This is a monolithic wall of code — all five complete file implementations are inline in a single SKILL.md with no bundle files. The full implementations of client, errors, retry, paginator, and bulk-enrich should be in separate referenced files, with SKILL.md providing an overview and key patterns. The content is ~200+ lines that could be significantly better organized across files. | 1 / 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.