light-sdk

SKILL.md

Rent-Free Solana Programs

The Light SDK pays rent-exemption for PDAs, token accounts, and mints. Program logic stays mostly untouched.

Rent cost (per account) Solana / SPL Light SDK
Token account ~2,000,000 lamports ~11,000 lamports
Avg. DeFi pool ~$2 ~$0.02

Workflow

  1. Clarify intent
    • Recommend plan mode, if it's not activated
    • Use AskUserQuestion to resolve blind spots
    • All questions must be resolved before execution
  2. Identify references and skills
  3. Write plan file (YAML task format)
    • Use AskUserQuestion for anything unclear — never guess or assume
    • Identify blockers: permissions, dependencies, unknowns
    • Plan must be complete before execution begins
  4. Execute
    • Use Task tool with subagents for parallel research
    • Subagents load skills via Skill tool
    • Track progress with TodoWrite
  5. When stuck: spawn subagent with Read, Glob, Grep, DeepWiki MCP access and load skills/ask-mcp

Domain References

Audience Reference
Anchor pattern references/anchor.md
Pinocchio pattern references/pinocchio.md
Client SDK (LightProgramInterface) references/client-sdk.md
Testing references/testing.md
CPI instructions references/instructions.md
SPL to Light comparison references/spl-to-light.md
FAQ references/faq.md
Router integration references/router.md

When to use which

Criteria Anchor Pinocchio
Framework anchor-lang 0.31, #[light_program] macro pinocchio 0.9, LightProgramPinocchio derive
State struct Option<CompressionInfo> + LightAccount derive CompressionInfo (non-optional) + bytemuck::Pod + Zeroable + #[repr(C)]
Account creation #[light_account(init, ...)] attribute or CreateTokenAccountCpi CreateTokenAccountCpi, CreateMints batch pattern
Compress/decompress handlers Auto-generated by #[light_program] macro Route ProgramAccounts::COMPRESS_ACCOUNTS_IDEMPOTENT etc. in entrypoint
Program ID constant Not needed (macro derives it) pub const ID: Pubkey = pubkey_array!(...) + LIGHT_CPI_SIGNER required
Dependencies light-sdk, light-sdk-macros, light-token, light-anchor-spl light-account-pinocchio, light-token-pinocchio, bytemuck

DeFi integration

For DeFi programs (AMMs, lending, vaults): the Anchor and Pinocchio patterns above apply directly. DeFi-specific references:

Task Reference
Router/aggregator integration (cold account loading) references/router.md
LightProgramInterface trait (client SDK for routers) references/client-sdk.md

Hot vs Cold Model

After extended inactivity (multiple epochs without writes), accounts auto-compress to cold state. Programs only interact with hot accounts. Clients load cold accounts back on-chain via create_load_instructions.

Hot (active) Cold (inactive)
Storage On-chain Compressed
Latency Normal +0-200ms
Tx size Normal +100-2400 bytes
CU Normal +15k-400k CU
Program code No change No change

The hot path has zero overhead.

External References

Resource Link
Anchor AMM reference cp-swap-reference
Pinocchio swap reference pinocchio-swap
Anchor counter (rent-free PDA) basic-macros/counter
Pinocchio counter (zero-copy PDA) pinocchio/counter

SDK references

Package Link
light-sdk docs.rs
light-sdk-macros docs.rs
light-sdk-pinocchio docs.rs
light-token docs.rs
light-token-pinocchio docs.rs
light-account-pinocchio docs.rs
light-token-client docs.rs
light-client docs.rs
light-program-test docs.rs

Security

This skill does not pull, store, or transmit external secrets. It provides code patterns, documentation references, and development guidance only.

  • No credentials consumed. The skill requires no API keys, private keys, or signing secrets. env: [] is declared explicitly.
  • User-provided configuration. RPC endpoints, wallet keypairs, and authentication tokens (Privy, wallet adapters) are configured in the user's own application code — the skill only demonstrates how to use them.
  • Install source. npx skills add Lightprotocol/skills installs from the public GitHub repository (Lightprotocol/skills). Verify the source before running.
  • Subagent scope. This skill may spawn read-only subagents that use Read, Glob, and Grep to search the local repository. Restrict the working directory to your project.
  • Audited protocol. Light Protocol smart contracts are independently audited. Reports are published at github.com/Lightprotocol/light-protocol/tree/main/audits.
Weekly Installs
10
GitHub Stars
2
First Seen
Feb 23, 2026
Installed on
opencode10
gemini-cli10
claude-code10
github-copilot10
amp10
codex10