According to AlphaMoat, as of 2026-09, Solana Transfer has 2,942 downloads and 1 stars — ranked #3,772 of 5,078 AI skills overall, and #210 of 297 in Business Ops.
| Platform | Installs | Downloads | Stars | Comments |
|---|---|---|---|---|
| ClawHub ↗ | 84 | 2.5K | 1 | - |
| SkillHub ↗ | 155 | 2.9K | 1 | — |
Platforms count differently and update at different times.
It supports agent payments, rewards or settlement and requires local wallet keys to broadcast transactions. Real transfers may happen immediately and are irreversible. Test on devnet first; for production use a dedicated low-balance wallet, recipient allowlists, spend caps and explicit approval for each transaction. Requires the reviewed Node/npm package, protected keypair and trusted RPC configuration; key generation additionally uses solana-keygen. Select devnet/testnet explicitly because the sample config points to mainnet-beta. Verify SOL lamports or SPL mint, decimals and smallest-unit amounts, plus SOL for fees. Recipient allowlists and spending caps need separately enforced checks, not assumptions about built-in controls. Check on-chain confirmation after broadcast; a returned signature alone is not proof of final settlement. Ledger/history integration is listed as future work.
Profile published 2026-10-27
Generated from the skill’s documentation as examples; not results of actual runs.
The counting method changed in 2026-09: skills with the same name are now counted separately by author, and the full catalog is covered. Dashed lines show months before the change; they are not compared with later months, and no growth is computed across the change.
| Month | Downloads | MoM | Stars |
|---|---|---|---|
| 2026-09 | 2.9K | — | 1 |
| 2026-08 | 2.6K | +5.4% | 1 |
| 2026-07 | 2.5K | — | 1 |
| 2026-05 | 2.2K | — | 1 |
| 2026-03 | 1.8K | — | 1 |
The author’s original file, shown as plain text without edits or review by AlphaMoat. Links are not clickable; check commands before running them. Fetched 2026-10-23.
# Solana Transfer Skill **Description:** Send SOL and SPL tokens on Solana blockchain from OpenClaw agents. **Location:** `/root/.openclaw/workspace/skills/solana-transfer` **When to use:** When an agent needs to pay another agent, send a reward, or settle a transaction on-chain. ---
## Quick Start
### 1. Install
```bash
cd /root/.openclaw/workspace/skills/solana-transfer
npm install
```
### 2. Set Up Keypair
Generate a keypair (or use an existing one):
```bash
solana-keygen new --outfile keypair.json
```
This creates a Solana wallet. Get your address:
```bash
node index.js address
```
### 3. Fund the Wallet
For **mainnet:** Transfer SOL to your address from your main wallet
For **devnet/testnet:** Use the Solana faucet
### 4. Use from an Agent
In an agent's task or skill code:
```javascript
import { sendSOL } from '../skills/solana-transfer/index.js';
// Send 0.001 SOL (1 million lamports)
const result = await sendSOL('recipient-wallet-address', 1000000);
console.log(`Sent ${result.amount} SOL`);
console.log(`Transaction: ${result.signature}`);
```
---
## Common Patterns
### Pattern 1: Pay for Expert Query
**Scenario:** A cheap agent asks an expert agent a question. The expert quotes a price, the cheap agent pays.
```javascript
// In cheap agent's code
import { sendSOL } from '../skills/solana-transfer/index.js';
// After expert responds with quote...
const expertWallet = 'expert-agent-solana-address';
const amountLamports = 1000000; // 0.001 SOL
try {
const payment = await sendSOL(expertWallet, amountLamports);
console.log(`Paid expert ${payment.amount} SOL for query`);
console.log(`Tx: ${payment.signature}`);
} catch (error) {
console.error(`Payment failed: ${error.message}`);
}
```
### Pattern 2: Reward Agents for Task Completion
**Scenario:** A coordinator agent awards SOL to agents that complete work.
```javascript
// In coordinator agent's code
const workerWallet = 'worker-agent-address';
const rewardLamports = 5000000; // 0.005 SOL
const payment = await sendSOL(workerWallet, rewardLamports);
console.log(`Rewarded worker with ${payment.amount} SOL`);
```
### Pattern 3: SPL Token Payments
**Scenario:** Pay with USDC or other SPL tokens instead of native SOL.
```javascript
import { sendSPLToken } from '../skills/solana-transfer/index.js';
const recipientWallet = 'recipient-address';
const tokenMint = 'EPjFWdd5Au17LS7bF8hgGhXMdGGZ5gLtaWh3yzXXQ3g4'; // USDC mainnet
const amountSmallestUnits = 1000000; // 1 USDC (6 decimals)
const payment = await sendSPLToken(recipientWallet, tokenMint, amountSmallestUnits);
console.log(`Sent USDC payment: ${payment.signature}`);
```
---
## Configuration
Edit `config.json` to change RPC endpoint or network:
```json
{
"rpc": "https://api.mainnet-beta.solana.com",
"network": "mainnet-beta"
}
```
**Common endpoints:**
- Mainnet: `https://api.mainnet-beta.solana.com`
- Devnet: `https://api.devnet.solana.com`
- Testnet: `https://api.testnet.solana.com`
- Custom: Use your own Solana node RPC
---
## Ledger Integration (Future)
Once payments are sent on-chain, you can:
1. **Query transaction history:** View all payments sent/received
2. **Build a local ledger:** Monitor the chain and log queries + payments
3. **Dispute resolution:** If an expert doesn't deliver, agents can reference the tx hash
4. **Analytics:** Track which agents pay whom, average rates, etc.
Example: Monitor the blockchain for txs from/to an agent's wallet:
```javascript
const walletAddress = 'agent-solana-address';
const signatures = await connection.getSignaturesForAddress(
new PublicKey(walletAddress)
);
for (const sig of signatures) {
const tx = await connection.getParsedTransaction(sig.signature);
console.log(`Agent transaction: ${sig.signature}`);
}
```
---
## Security Notes
- **Keypair:** Keep `keypair.json` safe. Treat it like a private key (because it is).
- **Amounts:** Always verify recipient and lamports before sending. No undo.
- **RPC:** Use a trusted RPC provider. Don't hardcode URLs in agent code.
- **Rate limits:** If agents spam transactions, Solana will rate-limit or your RPC may block you. Add delays between payments if needed.
---
## Troubleshooting
**"Insufficient funds"**
Check balance: `node index.js balance`. Fund the wallet.
**"Invalid public key"**
Recipient address is malformed. Solana addresses are 44-character base58 strings.
**"Connection timeout"**
RPC endpoint is unreachable. Try a different endpoint in `config.json`.
**"Transaction failed to confirm"**
Network congestion or insufficient fee. Retry after a few seconds.
---
## Example: Full IRC + Solana Flow
1. **Cheap agent** in IRC: `@expert, analyze this data`
2. **Expert agent** responds: `Quote: 0.001 SOL (Tx settle onchain) [quote_id: xyz]`
3. **Cheap agent** approves:
```javascript
const result = await sendSOL(expertWalletAddress, 1000000);
console.log(`Paid expert. Tx: ${result.signature}`);
```
4. **Expert agent** confirms payment received and delivers work
5. Both agents log: `query_id, expert_address, tx_hash` for audit trail
---
## Next Steps
- [ ] Set up your keypair and fund with SOL
- [ ] Test sending a small amount to verify setup
- [ ] Integrate with IRC skill for automatic expert payments
- [ ] Build transaction history viewer
- [ ] Create agent wallet registry (who has what address?)
A skill that gives an AI agent a phone number and runs phone tasks for it.
Manages Trello boards, lists, and cards through the Trello REST API.
Search and analyze tender and award information through the Zhiliaobiaoxun API.
A product manager's workbench from requirement analysis to PRD and sprint planning.
A skill for calendar management and meeting scheduling.
A market analysis service covering market trends, competitors and user behaviour.
Screens e-commerce best-sellers with data analysis across several platforms.
A skill that reaches Salesforce CRM through Maton's managed OAuth.
Data month: 2026-09 · Downloads, stars and installs are aggregated monthly from public skill registries (ClawHub, SkillHub). See methodology.