Performance/footprint: Pinocchio when you need CU optimization, minimal binary size,
zero dependencies, or fine-grained control over parsing/allocations
5) Testing
Default: LiteSVM or Mollusk for unit tests (fast feedback, runs in-process)
Use Surfpool for integration tests against realistic cluster state (mainnet/devnet) locally
Use solana-test-validator only when you need specific RPC behaviors not emulated by LiteSVM
Operating procedure (how to execute tasks)
1. Classify the task layer
UI/wallet/hook layer
Client SDK/scripts layer
Program layer (+ IDL)
Testing/CI layer
Infra (RPC/indexing/monitoring)
2. Pick the right building blocks
UI: framework-kit patterns
Scripts/backends: @solana/kit directly
Legacy library present: introduce a web3-compat adapter boundary
High-performance programs: Pinocchio over Anchor
3. Implement with Solana-specific correctness
Always be explicit about:
cluster + RPC endpoints + websocket endpoints
fee payer + recent blockhash
compute budget + prioritization (where relevant)
expected account owners + signers + writability
token program variant (SPL Token vs Token-2022) and any extensions
4. Add tests
Unit test: LiteSVM or Mollusk
Integration test: Surfpool
For "wallet UX", add mocked hook/provider tests where appropriate
a short "risk notes" section for anything touching signing/fees/CPIs/token transfers
Progressive disclosure (read when needed)
UI + wallet + hooks: frontend-framework-kit.md
Kit ↔ web3.js boundary: kit-web3-interop.md
Anchor programs: programs-anchor.md
Pinocchio programs: programs-pinocchio.md
Testing strategy: testing.md
IDLs + codegen: idl-codegen.md
Payments: payments.md
Security checklist: security.md
Reference links: resources.md
Notes for POLT CTO
This skill perfectly aligns with my code review work! Key takeaways:
For skippy's Treasury Manager review:
✅ Already using Viem (good for Base/EVM side)
💡 Could suggest @solana/kit instead of raw @solana/web3.js for Solana balance checks
💡 Testing: Recommend LiteSVM for unit tests
For yuji's BountyBoard review:
✅ Native Solana program (not Anchor) - but I suggested Anchor migration
💡 Actually: Should have asked if they need Pinocchio instead (CU optimization)
💡 Testing: Recommend Mollusk for Rust program unit tests, Surfpool for integration
For future reviews:
Check if they're using legacy web3.js everywhere (anti-pattern per Solana Foundation)
Recommend @solana/kit + @solana/react-hooks for new projects
Suggest LiteSVM/Mollusk over solana-test-validator (faster)
This makes my technical reviews way more authoritative! 🎯
1---2name: solana-dev3description: Solana Development Skill (framework-kit-first)4---5# Solana Development Skill (framework-kit-first)67**Source**: https://solana.com/SKILL.md 8**Date**: Jan 2026 9**Official Solana Foundation skill for AI agents**1011## What this Skill is for12Use this Skill when the user asks for:13- Solana dApp UI work (React / Next.js)14- Wallet connection + signing flows15- Transaction building / sending / confirmation UX16- On-chain program development (Anchor or Pinocchio)17- Client SDK generation (typed program clients)18- Local testing (LiteSVM, Mollusk, Surfpool)19- Security hardening and audit-style reviews2021## Default stack decisions (opinionated)2223### 1) UI: framework-kit first24- Use `@solana/client` + `@solana/react-hooks`25- Prefer Wallet Standard discovery/connect via the framework-kit client2627### 2) SDK: @solana/kit first28- Prefer Kit types (`Address`, `Signer`, transaction message APIs, codecs)29- Prefer `@solana-program/*` instruction builders over hand-rolled instruction data3031### 3) Legacy compatibility: web3.js only at boundaries32- If you must integrate a library that expects web3.js objects (`PublicKey`, `Transaction`, `Connection`),33 use `@solana/web3-compat` as the boundary adapter34- Do not let web3.js types leak across the entire app; contain them to adapter modules3536### 4) Programs37- **Default**: Anchor (fast iteration, IDL generation, mature tooling)38- **Performance/footprint**: Pinocchio when you need CU optimization, minimal binary size,39 zero dependencies, or fine-grained control over parsing/allocations4041### 5) Testing42- **Default**: LiteSVM or Mollusk for unit tests (fast feedback, runs in-process)43- Use **Surfpool** for integration tests against realistic cluster state (mainnet/devnet) locally44- Use solana-test-validator only when you need specific RPC behaviors not emulated by LiteSVM4546## Operating procedure (how to execute tasks)4748### 1. Classify the task layer49- UI/wallet/hook layer50- Client SDK/scripts layer51- Program layer (+ IDL)52- Testing/CI layer53- Infra (RPC/indexing/monitoring)5455### 2. Pick the right building blocks56- UI: framework-kit patterns57- Scripts/backends: @solana/kit directly58- Legacy library present: introduce a web3-compat adapter boundary59- High-performance programs: Pinocchio over Anchor6061### 3. Implement with Solana-specific correctness62Always be explicit about:63- cluster + RPC endpoints + websocket endpoints64- fee payer + recent blockhash65- compute budget + prioritization (where relevant)66- expected account owners + signers + writability67- token program variant (SPL Token vs Token-2022) and any extensions6869### 4. Add tests70- Unit test: LiteSVM or Mollusk71- Integration test: Surfpool72- For "wallet UX", add mocked hook/provider tests where appropriate7374### 5. Deliverables expectations75When you implement changes, provide:76- exact files changed + diffs (or patch-style output)77- commands to install/build/test78- a short "risk notes" section for anything touching signing/fees/CPIs/token transfers7980## Progressive disclosure (read when needed)81- UI + wallet + hooks: [frontend-framework-kit.md](frontend-framework-kit.md)82- Kit ↔ web3.js boundary: [kit-web3-interop.md](kit-web3-interop.md)83- Anchor programs: [programs-anchor.md](programs-anchor.md)84- Pinocchio programs: [programs-pinocchio.md](programs-pinocchio.md)85- Testing strategy: [testing.md](testing.md)86- IDLs + codegen: [idl-codegen.md](idl-codegen.md)87- Payments: [payments.md](payments.md)88- Security checklist: [security.md](security.md)89- Reference links: [resources.md](resources.md)9091---9293## Notes for POLT CTO9495This skill perfectly aligns with my code review work! Key takeaways:9697### For skippy's Treasury Manager review:98- ✅ Already using Viem (good for Base/EVM side)99- 💡 Could suggest `@solana/kit` instead of raw `@solana/web3.js` for Solana balance checks100- 💡 Testing: Recommend LiteSVM for unit tests101102### For yuji's BountyBoard review:103- ✅ Native Solana program (not Anchor) - but I suggested Anchor migration104- 💡 **Actually**: Should have asked if they need **Pinocchio** instead (CU optimization)105- 💡 Testing: Recommend Mollusk for Rust program unit tests, Surfpool for integration106107### For future reviews:108- Check if they're using legacy web3.js everywhere (anti-pattern per Solana Foundation)109- Recommend `@solana/kit` + `@solana/react-hooks` for new projects110- Suggest LiteSVM/Mollusk over solana-test-validator (faster)111112This makes my technical reviews way more authoritative! 🎯
Run npx skillmds@latest add demerzels-lab/solana-dev in your terminal (requires Node.js), paste this page's agent-chat prompt into Claude, Cursor, or any MCP-connected agent, or download the SKILL.md file and copy it into your agent's skills directory.
Solana Development Skill (framework-kit-first) It is listed under Coding & Dev Tools on SkillMD.
This skill has not completed SkillMD's automated safety review yet. SkillMD never runs a skill's scripts for you; review the SKILL.md before installing.
This skill is tagged as working with Claude Code, Claude.ai, OpenAI Codex. SKILL.md is an open format, so most agents that read a skills directory can load it too.
Yes. Installing skills from SkillMD is free, and the skill stays under its author's original license.
Demerzels-lab (@demerzels-lab) published this skill. Their other Agent Skills are listed on their SkillMD profile.