OpenZeppelin Skills — плагин
Набор скиллов для разработки и обновления смарт-контрактов на библиотеках OpenZeppelin в Solidity, Cairo, Stylus, Stellar и Sui
- 223 ★ репозитория
- Последний коммит
- AGPL-3.0
Расширенный доступ
Почему такой уровень
- Скилл генерации контрактов запускает npm-пакет `contracts-cli` и ходит в сеть
- Контракты управляют ценностью после развертывания, поэтому ошибки в них дороги, а аудит остается обязательным
Установка
- Работает в
В терминале, через SkillFoxx CLI
npx skillfoxx add plugins/openzeppelin-skillsОпределит агенты на машине, покажет уровень доступа и зафиксирует версию.
Другие способы установки
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Скилл генерации контрактов запускает npm-пакет `contracts-cli` и ходит в сеть
- Контракты управляют ценностью после развертывания, поэтому ошибки в них дороги, а аудит остается обязательным
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
OpenZeppelin Skills — двенадцать скиллов от OpenZeppelin для безопасной разработки смарт-контрактов. Скилл `develop-secure-contracts` подсказывает агенту, как собирать контракты на библиотеках OpenZeppelin Contracts, и использует для этого пакет @openzeppelin/contracts-cli, который генерирует эталонные реализации. Для пяти платформ есть пары скиллов настройки проекта и обновления контрактов: Solidity, Cairo, Stylus, Stellar и Sui Move. Отдельный скилл `review-sui-contracts` разбирает интеграцию OpenZeppelin Contracts for Sui, а `migrate-defender-to-cre` оценивает, реализует и проверяет перенос рабочих процессов Defender на Chainlink CRE. Скиллы ставятся через Skills CLI, как плагин Claude Code или копированием папок.
Для кого. Разработчикам смарт-контрактов, которые используют библиотеки OpenZeppelin и ведут проекты на нескольких блокчейн-платформах.
Подходит, если
- Новый проект на Solidity, Cairo, Stylus, Stellar или Sui строится с библиотеками OpenZeppelin
- Контракты на OpenZeppelin переезжают на новую версию библиотеки
- Интеграцию OpenZeppelin Contracts for Sui в проекте на Move надо проверить
- Рабочие процессы Defender переносят на Chainlink CRE
Не подходит, если
- Нужен полноценный аудит перед запуском в основную сеть: скиллы направляют разработку и не заменяют аудиторов
- Проект не использует OpenZeppelin: скиллы построены вокруг его библиотек
- Нужны скиллы для других сетей вне пяти перечисленных платформ
Пример запроса к агенту
Настрой проект на Solidity с OpenZeppelin Contracts и собери токен ERC-20 с ограничением доступа по ролямОграничения
Лицензия AGPL-3.0: проверьте, подходит ли она вашему проекту. Скилл `develop-secure-contracts` требует пакета @openzeppelin/contracts-cli и доступа в сеть при установке. Скиллы ведут разработку, но развертывание контрактов и проверку безопасности перед запуском остаются за командой. Для каждой платформы нужен свой инструментарий: компилятор, фреймворк и кошелек для тестовой сети агент не устанавливает за вас без вашего согласия.
Как отключить. Удалите нужные папки скиллов из ~/.claude/skills/ или выполните /plugin uninstall openzeppelin-skills, если ставили плагином.
Частые вопросы
Какие платформы поддерживаются?
Solidity, Cairo, Stylus, Stellar и Sui Move. Для каждой есть скилл настройки проекта, для всех кроме Sui еще и скилл обновления контрактов, для Sui отдельный скилл проверки интеграции.
Как поставить скиллы в Claude Code?
Через плагин: /plugin marketplace add OpenZeppelin/openzeppelin-skills и /plugin install openzeppelin-skills. Можно и командой npx skills add OpenZeppelin/openzeppelin-skills или копированием папок skills/ в ~/.claude/skills.
Что такое Defender и зачем скилл миграции?
Defender — сервис OpenZeppelin для автоматизации операций с контрактами. Скилл `migrate-defender-to-cre` помогает оценить рабочие процессы Defender, реализовать их на Chainlink CRE и проверить результат; справочные файлы лежат в `references`.
Зачем нужен `contracts-cli`?
Пакет @openzeppelin/contracts-cli генерирует эталонные реализации контрактов. Скилл `develop-secure-contracts` использует их, чтобы агент изучал рекомендуемые приемы интеграции и не изобретал структуру с нуля.
Заменяют ли скиллы аудит?
Нет. Они направляют агента при разработке на проверенных библиотеках, но независимый аудит перед запуском в основную сеть остается отдельным шагом команды.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
ПлагиныStellar Dev Skill — разработка на Stellar
Stellar Development Skill
Восемь скиллов Stellar Development Foundation: контракты на Rust, SDK, RPC, активы, кошельки и аудит безопасности
Скилл Solana Foundation для разработки на Solana: Anchor и Pinocchio, клиенты на @solana/kit, кошельки, тесты Surfpool и LiteSVM, безопасность
Девять скиллов для разработки на Chainlink: CRE, CCIP, Data Feeds, Data Streams, VRF и другие продукты сети
Поправки к знаниям ИИ-агентов об Ethereum: актуальный газ, адреса контрактов, L2, стандарты и безопасность смарт-контрактов
73 скилла для конвейера разработки: план, код, ревью и QA, а в конце готовый PR с метками в вашем репозитории.
Официальный реестр OpenHands: 71 скилл и 11 плагинов для ревью кода, GitHub, Bitbucket, Docker и CI, пригодные другим агентам.
Коротко о README
README коротко описывает набор: три способа установки, таблица из двенадцати скиллов с назначением каждого и раздел о Contracts CLI, который использует `develop-secure-contracts`. Для разработчиков проекта есть заметки в папке `dev` о принципах и тестировании.
Бейдж для README
Исходный SKILL.md
---
name: develop-secure-contracts
description: "Develop secure smart contracts using OpenZeppelin Contracts libraries. Use when users need to integrate OpenZeppelin library components — including token standards (ERC20, ERC721, ERC1155), access control (Ownable, AccessControl, AccessManager), security primitives (Pausable, ReentrancyGuard), governance (Governor, timelocks), or accounts (multisig, account abstraction) — into existing or new contracts. Covers pattern discovery from library source, CLI contract generators, and library-first integration. Supports Solidity, Cairo, Stylus, Stellar, and Sui Move."
license: AGPL-3.0-only
metadata:
author: OpenZeppelin
---
# Develop Secure Smart Contracts with OpenZeppelin
## Core Workflow
### Understand the Request Before Responding
For conceptual questions ("How does Ownable work?"), explain without generating code. For implementation requests, proceed with the workflow below.
### CRITICAL: Always Read the Project First
Before generating code or suggesting changes:
1. **Search the user's project** for existing contracts (`Glob` for `**/*.sol`, `**/*.cairo`, `**/*.rs`, `**/*.move`, etc.)
2. **Read the relevant contract files** to understand what already exists
3. **Default to integration, not replacement** — when users say "add pausability" or "make it upgradeable", they mean modify their existing code, not generate something new. Only replace if explicitly requested ("start fresh", "replace this").
If a file cannot be read, surface the failure explicitly — report the path attempted and the reason. Ask whether the path is correct. Never silently fall back to a generic response as if the file does not exist.
### Fundamental Rule: Prefer Library Components Over Custom Code
Before writing ANY logic, search the OpenZeppelin library for an existing component:
1. **Exact match exists?** Import and use it directly — inherit, implement its trait, compose with it. Done.
2. **Close match exists?** Import and extend it — override only functions the library marks as overridable (virtual, hooks, configurable parameters).
3. **No match exists?** Only then write custom logic. Confirm by browsing the library's directory structure first.
**NEVER copy or embed library source code into the user's contract.** Always import from the dependency so the project receives security updates. Never hand-write what the library already provides:
- Never write a custom `paused` modifier when `Pausable` or `ERC20Pausable` exists
- Never write `require(msg.sender == owner)` when `Ownable` exists
- Never implement ERC165 logic when the library's base contracts already handle it
### Methodology
The primary workflow is **pattern discovery from library source code**:
1. Inspect what the user's project already imports
2. Read the dependency source and docs in the project's installed packages