# Solana Kit

> Solana Kit (JavaScript SDK) — RPC, signers, transactions, accounts, codecs, instruction plans, and program clients for agent-driven Solana tooling.

- Skill: `hairyf/solana-kit` (Agent Skill, multi-file: 31 files)
- Install (CLI): `npx skillmds@latest add hairyf/solana-kit`
- Raw SKILL.md: https://api.skillmd.com/api/skills/hairyf/solana-kit/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: hairyf (https://skillmd.com/u/hairyf)
- Updated: 2026-09-10
- Page: https://skillmd.com/skills/hairyf/solana-kit

---


> Skill based on Kit (anza-xyz/kit), generated 2026-02-25.

Concise reference for building Solana apps with Kit: functional API, tree-shakeable imports, RPC + RPC Subscriptions, signers, transaction messages, account fetch/decode, codecs, and program clients.

## Core References

| Topic | Description | Reference |
|-------|-------------|-----------|
| Setup | Install, RPC/RPC Subscriptions, typed client | [core-setup](references/core-setup.md) |
| RPC | HTTP client — getBalance, getAccountInfo, getLatestBlockhash, send | [core-rpc](references/core-rpc.md) |
| RPC Subscriptions | WebSocket — accountNotifications, slotNotifications | [core-rpc-subscriptions](references/core-rpc-subscriptions.md) |
| Functional | pipe(), pipeline transforms | [core-functional](references/core-functional.md) |
| Signers | KeyPairSigner, airdrop, wallet swap, no-op | [core-signers](references/core-signers.md) |
| Transactions | pipe, fee payer, lifetime, instructions, sign, send-and-confirm | [core-transactions](references/core-transactions.md) |
| Transaction confirmation | Block height exceedence, recent signature, nonce invalidation, timeout | [core-transaction-confirmation](references/core-transaction-confirmation.md) |
| Accounts | fetchEncodedAccount, program fetch/decode (fetchMint, decodeMint) | [core-accounts](references/core-accounts.md) |
| Address lookup tables | fetchLookupTables, compress message, decompile with lookups | [core-address-lookup-tables](references/core-address-lookup-tables.md) |
| Addresses | Address type, validation, PDA derivation, codecs | [core-addresses](references/core-addresses.md) |
| Sysvars | Fetch/decode Clock, Rent, EpochSchedule, etc. | [core-sysvars](references/core-sysvars.md) |

## Features

| Topic | Description | Reference |
|-------|-------------|-----------|
| Instructions | Program clients — System, Token, Compute Budget | [features-instructions](references/features-instructions.md) |
| Instruction plans | Sequential/parallel plans, planner, executor | [features-instruction-plans](references/features-instruction-plans.md) |
| Codecs | Encode/decode structs, program getXCodec | [features-codecs](references/features-codecs.md) |
| Compatible program clients | @solana-program/*, Codama-generated clients | [features-compatible-clients](references/features-compatible-clients.md) |
| Compat (Web3.js) | fromLegacyPublicKey, fromLegacyKeypair, fromVersionedTransaction | [features-compat](references/features-compat.md) |
| Errors | SolanaError, isSolanaError, context | [features-errors](references/features-errors.md) |
| GraphQL | createSolanaRpcGraphQL, nested queries, caching/batching | [features-graphql](references/features-graphql.md) |
| Key pairs | generateKeyPair, import bytes, polyfill | [features-keypairs](references/features-keypairs.md) |
| Offchain messages | Build, sign, verify, encode/decode (sRFC 3) | [features-offchain-messages](references/features-offchain-messages.md) |
| Program errors | isProgramError — attribute tx failure to program/code | [features-program-errors](references/features-program-errors.md) |
| React | useSignIn, useWalletAccountTransactionSigner, useSignAndSendTransaction | [features-react](references/features-react.md) |
| RPC transports | Custom transport — failover, retry, round-robin, sharding | [features-rpc-transports](references/features-rpc-transports.md) |
| RPC API augmentation | mainnet/devnet, cherry-pick methods, custom RPC methods | [features-rpc-api-augmentation](references/features-rpc-api-augmentation.md) |
| Create Solana program | pnpm create solana-program, Codama-generated JS client | [features-create-solana-program](references/features-create-solana-program.md) |
| Unstable subscriptions | createSolanaRpcSubscriptions_UNSTABLE, block/slotsUpdates | [features-unstable-subscriptions](references/features-unstable-subscriptions.md) |

## Best practices

| Topic | Description | Reference |
|-------|-------------|-----------|
| Abort RPC/subscriptions | AbortController, timeout, cancel on navigation | [best-practices-abort-rpc](references/best-practices-abort-rpc.md) |
| Tree-shaking | Narrow imports, sub-packages, smaller bundles | [best-practices-tree-shaking](references/best-practices-tree-shaking.md) |
| Upgrade from Web3.js | Connection → RPC, PublicKey → address, compatible clients | [best-practices-upgrade](references/best-practices-upgrade.md) |

