CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

brex

Brex integration. Manage Accounts, Vendors, Bills, Expenses, Budgets. Use when the user wants to interact with Brex data.

Quality

74%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Medium

Suggest reviewing before use

Fix and improve this skill with Tessl

tessl review fix ./skills/brex/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

65%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 highly actionable, with executable commands, clear state-machine handling for connections, and useful tables. Weaknesses are a dangling "Step 2" reference, missing validation guidance for destructive actions, and catalog material inlined in SKILL.md instead of split into reference files.

Suggestions

Fix the two "skip to **Step 2**" references by explicitly labeling the next section (e.g. "### Step 2: Search for actions") or removing the step numbering.

Add a validation checkpoint before destructive actions, e.g. "Before running delete-vendor or other destructive actions, run the corresponding get-by-id action and confirm the target with the user."

Move the 20-row popular-actions catalog and the proxy flag table into a references/ file (e.g. actions.md), keeping a handful of representative actions inline in SKILL.md.

DimensionReasoningScore

Conciseness

The body is dominated by lean, executable command blocks and tables, but includes minor over-explanation Claude doesn't need, e.g. "Brex is a corporate credit card and spend management platform. It's primarily used by startups and high-growth companies..." and "This is the fastest way to get a connection. The URL is normalized to a domain...". This matches the efficient-with-minor-trimmable-instances anchor rather than the mostly-efficient-with-clearly-unnecessary-explanation anchor below it.

4 / 5

Actionability

Commands are concrete and copy-paste ready ("npm install -g @membranehq/cli@latest", "membrane connection ensure \"https://brex.com\" --json", a full proxy flag table), with placeholders clearly marked. It falls short of fully-executable coverage because no worked example runs a real action key (e.g. list-expenses) with an actual --input payload.

4 / 5

Workflow Clarity

The install → login → connect → poll → search → run sequence is present with good connection-state checkpoints (READY / CLIENT_ACTION_REQUIRED / CONFIGURATION_ERROR and re-polling), but two references to "skip to **Step 2**" point to a section never labeled Step 2, and destructive actions (e.g. delete-vendor) have no pre-execution validation guidance, invoking the destructive-operation cap.

3 / 5

Progressive Disclosure

Headers are clear and content is one level deep with no nested references, but the ~160-line body inlines reference-style material — a 20-row popular-actions catalog and a proxy flag table — that belongs in a separate file, and no bundle files exist at all. This matches the some-structure-but-inline-content anchor rather than the good-placement anchor above it.

3 / 5

Total

14

/

20

Passed

Description

73%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 is well-formed with a clear niche, third-person voice, and an explicit "Use when" clause. Its main weakness is reliance on the generic verb "Manage" instead of concrete actions, and omission of natural trigger terms (cards, transactions) that the skill actually supports.

Suggestions

Replace the generic verb "Manage" with concrete actions, e.g. "Create and update vendors and cards, list expenses, transfers, budgets, and cash accounts, and make transfers."

Add "cards" and "transactions" to the description since they are core Brex concepts the skill heavily covers in its body.

Sharpen the trigger clause with concrete phrases, e.g. "Use when the user mentions Brex, card transactions, expenses, vendors, bills, or budgets."

DimensionReasoningScore

Specificity

"Manage Accounts, Vendors, Bills, Expenses, Budgets" names the domain and five objects but uses one generic verb ("Manage") rather than listing concrete actions. It matches the anchor for naming the domain with limited concrete actions, not the level above which requires several specific actions.

3 / 5

Completeness

Both parts are explicit: what ("Manage Accounts, Vendors, Bills, Expenses, Budgets") and when ("Use when the user wants to interact with Brex data"). The "when" clause is generic rather than citing concrete trigger phrases, so it does not reach the level requiring explicit trigger phrases.

4 / 5

Trigger Term Quality

Natural terms like "Brex", "Accounts", "Vendors", "Bills", "Expenses", and "Budgets" are present and would be said by users. However "cards" and "transactions" — which the skill body covers heavily — are missing, matching the anchor for good coverage with a few natural terms missing.

4 / 5

Distinctiveness Conflict Risk

"Brex" is a clear niche with distinct triggers, and the enumerated entities further scope it. Minimal conflict risk with any other skill, matching the highest anchor.

5 / 5

Total

16

/

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