CtrlK
BlogDocsLog inGet started
Tessl Logo

affinity

Affinity integration. Manage Organizations, Leads, Pipelines, Users, Roles, Filters. Use when the user wants to interact with Affinity data.

55

Quality

62%

Does it follow best practices?

Impact

No eval scenarios have been run

SecuritybySnyk

Passed

No known issues

Optimize this skill with Tessl

npx tessl skill review --optimize ./skills/affinity/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

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 identifies a clear niche (Affinity CRM integration) and includes an explicit 'Use when' clause, making it functional for skill selection. However, it relies on the vague verb 'Manage' rather than listing specific actions (create, update, delete, search), and could benefit from more natural trigger terms users might say when needing this skill.

Suggestions

Replace the generic 'Manage' with specific actions like 'Create, update, delete, search, and list Organizations, Leads, Pipelines, Users, Roles, and Filters'.

Add natural trigger terms users might say, such as 'CRM', 'contacts', 'deals', 'deal flow', or 'relationship management' to improve discoverability.

DimensionReasoningScore

Specificity

Names the domain (Affinity) and lists entity types (Organizations, Leads, Pipelines, Users, Roles, Filters), but doesn't describe concrete actions beyond the generic 'Manage'. What does 'manage' mean—create, update, delete, search, export?

2 / 3

Completeness

Answers both 'what' (manage Organizations, Leads, Pipelines, Users, Roles, Filters in Affinity) and 'when' ('Use when the user wants to interact with Affinity data'). The 'when' clause is present and explicit, though somewhat generic.

3 / 3

Trigger Term Quality

Includes 'Affinity' as a strong trigger term and lists entity names like 'Organizations', 'Leads', 'Pipelines' which are relevant, but misses natural user phrases like 'CRM', 'contacts', 'deals', 'deal flow', or action-oriented terms like 'add a lead' or 'update pipeline'.

2 / 3

Distinctiveness Conflict Risk

The mention of 'Affinity' as a specific product/platform makes this highly distinctive and unlikely to conflict with other skills. It occupies a clear niche.

3 / 3

Total

10

/

12

Passed

Implementation

50%

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

The skill provides strong actionability with concrete CLI commands and a useful popular actions table, but wastes significant tokens on introductory explanations about Affinity and generic Membrane boilerplate that Claude doesn't need. The workflow is partially clear for connection setup but lacks end-to-end sequencing and validation steps. The monolithic structure would benefit from splitting reference material into separate files.

Suggestions

Remove the introductory paragraph explaining what Affinity is and the 'Official docs' link — Claude already knows this. Start directly with the integration workflow.

Either flesh out the 'Affinity Overview' section (Document/Section/Project/Tag) with meaningful context or remove it entirely — it currently adds confusion without value.

Move the popular actions table and proxy request details into separate reference files (e.g., ACTIONS.md, PROXY.md) and link to them from the main skill.

Add an explicit end-to-end numbered workflow (connect → discover actions → run action → verify output) with a validation step after running actions to confirm expected output structure.

DimensionReasoningScore

Conciseness

The opening paragraph explains what Affinity is and what relationship intelligence means — Claude already knows this. The Membrane CLI setup, authentication flow, and connection state machine are generic boilerplate repeated across many integration skills. The 'Affinity Overview' section with Document/Section/Project/Tag is cryptic yet wastes tokens. Overall, significant token budget is spent on things Claude doesn't need.

1 / 3

Actionability

The skill provides concrete, copy-paste-ready CLI commands for every step: installing the CLI, authenticating, ensuring connections, searching actions, running actions, and making proxy requests. The popular actions table with specific keys is directly usable, and the proxy request flags are well-documented.

3 / 3

Workflow Clarity

The connection setup flow is reasonably well-sequenced with state handling (READY, CLIENT_ACTION_REQUIRED, CONFIGURATION_ERROR), but there are no explicit validation checkpoints after running actions or creating entities. The overall workflow from authentication → connection → action discovery → action execution is implicit rather than explicitly numbered end-to-end.

2 / 3

Progressive Disclosure

The content is a single monolithic file with no references to supporting documents. The popular actions table (20 rows) and the detailed connection state machine could be split into separate reference files. The 'Affinity Overview' section with Document/Section/Project/Tag is incomplete and poorly structured, suggesting missing supporting content.

2 / 3

Total

8

/

12

Passed

Validation

90%

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

Validation10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

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

Warning

Total

10

/

11

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.