SKILLEMALL.ai

CD openclaw-elsa-x402

DeFi tools for portfolio analysis, token search, and swap execution via Elsa API with x402 micropayments

modbender/skill-library-mcp Agent Skills author: modbender MIT 19 files body ≈ 3 002 tokens Open the sourcegithub.com analyzed 2 d ago

DeFi tools for portfolio analysis, token search, and swap execution via Elsa API with x402 micropayments

As a process D 39/100 · Unfinished process — weak spots: result and completion, when it triggers, inputs and preconditions

AnalyzerInfrastructuretype and topics are labelled automatically from the skill text
JSON
Technical rating
C
72/100
safety, quality, tests
Safety 60%
79
Quality 40%
61
Run on models
none yet
Process rating
D
39/100
Unfinished process
Result and completion w 14
0
Inputs and preconditions w 11
0
Failures and branches w 10
0
the three weakest of ten parameters · all ten

How to improve

  1. Say in the description WHEN to use the skill ("use when…", example requests): that is the agent's main cue.
For the model run — optional
  • Your own cases (evals/evals.json, 4–6 real requests with expected answers): the full check would then run those instead of a model-drafted suite.
  • A spec.yaml with trigger phrases and assertions — a behaviour contract for CI; `skilltest init` writes a template.

Guard findings · 21

✓ No critical or high findings

Medium and low: 21
  • low Secrets in code secret-high-entropy-token examples/demo.md:22
    High-entropy token-like string (may be an id, hash or a credential) (test fixture / example file; quoted — discussed, not commanded)
    "address": "0x83…913",
    fixturequoted
  • low Secrets in code secret-high-entropy-token examples/demo.md:47
    High-entropy token-like string (may be an id, hash or a credential) (test fixture / example file; quoted — discussed, not commanded)
    npx tsx scripts/index.ts elsa_get_portfolio '{"wallet_address": "0xd8…045"}'
    fixturequoted
  • low Secrets in code secret-high-entropy-token examples/demo.md:78
    High-entropy token-like string (may be an id, hash or a credential) (test fixture / example file; quoted — discussed, not commanded)
    "from_token": "0x83…913",
    fixturequoted
  • low Secrets in code secret-high-entropy-token examples/demo.md:82
    High-entropy token-like string (may be an id, hash or a credential) (test fixture / example file; quoted — discussed, not commanded)
    "wallet_address": "0xd8…045",
    fixturequoted
  • low Secrets in code secret-high-entropy-token examples/demo.md:94
    High-entropy token-like string (may be an id, hash or a credential) (test fixture / example file; quoted — discussed, not commanded)
    "from_token": "0x83…913",
    fixturequoted
  • low Secrets in code secret-high-entropy-token package-lock.json:79
    High-entropy token-like string (may be an id, hash or a credential) (detector / deny-list definition)
    "integrity": "sha5…dFr+8ycyX+5le/96iA…1J0+RvpE…Uug==",
    detector
  • low Secrets in code secret-high-entropy-token package-lock.json:161
    High-entropy token-like string (may be an id, hash or a credential) (detector / deny-list definition)
    "integrity": "sha5…gpC+67eQ…FFd+guwk…MSA==",
    detector
  • low Secrets in code secret-high-entropy-token package-lock.json:189
    High-entropy token-like string (may be an id, hash or a credential) (detector / deny-list definition)
    "integrity": "sha5…dFr+8ycyX+5le/96iA…1J0+RvpE…Uug==",
    detector
  • low Secrets in code secret-high-entropy-token package-lock.json:244
    High-entropy token-like string (may be an id, hash or a credential) (detector / deny-list definition)
    "integrity": "sha512-GZMB+a0mO…4cw+w1WV…UED+1X8a…sJi+8mgpw==",
    detector
  • low Secrets in code secret-high-entropy-token package-lock.json:414
    High-entropy token-like string (may be an id, hash or a credential) (detector / deny-list definition)
    "integrity": "sha5…HK5+NE/tvnRLbIqUWa+0E9N4WNMjmp/kXXP…R8w==",
    detector
  • low Secrets in code secret-high-entropy-token README.md:122
    High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)
    npx tsx scripts/index.ts elsa_get_portfolio '{"wallet_address": "0xd8…045"}'
    quoted
  • low Secrets in code secret-high-entropy-token README.md:167
    High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)
    "from_chain": "base", "from_token": "0x83…913",
    quoted
  • low Secrets in code secret-high-entropy-token scripts/__tests__/confirm.test.ts:49
    High-entropy token-like string (may be an id, hash or a credential) (test fixture / example file; quoted — discussed, not commanded)
    from_token: '0x83…913',
    fixturequoted
  • low Secrets in code secret-high-entropy-token scripts/__tests__/confirm.test.ts:53
    High-entropy token-like string (may be an id, hash or a credential) (test fixture / example file; quoted — discussed, not commanded)
    wallet_address: '0xd8…045',
    fixturequoted
  • low Secrets in code secret-high-entropy-token scripts/__tests__/confirm.test.ts:142
    High-entropy token-like string (may be an id, hash or a credential) (test fixture / example file; quoted — discussed, not commanded)
    from_token: '0x83…913',
    fixturequoted
  • low Secrets in code secret-high-entropy-token scripts/__tests__/confirm.test.ts:146
    High-entropy token-like string (may be an id, hash or a credential) (test fixture / example file; quoted — discussed, not commanded)
    wallet_address: '0xD8…045',
    fixturequoted
  • low Secrets in code secret-high-entropy-token SKILL.md:34
    High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)
    "from_chain": "base", "from_token": "0x83…913",
    quoted
  • low Secrets in code secret-high-entropy-token SKILL.md:100
    High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)
    npx tsx scripts/index.ts elsa_get_token_price '{"token_address": "0x83…913", "chain": "base"}'
    quoted
  • low Secrets in code secret-high-entropy-token SKILL.md:151
    High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)
    "from_token": "0x83…913",
    quoted
  • low Secrets in code secret-high-entropy-token SKILL.md:177
    High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)
    "from_token": "0x83…913",
    quoted
  • low Secrets in code secret-high-entropy-token SKILL.md:266
    High-entropy token-like string (may be an id, hash or a credential) (quoted — discussed, not commanded)
    "from_token": "0x83…913",
    quoted

