Agent skills for building Solana apps on Android with Expo and React Native. These follow the
Agent Skills convention — a SKILL.md per skill directory — so they
work with Claude Code, Codex, OpenCode, Cline, Amp, and the other agents the installer below
supports.
The repository is also packaged as an Agent Plugin: the root
plugin.json manifest plus the skills/ directory make it a portable plugin
that compatible clients can discover and load directly.
| Skill | What it covers |
|---|---|
integration-privy |
Privy authentication over Mobile Wallet Adapter, via Sign-In-With-Solana |
seeker-domains |
.skr domain resolution in both directions, with server and client integration |
seeker-genesis-token |
Seeker device ownership via SGT verification and Sign-in-with-Solana |
solana-mobile |
Project scaffolding, templates, emulators, development builds, toolchain checks |
solana-mobile-wallet |
Mobile Wallet Adapter: connect, disconnect, sign, send |
Each skill is a self-contained directory: a SKILL.md with the procedure, and references/
with detail the agent loads only when it needs it. That keeps the up-front context cost small
while the long-form material stays available.
Skills covering a third-party service are prefixed integration-, so they group together in
a listing and stay distinguishable from the first-party ones.
Use skills, the same installer
npx solana-mobile create uses to add the Solana dev skill:
npx -y skills add solana-mobile/solana-mobile-skillsThat prompts for which skills and which agents. To take everything without prompts:
npx -y skills add solana-mobile/solana-mobile-skills --allSkills land in .agents/skills/, which most agents read directly, and are symlinked into the
agent-specific locations that need it. A skills-lock.json records the source and a content
hash of each skill, so installs are reproducible and reviewable in a diff.
Useful flags:
npx -y skills add solana-mobile/solana-mobile-skills -l # list without installing
npx -y skills add solana-mobile/solana-mobile-skills -g # install globally
npx -y skills add solana-mobile/solana-mobile-skills -s solana-mobile-walletThen skills list, skills update, and skills remove manage what is installed.
To install by hand instead, copy any skills/<name>/ directory into your agent's skills
directory. Each one is self-contained, with no links outside its own folder.
Describe what you want; the agent picks the skill from its description. Things that trigger these:
- "Create a new Solana mobile app"
- "Add a connect wallet button to my Expo app"
- "Send SOL from my React Native app"
- "Gate this screen to Seeker owners"
- "Show
.skrnames instead of wallet addresses" - "Add Privy login to my Solana mobile app"
In Claude Code you can also invoke one directly, for example /solana-mobile-wallet.
- An Expo React Native project
- A development build — Expo Go does not work. Mobile Wallet Adapter needs native Android modules that Expo Go does not bundle. This is the most common cause of "the wallet integration does not work".
- An Android development environment.
npx solana-mobile@latest doctorchecks it.
Android only. iOS builds run, but have no wallet support.
The skills write @solana/kit with @wallet-ui/react-native-kit — the current client library,
and what npx solana-mobile create scaffolds. Patterns follow the
expo-kit-minimal
template.
They fall back to legacy @solana/web3.js with @wallet-ui/react-native-web3js in two cases:
the app already uses it as its Solana client, or you ask for it directly. So the skills read
package.json before writing wallet code, and match what is there rather than mixing stacks —
provider props, hook return values, and transaction construction all differ, and code from one
silently fails on the other.
These skills lean on the solana-mobile CLI
rather than restating setup steps that go stale:
npx solana-mobile@latest create # scaffold from the template catalognpx solana-mobile@latest doctor # check the local toolchainnpx solana-mobile@latest emu start # manage Android emulatorsMobile and Seeker-specific work only. For general Solana development — Anchor and Pinocchio
programs, Codama client generation, testing, security review — use the Solana Foundation's
solana-dev skill. npx solana-mobile create installs it into .agents/skills/solana-dev/ in every scaffolded
project, so it is usually already present. These skills sit alongside it rather than
duplicating it.
Three checks run in CI, and all of them run locally. Validate against the
Agent Skills spec with Anthropic's quick_validate.py
from anthropics/skills, vendored at
scripts/validate-skill.py and wrapped to add the checks it skips,
such as the skill name matching its directory. Needs python3 with PyYAML (pip install pyyaml):
./scripts/validate-skills.shThen check that every relative link resolves and stays inside its skill directory, which the spec validator does not cover:
./scripts/check-links.shCI also validates plugin.json against the
Agent Plugins schema. To run
that locally:
curl -sfL https://agent-plugins.org/schemas/1.0.0/plugin.schema.json -o /tmp/plugin.schema.json &&
echo "0a4aad95ce337878ad38802ebf0daa3fde76abe3f65400c86bcbb1ec0b3ab883 /tmp/plugin.schema.json" | shasum -a 256 -c - &&
npx -y ajv-cli@5.0.0 validate --spec=draft2020 -s /tmp/plugin.schema.json -d plugin.jsonBeyond what those enforce, skill content should stay portable across agents:
- Frontmatter carries
nameanddescription;namemust match the directory name - Relative links only, never pointing outside the skill's own directory — a skill directory is the unit of distribution, so an escaping link breaks once the skill is installed alone
- No host-specific tool names in the prose — describe the action, not the tool
- Keep
SKILL.mdunder 500 lines and push detail intoreferences/, so activation stays cheap
Issues and pull requests welcome. Prompts always have room to improve.