Solana Token Extensions
solanabr/ai-kit
Helps choose, combine and create Token-2022 mint and account extensions on Solana with the spl-token CLI, @solana/kit or Anchor, and integrate the resulting mints.
Guide for Web3/blockchain development in Mobazha including wallet connection (Reown AppKit), ethers.js v6 patterns, Escrow smart contracts, multi-chain support, and RWA tokenization.
$ npx skills add mobazha/mobazha-unified --skill web3-guide -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install mobazha/mobazha-unified web3-guide --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/mobazha/mobazha-unified.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.cursor/skills/web3-guide .claude/skills/web3-guide && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "web3-guide" agent skill from https://github.com/mobazha/mobazha-unified/tree/main/.cursor/skills/web3-guide into .claude/skills/web3-guide/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "web3-guide", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/mobazha/mobazha-unified/tree/main/.cursor/skills/web3-guideType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add mobazha/mobazha-unified --skill web3-guide -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install mobazha/mobazha-unified web3-guide --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mobazha/mobazha-unified.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.cursor/skills/web3-guide .agents/skills/web3-guide && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "web3-guide" agent skill from https://github.com/mobazha/mobazha-unified/tree/main/.cursor/skills/web3-guide into .agents/skills/web3-guide/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "web3-guide", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add mobazha/mobazha-unified --skill web3-guide -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install mobazha/mobazha-unified web3-guide --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mobazha/mobazha-unified.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.cursor/skills/web3-guide .cursor/skills/web3-guide && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "web3-guide" agent skill from https://github.com/mobazha/mobazha-unified/tree/main/.cursor/skills/web3-guide into .cursor/skills/web3-guide/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "web3-guide", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/mobazha/mobazha-unified.git --path .cursor/skills/web3-guide--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add mobazha/mobazha-unified --skill web3-guide -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install mobazha/mobazha-unified web3-guide --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mobazha/mobazha-unified.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.cursor/skills/web3-guide .gemini/skills/web3-guide && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "web3-guide" agent skill from https://github.com/mobazha/mobazha-unified/tree/main/.cursor/skills/web3-guide into .gemini/skills/web3-guide/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "web3-guide", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install mobazha/mobazha-unified web3-guideInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add mobazha/mobazha-unified --skill web3-guide -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/mobazha/mobazha-unified.git skills-src && mkdir -p .github/skills && cp -r skills-src/.cursor/skills/web3-guide .github/skills/web3-guide && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "web3-guide" agent skill from https://github.com/mobazha/mobazha-unified/tree/main/.cursor/skills/web3-guide into .github/skills/web3-guide/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "web3-guide", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add mobazha/mobazha-unified --skill web3-guide -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install mobazha/mobazha-unified web3-guide --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mobazha/mobazha-unified.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.cursor/skills/web3-guide .opencode/skills/web3-guide && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "web3-guide" agent skill from https://github.com/mobazha/mobazha-unified/tree/main/.cursor/skills/web3-guide into .opencode/skills/web3-guide/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "web3-guide", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
web3-guideGuide for Web3/blockchain development in Mobazha including wallet connection (Reown AppKit), ethers.js v6 patterns, Escrow smart contracts, multi-chain support, and RWA tokenization.
Web3 Guide is an agent skill from mobazha/mobazha-unified. Guide for Web3/blockchain development in Mobazha including wallet connection (Reown AppKit), ethers.js v6 patterns, Escrow smart contracts, multi-chain support, and RWA tokenization. Use when working with wallets, transactions, smart contracts, or blockchain features, "Web3", "钱包", "合约", "Escrow", "区块链", "交易", "RWA".
Its SKILL.md is about 1.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Backend & APIs, covering Smart contracts, Crypto and DeFi analysis and Natural language processing. It works with macOS and Solana. The repository describes itself as: Open-source commerce frontend for storefronts, marketplaces, checkout, and seller management. The licence is MPL-2.0.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 156c699. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are typescript, bash and go).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Web3 Guide loads about 1.6k tokens when it runs. Until then it costs about 82 tokens; SKILL.md has 228 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from mobazha/mobazha-unified at commit 156c699, republished under its MPL-2.0 licence (© mobazha). 228 words, ~1,620 tokens.
.claude/skills/web3-guide/SKILL.md (or your agent's skills folder).Mobazha 去中心化市场的区块链开发规范。
| 组件 | 技术 | 文件位置 |
|---|---|---|
| 钱包连接 | Reown AppKit + EthersAdapter | packages/core/providers/AppKitProvider.tsx |
| EVM 交互 | ethers.js v6 | packages/core/services/payment/ |
| Solana | 原生 Provider | packages/core/services/payment/solana.ts |
| 状态管理 | walletStore | packages/core/stores/walletStore.ts |
| Hooks | useWallet, useEscrow, useSolanaWallet | packages/core/hooks/ |
EVM 主网:Ethereum, BSC, Polygon, Arbitrum, Optimism, Avalanche EVM 测试网:Sepolia, BSC Testnet, Mumbai, Arbitrum Sepolia, Optimism Sepolia, Fuji Solana:Mainnet, Devnet
// packages/core/providers/AppKitProvider.tsx
// 已封装为 React Provider,使用时只需包裹:
<AppKitProvider>
<App />
</AppKitProvider>import { useWallet } from '@mobazha/core';
function PaymentComponent() {
const {
address, // 当前钱包地址
isConnected, // 连接状态
chainId, // 当前链 ID
connect, // 连接钱包
disconnect, // 断开连接
switchNetwork, // 切换网络
signMessage, // 签名消息
} = useWallet();
// 获取 ethers Provider/Signer
const provider = new BrowserProvider(walletProvider);
const signer = await provider.getSigner();
}// AppKit 自动处理网络切换 UI
// 代码层面验证当前网络:
if (chainId !== expectedChainId) {
await switchNetwork(expectedChain);
// AppKit 会弹出网络切换提示
}
// 不支持的网络会自动断开连接(AppKitProvider 中已处理)买家付款 → Escrow 创建 → 卖家发货 → 买家确认 → Release
↓
买家发起争议 → 仲裁员裁决 → Resolveimport { useEscrow } from '@mobazha/core';
const { createEscrow, releaseEscrow, getEscrowInfo } = useEscrow();
// 原生代币 Escrow
await createEscrow({
orderId: 'order-123',
sellerAddress: '0x...',
moderatorAddress: '0x...',
amount: parseEther('0.1'),
tokenAddress: null, // null = 原生代币
});
// ERC20 代币 Escrow
await createEscrow({
orderId: 'order-123',
sellerAddress: '0x...',
moderatorAddress: '0x...',
amount: parseUnits('100', 6), // USDT 6 位精度
tokenAddress: '0x...USDT',
});// packages/core/services/payment/escrow.ts
const unsubscribe = escrowService.listenToEscrowEvents(orderId, {
onCreated: event => {
/* 创建成功 */
},
onReleased: event => {
/* 资金释放 */
},
onRefunded: event => {
/* 退款完成 */
},
onDisputeResolved: event => {
/* 争议解决 */
},
});
// 清理
return () => unsubscribe();// packages/core/stores/walletStore.ts
// 已封装的状态管理:
const {
balances, // 各币种余额
isLoading, // 加载状态
fetchBalances, // 刷新余额
sendTransaction, // 发送交易
selectedCoin, // 当前选中币种
} = useWalletStore();// 1. 准备阶段
const gasEstimate = await contract.method.estimateGas(...args);
// 2. 发送交易
const tx = await contract.method(...args); // 返回 TransactionResponse
// 3. 等待确认
const receipt = await tx.wait(); // 等待链上确认
if (receipt.status === 0) throw new Error('交易失败');
// 4. 更新 UI
await fetchBalances(); // 刷新余额项目支持 RWA 代币化,涉及:
packages/core/services/rwa/ — RWA 服务packages/core/hooks/useRwaAssets.ts — RWA 资产 hookpackages/core/utils/rwaAssetResolver.ts — 资产解析// rwaBalanceService.ts 中的模式
const contract = new ethers.Contract(
contractAddress,
ERC1155_ABI,
provider // 只读查询用 provider,写操作用 signer
);
const balance = await contract.balanceOf(ownerAddress, tokenId);ethers v6 语法:项目使用 v6,注意与 v5 的区别
BrowserProvider 替代 Web3ProviderparseEther / formatEther 从 ethers 直接导入BigInt 替代 BigNumber(ethers 层面)Provider vs Signer:
Gas 处理:
estimateGasmaxFeePerGas 和 maxPriorityFeePerGas错误处理:
ACTION_REJECTEDINSUFFICIENT_FUNDSUNPREDICTABLE_GAS_LIMITestimateGas() 预估 gas?ethers.getAddress() 规范化?parseUnits / formatUnits)?| 合约 | 路径 | 说明 |
|---|---|---|
| Escrow | contracts/escrow/MobazhaEscrow.sol | 托管合约 |
| EscrowSpec | contracts/escrow/EscrowSpec.md | Escrow 功能规范 |
| RWA Marketplace | contracts/rwa-marketplace/ | RWA 市场合约 |
| Broadway Token | contracts/broadway/ | 演出票务 RWA |
| Group Marketplace | contracts/marketplace/ | 群组集市验证合约 |
| Deploy Scripts | migrations/ + scripts/ | 部署脚本 |
| 程序 | 路径 | 说明 |
|---|---|---|
| Escrow | solana_anchor/programs/escrow/ | Solana Escrow 程序 |
| RWA | solana_anchor/programs/rwa/ | Solana RWA 程序 |
| 测试 | solana_anchor/tests/ | Anchor 测试 |
mobazha 通过 abigen 生成 Go binding 与合约交互:
# 从 ABI 生成 Go binding
abigen --abi=MobazhaEscrow.abi --pkg=escrow --out=escrow.go
# Go binding 位置: mobazha/pkg/contracts/mobazha 中的合约调用模式:
// pkg/contracts/ — Go binding 文件
// internal/multiwallet/ — 多链钱包管理,负责签名和发送交易
// pkg/wallet/ — 钱包接口定义© mobazha, MPL-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .cursor/skills/web3-guide of mobazha/mobazha-unified.
Open the folder on GitHubat commit 156c699
Web3 Guide next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Web3 Guide this skillmobazha/mobazha-unified | 165 | — | ~1.6k | Automated safety check: Pass | MPL-2.0 | |
| Solana Token Extensionssolanabr/ai-kit | 108 | — | ~3.5k | Automated safety check: Pass | MIT | |
| Switchboard Oracle SDKinternet-court/internet-court-skill | 6.4k | 3 repos | ~2.9k | Automated safety check: Pass | Apache-2.0 | |
| Pyth Network Price Feedsinternet-court/internet-court-skill | 6.4k | 2 repos | ~3.9k | Automated safety check: Pass | Apache-2.0 | |
| Swap Tokenscirclefin/skills | 155 | — | ~4.6k | Automated safety check: Notes | Apache-2.0 | |
| Use Usdccirclefin/skills | 155 | — | ~2.4k | Automated safety check: Notes | Apache-2.0 |
solanabr/ai-kit
Helps choose, combine and create Token-2022 mint and account extensions on Solana with the spl-token CLI, @solana/kit or Anchor, and integrate the resulting mints.
internet-court/internet-court-skill
Covers integrating Switchboard oracles on Solana: pull feeds, oracle quotes, VRF randomness and Surge WebSocket streaming, from both the TypeScript SDK and Rust.
internet-court/internet-court-skill
Shows how to read Pyth oracle prices in Solana apps, off-chain through the Hermes client or on-chain from an Anchor program, including confidence and EMA values.
circlefin/skills
Build browser or server token swaps with Circle App Kit or standalone Swap Kit.
circlefin/skills
USDC is Circle's stablecoin deployed across multiple blockchain ecosystems including EVM chains (Ethereum, Base, Arbitrum, Polygon, Arc) and Solana.
aeonfun/aeon
Multichain non-custodial agent wallet via Finance District - check balances, prices, and best DeFi yields, move funds, swap, and make x402 paid API calls across EVM, Solana, Bitcoin, and Sui.
mobazha/mobazha-unified
Accessibility guide for Mobazha following WCAG 2.1 AA standards including color contrast, reduced motion, ARIA patterns, keyboard navigation, focus management, and screen reader testing.
mobazha/mobazha-unified
Look up Mobazha backend API endpoints, request/response formats, and field mappings.
mobazha/mobazha-unified
Review code for quality, architecture consistency, and adherence to Mobazha project standards using confidence-based filtering.
mobazha/mobazha-unified
Simplify and refine recently written code for clarity, consistency, and maintainability while preserving all functionality.
mobazha/mobazha-unified
Generate commit messages and run pre-commit validation following Mobazha conventions.
mobazha/mobazha-unified
Create and modify UI components following Mobazha conventions including directory structure, spacing standards, accessibility, and testing.
Categories
Guide for Web3/blockchain development in Mobazha including wallet connection (Reown AppKit), ethers.js v6 patterns, Escrow smart contracts, multi-chain support, and RWA tokenization. Web3 Guide is an agent skill from mobazha/mobazha-unified.js v6 patterns, Escrow smart contracts, multi-chain support, and RWA tokenization.
Web3 Guide fits situations like: working with wallets; smart contracts; blockchain features.
Run `npx skills add mobazha/mobazha-unified --skill web3-guide -a claude-code`. Or copy the skill folder (.cursor/skills/web3-guide in mobazha/mobazha-unified) into .claude/skills/web3-guide in your project. Claude Code loads it when a task matches its description.
Run `npx skills add mobazha/mobazha-unified --skill web3-guide -a codex`. Or copy the skill folder (.cursor/skills/web3-guide in mobazha/mobazha-unified) into .agents/skills/web3-guide in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add mobazha/mobazha-unified --skill web3-guide -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/web3-guide, .gemini/skills/web3-guide, .github/skills/web3-guide and .opencode/skills/web3-guide in your project.
SKILL.md names no scripts, command-line tools or credentials: Web3 Guide is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Web3 Guide is published under the MPL-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.6k tokens (SKILL.md is roughly 6.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Web3 Guide: Solana Token Extensions (solanabr/ai-kit, 108 stars), Switchboard Oracle SDK (internet-court/internet-court-skill, 6.4k stars), Pyth Network Price Feeds (internet-court/internet-court-skill, 6.4k stars) and Swap Tokens (circlefin/skills, 155 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
mobazha (a GitHub organization) maintains it in mobazha/mobazha-unified, which has 165 GitHub stars. The repository holds 29 skills in this directory. The repository was last updated on October 3, 2026.
Source: mobazha/mobazha-unified on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.