Content
50%Weight 40%Scale 1-5Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
The Membrane CLI usage sections are well-structured, actionable, and include a solid connection-state feedback loop, but they are buried in a 200-line entity list that looks like legal-practice boilerplate unrelated to Adversus. The opening also mischaracterizes the platform as a 'competitive intelligence platform' while the popular actions (leads, campaigns, activities) indicate an outbound calling/CRM product, creating an internal inconsistency. Numbered workflow steps and result verification for write actions are missing.
Suggestions
Move the ~200-line entity list out of SKILL.md into a references/ file (e.g. references/entities.md) and keep a one-line pointer, or delete it entirely given it appears to be from an unrelated legal-domain skill.
Fix the dangling workflow reference: "skip to **Step 2**" points to a step that is never labeled — number the main workflow steps explicitly (1. Install, 2. Authenticate, 3. Connect, 4. Search, 5. Run).
Add validation guidance for write/destructive actions, e.g. "Before update-lead, run get-lead to capture current values; after, re-run get-lead to confirm the change applied."
Add one concrete end-to-end example with resolved values (e.g. running get-lead with a real action key and connection id) and remove the inaccurate 'competitive intelligence platform' characterization.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | Roughly 200 of ~345 body lines are a bullet dump of entity names ("Court", "Judge", "Will", "Trust", "Pet", "Safe Deposit Box") that appear to come from a legal-practice boilerplate and are irrelevant to Adversus, plus opening marketing copy ("Adversus is a competitive intelligence platform. It helps businesses monitor and analyze their competitors' strategies...") that Claude does not need. Not 1 because the Membrane CLI sections themselves are efficient and instructional; not 3 because well over half the body is padding. | 2 / 5 |
Actionability | The CLI workflow is genuinely concrete — "npm install -g @membranehq/cli@latest", "membrane connection ensure \"https://adversus.io\" --json", "membrane action run <actionId> --connectionId=CONNECTION_ID --input '{\"key\": \"value\"}' --json" — but there is no end-to-end example with resolved values (a real actionId such as get-lead, a concrete connection id), and "Use action names and parameters as needed" is vague direction with no parameter guidance. This sits between the pseudocode-incomplete anchor (3) and mostly-executable (4); the missing resolved examples and the vacuous parameter line pull it to 3. | 3 / 5 |
Workflow Clarity | The install → login → connect → search → run sequence is present, and connection setup has a real feedback loop (poll with "npx @membranehq/cli connection get <id> --wait --json", handle CLIENT_ACTION_REQUIRED, re-poll, "Check the error field for details"). However "If the returned connection has state: \"READY\", skip to **Step 2**" references a 'Step 2' that is never labeled anywhere, and destructive/batch write actions (update-lead, change-lead-status, create-lead) have no verification guidance — capping this at 3. Not 4 because the dangling step reference and absent result-verification checkpoints break the sequence; not 2 because the connection-state handling is a genuine validation loop. | 3 / 5 |
Progressive Disclosure | No bundle files exist (no references/, scripts/, or assets/), and "## Adversus Overview" inlines ~200 lines of entity names that clearly belong in a separate reference file — matching the anchor-3 example ("## Overview [200 lines of API reference that could be in a separate file]"). Not 2 because the remaining sections (Working with Adversus, Popular actions, Proxy requests, Best practices) are well organized with clear headings; not 4 because the largest content block is inlined rather than split out. | 3 / 5 |
Total | 11 / 20 Passed |