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 excellent trigger terms and completeness. Its main weakness is that the 'what' portion could be more specific about the concrete actions performed (e.g., API calls, specific data fields, output formats). The Apollo.io focus makes it highly distinctive and unlikely to conflict with other skills.
Suggestions
Add more specific concrete actions to the capability description, e.g., 'Search people/companies by filters, retrieve contact emails and phone numbers, bulk enrich prospect lists via Apollo API.'
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (Apollo.io) and some actions ('lead search', 'enrichment workflow'), but doesn't list multiple concrete specific actions like API endpoints, data fields extracted, or specific enrichment steps. | 2 / 3 |
Completeness | Clearly answers both 'what' (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 | Excellent coverage of natural trigger terms including multiple variations: 'apollo lead search', 'search apollo contacts', 'find leads in apollo', 'apollo people search', 'enrich contacts apollo'. These are phrases users would naturally say. | 3 / 3 |
Distinctiveness Conflict Risk | Very distinct niche targeting Apollo.io specifically. The trigger terms are all Apollo-specific, making it highly unlikely to conflict with other skills like generic CRM or lead management tools. | 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 logical progression from free search to credit-costing enrichment. Weaknesses include verbosity (could be more concise), missing inline validation/error-handling in the workflow code, and the content being too long for a single SKILL.md without better progressive disclosure.
Suggestions
Add validation checkpoints within the pipeline function — check response status, verify data.people exists before filtering, and add try/catch with retry logic for rate limiting to match the error handling table.
Move the full implementation code to a separate reference file and keep SKILL.md as a concise overview showing key patterns (endpoint + minimal example) with links to the detailed implementations.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is mostly efficient with good code examples, but includes some unnecessary commentary (e.g., 'Understanding of your Ideal Customer Profile (ICP)' prerequisite, '275M+ database' marketing language, and the Overview section restates things Claude would already know). The code blocks are well-structured but could be more compact. | 2 / 3 |
Actionability | Fully executable TypeScript code with correct endpoints, request/response shapes, proper headers, and concrete parameter examples. The code is copy-paste ready with real API paths, typed interfaces, and practical examples like the ICP search. | 3 / 3 |
Workflow Clarity | Steps are clearly sequenced (search → score → enrich) and the pipeline function ties them together well. However, there are no explicit validation checkpoints — no verification that API responses are successful before proceeding, no error handling within the pipeline function, and no retry logic for the rate-limited enrichment calls despite the error handling table mentioning 429s. | 2 / 3 |
Progressive Disclosure | The skill has good structure with clear sections and references to external docs and a next-steps skill. However, the content is quite long (~200 lines of code) and could benefit from splitting detailed implementations into separate files, keeping SKILL.md as a concise overview with the key patterns and linking to full implementations. | 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 | |
70e9fa4
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.