SkillAgentSearch skills...

Solana Stablecoin Standard

Solana Token2022 stablecoin standard. Presets with Anchor programs, transfer hook, RBAC, compliance (blacklist/freeze/seize), minter quotas, supply cap, and reserve attestation.

Install / Use

npx skills add solanabr/solana-stablecoin-standard

Installs into whichever agent you are using.

README

Solana Stablecoin Standard (SSS)

A complete, production-grade toolkit for deploying and managing stablecoins on Solana using Token-2022 extensions.

The project defines two compliance presets — SSS-1 (minimal) and SSS-2 (compliant with blacklist enforcement) — and provides everything needed to go from zero to a fully operational stablecoin: a CLI for operators, a TypeScript SDK for integrators, a REST backend for infrastructure, an on-chain Anchor program for transfer-hook compliance, and a React demo that ties it all together.

Live Demo & On-Chain References

  • Video Demo — Full walkthrough of the CLI, SDK, backend, and React demo

Programs deployed (devnet):

On-chain examples (devnet):

Repository Structure

solana-stablecoin-standard/
├── programs/sss-core/          Anchor program — stablecoin config, RBAC, quotas, seize
├── transfer_hooks/blacklist/   Anchor program — transfer-hook blacklist (SSS-2)
├── tests-litesvm/              LiteSVM Rust-native fuzz & integration tests
├── cli/                        Command-line interface for deploying & managing stablecoins
├── sdk/                        TypeScript SDK wrapping all on-chain operations
├── backend/                    REST API service (mint/burn lifecycle, webhooks, event listener)
├── demo/                       React + Phantom wallet demo app
└── docs/                       Full documentation

Standards

| Standard | What it provides | Token-2022 Extensions | |----------|-----------------|----------------------| | SSS-1 | Minimal stablecoin — mint/burn, freeze, on-mint metadata | Metadata Pointer | | SSS-2 | SSS-1 + compliance — blacklist enforcement via transfer hook, KYC-gated accounts | Metadata Pointer, Transfer Hook, DefaultAccountState::Frozen |

SSS-Core features: RBAC roles, per-minter quotas, supply cap, triple-layer pause (Token-2022 + SSS-Core + hook), metadata updates, compliance toggle, burn-from-any-account, and reserve attestation (proof-of-reserve for GENIUS Act compliance) — with a feature-gated module system (compliance, quotas, supply-cap) that lets issuers strip modules they don't need at compile time.

See docs/SSS-1.md and docs/SSS-2.md for the full specifications.

Quick Start

1. Deploy a stablecoin (CLI)

cd cli && npm install && npm run build

# Generate a starter config
npx solana-stable init --preset sss-1

# Edit sss-token.config.toml (set authorities, name, symbol)
# Then deploy
npx solana-stable init --custom sss-token.config.toml

# Mint tokens
npx solana-stable operate mint <recipient-wallet> 1000000
# or (flat, backward-compatible):
npx solana-stable mint <recipient-wallet> 1000000

The CLI organizes commands into groups: operate (mint/burn/transfer), admin (freeze/thaw/pause/set-authority), compliance (blacklist management), and inspect (status/supply/balance/audit-log). Flat commands still work for backward compatibility.

2. Integrate programmatically (SDK)

import { SolanaStablecoin, Presets } from "sss-token-sdk";

const stable = await SolanaStablecoin.create(connection, {
  preset: Presets.SSS_1,
  name: "My Dollar",
  symbol: "MUSD",
  decimals: 6,
  authority: adminKeypair,
});

await stable.mintTokens({ recipient: walletPubkey, amount: 1_000_000n, minter: adminKeypair });
const supply = await stable.getSupply();

3. Run the backend

cd backend && npm install
cp .env.example .env
# Edit .env with your mint address and keypair
npm run dev

4. Launch the demo

cd demo && npm install
npm run dev
# Open http://localhost:5173, connect Phantom, enter your mint address in Settings

Documentation

| Document | Contents | |----------|----------| | docs/SSS-SPEC.md | Formal specification — SSS-1, SSS-2, SSS-Core, SDK/CLI interface | | docs/README.md | Overview, quick start, preset comparison, architecture diagram | | docs/ARCHITECTURE.md | Layer model, data flows, security model | | docs/SDK.md | Presets, custom configs, TypeScript examples | | docs/OPERATIONS.md | Operator runbook (mint, freeze, blacklist, etc.) | | docs/SSS-1.md | Minimal stablecoin standard specification | | docs/SSS-2.md | Compliant stablecoin standard specification | | docs/COMPLIANCE.md | Regulatory considerations, audit trail format | | docs/API.md | Backend REST API reference |

Each component also has its own README:

Tech Stack

  • On-chain: Solana, Token-2022, Anchor Framework (Rust)
  • CLI: TypeScript, Commander, TOML config
  • SDK: TypeScript, @solana/web3.js, @solana/spl-token
  • Backend: Express, Pino, Docker
  • Demo: React, Vite, Tailwind CSS, Solana Wallet Adapter

Screenshots

The React demo provides a full management UI with Phantom wallet integration.

Settings

Configure the RPC endpoint, mint address, token program, and transfer hook program ID.

Settings

Dashboard

Live view of supply, decimals, your wallet balance, and on-chain authorities.

Dashboard

Mint & Burn

Mint tokens to any wallet or burn from your own — every action triggers a Phantom signature prompt.

Mint & Burn

Account Management

Freeze, thaw, check balances, and update authorities.

Accounts

Compliance (SSS-2)

Add or remove wallets from the on-chain blacklist and check status in real time.

Compliance

License

MIT

Related Skills

View on GitHub
GitHub Stars10
CategoryLegal
Updated18d ago
Forks78

Languages

TypeScript

Security Score

95/100

Audited on Jul 21, 2026

No findings