CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

codat

Codat integration. Manage Companies, Accounts, Bills, Invoices, Payments, Suppliers and more. Use when the user wants to interact with Codat data.

Quality

76%

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

Quality

Content

68%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.

A well-structured, highly actionable CLI guide with copy-paste commands, a useful actions catalog, and a clearly documented connection state machine. The main defects are the dangling 'Step 2' reference (a '1b' section exists but no Step 2 is ever defined) and the absence of any validation or caution around destructive operations, which caps workflow clarity.

Suggestions

Define the referenced 'Step 2' (e.g., add a numbered 'Step 2: Find and run actions' section) or rewrite the two 'skip to Step 2' pointers to reference the actual section names, so the setup sequence is fully coherent.

Add validation/confirmation guidance for destructive and batch operations — e.g., 'Before delete-company or delete-connection, list connections and confirm with the user; verify with get-company afterward' — to satisfy the workflow-clarity requirement for feedback loops on risky actions.

Clarify how to invoke a specific action end-to-end: state whether `membrane action run <actionId>` takes the 'Key' from the popular-actions table or the id from `action list` output, and show one complete example such as running list-invoices for a connection id.

DimensionReasoningScore

Conciseness

The body is command-driven with almost no explanation of concepts Claude already knows; code blocks and tables dominate. It is not 5 due to a few trimmable items: the vague sentence "Use action names and parameters as needed", the trailing Agent Types fragment, and repeated '--json'/"skip to Step 2" mentions. It is not 3 because no section is padded or over-explained.

4 / 5

Actionability

Nearly all guidance is copy-paste ready: `npm install -g @membranehq/cli@latest`, `membrane login --tenant --clientName=<agentType>`, `membrane connection ensure "https://www.codat.io/" --json`, `membrane action run <actionId> --input '{"key": "value"}'`, and a proxy flag table. Minor gaps keep it from 5: `<actionId>` is never tied to the table's 'Key' column, and there is no end-to-end example invoking a real action.

4 / 5

Workflow Clarity

The connection setup flow has a well-documented state machine (READY / CLIENT_ACTION_REQUIRED with clientAction fields / CONFIGURATION_ERROR) with explicit polling checkpoints, but "Step 2" is referenced twice and never defined, and destructive actions ("Delete Company — Permanently delete a company and all its connections and data") carry no validation or confirmation guidance. Per the rubric, missing validation for destructive/batch operations caps this dimension at 3.

3 / 5

Progressive Disclosure

The skill is a single well-sectioned file with no bundle directories, so navigation is the section structure itself. The 20-row popular-actions table is a compact curated catalog that supports discovery (full discovery is dynamic via `membrane action list --intent`), so content is mostly appropriately placed; the minor gap is that a ~165-line manual keeps everything inline with no reference split at all.

4 / 5

Total

15

/

20

Passed

Description

75%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 concise, third-person, and does a solid job on all four dimensions: it names the product and its resources, includes an explicit 'Use when' trigger, and is anchored to a distinct niche product. Its main weaknesses are the generic verb 'Manage' and a circular trigger clause that misses natural synonyms like 'accounting data' or 'financial data'.

DimensionReasoningScore

Specificity

"Manage Companies, Accounts, Bills, Invoices, Payments, Suppliers and more" names the domain and several concrete resources, matching 'lists several specific actions; minor gaps'. It is not 5 because the verb 'Manage' is generic and never states the operations (list, create, delete, sync); not 3 because coverage goes well beyond 1-2 actions.

4 / 5

Completeness

It has a clear 'what' ("Manage Companies, Accounts, Bills, Invoices, Payments, Suppliers") and an explicit 'when' clause ("Use when the user wants to interact with Codat data"), so it clears the missing-trigger cap of 3. It is not 5 because the 'when' is circular ('interact with Codat data') and lacks concrete trigger phrases.

4 / 5

Trigger Term Quality

Natural keywords users would say are present: "Codat", "Invoices", "Bills", "Payments", "Suppliers", "Accounts". It falls short of 5 because common variations like "accounting data", "financial data", or "banking/commerce data" are absent, but coverage exceeds the 'some relevant keywords' level.

4 / 5

Distinctiveness Conflict Risk

"Codat" is a distinct niche product name anchoring the trigger, giving minimal conflict risk, but generic resource nouns ("Accounts", "Invoices", "Payments") create minor overlap with other accounting-data skills. This matches 'mostly distinct; minor overlap risk with closely related skills' rather than the fully distinct anchor.

4 / 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/codat/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.