Reclaim SOL From Empty Solana Token Accounts Without Manually Signing Everything

Some Solana wallets collect many empty token accounts over time. Each one may still hold reclaimable SOL rent, but closing them manually can become repetitive when there are dozens or hundreds of accounts. reclaim-cli helps you preview reclaimable SOL, confirm the result, and locally sign reclaim batches from your own machine.

Many empty Solana token accounts ready to reclaim with reclaim-cli

Why This Exists

If you trade actively on Solana, your wallet can accumulate empty token accounts over time.

These accounts may no longer hold tokens, but they can still contain rent that can be reclaimed by closing the account. For a small number of accounts, this is easy enough to do manually. For active wallets, the process can quickly become repetitive.

20 empty token accounts

100 empty token accounts

500+ empty token accounts

1+ SOL locked across unused accounts

The problem is not just finding reclaimable SOL. The problem is executing the reclaim safely without manually signing a long sequence of transactions.

What reclaim-cli Does

reclaim-cli is a local command-line tool for users who want to reclaim SOL rent from many empty Solana token accounts.

  1. Preview what can be reclaimed.
  2. Execute the reclaim flow using local transaction signing.

The preview step shows what the wallet can reclaim before anything is executed.

The execution step signs prepared reclaim batches locally and submits them through the Reclaim service.

The private key stays on your machine. It should never be pasted into chat, uploaded to a website, or sent to support.

The Safe Flow

  1. Set up reclaim-cli.
  2. Add your private key locally to `.env`.
  3. Run wallet check.
  4. Review the reclaim preview.
  5. Confirm execution.
  6. Run reclaim.
  7. Review submitted transactions.

The wallet check always comes first.

Before execution, you should be able to see the wallet address, number of closable accounts, net SOL that can be received, current wallet balance, and projected balance after reclaim.

Only continue if the wallet address, reclaim amount, and projected balance look correct.

About the Reclaim Service Fee

The reclaim transaction may include the Reclaim service fee as part of the transaction being signed.

This is expected behavior.

The wallet-check preview shows the net amount you can receive after any service fee reflected by the Reclaim service. If the amount, wallet address, or projected balance looks wrong, stop and do not execute the reclaim.

Preview first. Confirm only if the result looks correct. Execute only after confirmation.

Why Local Signing Matters

You do not paste your private key into chat.

You do not upload your private key to a website.

You do not send your private key to the Reclaim service.

You do not share your private key with an agent.

The CLI uses the private key locally to sign prepared reclaim transactions from your machine. This is useful when a wallet has many reclaimable accounts and manually signing every transaction would be slow or repetitive.

Where Claude Code Fits In

We also provide a Claude Code skill for reclaim-cli.

The goal is not to let an AI agent freestyle with your wallet. The goal is to let the agent guide a controlled operator workflow.

Clone or use the existing repo.

Install dependencies.

Create `.env` only if needed.

Ask you to add your private key locally.

Never read or print `.env`.

Run `wallet:check` first.

Ask for exact confirmation before execution.

The CLI handles the transaction logic. Claude Code only helps guide setup, preview, confirmation, and execution.

Running reclaim-cli

git clone https://github.com/MarketWhaleApp/reclaim-cli.git
cd reclaim-cli
npm install
npm run build

Create `.env` from the example file if it does not already exist:

cp .env.example .env

Then open `.env` locally and add your wallet private key:

WALLET_PRIVATE_KEY=...

Do not paste your private key into chat or send it to anyone.

Run the wallet check first:

npm run wallet:check

If everything looks correct, run:

npm run reclaim

When to Use This

Your wallet has many empty Solana token accounts.

You have meaningful SOL rent available to reclaim.

You do not want to manually sign many close-account transactions.

You are comfortable running a local CLI tool.

You want your private key to stay on your own machine.

Important Safety Notes

Only use this workflow for closing empty token accounts and reclaiming rent.

Do not use modified versions of the tool to transfer tokens, move wallet balances, send arbitrary transactions, or sign unrelated transactions.

Is this the correct wallet?

Does the reclaim amount look right?

Does the projected balance look right?

Do I understand that the transaction may include a service fee?

Am I comfortable signing this locally?

If anything looks unexpected, stop.

The reclaim-cli repo is available on GitHub. Use the README as the source of truth for the latest setup and execution commands.