Skip to main content
ClaudeWave
Skill112 estrellas del repoactualizado 1mo ago

glam

Solana vault management via GLAM Protocol. Triggers: glam, glam-cli, glam-sdk, vault create/manage, tokenized vault, share class, DeFi vault, treasury, asset management, access control, delegate permissions, Jupiter swap, Kamino lending/borrow/vaults/farms, staking (Marinade/native/SPL/Sanctum/LST), cross-chain USDC (CCTP), timelock, subscription/redemption, NAV pricing, token transfer. Supports CLI and TypeScript SDK.

Instalar en Claude Code
Copiar
git clone --depth 1 https://github.com/sendaifun/skills /tmp/glam && cp -r /tmp/glam/skills/glam ~/.claude/skills/glam
Después abre una sesión nueva de Claude Code; el skill carga automáticamente.

SKILL.md

# GLAM Protocol Skill

GLAM provides programmable investment infrastructure on Solana: vaults with access control, DeFi integrations, and tokenization.

## Quick Start

```bash
# Install CLI
npm install -g @glamsystems/glam-cli

# Configure (~/.config/glam/config.json)
cat > ~/.config/glam/config.json << 'EOF'
{
  "keypair_path": "~/.config/solana/id.json",
  "json_rpc_url": "https://api.mainnet-beta.solana.com"
}
EOF

# Create vault, set active, enable integrations, verify
glam-cli vault create ./vault-template.json
glam-cli vault set <VAULT_STATE_PUBKEY>
glam-cli integration enable JupiterSwap KaminoLend
glam-cli vault view
```

## Critical: Integration Enablement

**You MUST enable integrations BEFORE using them.** This is the most common error.

Available: `JupiterSwap`, `KaminoLend`, `KaminoVaults`, `KaminoFarms`, `SplToken`, `CCTP`, `GlamMint`, `Marinade` (staging), `StakePool` (staging), `SanctumSingle` (staging), `SanctumMulti` (staging), `StakeProgram` (staging).

Staging integrations require `--bypass-warning`.

---

## Workflows

### Tokenized Vault Setup

```bash
glam-cli vault create ./tokenized-vault-template.json
glam-cli vault set <VAULT_STATE_PUBKEY>
glam-cli integration enable JupiterSwap KaminoLend
glam-cli manage price                          # Set initial NAV price
glam-cli jupiter set-max-slippage 100          # Configure swap policy

# Optional: delegate trading permissions (protocol-scoped)
glam-cli delegate grant <TRADER_PUBKEY> SwapAny --protocol JupiterSwap

# Optional: set timelock (24 hours)
glam-cli timelock set 86400
```

### Kamino Lending

```bash
glam-cli integration enable KaminoLend
glam-cli kamino-lend init                      # Required once
glam-cli kamino-lend deposit \
  7u3HeHxYDLhnCoErrtycNokbQYbWGzLs6JSDqGAv5PfF \
  EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v \
  1000
```

---

## Decision Tree

| Goal                | Integration          | Command                                                                                     |
|---------------------| -------------------- | ------------------------------------------------------------------------------------------- |
| Swap tokens         | `JupiterSwap`        | `jupiter swap`                                                                              |
| Lend for yield      | `KaminoLend`         | `kamino-lend deposit`                                                                       |
| Stake SOL (liquid)  | `Marinade` (staging)                                      | `marinade --bypass-warning stake`                                                           |
| Stake SOL (LST)     | `StakePool` / `SanctumSingle` / `SanctumMulti` (staging) | `lst --bypass-warning stake <pool> <amount>`                                                |
| Stake SOL (native)  | `StakeProgram` (staging)                                  | `stake --bypass-warning list / deactivate / withdraw`                                       |
| Kamino vaults       | `KaminoVaults`       | `kamino-vaults deposit`                                                                     |
| Tokenized vault     | —                    | `vault create` → `manage price` → investors `invest subscribe`                              |
| Manage share tokens | —                    | SDK only: `client.mint.*` (freeze, issue, burn, forceTransfer)                              |
| Bridge USDC         | `CCTP`               | `cctp bridge-usdc <amount> <domain> <dest>` (0=ETH, 1=AVAX, 2=OP, 3=ARB, 6=BASE, 7=POLYGON) |
| Timelock            | —                    | `timelock set <seconds>`                                                                    |

