CtrlK
BlogDocsLog inGet started
Tessl Logo

customer-fields

Customer Fields integration. Manage Organizations, Leads, Pipelines, Users, Goals, Filters. Use when the user wants to interact with Customer Fields data.

56

Quality

64%

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/customer-fields/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

61%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 content is a strong, executable Membrane-CLI integration guide with good state-machine handling for connection setup and headless auth. Its weak spots are an expendable background intro that hurts conciseness, and the absence of validation/feedback loops for the destructive and batch customer actions, which caps workflow clarity.

Suggestions

Add an explicit validate/verify step before destructive and batch operations — e.g. run `membrane action run get-customer` to confirm a target ID before `delete-customer`, and confirm row counts before `update-customers`/`create-customers` batches.

Trim the opening background paragraph ("Customer Fields is a Shopify app that allows merchants...") to a one-line context statement; Claude already knows what Shopify and customer fields are.

Provide one worked end-to-end example tying together connectionId, action list, and action run with concrete substituted values so the placeholders become copy-paste ready.

DimensionReasoningScore

Conciseness

The body is mostly efficient with copy-paste CLI commands, but opens with background Claude already knows ("Customer Fields is a Shopify app that allows merchants to add custom fields... enables businesses to collect more detailed information... for marketing, segmentation, or personalization") and restates "Use action names and parameters as needed." Not a 4 because that explanatory intro is trimmable padding; not a 2 because the bulk is lean, executable guidance.

3 / 5

Actionability

Provides concrete, executable commands throughout — install, login (including headless `login complete <code>`), `connection ensure`, polling with `--wait`, `action list/run`, and proxy requests with a flag table. Not a 5 because parameter substitution placeholders (CONNECTION_ID, actionId) and the popular-actions table lack a worked end-to-end example; not a 3 because the guidance is genuinely executable, not pseudocode.

4 / 5

Workflow Clarity

There is a clear connect → poll → ready/client-action sequence with state-based branching, but destructive and batch operations (delete-customer, update/create up to 10 per request) have no validation or verify-before-act feedback loop, capping this at 3 per the rubric. Not a 4 because the cap applies; not a 2 because the connection workflow itself is well-sequenced with explicit state handling.

3 / 5

Progressive Disclosure

No bundle files exist, and the skill is moderately short with well-organized sections (Install, Authentication, Connecting, Searching, Popular actions, Running, Proxy, Best practices) plus inline tables for quick lookup. Not a 5 because the popular-actions table and proxy flags are content that could live in a reference file as the skill grows; not a 3 because structure is clear and nothing is buried or deeply nested.

4 / 5

Total

14

/

20

Passed

Description

67%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 is solid: it names the integration, lists concrete managed entities, and includes an explicit 'Use when' trigger clause in third person. Its main weakness is trigger-term coverage — the 'when' is generic and lacks natural synonyms or concrete phrasings a user would actually say.

Suggestions

Expand the 'Use when' clause with concrete natural-language triggers, e.g. 'Use when the user wants to list, create, update, or delete Customer Fields customers and their custom fields.'

Add synonyms and concrete action verbs (create, update, delete, list customers/leads) so the description matches how users actually phrase requests.

Tie the managed entities (Organizations, Leads, Pipelines) more tightly to Customer Fields-specific terminology to reduce overlap with generic CRM skills.

DimensionReasoningScore

Specificity

Names the domain and lists several concrete entities to manage — "Organizations, Leads, Pipelines, Users, Goals, Filters" — giving specific capability coverage, though these are objects rather than distinct actions. Not a 5 because it doesn't enumerate multiple concrete operations per entity; not a 3 because the entity list goes well beyond 1-2 generic actions.

4 / 5

Completeness

It has a clear 'what' ("Manage Organizations, Leads, Pipelines, Users, Goals, Filters") and an explicit 'when' ("Use when the user wants to interact with Customer Fields data"). Not a 5 because the 'when' clause is generic rather than citing concrete trigger phrases; not a 3 because both what and when are present and explicit.

4 / 5

Trigger Term Quality

"Customer Fields data" plus the named entities provide some relevant keywords, but it lacks common natural variations, synonyms, or file/URL triggers a user would naturally say. Not a 4 because coverage of natural user phrasing is thin; not a 2 because there is more than one generic keyword.

3 / 5

Distinctiveness Conflict Risk

The named app "Customer Fields" plus its specific entities create a mostly-distinct niche with minimal overlap risk. Not a 5 because the generic entity list (Leads, Pipelines, Users) could overlap with adjacent CRM skills; not a 3 because the app name anchors it to a clear niche.

4 / 5

Total

15

/

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.

Validation15 / 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
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.