CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

apollo

Apollo integration. Manage data, records, and automate workflows. Use when the user wants to interact with Apollo data.

Quality

61%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

Fix and improve this skill with Tessl

tessl review fix ./skills/apollo/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

67%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body is a serviceable, largely executable Membrane CLI walkthrough with a well-handled connection state machine, but it is undercut by a filler overview section, a "Popular actions" section with no actions, dangling step references ("Step 2", "1b"), and an "Official docs" link that points at Apollo GraphQL's documentation while the prose correctly describes Apollo as a sales intelligence platform — a wrong-product reference that undermines trust in the guidance.

Suggestions

Delete the generic "Apollo Overview" section and the duplicated "Popular actions" command; instead list 3-5 actual popular action names with one-line descriptions and a sample run for each.

Fix the workflow numbering: define the missing "Step 2" (or replace step references with concrete section links) and renumber "1b" consistently, and add a short note on verifying the output of an action run.

Replace the apollographql.com docs link with Apollo.io's actual documentation URL (or remove it), since the current link points to the wrong Apollo product.

DimensionReasoningScore

Conciseness

The CLI guide is mostly efficient, but the "Apollo Overview" section ("Query — Represents a data request", "Schema — Defines the structure of the data", "Use action names and parameters as needed") is filler explaining concepts Claude already knows and adds nothing, the "Popular actions" heading duplicates the search command from "Searching for actions", and phrases like "This is the fastest way to get a connection" are padding. It matches anchor 3 ('mostly efficient but includes some unnecessary explanation') rather than 4 because the filler overview section is a whole wasted block, not a minor trim.

3 / 5

Actionability

Concrete, executable commands throughout: `npm install -g @membranehq/cli@latest`, `membrane login complete <code>`, `membrane connection ensure "https://www.apollographql.com/" --json`, `npx @membranehq/cli connection get <id> --wait --json`, `membrane action run <actionId> --connectionId=... --input '{...}' --json`, and a full proxy flag table. It fits anchor 4 ('mostly executable with minor gaps') and not 5 because the "Popular actions" section promises popular actions but lists none, and there are no worked end-to-end examples with real parameter values.

4 / 5

Workflow Clarity

A clear sequence exists (install → login → connection ensure → poll → search actions → run/proxy) with a genuine feedback loop for the connection lifecycle (poll while BUILDING, handle CLIENT_ACTION_REQUIRED with its clientAction fields, check the error field on CONFIGURATION_ERROR/SETUP_FAILED). It is not 5 because the text says "skip to Step 2" but no Step 2 exists, "1b" appears with no "1a", and there is no verification guidance after running an action or proxy request.

4 / 5

Progressive Disclosure

No bundle files exist, and the single ~140-line file is organized under clear section headers with all content appropriately inline at this scale; there are no buried or nested references. It matches anchor 4 ('good structure, most content appropriately placed, minor organization gaps') rather than 5 because of the redundant overlap between the "Searching for actions" and "Popular actions" sections and the inconsistent step numbering.

4 / 5

Total

15

/

20

Passed

Description

37%Weight 40%Scale 1-5

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 the right skeleton — domain, actions, and an explicit 'Use when' clause — but every part is generic. It names no Apollo-specific capability, offers no natural trigger vocabulary beyond the product name, and its 'when' clause is circular. A user or Claude scanning skill descriptions would have trouble distinguishing this from a generic data-integration skill.

Suggestions

Replace "Manage data, records, and automate workflows" with 3-4 concrete Apollo capabilities, e.g. "Search and enrich leads and contacts, manage sequences and outreach campaigns, and log activities in Apollo."

Expand the 'Use when' clause with natural trigger phrases users would actually say: "Use when the user mentions Apollo, leads, prospects, sales intelligence, or outreach automation."

Disambiguate the product name explicitly (Apollo.io sales intelligence, not Apollo GraphQL) to avoid triggering for the wrong skill.

DimensionReasoningScore

Specificity

The description names the domain ("Apollo integration") but the actions are generic: "Manage data, records, and automate workflows" lists no concrete capability specific to Apollo (no lead search, contact enrichment, or outreach actions). It matches anchor 2 ('names the domain but actions are minimal or generic') and not anchor 3 because no concrete, specific action is articulated.

2 / 5

Completeness

Both elements are explicitly present — what ("Manage data, records, and automate workflows") and when ("Use when the user wants to interact with Apollo data") — but the 'what' is vague and the 'when' merely restates the domain circularly. It falls between anchor 3 (clear what, weak when) and anchor 4 (both present, when could be more specific), closer to the middle, so 3 rather than 4 because neither element is concrete.

3 / 5

Trigger Term Quality

The only meaningful trigger keyword is "Apollo"; "data", "records", and "workflows" are generic and omit the natural phrases a user of this platform would say (leads, prospects, outreach, sales intelligence, sequences). It sits at anchor 2 rather than 3 because the non-domain keywords carry no real trigger value.

2 / 5

Distinctiveness Conflict Risk

"Apollo" anchors a specific product, but "Manage data, records, and automate workflows" is broad enough to overlap with any data-management or automation skill, and "Apollo" itself is ambiguous (Apollo.io sales intelligence vs. Apollo GraphQL). It matches anchor 3 ('somewhat specific but could still overlap with similar skills'); not 4 because the generic action list and the name ambiguity create real overlap risk.

3 / 5

Total

10

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository

membranedev/application-skills

Path

skills/apollo/SKILL.md

Reviewed

Table of Contents

Is this your skill?

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.