Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

Nla Arbitrate

Manually arbitrate NLA escrow fulfillments as an alternative to the automated oracle. Use when the user wants to review pending arbitration requests, evaluat...

MIT-0 · Free to use, modify, and redistribute. No attribution required.
0 · 113 · 0 current installs · 0 all-time installs
by疒奀@mlegls
MIT-0
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Suspicious
high confidence
Purpose & Capability
The skill name and description match the instructions: it runs the nla CLI to manually arbitrate escrow fulfillments. That purpose legitimately requires an on-chain wallet and optionally LLM keys for auto mode. However, the registry metadata does not declare these required binaries or environment variables, which is an important mismatch.
Instruction Scope
SKILL.md stays within the stated purpose: it only instructs use of the 'nla' CLI to inspect escrows and submit on-chain decisions. It does reference reading environment variables (PRIVATE_KEY, OPENAI_API_KEY, etc.) for signing and auto mode, which is expected for the described features.
!
Install Mechanism
This is an instruction-only skill (no install spec), so nothing is written to disk by the skill itself. But SKILL.md requires the external 'nla' CLI (npm install -g nla) and a configured wallet — yet the registry metadata did not list any required binaries. The absence of an install spec is low-risk by itself, but the omitted dependency declaration is a red flag for transparency and user expectations.
!
Credentials
The instructions require sensitive credentials: a private key (or using 'nla wallet:set' / --private-key / PRIVATE_KEY env var) and optionally LLM API keys for auto mode. Those credentials are proportionate to the task (on-chain signing and LLM-based automation), but the registry metadata declared no required env vars. The omission reduces transparency and increases risk of accidental exposure (e.g., unclear whether the skill will read env vars or prompt for keys).
Persistence & Privilege
always is false and there's no install step or code that persists or elevates privileges. The skill can be invoked autonomously by agents by default (normal platform behavior), but that alone is not a new risk here.
What to consider before installing
Before installing or enabling this skill: 1) Confirm the 'nla' CLI requirement is declared in the registry — the SKILL.md requires it but metadata does not. 2) Understand that arbitration requires a wallet private key to sign on-chain transactions; prefer a hardware wallet or local signing workflow rather than putting your raw PRIVATE_KEY in environment variables. 3) If you plan to use auto mode, be aware that content of demands/fulfillments will be sent to whichever LLM provider you configure — review that provider's data retention and privacy policies. 4) Ask the author/registry to update the skill manifest to declare required binaries and required env vars (PRIVATE_KEY and which LLM keys may be read) so you can make an informed decision. 5) Only use this skill if you control the oracle address and understand gas costs and irrevocable on-chain attestations. If the author cannot or will not update the metadata, treat the skill as higher-risk and avoid supplying persistent secrets.

Like a lobster shell, security has layers — review code before you run it.

Current versionv1.0.0
Download zip
arkhaivk9707yxgv12h71ffmrn14ax2y182pn71blockchainvk9707yxgv12h71ffmrn14ax2y182pn71escrowvk9707yxgv12h71ffmrn14ax2y182pn71latestvk9707yxgv12h71ffmrn14ax2y182pn71

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

SKILL.md

Manual NLA Arbitration

Manually arbitrate escrow fulfillments using the nla escrow:arbitrate CLI command, bypassing the automated oracle listener.

When to use this

  • The user wants to manually review and decide on escrow fulfillments
  • The user is the oracle (their wallet address was specified as the oracle when escrows were created)
  • The automated oracle is not running, or the user wants more control over decisions

Step-by-step instructions

1. Verify oracle identity

The user's wallet must be the oracle address specified in the escrow:

nla wallet:show

2a. Arbitrate a specific escrow

To review fulfillments for a known escrow UID:

# Interactive mode - prompts for approve/reject
nla escrow:arbitrate --escrow-uid <uid>

# Auto mode - uses the LLM specified in the escrow's demand
nla escrow:arbitrate --escrow-uid <uid> --auto

2b. Scan for all pending requests

To find all unarbitrated fulfillments where the user is the oracle:

# Interactive mode
nla escrow:arbitrate --escrow-uid all

# Auto mode
nla escrow:arbitrate --escrow-uid all --auto

3. Review and decide

In interactive mode, the command displays each pending fulfillment with:

  • Escrow UID and fulfillment UID
  • The demand text
  • The fulfillment text
  • The arbitration provider/model specified

Then prompts for a decision: approve, reject, or skip.

In auto mode (--auto), the command uses the LLM provider/model specified in the escrow's demand to arbitrate automatically. Requires at least one LLM API key via environment variables or flags (--openai-api-key, --anthropic-api-key, --openrouter-api-key).

4. Verify

After arbitration, check the result:

nla escrow:status --escrow-uid <escrow_uid>

Key details

  • The user's wallet address MUST match the oracle address in the escrow - otherwise the on-chain contract rejects the decision
  • Each arbitration decision is recorded as a permanent on-chain attestation
  • In interactive mode, type skip or s to skip a fulfillment without deciding
  • Auto mode reads LLM API keys from environment variables (OPENAI_API_KEY, etc.) or CLI flags
  • If no pending requests are found, the command explains possible reasons (no fulfillments yet, already arbitrated, or wrong oracle address)

Prerequisites

  • nla CLI installed and configured
  • Private key set via nla wallet:set, --private-key flag, or PRIVATE_KEY env var
  • ETH in the oracle's account for gas (submitting decisions costs gas)
  • For auto mode: at least one LLM provider API key

Examples

# Scan for all pending requests, decide interactively
nla escrow:arbitrate --escrow-uid all

# Auto-arbitrate a specific escrow using LLM
nla escrow:arbitrate --escrow-uid 0xabc123... --auto

# Auto-arbitrate all pending, with explicit API key
nla escrow:arbitrate --escrow-uid all --auto --openai-api-key sk-...

Files

1 total
Select a file
Select a file to preview.

Comments

Loading comments…