Back to skills
SKILL.md
Stable Layer Sdk
ASecurityA TypeScript SDK for interacting with the Stable Layer protocol on the Sui blockchain. It supports minting and burning stablecoins, and claiming yield farming rewards.
- 2 stars
- 0 votes
- 0 copies
- 0 views
- Added November 11, 2026
Works with
Security analysis
96/100- Installs packages at runtime which could introduce malicious dependencies
Pro scans all 3 files and shows the line behind each finding
npx -y skills add johnalbertini14-glitch/openclaw-skills --skill stable-layer-sdk --agent claude-codeAre you the author of Stable Layer Sdk?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/johnalbertini14-glitch-stable-layer-sdk)# Stable Layer SDK
A TypeScript SDK for interacting with the Stable Layer protocol on the Sui blockchain. It supports minting and burning stablecoins, and claiming yield farming rewards.
## Installation
```bash
npm install stable-layer-sdk @mysten/sui @mysten/bcs
```
## API Reference
### StableLayerClient
```typescript
import { StableLayerClient } from "stable-layer-sdk";
const client = new StableLayerClient({
network: "mainnet" | "testnet",
sender: "0xYOUR_SUI_ADDRESS",
});
```
### Transaction Methods
#### `buildMintTx(options)`
Mint stablecoins by depositing USDC. Automatically deposits into vault farm.
| Parameter | Type | Description |
| --------------- | ------------- | ------------------------------------------------ |
| `tx` | `Transaction` | Sui transaction object |
| `stableCoinType`| `string` | Target stablecoin type (e.g. `0x...::btc_usdc::BtcUSDC`) |
| `usdcCoin` | `Coin` | Input USDC coin reference |
| `amount` | `bigint` | Amount to mint |
| `autoTransfer` | `boolean?` | If `false`, returns the resulting Coin object |
#### `buildBurnTx(options)`
Burn stablecoins to redeem USDC.
| Parameter | Type | Description |
| --------------- | ------------- | ------------------------------------ |
| `tx` | `Transaction` | Sui transaction object |
| `stableCoinType`| `string` | Stablecoin type to burn |
| `amount` | `bigint?` | Specific amount to burn |
| `all` | `boolean?` | If `true`, burn entire balance |
#### `buildClaimTx(options)`
Claim accumulated yield farming rewards.
| Parameter | Type | Description |
| --------------- | ------------- | ------------------------------------ |
| `tx` | `Transaction` | Sui transaction object |
| `stableCoinType`| `string` | Stablecoin type to claim rewards for |
### Query Methods
#### `getTotalSupply()`
Returns the total stablecoin supply across all coin types.
#### `getTotalSupplyByCoinType(type: string)`
Returns the supply for a specific stablecoin type.
## Usage Examples
### Mint Stablecoins
```typescript
import { Transaction, coinWithBalance } from "@mysten/sui/transactions";
import { SuiClient, getFullnodeUrl } from "@mysten/sui/client";
import { Ed25519Keypair } from "@mysten/sui/keypairs/ed25519";
import { StableLayerClient } from "stable-layer-sdk";
const client = new StableLayerClient({
network: "mainnet",
sender: "0xYOUR_ADDRESS",
});
const suiClient = new SuiClient({ url: getFullnodeUrl("mainnet") });
const keypair = Ed25519Keypair.fromSecretKey(YOUR_PRIVATE_KEY);
const tx = new Transaction();
await client.buildMintTx({
tx,
stableCoinType: "0x6d9fc...::btc_usdc::BtcUSDC",
usdcCoin: coinWithBalance({
balance: BigInt(1_000_000),
type: "0xdba34...::usdc::USDC",
})(tx),
amount: BigInt(1_000_000),
});
const result = await suiClient.signAndExecuteTransaction({
transaction: tx,
signer: keypair,
});
```
### Burn Stablecoins
```typescript
const tx = new Transaction();
await client.buildBurnTx({
tx,
stableCoinType: "0x6d9fc...::btc_usdc::BtcUSDC",
amount: BigInt(500_000),
});
await suiClient.signAndExecuteTransaction({ transaction: tx, signer: keypair });
```
### Claim Rewards
```typescript
const tx = new Transaction();
await client.buildClaimTx({
tx,
stableCoinType: "0x6d9fc...::btc_usdc::BtcUSDC",
});
await suiClient.signAndExecuteTransaction({ transaction: tx, signer: keypair });
```
### Query Supply
```typescript
const totalSupply = await client.getTotalSupply();
const btcUsdcSupply = await client.getTotalSupplyByCoinType("0x6d9fc...::btc_usdc::BtcUSDC");
```
Files in this skill
- README.md
- SKILL.md
- _meta.json
Attribution
Related skills
View all in databases →Comments
Loading comments…
Newsletter
Get the weekly list of safe new skills, and the ones we pulled.