x402janus
v3.0.0x402janus — autonomous on-chain wallet security for EVMs: scan approvals, trace fund flow, detect drainers, and build revoke transactions. Pay via x402 USDC...
⭐ 0· 393·0 current·0 all-time
MIT-0
Download zip
LicenseMIT-0 · Free to use, modify, and redistribute. No attribution required.
Security Scan
OpenClaw
Suspicious
high confidencePurpose & Capability
The skill claims to scan wallets, trace approvals, and build revoke transactions — and the included scripts implement those features and call a JANUS_API_URL for paid scans. Requiring a PRIVATE_KEY for x402 payment signing (and for executing revokes) is consistent with the stated micropayment model. However, registry metadata at the top of the submission lists no required env vars/binaries while SKILL.md and the scripts do require node/npx and JANUS_API_URL (and optionally PRIVATE_KEY). That metadata mismatch is an incoherence to be addressed.
Instruction Scope
SKILL.md instructs running the provided scripts which perform network calls to JANUS_API_URL and RPC endpoints and can build and (optionally) execute real on-chain transactions. The revoke script uses child_process.spawn (cast) to send transactions; comments indicate insecure handling of private keys may still be present (passing keys via CLI). Monitoring can forward alerts to arbitrary webhook URLs or Telegram. These behaviors are within the skill's stated purpose (revoke/monitor), but they expand scope to privileged actions (signing and sending on-chain txs and contacting arbitrary endpoints), so they require user caution and code review.
Install Mechanism
No formal install spec is in the registry (instruction-only), which is lower risk than arbitrary downloads. SKILL.md advises running npm install in the skill folder; package.json/package-lock are provided and pull in thirdweb and a standard dependency tree. Installing npm packages from public registries is expected for this kind of tool, but users should still audit dependencies and supply a safe runtime environment.
Credentials
Paid-tier flows require PRIVATE_KEY (agent wallet) and JANUS_API_URL — both reasonable for x402 payment signing and contacting the service. However: (1) the initial registry metadata claimed no required env vars while SKILL.md requires JANUS_API_URL (and PRIVATE_KEY for paid tiers), an inconsistency; (2) scripts use defaults for RPC (e.g., https://base.gateway.tenderly.co) which will contact third‑party services unless the user overrides BASE_RPC_URL; (3) the revoke script spawns external 'cast' and comments indicate the private key might be passed insecurely (exposing it via process arguments). Requesting a wallet private key is sensible for signing payments, but it is high‑sensitivity and must be handled carefully — ensure the key is limited in funds/permissions and not exposed to CLI args, logs, or third parties.
Persistence & Privilege
always is false and the skill does not request forced global inclusion. The skill can be invoked by the agent autonomously per platform defaults, and it can execute transactions when given PRIVATE_KEY and user-supplied flags (e.g., --execute). That power is coherent with its purpose but increases blast radius; autonomous invocation alone is not flagged, but combining autonomy with direct transaction execution and private key usage means users should be cautious about granting the PRIVATE_KEY to the runtime.
What to consider before installing
This skill largely does what it claims — scanning approvals and building revoke txs — but there are red flags you should address before installing or running it.
What to check before installing or running:
- Verify provenance: the submitted registry metadata differs from SKILL.md (required envs and binaries). Confirm the source repository/website (https://x402janus.com and the GitHub link in SKILL.md) actually match the code you received.
- Do not supply your primary, full‑balance private key. For paid tiers or any run that requires PRIVATE_KEY, use a dedicated agent wallet with minimal funds and only enough USDC to pay micropayments. Prefer ephemeral or watch‑only wallets where possible.
- Audit the revoke script carefully: it spawns an external 'cast' process; ensure the implementation does NOT pass your private key on the command line (ps/args exposure) or write it to logs. The source contains comments indicating this may not be fully fixed.
- Review network endpoints: the code defaults to third‑party RPCs (tenderly) if BASE_RPC_URL is not set. That can leak which addresses you're interacting with to a third party. Set BASE_RPC_URL to a trusted RPC or your own node.
- Consider running in an isolated environment (temporary container or VM) and inspect network traffic when you run the tool, especially first runs and paid-tier flows.
- If you only need read-only scans, prefer the Free tier which does not require PRIVATE_KEY. If you need paid tiers, confirm the JANUS_API_URL endpoint is authentic and review the server's 402 challenge flow.
If you want, I can: (1) search the provided code for exact places where PRIVATE_KEY may be passed to child processes, (2) extract the exact spawn arguments in the revoke script to confirm whether keys are passed on the CLI, or (3) produce a short checklist/patch suggestions to harden the scripts (avoid CLI args for secrets, require BASE_RPC_URL, add clearer metadata).Like a lobster shell, security has layers — review code before you run it.
latestvk9714c9yrx7nafy886scvyhpps82bxne
License
MIT-0
Free to use, modify, and redistribute. No attribution required.