Files scanned: 19. Evidence is masked. Grey chips explain why severity was lowered.

Against the Agent Skills spec

  • warning description-no-when description does not say WHEN to use the skill (no "use when")

Process rating: all ten parameters 39/100

  • 0Result and completion. Does not say what the result is
  • 0Inputs and preconditions. Does not say what the process needs to start
  • 0Failures and branches. Linear process with no failure handling
  • 0Progress reporting. Says nothing while it works
  • 20When it triggers. No condition that starts the skill
  • 30Running it twice. 2 mutating operations with no state check
  • 40Consistency. Frontmatter name (openclaw-elsa-x402) differs from the folder (elsa-x402-api)
  • 60Tools and files. Uses tools (web) that frontmatter does not declare
  • 100Steps. 72 steps
  • 100Execution cost. Instruction body is 3002 tokens
  • medium Safety rules and hard prohibitions inside a skill: they belong in the system prompt, here they protect nothing

Everything here is measured from the skill text rather than judged by a model, so the numbers are checkable. A parameter weighs more when it is a more common reason for the process to stall.

Quality signals

  • +5Description has no quoted example phrases that should trigger the skill
  • +4Description does not say when NOT to use the skill (false activations)
  • +3Description length 104: 120–800 characters recommended
  • +3Output format is not stated: the model decides each time
  • -5TODO / placeholder text left in the skill
  • -39 of 10 scripts are never mentioned in SKILL.md
  • +1No license
  • +2Single-language instructions
  • +4Structure: 31 headings
  • +3Step-by-step instructions: 72 items
  • +4Has examples (24 code blocks)

Quality base 70; lint remarks subtract, signals add up to 100. Result: 61.