CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

shopify-partner

The Partner API lets you programmatically access data about your Partner Dashboard, including your apps, themes, and affiliate referrals.

56

Quality

71%

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 ./plugins/shopify/skills/shopify-partner/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

73%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 strong, imperative protocol: concrete commands, an explicit search-before-code and validate-before-return workflow, and a well-defined bounded retry loop with error-driven re-searching. Its main weakness is redundancy — the tool-call requirements and flag instructions appear twice — plus a minor inconsistency between the step-1 command form and the mandated flag set.

DimensionReasoningScore

Conciseness

No space is wasted explaining concepts Claude already knows, but the search/validate command syntax and the --model/--client-name/--artifact-id/--revision flag guidance are stated twice (the 'Required Tool Calls' list and the two 'MANDATORY' sections), which is padding that could be tightened. Not 4: the duplication is noticeable rather than a minor trim.

3 / 5

Actionability

Gives exact executable commands ('scripts/search_docs.mjs "transactions query" --model ...'), concrete query-formulation guidance ('search for the operation or component name, not the full user prompt'), and explicit placeholder semantics. Not 5: step 1's command omits the instrumentation flags that later sections mandate (an inconsistency), and no example GraphQL operation is shown.

4 / 5

Workflow Clarity

Textbook match for the top anchor: a clear ordered 5-step sequence, an explicit mandatory validation checkpoint before returning code, a full error-recovery loop (read the error, search for the named type, fix exactly the reported error, re-validate), and a bounded 3-retry policy with defined fallback behavior ('return the best attempt with an explanation').

5 / 5

Progressive Disclosure

Scripts are appropriately externalized and referenced by real relative paths (scripts/search_docs.mjs and scripts/validate.mjs both exist in the bundle), and the body is a single well-sectioned file with no nested reference chains. Not 5: the body runs ~76 lines with duplicated sections that could be consolidated, and assets/partner_2026-04.json.gz is never referenced from the body.

4 / 5

Total

16

/

20

Passed

Description

53%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 names a clear, distinct domain and concrete data objects, but it functions as a one-line capability statement: a single generic action verb, no natural trigger phrasing like 'GraphQL' or 'Shopify', and no 'Use when' guidance for when the skill should activate. Adding an explicit trigger clause and mentioning query/mutation authorship would lift it substantially.

Suggestions

Add an explicit 'Use when' clause, e.g., 'Use when writing GraphQL queries or mutations for the Shopify Partner API or when the user mentions the Partner Dashboard, app payouts, or affiliate referrals.'

State the concrete actions the skill performs, not just the API's existence — e.g., 'write and validate GraphQL queries and mutations' rather than only 'programmatically access data'.

Include natural trigger terms users would say — 'GraphQL', 'queries', 'mutations', 'Shopify' — since the skill body is entirely about authoring GraphQL operations but the description never mentions GraphQL.

DimensionReasoningScore

Specificity

Names the domain ("Partner API", "Partner Dashboard") and concrete data objects ("your apps, themes, and affiliate referrals"), but the only action is the generic "programmatically access data" — one action, not comprehensive. Not 2: the enumerated data objects are more concrete than the 'Processes PDF files' anchor; not 4: no additional specific actions (e.g., writing queries or mutations) are listed.

3 / 5

Completeness

Has a clear 'what' ("programmatically access data about your Partner Dashboard") but no 'when' clause or equivalent trigger guidance at all, which caps completeness at 3 per the judging guidelines. Not 2: the 'what' is concrete and specific rather than vague.

3 / 5

Trigger Term Quality

Includes relevant keywords like "Partner API", "Partner Dashboard", "apps", "themes", and "affiliate referrals", but misses the natural phrases a user would actually say, such as "GraphQL", "queries", "mutations", or "Shopify". Matches 'some relevant keywords but missing common variations or synonyms'; not 4 because coverage of natural user terms is thin.

3 / 5

Distinctiveness Conflict Risk

"Partner API" and "Partner Dashboard" carve out a fairly distinct niche with minimal conflict risk against unrelated skills. Not 5: minor overlap risk with closely related Shopify Admin API or general GraphQL-API skills, and the absence of 'Shopify' in the description slightly widens ambiguity.

4 / 5

Total

13

/

20

Passed

Validation

100%

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

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

openai/plugins

Path

plugins/shopify/skills/shopify-partner/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.