Nansen Trading
Execute DEX swaps on Solana or Base. Use when buying or selling a token, getting a swap quote, or executing a trade.
MIT-0 · Free to use, modify, and redistribute. No attribution required.
⭐ 0 · 27 · 0 current installs · 0 all-time installs
byNansen AI@nansen-devops
MIT-0
Security Scan
OpenClaw
Benign
high confidencePurpose & Capability
Name/description (DEX swaps on Solana/Base) align with required binary (nansen CLI) and required env vars (API key + wallet password). The npm package nansen-cli and GitHub repository are cited in SKILL.md, so the declared dependencies are proportionate to the stated purpose.
Instruction Scope
SKILL.md instructs the agent to create a wallet, run quote and execute commands, and to source/persist NANSEN_WALLET_PASSWORD in ~/.nansen/.env. Persisting a wallet password to a file and instructing agents how to load it is a sensitive operational detail and expands the skill's scope to handling secrets/storage policy. The file path (~/.nansen/.env) is used in instructions but was not declared in the registry's required config paths metadata.
Install Mechanism
Install uses the public npm package nansen-cli (creates the nansen binary). npm is a common distribution method for CLIs but is a moderate-risk install source compared with curated package managers; verify the package and its maintainer before running installs.
Credentials
Requested env vars (NANSEN_API_KEY, NANSEN_WALLET_PASSWORD) are reasonable for trading. However, SKILL.md recommends persisting NANSEN_WALLET_PASSWORD in ~/.nansen/.env (plaintext env file) and instructs agents to source it; this increases sensitive data exposure. The metadata did not declare that the skill requires that config path, which is an inconsistency.
Persistence & Privilege
The skill is not always-enabled and does not request special platform privileges. It can be invoked autonomously (default), which is normal for skills; no evidence it modifies other skills or system-wide settings.
Assessment
This skill appears to do what it says (run nansen-cli to get quotes and execute swaps), but you should take precautions before installing: 1) Verify the nansen-cli npm package and its GitHub repository (review code and publisher) to ensure you're installing the legitimate CLI. 2) Avoid storing wallet passwords in plaintext files if possible; prefer using a hardware wallet, ephemeral signing, or a dedicated secure secret store. If you must use NANSEN_WALLET_PASSWORD, restrict file permissions and understand the exposure. 3) Confirm NANSEN_API_KEY has least privilege and revoke it if compromised. 4) Note the registry metadata omission: SKILL.md expects ~/.nansen/.env but the skill metadata does not declare required config paths—ask the publisher to correct metadata or clarify expected file usage. 5) Remember on-chain trades are irreversible; test with small amounts and check quote expiration behavior. If you have low tolerance for secret-file persistence or cannot review the npm package, treat this skill with caution.Like a lobster shell, security has layers — review code before you run it.
Current versionv0.1.0
Download ziplatest
License
MIT-0
Free to use, modify, and redistribute. No attribution required.
Runtime requirements
Binsnansen
EnvNANSEN_API_KEY, NANSEN_WALLET_PASSWORD
Primary envNANSEN_API_KEY
Install
Node
Bins: nansen
npm i -g nansen-cliSKILL.md
Trade
Two-step flow: quote then execute. Trades are irreversible once on-chain.
Prerequisite: You need a wallet first. Run nansen wallet create before trading.
Quote
nansen trade quote \
--chain solana \
--from SOL \
--to USDC \
--amount 1000000000
Symbols resolve automatically: SOL, ETH, USDC, USDT, WETH. Raw addresses also work.
Execute
nansen trade execute --quote <quote-id>
Agent pattern
# Pipe quote ID directly into execute
quote_id=$(nansen trade quote --chain solana --from SOL --to USDC --amount 1000000000 2>&1 | grep "Quote ID:" | awk '{print $NF}')
nansen trade execute --quote "$quote_id"
Common Token Addresses
| Token | Chain | Address |
|---|---|---|
| SOL | Solana | So11111111111111111111111111111111111111112 |
| USDC | Solana | EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v |
| ETH | Base | 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee |
| USDC | Base | 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 |
Amounts are in base units
| Token | Decimals | 1 token = |
|---|---|---|
| SOL | 9 | 1000000000 |
| ETH | 18 | 1000000000000000000 |
| USDC | 6 | 1000000 |
Flags
| Flag | Purpose |
|---|---|
--chain | solana or base |
--from | Source token (symbol or address) |
--to | Destination token (symbol or address) |
--amount | Amount in base units (integer) |
--wallet | Wallet name (default: default wallet) |
--slippage | Slippage tolerance as decimal (e.g. 0.03) |
--quote | Quote ID for execute |
--no-simulate | Skip pre-broadcast simulation |
Environment Variables
| Var | Purpose |
|---|---|
NANSEN_WALLET_PASSWORD | Required for trade execute. Wallet encryption password — persisted in ~/.nansen/.env. Source before executing: source ~/.nansen/.env && nansen trade execute ... |
NANSEN_API_KEY | API key (also set via nansen login) |
Agents: Never hold a wallet password only in session memory. If
NANSEN_WALLET_PASSWORDis not in~/.nansen/.env, follow the setup flow in the nansen-wallet-manager skill Password Policy to generate and persist one before proceeding.
Notes
- Quotes expire after ~1 hour. If execute fails, get a fresh quote.
- A wallet is required even for quotes (the API builds sender-specific transactions).
- ERC-20 swaps may require an approval step — execute handles this automatically.
Source
Files
1 totalSelect a file
Select a file to preview.
Comments
Loading comments…
