Envy Trading System
Analysis
This is a coherent crypto-trading skill, but it should be reviewed carefully because it stores wallet keys and can automatically authorize payments or live trades.
Findings (6)
Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.
Checks for instructions or behavior that redirect the agent, misuse tools, execute unexpected code, cascade across systems, exploit user trust, or continue outside the intended task.
const amount = BigInt(req.maxAmountRequired);
...
const signature = await wallet.signTypedData(USDC_DOMAIN, TRANSFER_WITH_AUTH_TYPES, message);
...
const headers = { 'X-PAYMENT': encoded, ...(opts.headers || {}) };When no API key is present, paid calls automatically use the local wallet to sign an x402 payment authorization based on the server-provided amount.
executor: paper # paper | hyperliquid | auto confirm: false # require human confirmation before trades?
The controller supports live Hyperliquid execution modes, and the default generated configuration disables trade confirmation.
const MAX_RECONNECT_ATTEMPTS = 50; ... this.running = true; this.connect();
The monitor is designed as a long-running WebSocket process with reconnect behavior, which is expected for live signal monitoring but should be noticed.
"dependencies": {
"ethers": "^6.0.0",
"ws": "^8.0.0",
"yaml": "^2.0.0"
}The skill depends on external npm packages with version ranges, and no lockfile is included in the manifest.
Checks whether tool use, credentials, dependencies, identity, account access, or inter-agent boundaries are broader than the stated purpose.
fs.writeFileSync(WALLET_FILE, JSON.stringify({
address: wallet.address,
privateKey: wallet.privateKey,
mnemonic: wallet.mnemonic.phrase,
}, null, 2));The skill creates and stores an unencrypted wallet private key and mnemonic in wallet.json, which is high-impact credential material for payments and trading.
Checks for exposed credentials, poisoned memory or context, unclear communication boundaries, or sensitive data that could leave the user's control.
`assemble` → auto-saves to `strategies/{coin}.yaml` (archives old version if exists)
- The signal monitor auto-discovers strategies from `strategies/`Strategy files are persistent context that the monitor later auto-discovers and uses as trading logic.
