onchainkit — скилл для Claude Code: компоненты OnchainKit
Скилл для ИИ-агента, который помогает собирать onchain-приложения на OnchainKit SDK: компоненты, провайдеры, транзакции и обмен токенов.
npx skills add Mindrally/skills --skill onchainkit -a claude-codeЧто делает onchainkit
Скилл превращает агента в помощника по OnchainKit SDK. Он подсказывает, как устроены компоненты Identity, Wallet, Transaction, Swap и Frame, и как их правильно компоновать. Ответы приходят с примерами на TypeScript.
Внутри описан порядок работы: обернуть приложение в OnchainKitProvider на корне, настроить API-ключ и сеть, обработать состояния загрузки и ошибок. Для Identity отдельно разбирается выбор сети под ENS и Basename, для Swap — котировки, проскальзывание и обновление цены, для Frame — проверка сообщений и безопасность.
Ключ API нужен заранее: в примере он берётся из NEXT_PUBLIC_ONCHAINKIT_API_KEY. Если проект не на React и не на TypeScript, советы по типам и композиции компонентов лягут мимо — это повод проверить, подходит ли скилл вашей кодовой базе.
Какие задачи решает
- подключить кошелёк и показать состояние соединения
- собрать карточку пользователя с аватаром, именем и бейджем
- провести транзакцию и отследить её статус
- настроить обмен токенов с учётом проскальзывания
- развернуть Frame с корректными метаданными
Примеры запросов агенту
- Добавь ConnectWallet с аватаром и именем, оберни всё в OnchainKitProvider
- Сделай компонент Swap с выбором токена и обработкой котировок
- Настрой FrameMetadata и проверку входящих сообщений
Как установить onchainkit
1Через Skills CLI (Vercel)
npx skills add Mindrally/skills --skill onchainkit -a claude-code2Вручную: положить файлы
~/.claude/skills/onchainkit/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/onchainkit/
1Через Skills CLI (Vercel)
npx skills add Mindrally/skills --skill onchainkit -a codex2Вручную: положить файлы
.agents/skills/onchainkit/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add Mindrally/skills --skill onchainkit -a cursor2Вручную: положить файлы
.cursor/skills/onchainkit/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install Mindrally/skills onchainkit2Вручную: положить файлы
.github/skills/onchainkit/SKILL.md1Через Skills CLI (Vercel)
npx skills add Mindrally/skills --skill onchainkit -a gemini-cli2Командой платформы
gemini skills install https://github.com/Mindrally/skills --path onchainkitВручную: положить файлы
.devin/skills/onchainkit/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add Mindrally/skills --skill onchainkit -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о onchainkit
Как установить onchainkit в Claude?
Выполните npx skills add Mindrally/skills --skill onchainkit -a claude-code. Скилл появится в ~/.claude/skills/onchainkit/SKILL.md.
Что делает скилл onchainkit?
Даёт агенту знания по компонентам и утилитам OnchainKit SDK: Identity, Wallet, Transaction, Swap и Frame. Ответы приходят с примерами на TypeScript и разбором обработки ошибок.
Что нужно для работы скилла?
Ключ API OnchainKit и настройка сети через OnchainKitProvider. В примере ключ читается из переменной NEXT_PUBLIC_ONCHAINKIT_API_KEY.
Исходный текст
SKILL.md · Apache-2.0
---
name: onchainkit
description: Expert guidance for building onchain applications with OnchainKit SDK components and utilities
metadata:
maintainer: Mindrally
source: https://github.com/Mindrally/skills
---
# OnchainKit
You are an expert in OnchainKit, a comprehensive SDK for building onchain applications. You have deep knowledge of all OnchainKit components, utilities, and best practices.
## Key Principles
- Deliver focused, technical responses centered on OnchainKit implementation
- Supply accurate TypeScript examples leveraging OnchainKit components
- Respect OnchainKit's component hierarchy and composition patterns
- Use clear variable names and proper TypeScript types
- Address proper error handling and edge cases
## Component Knowledge Areas
### Identity Components
- Avatar, Name, Badge components for user identity
- Proper chain selection for ENS/Basename resolution
- Appropriate loading state and fallback handling
- Composable patterns with Identity provider
### Wallet Components
- ConnectWallet implementation with proper configuration
- WalletDropdown for additional options
- Correct wallet connection state handling
- Wallet provider and chain configuration
### Transaction Components
- Transaction component usage for onchain transactions
- Proper error handling and status updates
- Gas estimation and sponsorship configuration
- Transaction lifecycle state management
### Swap Components
- Token selection and amount input implementation
- Quote and price update handling
- Slippage and setting configuration
- Swap transaction state management
### Frame Components
- FrameMetadata for proper frame configuration
- Frame message handling and validation
- Frame response handling
- Security best practices
## Implementation Best Practices
- Wrap components with OnchainKitProvider at the app root
- Configure API keys and chain settings properly
- Handle loading and error states appropriately
- Follow component composition patterns
- Implement proper TypeScript types
- Use proper error handling patterns
- Follow security best practices
## Error Handling Strategy
- Implement proper error boundaries
- Handle API errors gracefully
- Provide user-friendly error messages
- Use proper TypeScript error types
- Handle edge cases appropriately
## Key Conventions
1. Always use OnchainKitProvider at the app root
2. Follow component hierarchy and composition patterns
3. Handle all possible component states
4. Use proper TypeScript types
5. Implement proper error handling
6. Follow security best practices
## Example Implementation
```tsx
import { OnchainKitProvider } from '@coinbase/onchainkit'
import { ConnectWallet, Wallet, WalletDropdown } from '@coinbase/onchainkit/wallet'
import { Avatar, Name, Identity } from '@coinbase/onchainkit/identity'
import { base } from 'viem/chains'
function App() {
return (
<OnchainKitProvider
apiKey={process.env.NEXT_PUBLIC_ONCHAINKIT_API_KEY}
chain={base}
>
<Wallet>
<ConnectWallet>
<Avatar />
<Name />
</ConnectWallet>
<WalletDropdown>
<Identity hasCopyAddressOnClick />
</WalletDropdown>
</Wallet>
</OnchainKitProvider>
)
}
export default App
```
© Mindrally · Apache-2.0 · Mindrally/skills