⚠
Purpose & Capability
The skill's name/description (Safe multisig operations) aligns with what the scripts do (create, propose, approve, execute Safe transactions). However the registry metadata claims 'Required env vars: none' and 'Primary credential: none', while multiple scripts clearly require sensitive env vars (SAFE_SIGNER_PRIVATE_KEY, SAFE_TX_SERVICE_API_KEY and/or RPC_URL). That metadata omission is an incoherence: a multisig CLI legitimately needs signing keys and RPC/API credentials, and those are present in the code but not declared in the registry.
ℹ
Instruction Scope
SKILL.md and scripts are explicit about needed operations: reading a tx JSON file, reading SAFE_SIGNER_PRIVATE_KEY and SAFE_TX_SERVICE_API_KEY, contacting the Safe Transaction Service and RPC endpoints, and writing JSON output. The scripts only reference workspace files or user-supplied tx files and call Safe SDK / HTTP APIs; they do not attempt to read unrelated system files or send data to unexpected endpoints. One minor issue: propose-tx contains a comment 'Restrict tx-file paths' but the implementation only uses path.resolve without enforcing an in-workspace restriction, so it could read any file the runner can access.
✓
Install Mechanism
No aggressive install script or remote archive downloads: bootstrap.sh runs 'npm install' using the included package.json/package-lock which lists typical dependencies (@safe-global packages, ethers, commander). This is standard for a TypeScript CLI and proportionate to the task, though installing npm packages always carries normal supply-chain risk and should be performed in a controlled environment.
⚠
Credentials
The code requires sensitive environment variables (SAFE_SIGNER_PRIVATE_KEY for signing; SAFE_TX_SERVICE_API_KEY may be needed for the official transaction service; RPC_URL or RPC defaults are used). Those are appropriate for the skill's functionality, but they are not declared in the registry metadata or requirement section — this mismatch can lead users to install/run the skill without understanding it needs private keys. The skill does warn in SKILL.md not to paste keys in chat and recommends low-privilege signers, which is good practice.
✓
Persistence & Privilege
The skill does not request permanent 'always' inclusion, does not modify other skill configs, and does not require system-wide privileges. It operates as a local CLI toolkit and relies on environment variables provided at runtime; there is no unusual persistence or privilege escalation request.