---

## Common Errors

| Error                      | Solution                                               |
| -------------------------- | ------------------------------------------------------ |
| "Signer is not authorized" | Check `vault view` for owner; grant delegate if needed |
| "Integration not enabled"  | `integration enable <NAME>`                            |
| "Asset not in allowlist"   | `vault allowlist-asset <MINT>`                         |
| "User not initialized"     | `kamino-lend init`                                     |
| "No route found"           | Try smaller amount; check token liquidity              |
| "Slippage exceeded"        | Increase `--slippage-bps` or reduce amount             |
| "Account is frozen"        | SDK: `client.mint.setTokenAccountsStates()`            |
| "Missing jupiter_api_key"  | Add `jupiter_api_key` to config.json                   |

> See [troubleshooting](./docs/troubleshooting.md) for detailed solutions.

---

## Common Mints

| Token   | Address                                        |
| ------- | ---------------------------------------------- |
| SOL     | `So11111111111111111111111111111111111111112`  |
| USDC    | `EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v` |
| USDT    | `Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB` |
| mSOL    | `mSoLzYCxHdYgdzU16g5QSh3i5K3z3KZK7ytfqcJm7So`  |
| jitoSOL | `J1toso1uCk3RLmjorhTtrVwY9HJ7X8V9yYac6Y7kGCPn` |

---

## SDK Quick Start

```typescript
import {
  GlamClient,
  WSOL,
  USDC,
  getProgramAndBitflagByProtocolName,
} from "@glamsystems/glam-sdk";
import { BN } from "@coral-xyz/anchor";

const client = new GlamClient({ wallet });

// Create vault
const { vaultPda } = await client.vault.create({
  name: "My Vault",
  assets: [WSOL, USDC],
});

// Enable Jupiter integration
const perms = getProgramAndBitflagByProtocolName();
const [program, bitflag] = perms["JupiterSwap"];
await client.access.enableProtocols(vaultPda, program, parseInt(bitflag, 2));

// Swap
await client.jupiterSwap.swap(vaultPda, {
  inputMint: USDC,
  outputMint: WSOL,
  amount: new BN(100_000_000),
  slippageBps: 50,
});
```

For advanced proxy instruction remapping (convert standard Solana instructions into GLAM-proxied instructions), see the `ix-mapper` SDK reference.

---

## Reference

- **CLI**: [vault](.
arciumSkill

>

birdeyeSkill

Complete Birdeye API integration for real-time DeFi data across Solana and 15 other chains. Use for token prices, OHLCV charts, market discovery, on-chain trader intelligence, holder analysis, wallet portfolio & P&L, and WebSocket streams for live prices and whale alerts.

carbiumSkill

Build on Solana with Carbium infrastructure — bare-metal RPC, Standard WebSocket pubsub, gRPC Full Block streaming (~22ms), DEX aggregation via CQ1 engine (sub-ms quotes), gasless swaps, and MEV-protected execution via Jito bundling. Drop-in replacement for Helius, QuickNode, Triton, or Jupiter Swap API.

coingeckoSkill

Complete CoinGecko Solana API integration for token prices, DEX pool data, OHLCV charts, trades, and market analytics. Use for building trading bots, portfolio trackers, price feeds, and on-chain data applications.

ct-alphaSkill

>

debridgeSkill

Complete deBridge Protocol SDK for building cross-chain bridges, message passing, and token transfers on Solana. Use when building cross-chain applications, bridging assets between Solana and EVM chains, or implementing trustless external calls.

dflowSkill

Complete DFlow trading protocol SDK - the single source of truth for integrating DFlow on Solana. Covers spot trading, prediction markets, Swap API, Metadata API, WebSocket streaming, and all DFlow tools.

example-skillSkill

Template and guide for creating skills. Demonstrates the standard skill structure with resources, docs, examples, and templates directories. Use this as a reference when building new protocol integrations.