Solana Connect
v3.0.0OpenClaw Solana Connect — Secure toolkit for AI agents to interact with Solana blockchain. Features private key protection, max limits, dry-run mode, and hum...
⭐ 0· 753·0 current·0 all-time
MIT-0
Download zip
LicenseMIT-0 · Free to use, modify, and redistribute. No attribution required.
Security Scan
OpenClaw
Suspicious
medium confidencePurpose & Capability
Name/description (Solana interaction) align with included code and declared npm deps (@solana/web3.js, tweetnacl, bs58). Required env vars (RPC URL and limits) are relevant to the stated purpose.
Instruction Scope
SKILL.md and README instruct normal usage (generateWallet, sendSol) but contain ambiguous/mismatched examples. The test suite and some examples call sendSol with the wallet address where a private key is expected, indicating incorrect guidance. The docs advise using environment variables for private keys but do not declare any PRIVATE_KEY env var; the runtime code expects a privateKey parameter to be passed into sendSol/connectWallet. These inconsistencies could cause accidental exposure or misuse of private keys or runtime errors.
Install Mechanism
No risky download/install URLs. Dependencies are standard npm packages declared in package.json and package-lock.json (official packages like @solana/web3.js, tweetnacl, bs58). SKILL.md also lists the same npm installs. Package sources appear normal.
Credentials
Requested env vars (SOLANA_RPC_URL, MAX_SOL_PER_TX, MAX_TOKENS_PER_TX, HUMAN_CONFIRMATION_THRESHOLD) are appropriate and proportionate. However, documentation recommends storing private keys in env vars but the metadata does not declare any private-key env variable as required; the code expects private keys as function parameters. This mismatch is an operational gap that could lead integrators to store secrets insecurely or to supply keys incorrectly at runtime.
Persistence & Privilege
No always:true, no system-wide config writes, and no unusual persistence or privilege escalation. The skill is instruction-only with local JS files; it does not request elevated platform privileges.
What to consider before installing
This package appears to implement Solana tooling but has several coherence and correctness issues you should address before use:
- Key handling mismatch: generateWallet() returns only a public address, but sendSol() requires a base58 private key. The test suite incorrectly passes an address where a private key is expected — expect runtime failures if you follow tests verbatim.
- Secret management ambiguity: README/ SKILL.md recommend using environment variables for private keys but the skill metadata does not declare a private-key env var; the code expects private keys as parameters. Decide on a secure secret flow (platform secret store, not plaintext env vars) and update docs and metadata.
- Human confirmation & mainnet safety: the code enforces dry-run and thresholds, but warnings about mainnet are printed only; double-check enforcement logic before sending real funds (and never run on mainnet with real keys until audited).
- Minor correctness issues: simulation code tries to reference transaction.signature (which may be undefined), and keypair/seed handling (fromSeed slicing) is brittle and may not match common wallet secret formats. These are bugs that could cause failed or malformed transactions.
Recommendations:
1) Do not supply real private keys to this skill until the above are fixed and you understand how the key material is used.
2) Require the maintainer to fix the test/example usage and clarify how keys should be passed securely (prefer platform secret storage or explicit private-key env var declared in metadata).
3) Audit the signing and serialization logic (tweetnacl usage, signature attachment, simulation fields) before any mainnet use.
4) If you lack the ability to review/fix the code, treat this as untrusted and run only in isolated test environments (no real funds).Like a lobster shell, security has layers — review code before you run it.
latestvk97eck183bpjr7a5wx85af3jt1818hb5
License
MIT-0
Free to use, modify, and redistribute. No attribution required.
Runtime requirements
EnvSOLANA_RPC_URL, MAX_SOL_PER_TX, MAX_TOKENS_PER_TX, HUMAN_CONFIRMATION_THRESHOLD
