Implement Apollo.io lead search and enrichment workflow. Use when building lead generation features, searching for contacts, or enriching prospect data from Apollo. Trigger with phrases like "apollo lead search", "search apollo contacts", "find leads in apollo", "apollo people search", "enrich contacts apollo".
80
77%
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-core-workflow-a/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 'when' guidance and excellent trigger terms specific to Apollo.io. Its main weakness is that the 'what' could be more specific—listing concrete actions like 'search contacts by title/company, retrieve email addresses, enrich CRM records' would strengthen specificity. Overall, it performs well for skill selection purposes.
Suggestions
Add more concrete actions to the 'what' portion, e.g., 'search contacts by job title, company, or location; retrieve verified email addresses; enrich existing prospect records with firmographic data.'
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (Apollo.io) and some actions ('lead search', 'enrichment workflow'), but doesn't list multiple concrete actions in detail—e.g., it doesn't specify what enrichment entails or what specific data fields are handled. | 2 / 3 |
Completeness | Clearly answers both 'what' (implement Apollo.io lead search and enrichment workflow) and 'when' (building lead generation features, searching contacts, enriching prospect data) with explicit trigger phrases. | 3 / 3 |
Trigger Term Quality | Includes a strong set of natural trigger phrases users would actually say: 'apollo lead search', 'search apollo contacts', 'find leads in apollo', 'apollo people search', 'enrich contacts apollo'. These cover common variations well. | 3 / 3 |
Distinctiveness Conflict Risk | Highly distinctive due to the specific Apollo.io platform focus and explicit trigger phrases. Unlikely to conflict with other skills unless there are multiple Apollo-related skills. | 3 / 3 |
Total | 11 / 12 Passed |
Implementation
64%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This is a solid, actionable skill with executable TypeScript code covering the full Apollo.io lead search and enrichment workflow. Its main strengths are concrete, copy-paste ready code and a clear error handling table. Weaknesses include missing validation checkpoints before credit-consuming operations and a somewhat lengthy single-file structure that could benefit from progressive disclosure via bundle files.
Suggestions
Add an explicit validation/dry-run step before bulk enrichment (e.g., log how many credits will be consumed and confirm before proceeding) to prevent accidental credit spend.
Add rate-limiting/retry logic inline or as a utility function, since 429 errors are mentioned in the error table but no mitigation code is provided.
Consider splitting the org search, single enrichment, and bulk enrichment into separate bundle files referenced from the main SKILL.md to improve progressive disclosure and reduce the monolithic length.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is mostly efficient with good code examples, but includes some unnecessary explanations (e.g., 'Apollo's 275M+ database', 'Understanding of your Ideal Customer Profile (ICP)') and the interface definitions add bulk that Claude could infer. The overview section explaining the search vs enrichment distinction is valuable, but some inline comments are redundant. | 2 / 3 |
Actionability | Fully executable TypeScript code with correct endpoints, request bodies, and response handling. Every step includes copy-paste ready code with proper types, and the error handling table provides specific solutions for common failures. | 3 / 3 |
Workflow Clarity | The 5-step sequence is clearly laid out and the combined pipeline in Step 5 shows the full workflow. However, there are no explicit validation checkpoints — no verification that API keys work before proceeding, no check that search results are valid before enrichment, and no rate-limiting/retry logic despite mentioning 429 errors. The pipeline involves credit-consuming operations (enrichment) without a confirmation or dry-run step. | 2 / 3 |
Progressive Disclosure | The skill has good section organization with clear headers, an error table, and external resource links. However, at ~180 lines it's quite long and could benefit from splitting the org search, enrichment, and pipeline code into separate referenced files. The Resources section with external links is helpful but no bundle files exist to offload detail. | 2 / 3 |
Total | 9 / 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.