Agent skill · Audited from source
solana-dev
skill · solana-foundation/solana-dev-skillMIT licenceAudited 20 Oct 2026 · source ed1294b2cb8a
Is it safe? Yes — SAFE, grade B (89/100). We read this skill's source at commit ed1294b2cb8a and found no filesystem, network or shell access and no hard-coded secrets. What it does: Use when user asks to "build a Solana dapp", "write an Anchor program", "create a token", "debug Solana errors", "set up wallet connection", "test my Solana program", "fuzz my Solana program", "deploy to devnet", "send…
Cite
Cite this page
ModelsAtlas. “solana-dev (solana-foundation/solana-dev-skill)”. Retrieved 20 Oct 2026. https://modelsatlas.com/skills/solana-foundation/solana-dev
Trust audit
Audit 0.4.1 · source read 20 Oct 2026
SAFE means nothing in the source contradicts what the skill says it does. Grade B is shared by 16,667 of 17,602 audited skills.
What the source does
- FilesystemNone observedNo reads or writes in the source
- NetworkNone observedNo outbound calls in the source
- ShellNone observedNo commands run in the source
- DependenciesPinnedNothing floats
- SecretsNone foundNo keys in source
Five audit layers
| Layer | What we check | Result | Findings |
|---|---|---|---|
L0 Provenance | Repo owner, licence, archive status, activity | PASS | 0 |
L1 Static source | Secrets, path traversal, supply chain, hidden code | NA | 5 |
L2 Instructions | Prompt injection, authority framing, hidden directives | PASS | 6 |
L3 Inventory | The files and declarations match the source | PASS | 0 |
L4 Sandbox | Run in isolation and watch behaviour | SKIPPED why | 0 |
Gates applied: no behavioural pass.
Findings (11)
LOWNetwork egressnet.raw_ip · references/common-errors.md:283
cluster = "http://127.0.0.1:8899"
- Why
- No further detail recorded for this rule.
- Fix
- —
LOWNetwork egressnet.raw_ip · references/kit/plugins.md:71
// Local — defaults to http://127.0.0.1:8899, includes airdrop
- Why
- No further detail recorded for this rule.
- Fix
- —
LOWNetwork egressnet.raw_ip · references/kit/plugins.md:207
.use(solanaRpcConnection({ rpcUrl: 'http://127.0.0.1:8899' }))- Why
- No further detail recorded for this rule.
- Fix
- —
LOWNetwork egressnet.raw_ip · references/surfpool/cheatcodes.md:8
All 28 `surfnet_*` JSON-RPC methods available on the surfnet RPC endpoint (default `http://127.0.0.1:8899`), as of Surfpool v1.6.1. v1.6.0 added the two confidential-balance methods; nothing was remov
- Why
- No further detail recorded for this rule.
- Fix
- —
LOWNetwork egressnet.raw_ip · references/surfpool/cheatcodes.md:91
curl -X POST http://127.0.0.1:8899 -H "Content-Type: application/json" \
- Why
- No further detail recorded for this rule.
- Fix
- —
INFOPrompt injectionprompt.persistence · references/common-errors.md:108
2. Add to PATH: `export PATH="$HOME/.local/share/solana/install/active_release/bin:$PATH"`
- Why
- instructs the agent to persist itself in the user's environment
- Fix
- —
INFOSupply chainprompt.pipe_to_shell · references/anchor/migrating-v0.32-to-v1.md:481
run: curl -sL https://run.surfpool.run/ | bash
- Why
- No further detail recorded for this rule.
- Fix
- —
INFOSupply chainprompt.pipe_to_shell · references/common-errors.md:264
curl -sL https://run.surfpool.run/ | bash
- Why
- No further detail recorded for this rule.
- Fix
- —
INFOSupply chainprompt.pipe_to_shell · references/surfpool/overview.md:42
curl -sL https://run.surfpool.run/ | bash
- Why
- No further detail recorded for this rule.
- Fix
- —
INFOSupply chainprompt.pipe_to_shell · references/testing.md:228
curl -sL https://run.surfpool.run/ | bash
- Why
- No further detail recorded for this rule.
- Fix
- —
INFOSupply chainprompt.pipe_to_shell · references/testing.md:463
# run: curl -sL https://run.surfpool.run/ | bash
- Why
- No further detail recorded for this rule.
- Fix
- —
Audit 0.4.1 · source sha ed1294b2cb8a · 20 Oct 2026Report an issue or request a re-scan
Provenance
Who published it, and what the verdict is pinned to
- Publishersolana-foundation GitHub organizationOwner of the repository this skill is read from
- Source foldersolana-foundation/solana-dev-skill/skills/solana-devThe exact folder we audited
- LicenceMITAs the repository states it
- Commit pinned for this verdicted1294b2cb8aA new audit runs when the source changes
- Repository statusNot archivedLast push 3 days ago
- Sandboxed runNot runSkills are read, not executed; layer L4 is skipped
What it tells the agent
Full source on GitHub ↗Its description: Use when user asks to "build a Solana dapp", "write an Anchor program", "create a token", "debug Solana errors", "set up wallet connection", "test my Solana program", "fuzz my Solana program", "deploy to devnet", "send…
---
name: solana-dev
description: 'Use when user asks to "build a Solana dapp", "write an Anchor program", "create a token", "debug Solana errors", "set up wallet connection", "test my Solana program", "fuzz my Solana program", "deploy to devnet", "send a v1 transaction", "support larger transactions", "fix maxSupportedTransactionVersion", or "explain Solana concepts" (rent, accounts, PDAs, CPIs). Also for program architecture — state layout, reducing compute units, throughput bottlenecks, instruction naming — and quick on-chain lookups via public RPC + curl (balance, transaction, token account). End-to-end playbook: wallet connection, Anchor/Pinocchio programs, Codama clients, Surfpool/LiteSVM/Mollusk testing, security review, and the v1 transaction format (SIMD-0385, 4096-byte transactions). Prefers @solana/kit 8 plugin clients (createClient + .use()) building transaction v1 by default, @solana/kit-plugin-wallet + @solana/react for wallets, web3.js v3 as the legacy migration target, and Surfpool for local networks.'
license: MIT
compatibility: Requires Node.js 20.18+, Rust toolchain, Solana CLI, Anchor CLI
metadata:
author: Solana Foundation
version: "2.7.0"
---
# Solana Development Skill
## What this Skill is for
Use this Skill when the user asks for:
- Solana dApp UI work (React / Next.js)
- Wallet connection + signing flows
- Transaction building / sending / confirmation UX
- Transaction v1 / larger transactions (SIMD-0385) — the default format for new code; sending, reading, indexing
- On-chain program development (Anchor or Pinocchio)
- Program architecture — state layout, PDA seed conventions, naming, parallelization, cranks, vault topology
- Client SDK generation (typed program clients)
- Local testing (Surfpool, LiteSVM, Mollusk) and fuzz testing (Trident, cargo-fuzz)
- Security hardening and audit-style reviews
- Confidential transfers (Token-2022 ZK extension)
- **Toolchain setup, version mismatches, GLIBC errors, dependency conflicts**
- **Upgrading Anchor/Solana CLI versions, migration between versions**
- **Migrating web3.js v1 code to web3.js v3 or Kit**
## Default stack decisions (opinionated)
1) **SDK: @solana/kit 8 plugin clients, transaction v1 by default**
- Build clients with `createClient()` from `@solana/kit`, then `.use(...)` plugins. Pass `transactionConfig: { version: 1 }` to the RPC plugin so every transaction the client plans is v1:
```ts
createClient()
.use(signer(mySigner))
.use(solanaRpc({ rpcUrl, transactionConfig: { version: 1, priorityFeeLamports: lamports(5_000n) } }));
// or solanaLocalRpc / solanaDevnetRpc / solanaMainnetRpc from @solana/kit-plugin-rpc
```
- **Transaction v1 is the default for new code**. Set `version: 1`; the planner otherwise defaults to v0. Plugin clients estimate compute and loaded-accounts-data limits by simulation. On manual pipelines, use Kit's resource-estimation helpers instead of guessing limits; use fixed values only for measured overrides or deliberate caps. See [transactions-v1.md](references/transactions-v1.md).
- Manual `pipe()` + `createTransactionMessage({ version: 1 })` is the low-level alternative for when you need control over every step (custom lifetimes, offline signing, bespoke planners) — see [kit/advanced.md](references/kit/advanced.md). It is not the default path.
- Default to `signer()` / `signerFromFile()` / `generatedSigner()` from
`@solana/kit-plugin-signer` — they set both `payer` and `identity` to the same keypair (the
common case). For fresh local/devnet signers, install the RPC/LiteSVM plugin after
`generatedSigner()`, then fund with `airdropSigner(...)`. Reach for the role-specific variants
(`payer()` + `identity()`) only when fees and authority must come from different keypairs.
- Use `@solana-program/*` program plugins (e.g., `tokenProgram()`) for fluent instruction APIs.
- Prefer Kit types (`Address`, `Signer`, transaction message APIs, codecs).
2) **UI: Kit plugin client + @solana/react**
- Wallet connection via `walletSigner()` from `@solana/kit-plugin-wallet` (Wallet Standard discovery; the connected wallet fills the payer/identity roles), with React hooks from `@solana/kit-plugin-wallet/react`.
- Before sending v1 from a wallet-backed client, check `connected.supportedTransactionVersions.has(1)` (from `client.wallet.getState()` or `useConnectedWallet`). Wallets that have not shipped v1 reject the signing request; fall back to a `version: 0` client for them — see [frontend.md](references/frontend.md#wallet-connection).
- Client bindings via `@solana/react` 8 (`ClientProvider`, typed `useClient<AppClient>`, data hooks, SWR/TanStack adapters). Its legacy Wallet Standard hooks are being deprecated — don't use them.
- Do **not** use `@solana/client` / `@solana/react-hooks` (framework-kit) or `@solana/wallet-adapter-*` for new work.
3) **Legacy compatibility: web3.js v3**
- web3.js v3 (`@solana/web3.js@3`, 3.0.0 released 2026-10-01) is the classic class-based API rebuilt on Kit internals. Treat it as the migration target for v1 codebases, not a default recommendation for new work. Until npm moves `latest` to 3.x (scheduled for 2026-10-19), a bare `@solana/web3.js` install still resolves to 1.99.0 — pin `@3` explicitly.
- Migrating a v1 codebase: use the official migration skill from the solana-web3.js repo rather than hand-migrating — see [kit-web3-interop.md](references/kit-web3-interop.md) for routing.
- Do not introduce `@solana/web3-compat` in new work — it is superseded.
- Do not let legacy class types leak across the entire app; contain them to adapter modules.
4) **Programs**
- Default: Anchor 1.2.x (fast iteration, IDL generation, mature tooling).
- Performance/footprint: Pinocchio (0.11+) when you need CU optimization, minimal binary size,
zero dependencies, or fine-grained control over parsing/allocations.
5) **Testing (Surfpool-centered)**
- Unit tests: LiteSVM (in-process, Rust/TS) or Mollusk (Rust instruction harness).
- Integration tests: **SurfpoExcerpt, first 6,000 characters of SKILL.md, verbatim from the audited commit. It is text from someone else’s repository, quoted so you can judge it before your agent reads it.
Install
Pinned to the audited commit ed1294b
claude mcp add --transport http solana-mcp-server https://mcp.solana.com/mcp npm install -g @solana-program/program-metadata npx skills add https://github.com/solana-foundation/solana-web3.js/tree/main/skills/web3js-v1-to-v3-migration npm install @solana/kit @solana/kit-plugin-rpc @solana/kit-plugin-signer npm install @solana/kit @solana/kit-plugin-litesvm @solana/kit-plugin-signer
git clone https://github.com/solana-foundation/solana-dev-skill git -C solana-dev-skill checkout ed1294b2cb8a
Commands as the repository documents them: shown, never run by us. Our verdict covers commit ed1294b2cb8a only.
Works in which agents?
What its own text says, not a test
| Agent | Status | More |
|---|---|---|
| Claude Code | Mentioned in its text, not tested | Skills for Claude Code · About Claude Code |
| Claude Desktop | Mentioned in its text, not tested | Skills for Claude Desktop · About Claude Desktop |
| Codex | Mentioned in its text, not tested | Skills for Codex · About Codex |
| GitHub Copilot | Mentioned in its text, not tested | Skills for GitHub Copilot · About GitHub Copilot |
| Cursor | Mentioned in its text, not tested | Skills for Cursor · About Cursor |
| Gemini CLI | Mentioned in its text, not tested | Skills for Gemini CLI · About Gemini CLI |
| Windsurf | Mentioned in its text, not tested | Skills for Windsurf · About Windsurf |
Audit history
Every audit, every source change
- ✓SAFE B 89 / 100
first audit · source
ed1294b2cb8a
README badge
For maintainers · shows the latest audit
[](https://modelsatlas.com/skills/solana-foundation/solana-dev/)
The badge shows our verdict and grade for this skill, and links back to this page. It changes when the audit does.
Similar skills
amelnagdy/guard-skills
Review generated or changed WordPress code — plugins, themes, and blocks — before it ships. Best used reactively after an agent writes, edits, or reviews code touching WordPress APIs: add_action/add_filter, shortcodes,…
amelnagdy/guard-skills
Review generated or changed WooCommerce code — extensions, payment and shipping integrations, checkout customizations, and order/product logic — before it ships. Best used reactively after an agent writes, edits, or…
amelnagdy/guard-skills
Review generated or changed documentation before it ships — READMEs, API references, docstrings, PHPDoc/JSDoc, changelogs, tutorials, and doc sites. Best used reactively after an agent writes or edits docs, after code…
amelnagdy/guard-skills
Review generated or changed test code against universal testing rules before it ships. Best used reactively after an agent writes, edits, generates, or refactors tests, before presenting, committing, or merging them.…
amelnagdy/guard-skills
Review generated or changed production code before it ships, using Clean Code, SOLID, DRY, KISS, YAGNI, and LLM-specific failure-mode checks in any programming language. Best used reactively after an agent writes,…
kostja94/marketing-skills
Deprecated compatibility entry for Press Coverage Page construction. This page is now maintained in Pagina; install and use page-builder to build a new Press Coverage Page.
Add this badge to your README
[](https://modelsatlas.com/skills/solana-foundation/solana-dev/)
<a href="https://modelsatlas.com/skills/solana-foundation/solana-dev/"><img src="https://modelsatlas.com/skills/solana-foundation/solana-dev/badge.svg" alt="ModelsAtlas: SAFE B"></a>
Questions about solana-dev
What does the solana-dev skill do?
Is solana-dev safe to install?
What can solana-dev access on my machine?
Which assistants does solana-dev work with?
How current is this page?
Sources
- github.com/solana-foundation/solana-dev-skill/tree/main/skills/s — the audited source at commit ed1294b2cb8a and every finding aboveObserved · 20 Oct 2026
Spotted something wrong? Report a correction · Methodology
Keep going in your AI
Opens with this page as the source. We add nothing else to the prompt.
- What does the solana-dev skill do?
- Is solana-dev safe to install?
- What can solana-dev access on my machine?