doginals

PendingStatic analysis audit pending.

Overview

No static analysis result has been recorded yet. Pattern checks will appear here once the artifact has been analyzed.

Findings (0)

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.

What this means

Installing the skill can make privileged system changes and trust remote code outside the reviewed package.

Why it was flagged

The install script runs a remote setup script with root privileges and installs downloaded binaries system-wide, while the registry presents the skill as having no install spec.

Skill content
curl -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash - ... sudo cp dogecoin-1.14.6/bin/* /usr/local/bin/
Recommendation

Do not run install.sh blindly; inspect it first, verify Dogecoin Core downloads and checksums, and prefer a sandboxed or dedicated machine.

ConcernHigh Confidence
ASI05: Unexpected Code Execution
What this means

A crafted address, directory, or filename could cause commands other than minting to run on the user's computer.

Why it was flagged

The script builds a shell command from interactive inputs and file paths, then executes it with shell=True, which can allow command injection if those values contain shell metacharacters.

Skill content
mint_command = f"node . mint {doge_address} {image_path}"
result_mint = subprocess.run(mint_command, shell=True, capture_output=True, text=True)
Recommendation

Run this only with trusted paths and values; the maintainer should replace shell=True string execution with an argument list such as subprocess.run(['node', '.', 'mint', doge_address, image_path]).

What this means

If the agent or script runs the wrong command, it can spend wallet funds, mint tokens, split UTXOs, or send funds on-chain.

Why it was flagged

The code reads a local wallet file and uses its private key to sign Dogecoin transactions, which is high-impact financial authority.

Skill content
const WALLET_PATH = process.env.WALLET || '.wallet.json' ... let wallet = JSON.parse(fs.readFileSync(WALLET_PATH)) ... tx.sign(wallet.privkey)
Recommendation

Use only a dedicated low-value inscription wallet, keep private keys backed up and protected, and require explicit user approval before any mint/send/split command.

What this means

A later harmless-looking command could broadcast old or unexpected blockchain transactions without a fresh confirmation step.

Why it was flagged

Before processing the requested command, the program automatically rebroadcasts serialized pending transactions if a local pending-txs.json file exists.

Skill content
if (fs.existsSync('pending-txs.json')) { ... await broadcastAll(txs.map(tx => new Transaction(tx)), false) ... return }
Recommendation

Check for and review pending-txs.json before running the tool, and the maintainer should require explicit confirmation before rebroadcasting.

NoteHigh Confidence
ASI08: Cascading Failures
What this means

A wrong count, address, or token name can create many unwanted transactions and fees.

Why it was flagged

The bulk mint script intentionally repeats on-chain mint operations in a loop, which is aligned with the skill purpose but can multiply fees and irreversible actions.

Skill content
while [ $count -lt $max_count ]; do ... node . drc-20 mint "$target_address" "$token_name" 1000 12 ... sleep 200 ... done
Recommendation

Test with a very small count and balance first, and verify all destination addresses and token parameters before bulk minting.