CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

astronaut

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

Quality

61%

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

Quality

Content

67%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 practical, largely executable CLI runbook: the connection lifecycle is well sequenced with a genuine state-based feedback loop, and action search/run plus proxy fallback are concretely specified. Its weaknesses are padding (the empty Overview section and duplicated action-discovery instructions) and a broken step numbering reference ('skip to Step 2' with no Step 2) that slightly undermines the otherwise strong workflow guidance.

Suggestions

Delete the 'Astronaut Overview' bullet list and the filler line 'Use action names and parameters as needed.' — they carry no instructions.

Merge 'Searching for actions' and 'Popular actions' (they repeat the same membrane action list command) and either name a few representative actions there or drop the section title's implication.

Fix the dangling 'skip to Step 2' references by numbering the actual steps (Step 2 = search actions, Step 3 = run actions) so the sequence is explicit.

DimensionReasoningScore

Conciseness

Mostly efficient — the bulk is lean CLI commands — but there is genuine padding: the 'Astronaut Overview' section is content-free nested bullets (Missions/Astronauts/Vehicles/Destinations) followed by the filler line 'Use action names and parameters as needed.', the intro paragraph explains what the app is, and 'Searching for actions' and 'Popular actions' repeat the same discovery command. This matches 'Mostly efficient but includes some unnecessary explanation or could be tightened'. Not a 4, because the Overview section and the duplicated discovery instructions are more than minor trimmable instances.

3 / 5

Actionability

Concrete, executable commands throughout: 'npm install -g @membranehq/cli@latest', 'membrane connection ensure "https://astrnt.co/" --json', 'membrane action run <actionId> --connectionId=CONNECTION_ID --input' and a complete proxy flag table. This matches 'Mostly executable guidance; concrete code or commands with minor gaps'. Not a 5, because 'Popular actions' lists no actual action names, there is no worked example of running a real action end-to-end, and the user is left to discover parameters from schemas alone.

4 / 5

Workflow Clarity

The connection flow is a clear sequence (install → login → connection ensure → poll with --wait) with an explicit validation checkpoint: the state machine (READY / CLIENT_ACTION_REQUIRED / CONFIGURATION_ERROR) plus 'After the user completes the action... poll again' forms a real feedback loop. This matches 'Clear sequence with most checkpoints present; minor validation gaps'. Not a 5, because the text says 'skip to Step 2' but no Step 2 exists — steps are never numbered — and there is no verification guidance for action-run results beyond 'The result is in the output field'.

4 / 5

Progressive Disclosure

No bundle files exist, and the ~140-line single-file body is organized into well-labeled sections (Install, Authentication, Connecting, Searching, Running, Proxy, Best practices) with no monolithic block that clearly belongs in a separate file — matching 'Good structure; most content is appropriately placed... minor organization gaps'. Not a 5, because the proxy flag table and the clientAction state-machine detail could be offloaded to a reference file, and the redundant 'Popular actions' section muddies navigation.

4 / 5

Total

15

/

20

Passed

Description

37%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 follows the what/when shape and anchors itself to a named application, but the capability language is generic ('manage data, records, and automate workflows') and the trigger clause circularly restates the domain instead of naming natural user phrases. It reads like a template placeholder rather than a description written from the app's actual feature vocabulary.

Suggestions

Replace the generic action list with the app's concrete capabilities from the body, e.g. 'Manage astronaut training, mission planning, astronaut records, vehicles, and health monitoring data via the Astronaut API.'

Expand the 'when' clause with natural trigger phrases: 'Use when the user mentions Astronaut, missions, astronaut training, mission planning, or health monitoring data.'

Add domain keywords users of this app would actually say (missions, astronauts, vehicles, destinations) to reduce overlap risk with generic data/workflow skills.

DimensionReasoningScore

Specificity

It names the domain ("Astronaut integration") but the actions are generic: "Manage data, records, and automate workflows" is the kind of minimal, non-concrete action list matching the anchor 'Names the domain but actions are minimal or generic' ("Processes PDF files"). Not a 3, because 'manage data' and 'automate workflows' are not 1-2 concrete actions like 'extracts content' or 'fills forms'; not a 1, because the domain is named and 'records' gestures at a data model.

2 / 5

Completeness

The 'when' is present ("Use when the user wants to interact with Astronaut data"), but the 'what' is vague — "Manage data, records, and automate workflows" — and the 'when' merely restates the domain circularly rather than giving concrete triggers. This falls between a 3 (weak/vague what) and a 4 (both what and when present, when could be more specific), and noticeably below the 4 anchor's example of a concrete what plus an explicit when, so 3 fits best.

3 / 5

Trigger Term Quality

The only trigger terms are "Astronaut" and "Astronaut data" — essentially the app name repeated ("Use when the user wants to interact with Astronaut data"), with no natural phrases like missions, training, mission planning, health monitoring, or vehicles that a user of this app would say. This matches 'One or two generic keywords; missing the natural phrases users say'. Not a 3, because there are no relevant synonym keywords covering the app's actual feature vocabulary.

2 / 5

Distinctiveness Conflict Risk

"Astronaut integration" pins a named niche, but the generic tail "Manage data, records, and automate workflows" overlaps with virtually any data-management or workflow-automation skill, matching 'Somewhat specific but could still overlap with similar skills'. Not a 4, because the trigger guidance gives no distinct feature-level cues (like 'missions' or 'health monitoring') that would separate it from generic data skills.

3 / 5

Total

10

/

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