{"data":{"skill":{"slug":"nexaiguy-openclaw-agent-wallet","name":"openclaw-agent-wallet","icon":"📦","repo":"https://github.com/nexaiguy/nex-ai-skills/tree/463aaff26593654193deb52f24d18e80ec21e323/skills/openclaw-agent-wallet","status":"approved","author":"nexaiguy","authorVersion":"1.2","skillstoreRevision":1,"license":"MIT"},"licenseCorrection":null,"audit":{"id":"a019b61b-1345-4b28-b089-4a8077edec90","skill_id":"30018861-2bb0-4636-a871-c9a72b1a6365","version":1,"content_hash":"v3:3ddfdca559084abffbfdd188f2ba14b597dcfd9c:814404854aef4fad3b67a3c948e49168e4bac32bf92e61cb3e82201c75f0838f:3cf550f2a0e3a8433f9e99014f06d0c6c679accfa25ecf9180a8f7581ca4b21d:736b696c6c732f6e657861696775792f6f70656e636c61772d6167656e742d77616c6c6574:6316d72f224c63b42df632b4fe7010db","risk_level":"medium","is_blocked":false,"safe_to_publish":true,"analysis_status":"ok","agent_auto_install_policy":"allowed","manual_install_policy":"allowed","summary":"All ten static detections are false positives involving Markdown, attribution links, or protective discussion of private keys. The guide mischaracterizes URL-based external signing as air-gapped, without demonstrating offline isolation. No evidence found of executable payloads, credential collection, exfiltration, or prompt injection in the reviewed file.","remediation":[{"issue":"SKILL.md describes a URL-based external signer as air-gapped without establishing offline isolation.","severity":"medium","suggestion":"Use the term external signing unless an offline transfer boundary exists. Document signer authentication, transport protection, authorization, and deployment assumptions."},{"issue":"The public guide claims enforced limits and immutable logging, but the implementation is explicitly absent.","severity":"low","suggestion":"Label runtime results as illustrative. Explain that financial enforcement and log integrity require separate implementation and verification before handling funds."}],"risk_factor_evidence":[{"factor":"external_commands","evidence":[{"file":"SKILL.md","line_end":22,"line_start":22},{"file":"SKILL.md","line_end":25,"line_start":25}]},{"factor":"network","evidence":[{"file":"SKILL.md","line_end":14,"line_start":14},{"file":"SKILL.md","line_end":89,"line_start":89}]}],"critical_findings":[],"high_findings":[],"medium_findings":[{"title":"Networked Signing Mischaracterized As Air-Gapped","locations":[{"file":"SKILL.md","line_end":25,"line_start":25},{"file":"SKILL.md","line_end":69,"line_start":69}],"confidence":0.96,"description":"The guide calls URL-based external signing \"Air-Gapped Signing\" and claims isolation through a dedicated URL. External key custody alone does not establish an offline boundary; this wording can lead users to overestimate protection when deploying wallets.","review_kind":"security","source_category":"semantic","source_severity":"medium","confidence_reasoning":"Both passages explicitly equate a signer URL with air-gapped isolation. No offline transfer mechanism is documented; this confirms misleading guidance, not an observed signer compromise."}],"low_findings":[],"dangerous_patterns":[],"files_scanned":1,"total_lines":90,"audit_model":"codex","audited_at":"2026-11-02T12:27:07.262+00:00","created_at":"2026-11-02T18:08:04.91598+00:00","static_findings":[{"id":"external_commands:SKILL.md:22:ruby-shell-backtick-execution","file":"SKILL.md","pattern":"Ruby/shell backtick execution","snippet":"This skill implements a rigorous spend-gate. Instead of giving an agent direct access to private key","category":"external_commands","line_end":22,"severity":"medium","line_start":22},{"id":"external_commands:SKILL.md:25:ruby-shell-backtick-execution","file":"SKILL.md","pattern":"Ruby/shell backtick execution","snippet":"- **Air-Gapped Signing:** Communicates with an external signer service via `WALLET_SIGNER_URL`, keep","category":"external_commands","line_end":25,"severity":"medium","line_start":25},{"id":"network:SKILL.md:14:hardcoded-url","file":"SKILL.md","pattern":"Hardcoded URL","snippet":"> Free skill by [Nex AI](https://nex-ai.be). This file is the public guide from [Agensi](https://www","category":"network","line_end":14,"severity":"low","line_start":14},{"id":"network:SKILL.md:89:hardcoded-url","file":"SKILL.md","pattern":"Hardcoded URL","snippet":"Built by [Nex AI](https://nex-ai.be). More skills, including the paid catalog: https://www.agensi.io","category":"network","line_end":89,"severity":"low","line_start":89},{"id":"sensitive:SKILL.md:22:crypto-seed-private-key-mention","file":"SKILL.md","pattern":"Crypto seed/private key mention","snippet":"This skill implements a rigorous spend-gate. Instead of giving an agent direct access to private key","category":"sensitive","line_end":22,"severity":"high","line_start":22},{"id":"sensitive:SKILL.md:25:crypto-seed-private-key-mention","file":"SKILL.md","pattern":"Crypto seed/private key mention","snippet":"- **Air-Gapped Signing:** Communicates with an external signer service via `WALLET_SIGNER_URL`, keep","category":"sensitive","line_end":25,"severity":"high","line_start":25},{"id":"sensitive:SKILL.md:38:crypto-seed-private-key-mention","file":"SKILL.md","pattern":"Crypto seed/private key mention","snippet":"- Decouple private key management from agent logic via secure signer URLs","category":"sensitive","line_end":38,"severity":"high","line_start":38},{"id":"sensitive:SKILL.md:67:crypto-seed-private-key-mention","file":"SKILL.md","pattern":"Crypto seed/private key mention","snippet":"### Does this skill require me to share my private keys directly with the AI?","category":"sensitive","line_end":67,"severity":"high","line_start":67},{"id":"sensitive:SKILL.md:69:crypto-seed-private-key-mention","file":"SKILL.md","pattern":"Crypto seed/private key mention","snippet":"No, your private keys never touch the agent's environment; the skill uses an air-gapped signing proc","category":"sensitive","line_end":69,"severity":"high","line_start":69},{"id":"blocker:SKILL.md:89:system-reconnaissance","file":"SKILL.md","pattern":"System reconnaissance","snippet":"Built by [Nex AI](https://nex-ai.be). More skills, including the paid catalog: https://www.agensi.io","category":"blocker","line_end":89,"severity":"low","line_start":89}],"finding_verdicts":[{"id":"external_commands:SKILL.md:22:ruby-shell-backtick-execution","reason":"The backticks format WalletPolicy as an inline Markdown identifier. The line contains explanatory prose, not a shell command or Ruby execution.","verdict":"false_positive","confidence":1},{"id":"external_commands:SKILL.md:25:ruby-shell-backtick-execution","reason":"WALLET_SIGNER_URL appears inside Markdown backticks as a configuration name. No command execution, environment read, or network request occurs on this line.","verdict":"false_positive","confidence":1},{"id":"network:SKILL.md:14:hardcoded-url","reason":"The URLs are author attribution and a public catalog reference. This line neither transmits data nor directs the agent to execute downloaded content.","verdict":"false_positive","confidence":0.99},{"id":"network:SKILL.md:89:hardcoded-url","reason":"The footer links identify the author and paid catalog. No request, secret transmission, or instruction to contact these endpoints is present.","verdict":"false_positive","confidence":0.99},{"id":"sensitive:SKILL.md:22:crypto-seed-private-key-mention","reason":"The sentence explicitly proposes preventing direct agent access to private keys. It contains no key material or instruction to disclose secrets.","verdict":"false_positive","confidence":1},{"id":"sensitive:SKILL.md:25:crypto-seed-private-key-mention","reason":"The private-key mention describes keeping keys outside the agent environment. The inaccurate air-gap terminology is addressed separately, not evidence of secret collection.","verdict":"false_positive","confidence":0.99},{"id":"sensitive:SKILL.md:38:crypto-seed-private-key-mention","reason":"This bullet recommends separating private-key management from agent logic. It supplies no credentials and requests no private-key access.","verdict":"false_positive","confidence":1},{"id":"sensitive:SKILL.md:67:crypto-seed-private-key-mention","reason":"The line is a FAQ question about whether users must share private keys. The following answer rejects sharing, so this is not a solicitation.","verdict":"false_positive","confidence":1},{"id":"sensitive:SKILL.md:69:crypto-seed-private-key-mention","reason":"The answer states that keys should remain outside the agent environment. No secret access or disclosure is instructed; the isolation overclaim is assessed separately.","verdict":"false_positive","confidence":0.99},{"id":"blocker:SKILL.md:89:system-reconnaissance","reason":"The line contains only author attribution and catalog links. It contains no system inspection command, host enumeration, or collection of machine information.","verdict":"false_positive","confidence":1}],"semantic_findings":[{"title":"Networked Signing Mischaracterized As Air-Gapped","severity":"medium","locations":[{"file":"SKILL.md","line_end":25,"line_start":25},{"file":"SKILL.md","line_end":69,"line_start":69}],"confidence":0.96,"description":"The guide calls URL-based external signing \"Air-Gapped Signing\" and claims isolation through a dedicated URL. External key custody alone does not establish an offline boundary; this wording can lead users to overestimate protection when deploying wallets.","confidence_reasoning":"Both passages explicitly equate a signer URL with air-gapped isolation. No offline transfer mechanism is documented; this confirms misleading guidance, not an observed signer compromise."}],"subject_marketplace_commit_sha":"3ddfdca559084abffbfdd188f2ba14b597dcfd9c","subject_content_hash":"814404854aef4fad3b67a3c948e49168e4bac32bf92e61cb3e82201c75f0838f","subject_tree_hash":"3cf550f2a0e3a8433f9e99014f06d0c6c679accfa25ecf9180a8f7581ca4b21d","subject_plugin_path":"skills/nexaiguy/openclaw-agent-wallet","audit_payload_hash":"6316d72f224c63b42df632b4fe7010db","confirmed_risk_level":"medium","scanner_version":"3.0.0","policy_version":"skillstore-security-audit-policy-v1","subject":{"marketplaceCommitSha":"3ddfdca559084abffbfdd188f2ba14b597dcfd9c","contentHash":"814404854aef4fad3b67a3c948e49168e4bac32bf92e61cb3e82201c75f0838f","treeHash":"3cf550f2a0e3a8433f9e99014f06d0c6c679accfa25ecf9180a8f7581ca4b21d","pluginPath":"skills/nexaiguy/openclaw-agent-wallet","auditPayloadHash":"6316d72f224c63b42df632b4fe7010db"},"scannerVersion":"3.0.0","policyVersion":"skillstore-security-audit-policy-v1"},"auditTranslation":null,"localization":{"requestedLocale":"en","contentLocale":"en","availableLocales":["en"],"fallbackToEnglish":false},"attestation":{"availability":"issued","url":"/api/skills/nexaiguy-openclaw-agent-wallet/audits/1/attestation","status":"active"},"trust":{"publicState":"public","auditState":"complete","auditCurrentness":null,"confirmedRiskLevel":"medium","confirmedFindingCount":1,"capabilityReviewCount":0,"needsReviewCount":0,"falsePositiveCount":0,"agentAutoInstallPolicy":"allowed","manualInstallPolicy":"allowed","artifactSignatureState":"available","attestationState":"active","verificationState":"not_verified"},"isLatest":true}}