CtrlK
BlogDocsLog inGet started
Tessl Logo

better-proposals

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

51

Quality

56%

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

Quality

Content

51%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 genuinely actionable with executable CLI commands and a reasonable connection workflow, but it is bloated by an unhelpful entity-name list and generic SaaS description, and lacks validation checkpoints for batch/destructive operations.

Suggestions

Remove or collapse the ~55-item bulleted entity list; if entity discovery matters, point to a references file instead of inlining raw nouns.

Add explicit validation/verification steps for batch or destructive actions (e.g. verify a created proposal via get-proposal before reporting success).

Trim the opening 'what is Better Proposals' paragraph and 'Use action names and parameters as needed' filler that add no actionable signal.

DimensionReasoningScore

Conciseness

The body is padded with content Claude does not need: a ~55-item bulleted noun list of entity names ('Proposal', 'Template', ... 'Cookie Policy') adds little actionable value, and the overview restates what the SaaS is, which Claude can infer.

2 / 5

Actionability

It provides concrete, copy-pasteable CLI commands for install, login, connection ensure, action list/run, and proxy requests, with flags explained; minor gaps include placeholder CONNECTION_ID/actionId not resolved end-to-end.

4 / 5

Workflow Clarity

The connect flow is sequenced with state checks (READY / CLIENT_ACTION_REQUIRED / BUILDING polling) which is good, but there are no explicit validation or verification checkpoints before running actions, and destructive/batch operations like 'create-proposal' or proxy mutations have no verify step — capping this dimension at 3.

3 / 5

Progressive Disclosure

Content is well-organized into logical sections (Install, Authentication, Connecting, Searching actions, Popular actions, Proxy, Best practices) with no bundle files needed; the main weakness is the inlined 20-row action table that could live in a separate reference, but structure is otherwise clear.

4 / 5

Total

13

/

20

Passed

Description

61%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 correctly pairs a 'what' and a 'when' trigger and ties it to a distinct app, but the capability verbs are generic and lack concrete Better Proposals-specific actions or richer trigger terms.

Suggestions

Replace generic verbs with concrete Better Proposals actions, e.g. 'Create, send, and track proposals and quotes'.

Add natural trigger terms users would actually say such as 'proposals', 'quotes', 'estimates', or 'client documents'.

Tighten the trigger clause to reference specific artifacts, e.g. 'Use when the user wants to create or manage proposals, quotes, or client records.'

DimensionReasoningScore

Specificity

The description names the domain and lists generic capability verbs ('Manage data, records, and automate workflows') but these are abstract rather than concrete, named actions; it does not enumerate specific Better Proposals operations.

3 / 5

Completeness

It explicitly answers 'what' ('Better Proposals integration. Manage data, records, and automate workflows') and 'when' ('Use when the user wants to interact with Better Proposals data'); the 'what' is somewhat generic but both halves are present.

4 / 5

Trigger Term Quality

'Better Proposals data' is a relevant domain keyword and the 'Use when' phrasing mirrors natural phrasing, but it lacks synonyms or the natural variations a user would say (e.g. 'proposals', 'quotes', 'estimates') beyond the app name itself.

3 / 5

Distinctiveness Conflict Risk

Naming a specific SaaS app (Better Proposals) gives it a clear niche and low conflict risk versus other skills, though 'Manage data, records' phrasing is generic enough to create minor overlap with generic data skills.

4 / 5

Total

14

/

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.