CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

concord

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

Quality

65%

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

Quality

Content

57%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, executable CLI guide — commands are concrete and the connection lifecycle (including CLIENT_ACTION_REQUIRED handling) is genuinely useful. Its weaknesses are the dangling step references ("Step 2", "1b"), missing validation guidance for the destructive actions it advertises, the padding in the Overview section, and the fully inlined action catalog that belongs in a reference file.

Suggestions

Fix the broken step numbering: either label the sections Step 1/1b/2/3 or replace "skip to **Step 2**" with the actual heading name so the flow is followable.

Add validation guidance for destructive actions — e.g. 'Before delete-agreement, run get-agreement to confirm the target and confirm with the user; deletes are irreversible' — and note how to verify a create/update succeeded.

Move the 20-row Popular actions table (and optionally the proxy flags table) into a references/ file (e.g. references/actions.md) and keep a short 'how to discover actions' pointer inline, and delete the content-free 'Concord Overview' bullet stubs.

DimensionReasoningScore

Conciseness

Most of the body is lean command documentation, but it includes unnecessary padding: the 'Concord Overview' section is five content-free bullet stubs ('Document', 'Section', 'Workspace', 'User', 'Template'), plus filler like "This is the fastest way to get a connection" and "so you can focus on the integration logic rather than auth plumbing". This matches 'Mostly efficient but includes some unnecessary explanation or could be tightened' rather than 4, where such trimming would be minor.

3 / 5

Actionability

Concrete, copy-paste-ready commands throughout: `npm install -g @membranehq/cli@latest`, `membrane connection ensure "https://www.concordnow.com/" --json`, `membrane action run <actionId> --connectionId=... --input '{...}'`, plus a flags table for proxy requests. Minor gap: the Popular actions table lists action `Key` values while the run command requires `<actionId>`, and the doc never explains how to obtain the actionId from the list output — keeping it below 5.

4 / 5

Workflow Clarity

The overall sequence (install → login → connection ensure → poll → search actions → run) is present and the connection polling loop with state handling (READY / CLIENT_ACTION_REQUIRED / CONFIGURATION_ERROR) is a genuine checkpoint, but the flow references steps that don't exist ("skip to **Step 2**" with no Step 2, a "1b" heading with no "1a"). More importantly, the skill exposes destructive operations (delete-agreement, delete-clause, delete-folder) with no validation or confirmation guidance, which caps workflow clarity at 3.

3 / 5

Progressive Disclosure

There are no bundle files and no external references at all; sections are clearly headed, but the 20-row Popular actions catalog and the proxy flags table are reference-grade material inlined in SKILL.md. This fits 'Some structure but could be better organized; content that should be separate is inline' rather than 4, where most content would be appropriately placed.

3 / 5

Total

13

/

20

Passed

Description

57%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 names the Concord domain and includes an explicit 'Use when' clause, but the capability description is generic and the trigger language is circular ('interact with Concord data') without the natural contract-domain terms users would say. It is functional but leaves both specificity and trigger quality on the table.

Suggestions

Replace generic actions with concrete Concord capabilities, e.g. 'List and search agreements, create clauses and folders, manage reports, webhooks, and user groups, and send direct API requests'.

Add natural trigger terms a Concord user would say: contracts, agreements, clauses, signatures, e-signatures — e.g. 'Use when the user mentions Concord, contracts, agreements, or clause libraries'.

Make the 'when' clause non-circular by tying it to concrete user intents (finding a contract, setting up a webhook, organizing folders) rather than 'interact with Concord data'.

DimensionReasoningScore

Specificity

"Manage data, records, and automate workflows" names the Concord domain but the actions are generic — no concrete capabilities like listing agreements, creating clauses, or managing contracts appear. This matches the anchor 'Names the domain but actions are minimal or generic' rather than 3, which would require 1-2 concrete, domain-specific actions.

2 / 5

Completeness

It answers both: what — "Manage data, records, and automate workflows" — and when — "Use when the user wants to interact with Concord data". The 'when' clause is explicit but circular and could be more specific, matching anchor 4 ('both what and when; when could be more explicit or specific') rather than 5, which demands concrete trigger phrases.

4 / 5

Trigger Term Quality

"Concord" and "interact with Concord data" are relevant keywords, but the natural terms a Concord user would actually say — contracts, agreements, clauses, signatures — are missing. This fits 'Some relevant keywords but missing common variations or synonyms'; it is above 2 (more than one or two generic terms) but below 4 (good coverage with only a few missing).

3 / 5

Distinctiveness Conflict Risk

"Concord integration" and "interact with Concord data" establish a clear, app-specific niche with minimal conflict risk against generic skills. However, "Manage data, records, and automate workflows" is generic language that could overlap with other data-management or automation skills, keeping it below 5.

4 / 5

Total

13

/

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