CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

chaser

Chaser integration. Manage Organizations, Users, Projects. Use when the user wants to interact with Chaser data.

Quality

68%

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

Quality

Content

57%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 solid, command-first integration guide: every phase has an executable CLI invocation, and the connection-state machine (READY / CLIENT_ACTION_REQUIRED / BUILDING polling) is documented with unusual care. Its weaknesses are the dead-weight action table whose description column says "No description" 23 times, a dangling "Step 2" reference with no numbered steps, and no validation guidance for the destructive CRUD actions the skill exposes.

Suggestions

Add a pre-flight validation step before destructive actions (e.g. "Before delete-*, run the corresponding get-* action and confirm the record with the user") to satisfy the destructive-operation feedback-loop requirement and lift workflow clarity.

Replace the "No description" column with one-line purpose descriptions (or drop the column and keep just keys) — or move the full action catalog to a references/actions.md file and keep a 5-6 row highlights table in SKILL.md.

Fix the two dangling "skip to **Step 2**" references by either numbering the workflow steps (Step 1: Connect, Step 2: Discover actions, Step 3: Run) or rewording to the actual section names ("### Searching for actions").

DimensionReasoningScore

Conciseness

The CLI instructions themselves are lean and command-first, but the 23-row "Popular actions" table repeats "No description" on every row — roughly 23 lines of tokens that convey only action keys — and lines like "It's primarily used by sales professionals and managers to improve their sales process and close more deals" explain marketing context Claude doesn't need. This matches anchor 3 (mostly efficient but includes some unnecessary content that could be tightened), not 4, because the padded table is a substantial, not minor, waste.

3 / 5

Actionability

Nearly every step ships a copy-paste-ready command with flags: "npm install -g @membranehq/cli@latest", "membrane connection ensure \"https://www.chaserhq.com/\" --json", "membrane action run <actionId> --connectionId=CONNECTION_ID --input '{\"key\": \"value\"}' --json", plus a full proxy-flag table. It falls short of anchor 5 only because there is no worked example with real values (e.g. actually running list-invoices with its input) — the reader must assemble actionId and input themselves — which is exactly the "specific examples cover the common cases" element anchor 5 requires.

4 / 5

Workflow Clarity

There is a real sequence (install → login → connection ensure → 1b polling → search actions → run) with a genuine feedback loop (poll "--wait", handle READY / CLIENT_ACTION_REQUIRED / CONFIGURATION_ERROR states). However, the skill covers CRUD including delete operations ("Delete Contact Person | delete-contact-person") with no validation or verification step before destructive runs, which caps workflow_clarity at 3 per the batch/destruction rule; additionally the text twice says "skip to **Step 2**" but no step numbering exists in the document, an incoherence that also bars anchor 4.

3 / 5

Progressive Disclosure

No bundle files exist, so everything is judged on the inline structure: headers are sensible (Install, Authentication, Connecting, Searching, Running, Proxy, Best practices), but the 23-row action table is exactly the kind of bulk catalog the rubric says belongs in a separate reference file, and at ~160 lines the document exceeds the under-50-line exception that would let well-organized sections alone score 5. This matches anchor 3 (some structure, but content that should be separate is inline).

3 / 5

Total

13

/

20

Passed

Description

66%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 serviceable: it is third-person, has an explicit Use-when clause, and is anchored to a distinctive product name, so it will trigger correctly. Its main weakness is thin substance — a single generic verb ("Manage") applied to entity types that don't reflect the skill's real CRUD scope, and almost no natural domain keywords beyond the product name.

Suggestions

Replace the generic verb with concrete actions that match the skill's actual scope, e.g. "Create, update, and list invoices, customers, credit notes, and contact persons in Chaser" instead of "Manage Organizations, Users, Projects".

Expand the when-clause with natural trigger phrases users would actually say, e.g. "Use when the user mentions Chaser, chasing invoices, receivables, overdue payments, or wants to manage Chaser invoices and customers".

Keep the third-person voice and Chaser anchoring, which are already working well.

DimensionReasoningScore

Specificity

"Manage Organizations, Users, Projects" names the domain and enumerates concrete entity types, going beyond a bare "Processes PDF files"-style anchor, but the single generic verb "Manage" is not a concrete action and the listed entities don't even match the skill's actual scope (invoices, customers, credit notes, contact persons). It sits between anchor 2 (generic actions) and anchor 3 (domain plus 1-2 concrete actions), and the enumerated entity types keep it at 3 rather than dropping to 2.

3 / 5

Completeness

Both parts are present: the what ("Chaser integration. Manage Organizations, Users, Projects.") and an explicit when ("Use when the user wants to interact with Chaser data"). It is not a 5 because the when-clause is circular — it restates the product name ("interact with Chaser data") rather than giving concrete trigger phrases like the anchor-5 example does; and it is clearly above 3, where the when would be missing or only implied.

4 / 5

Trigger Term Quality

The only natural trigger terms are "Chaser" and "Chaser data" — the product name a user would say — while common variations users of this tool would mention (invoices, customers, credit notes, contact persons, follow-ups, receivables) are absent. This matches anchor 3 (some relevant keywords but missing common variations or synonyms) rather than 4, whose examples show a broader spread of natural terms.

3 / 5

Distinctiveness Conflict Risk

The description is anchored on the distinctive product name "Chaser" and the trigger clause ("Use when the user wants to interact with Chaser data") gates activation on that name, giving a clear niche with minimal conflict risk against other skills. The generic words "Organizations, Users, Projects" alone could overlap with other SaaS skills, but the Chaser-gated trigger keeps it at anchor 5 rather than 4.

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

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