CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

browserhub

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

Quality

63%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./skills/browserhub/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 body is a solid, command-driven integration guide with copy-paste Membrane CLI commands and sensible best practices. Its main weaknesses are padding (the introductory paragraph and the contentless Overview hierarchy), the absence of validation/error-recovery checkpoints in the connection and run workflows, and no worked example of invoking a real action with parameters.

Suggestions

Remove the 'Browserhub Overview' hierarchy (Browser/Tab/Session) and trim the introductory paragraph — they add tokens without actionable content.

Add validation and feedback-loop steps: verify the connection succeeded after 'membrane connect', and show how to poll 'get-run' (or interpret its status field) until a created run finishes, with what to do on failure.

Include one fully-populated end-to-end example, e.g. 'membrane action run --connectionId=... create-run --json --input "{ \"scraperId\": \"...\" }"', so users see a real input payload rather than only a generic key/value template.

DimensionReasoningScore

Conciseness

The body is mostly command-first and efficient, but the introductory paragraph ('Browserhub is a tool that allows users to run and manage browsers in the cloud for automation and testing. It's used by developers and QA engineers...') explains context Claude doesn't need, and the 'Browserhub Overview' hierarchy (Browser/Tab/Session) conveys nothing actionable — pure padding. This matches 'Mostly efficient but includes some unnecessary explanation'.

3 / 5

Actionability

Commands are concrete and executable throughout: install via npm, membrane login with headless fallback, connect with the exact JSON extraction path 'output.items[0].element?.id', action run with --input syntax, and a proxy flags table. Falls short of 5 only because no real end-to-end example shows a populated --input payload for an actual action key like create-run.

4 / 5

Workflow Clarity

The sequence is present (install → login → connect → discover actions → run), and checking existing connections is one checkpoint, but there is no validation after connecting (e.g., verifying the connection works) and no error-recovery guidance for failed runs. 'Steps listed but validation gaps; checkpoints missing or implicit' — anchor 3, not 4 which requires most checkpoints present.

3 / 5

Progressive Disclosure

No bundle files exist and none are strictly needed; the body is well-sectioned with clear headers, a popular-actions table, and a proxy options table that summarize rather than dump full API reference. Minor gaps: at ~110 lines with the action catalog and proxy flags, a references file would help, and the empty Overview section adds navigational noise. Anchor 4 fits: good structure, minor organization gaps.

4 / 5

Total

14

/

20

Passed

Description

48%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 has an explicit 'Use when...' trigger and a distinctive product-name hook, but the capability statement is generic ('Manage data, records, and automate workflows') and omits all of the concrete actions the skill supports. It reads more like a placeholder than a faithful summary of the skill's scraper-run and account-management functionality.

Suggestions

Replace the generic 'Manage data, records, and automate workflows' with the skill's actual concrete capabilities, e.g. 'Create and monitor scraper runs, list scrapers, and check account status and remaining credits via the Browserhub API'.

Expand trigger terms to include natural user phrasings such as 'web scraping', 'scraper runs', 'browser automation', and 'cross-browser testing', not just the product name.

Make the 'what' as explicit as the 'when' — the current 'what' clause is vague enough to be nearly interchangeable with any data-integration skill, weakening both completeness and distinctiveness.

DimensionReasoningScore

Specificity

The description names the domain ("Browserhub integration") but the actions are entirely generic — "Manage data, records, and automate workflows" conveys no concrete capability such as scraper runs, browser sessions, or account status that the skill body actually covers. It matches the anchor 'Names the domain but actions are minimal or generic' and falls below anchor 3, which requires 1-2 concrete actions.

2 / 5

Completeness

The "when" is explicit ("Use when the user wants to interact with Browserhub data") but the "what" is vague ("Manage data, records, and automate workflows" is barely more informative than 'helps with data'). Anchor 4 requires a solid both; anchor 3 requires a clear 'what' with weak 'when' — this inverts that pattern, landing between the two.

3 / 5

Trigger Term Quality

"Browserhub" and "Browserhub data" are relevant keywords that would catch users naming the product, but natural terms users would actually say — scraper, scraping, browser automation, cross-browser testing, account status — are missing. This sits between anchor 2 (one or two generic keywords) and anchor 4 (good coverage), so 3 fits best.

3 / 5

Distinctiveness Conflict Risk

Triggering on the product name "Browserhub" gives a clear niche with minimal conflict risk, but the generic phrases "manage data" and "automate workflows" could overlap with data-management and workflow-automation skills. Mostly distinct with minor overlap risk — anchor 4.

4 / 5

Total

12

/

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