Implement Apollo.io reference architecture. Use when designing Apollo integrations, establishing patterns, or building production-grade sales intelligence systems. Trigger with phrases like "apollo architecture", "apollo system design", "apollo integration patterns", "apollo best practices architecture".
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/apollo-pack/skills/apollo-reference-architecture/SKILL.mdQuality
Discovery
75%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
The description has good structural completeness with explicit 'Use when' and 'Trigger with' clauses, and is clearly distinctive to the Apollo.io domain. However, it lacks specificity in the concrete actions it performs (what exactly does 'implement reference architecture' entail?) and could benefit from broader trigger term coverage including more natural user language around sales intelligence and CRM integration.
Suggestions
Add specific concrete actions the skill performs, e.g., 'Sets up API authentication, configures webhook handlers, implements contact enrichment pipelines, designs rate-limiting strategies, and structures data sync workflows.'
Expand trigger terms to include more natural user phrases like 'Apollo API', 'Apollo.io setup', 'lead enrichment architecture', 'prospecting system design', 'sales data pipeline' to capture a wider range of user queries.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | The description names the domain (Apollo.io integrations, sales intelligence systems) and mentions some actions like 'designing integrations', 'establishing patterns', and 'building production-grade systems', but these are fairly abstract rather than listing concrete specific actions like 'configure webhook endpoints, set up contact enrichment pipelines, implement rate-limited API calls'. | 2 / 3 |
Completeness | The description clearly answers both 'what' (implement Apollo.io reference architecture, design integrations, establish patterns, build production-grade sales intelligence systems) and 'when' with an explicit 'Use when...' clause and a 'Trigger with phrases like...' section providing concrete trigger examples. | 3 / 3 |
Trigger Term Quality | Includes some relevant keywords like 'apollo architecture', 'apollo integration patterns', 'apollo best practices', and 'sales intelligence systems'. However, it misses common natural user phrases like 'Apollo API', 'Apollo.io setup', 'sales data integration', 'lead enrichment', 'prospecting tool', or 'CRM integration' that users might naturally say. | 2 / 3 |
Distinctiveness Conflict Risk | The description is highly specific to Apollo.io as a platform and focuses on architecture/integration patterns for sales intelligence, which is a clear niche unlikely to conflict with other skills. The 'apollo' prefix on all trigger phrases further reduces ambiguity. | 3 / 3 |
Total | 10 / 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 skill provides highly actionable, production-quality TypeScript code for an Apollo.io integration architecture with correct API endpoints and realistic patterns. Its main weaknesses are the monolithic structure (all code inline rather than split across referenced files) and the lack of validation checkpoints between architectural layers. The dual Prisma/TypeORM example adds unnecessary tokens without clear benefit.
Suggestions
Add validation checkpoints between steps, e.g., 'Verify API key works: curl -H x-api-key:$KEY https://api.apollo.io/v1/auth/health' before proceeding to service implementation.
Split the detailed code implementations into separate bundle files (e.g., services/lead-service.ts, services/deal-service.ts) and keep SKILL.md as a concise overview with references.
Choose either Prisma or TypeORM for the database model instead of showing both — or explicitly justify the dual approach and move the alternative to a separate reference file.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill provides substantial executable code which is valuable, but it's quite long (~200+ lines) and includes some redundancy (both Prisma and TypeORM examples for the same model). Some sections like the architecture diagram could be tighter, and the dual ORM approach adds tokens without clear justification. | 2 / 3 |
Actionability | The skill provides fully executable TypeScript code across all layers — API client, services, background jobs, database models, and routes. Code is copy-paste ready with real Apollo API endpoints, correct field names, and proper typing. | 3 / 3 |
Workflow Clarity | Steps are clearly numbered and sequenced (architecture → service → deals → jobs → models → routes), but there are no validation checkpoints between steps. For a production architecture involving database operations, API integrations, and background jobs, there should be explicit verification steps (e.g., test API connectivity, validate schema migrations, verify queue health). | 2 / 3 |
Progressive Disclosure | The content is a monolithic wall of code in a single file with no bundle files to offload detail into. The error handling table and resources section are well-structured, but the extensive code blocks for each layer would benefit from being split into separate referenced files. The reference to 'apollo-multi-env-setup' at the end is good but the main content itself is not well-decomposed. | 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.