CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

cirrus-labs

Cirrus Labs integration. Manage data, records, and automate workflows. Use when the user wants to interact with Cirrus Labs 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

Low

Low-risk findings worth noting

Fix and improve this skill with Tessl

tessl review fix ./skills/cirrus-labs/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-dense integration guide with good state-handling for connection setup and a sensible action-first-then-proxy escalation path. Its main defects are a dangling "Step 2" reference with incoherent step numbering, a filler overview section, and inconsistent CLI invocation forms.

Suggestions

Define or renumber the steps: the text says "skip to Step 2" twice but no Step 2 exists, and "1b" has no "1" — replace with explicit numbered headings (1. Connect, 2. Discover actions, 3. Run actions) or drop the step labels.

Delete the "## Cirrus Labs Overview" section and the Membrane-internals explanation of URL normalization; keep only the one-line platform identification.

Add a brief error-recovery example for action runs or proxy failures (e.g., what to do on CONFIGURATION_ERROR / expired credentials), and pick one canonical invocation form (`membrane` vs `npx @membranehq/cli`).

DimensionReasoningScore

Conciseness

The commands and code blocks are lean, but there are several unnecessary or padded passages: the bare "## Cirrus Labs Overview" hierarchy (Project/Issue/Document/User plus "Use action names and parameters as needed") carries no actionable value, "This is the fastest way to get a connection. The URL is normalized to a domain and matched against known apps" explains Membrane internals, and the auth-plumbing reassurance line is filler. This matches anchor 3 ("mostly efficient but includes some unnecessary explanation or could be tightened"); it exceeds anchor 2's threshold of pervasive padding but is not 4's "minor instances only".

3 / 5

Actionability

The body provides mostly executable, copy-paste-ready commands with concrete flags and placeholders: `npm install -g @membranehq/cli@latest`, `membrane login complete <code>`, `membrane connection ensure "https://cirrus-ci.org/" --json`, `membrane action run <actionId> --input '{"key": "value"}'`, plus a complete proxy flag table. Anchor 4 ("mostly executable guidance with minor gaps") rather than 5, because "Step 2" is referenced but never defined and the invocation form inconsistently alternates between `membrane` and `npx @membranehq/cli`.

4 / 5

Workflow Clarity

A real sequence exists (install → login → ensure connection → poll state → handle clientAction → search/run actions → proxy fallback) with a state-machine branch for READY/CLIENT_ACTION_REQUIRED/CONFIGURATION_ERROR and a polling loop, but "skip to **Step 2**" appears twice with no Step 2 defined, a "1b" subsection exists with no "1" or "2", and error recovery is just "Check the `error` field for details". Anchor 3 ("sequence present but checkpoints missing or implicit") rather than 4, because the broken step references make the multi-step flow genuinely hard to follow.

3 / 5

Progressive Disclosure

There are no bundle files (no references/, scripts/, or assets/), and this single-file skill (~140 lines) is organized into clearly headed, appropriately sized sections with no monolithic wall of text. Anchor 4 ("good structure; most content appropriately placed; minor organization gaps") rather than 5, because the content exceeds the sub-50-line simple-skill case and contains the filler overview section and dangling step labels.

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 names a distinct platform and includes an explicit "Use when" trigger clause, but the capability statement is generic. It reads like a template filled in with a product name rather than a description of what can concretely be done with Cirrus Labs.

Suggestions

Replace "Manage data, records, and automate workflows" with concrete capabilities, e.g., "Trigger and monitor CI builds, read build logs, manage repositories and pipeline configurations".

Add trigger synonyms users actually say — "Cirrus CI", "CI/CD", "build pipeline", "builds" — to the "Use when" clause so the skill fires on natural phrasing.

Distinguish the trigger from sibling integration skills by tying the "when" clause to CI/CD-specific intent (e.g., "when the user wants to check or trigger Cirrus CI builds").

DimensionReasoningScore

Specificity

"Manage data, records, and automate workflows" names the domain but the actions are generic — no concrete operations (e.g., triggering builds, reading pipeline logs, managing repositories) are stated. This matches anchor 2 ("Names the domain but actions are minimal or generic"), not anchor 3, because not even one concrete action is listed.

2 / 5

Completeness

The "when" is explicit ("Use when the user wants to interact with Cirrus Labs data"), but the "what" ("Manage data, records, and automate workflows") is vague — close to the "Processes data" bad-example territory. It falls between anchor 3 and anchor 4; the weak "what" keeps it below 4's requirement of both a concrete what and when.

3 / 5

Trigger Term Quality

"Cirrus Labs" is a strong natural keyword, reinforced by "data", "records", and "workflows", but common variations users would actually say — "Cirrus CI", "CI/CD", "builds", "pipelines" — are missing. This matches anchor 3 (relevant keywords but missing common variations/synonyms); it is not 4 because synonym coverage is thin.

3 / 5

Distinctiveness Conflict Risk

"Cirrus Labs" is a distinct named platform, giving a clear niche trigger, but the action phrasing ("Manage data, records, and automate workflows") is structurally identical to other app-integration skills and would overlap with closely related ones. Matches anchor 4 ("Mostly distinct; minor overlap risk"); not 5 because the generic what-phrase is not uniquely identifying.

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/cirrus-labs/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.