T09 · Insecure Skill Coding Practices
- Location
scripts/wallet.js:109- Finding
Wallet Mnemonic Exposed Through Agent-Visible Standard Output
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This wallet skill is mostly coherent with its purpose, but it handles crypto seed phrases and can send or bridge funds with too little containment for routine installation.
Install only for disposable or low-value test wallets unless the seed handling, Solana derivation, transaction confirmation, test scripts, and allowance behavior are fixed. Do not reuse an existing funded mnemonic, do not run the bundled test bridge scripts with a real seed, and review every transfer or bridge before allowing an agent to execute it.
scripts/wallet.js:109Wallet Mnemonic Exposed Through Agent-Visible Standard Output
scripts/wallet.js:510Raw Private Keys Delegated to Third-Party Bridge Adapters
test-bridge.js:18Executable Test Script Discloses Partial Private-Key Material and Automatically Bridges Funds
scripts/bridge-async.js:255Bridge Grants Token Allowance Beyond the Required Amount
scripts/wallet.js:73Solana Key Derivation Does Not Implement the Documented BIP-44 Path
The documentation instructs users to create a local .env file for wallet secrets, which is a sensitive credential storage pattern. While common in development, using plaintext environment files for seed phrases in a wallet-management skill raises the risk of accidental disclosure through source control, backups, malware, shell history, or agent/logging exposure.
git clone https://github.com/voltagemonke/Agent-wallet.git cd Agent-wallet npm install cp .env.example .env
The explicit instruction to edit .env with a seed phrase normalizes storing a highly privileged wallet secret in plaintext configuration. In this skill context, compromise of that file means complete takeover of all supported chain accounts derived from the mnemonic and potential immediate theft of assets.
cd Agent-wallet npm install cp .env.example .env
---
The finding shows the skill actually performs bridge estimation/testing with hidden wallet secret access and lacks the advertised support for wallet creation, balances, transfers, and Solana. In a wallet skill, such discrepancies undermine informed consent and can mislead automated routing systems into invoking a transaction-capable component under incomplete or false assumptions.
The finding shows the skill actually performs bridge estimation/testing with hidden wallet secret access and lacks the advertised support for wallet creation, balances, transfers, and Solana. In a wallet skill, such discrepancies undermine informed consent and can mislead automated routing systems into invoking a transaction-capable component under incomplete or false assumptions.
The finding shows the skill actually performs bridge estimation/testing with hidden wallet secret access and lacks the advertised support for wallet creation, balances, transfers, and Solana. In a wallet skill, such discrepancies undermine informed consent and can mislead automated routing systems into invoking a transaction-capable component under incomplete or false assumptions.
The finding shows the skill actually performs bridge estimation/testing with hidden wallet secret access and lacks the advertised support for wallet creation, balances, transfers, and Solana. In a wallet skill, such discrepancies undermine informed consent and can mislead automated routing systems into invoking a transaction-capable component under incomplete or false assumptions.
The finding shows the skill actually performs bridge estimation/testing with hidden wallet secret access and lacks the advertised support for wallet creation, balances, transfers, and Solana. In a wallet skill, such discrepancies undermine informed consent and can mislead automated routing systems into invoking a transaction-capable component under incomplete or false assumptions.
The finding shows the skill actually performs bridge estimation/testing with hidden wallet secret access and lacks the advertised support for wallet creation, balances, transfers, and Solana. In a wallet skill, such discrepancies undermine informed consent and can mislead automated routing systems into invoking a transaction-capable component under incomplete or false assumptions.
Referenced artifact was not completely inspected
Run: `node scripts/wallet.js create`
Referenced artifact was not completely inspected
Run: `node scripts/wallet.js create`
Referenced artifact was not completely inspected
Run: `node scripts/wallet.js create`
Referenced artifact was not completely inspected
Run: `node scripts/wallet.js create`
Referenced artifact was not completely inspected
Run: `node scripts/wallet.js create`
Referenced artifact was not completely inspected
Run: `node scripts/wallet.js create`
Referenced artifact was not completely inspected
Run: `node scripts/wallet.js create`
Referenced artifact was not completely inspected
Run: `node scripts/wallet.js create`
Referenced artifact was not completely inspected
Run: `node scripts/wallet.js create`
Referenced artifact was not completely inspected
Run: `node scripts/wallet.js create`
Referenced artifact was not completely inspected
Run: `node scripts/wallet.js create`
Referenced artifact was not completely inspected
Run: `node scripts/wallet.js create`
Referenced artifact was not completely inspected
Run: `node scripts/wallet.js create`
Referenced artifact was not completely inspected
Run: `node scripts/wallet.js create`
Referenced artifact was not completely inspected
Run: `node scripts/wallet.js create`
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
- **One seed per agent** - Each agent instance isolated
- **Seed shown once** - Only at creation, never logged
- **Memory only** - Private keys derived on-demand, never persisted
- **No chat import** - Seeds added via .env only (except generation)
## Error Handling
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
- **One seed per agent** - Each agent instance isolated
- **Seed shown once** - Only at creation, never logged
- **Memory only** - Private keys derived on-demand, never persisted
- **No chat import** - Seeds added via .env only (except generation)
## Error Handling
Detected: suspicious.env_credential_access, suspicious.exposed_secret_literal