strapi-v5-expert について
開発テーマ別に Strapi v5 の公式ドキュメントを案内するエージェントスキルです。コード生成前に該当資料を読むよう促し、API、データベース、設定、移行を扱います。
主な機能
- 01開発テーマ別の公式資料インデックス
- 02Document Service API と CRUD の案内
- 03バックエンドとデータベースの資料整理
- 04REST、GraphQL、TypeScript の資料
- 05設定、プラグイン、v4 から v5 への移行
活用シーン
- 01Strapi v5 の CRUD 実装方法を確認
- 02カスタムルートやコントローラーを開発
- 03プラグイン、DB、デプロイ設定を確認
- 04Strapi v4 からの移行を計画
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ moteodimassi/ strapi-v5-expert --skill strapi-v5-expertインストール後、Claude Code で/strapi-v5-expertを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
system-prompt.mdrules/02-typescript-types.md01-document-service.md03-v4-to-v5-migration.md詳細
Указания для Агента
Когда пользователь ставит задачу, найди наиболее подходящую категорию в разделе "Quick Reference" ниже. Скопируй нужный URL и ИСПОЛЬЗУЙ ИНСТРУМЕНТ WEB BROWSING, чтобы прочитать актуальную документацию Strapi v5 по этой ссылке. Только после прочтения приступай к генерации кода.
Quick Reference (Индекс Документации)
1. Document Service API (Главный инструмент работы с БД)
Используй эти ссылки для любых задач, связанных с CRUD операциями бэкенда. Устаревший entityService заменен на strapi.documents().
- Core API & CRUD: https://docs.strapi.io/dev-docs/api/document-service
Описание: Базовые методы (
findOne,findMany,create,update,delete,count). Работа сdocumentId. - Documents Concept: https://docs.strapi.io/dev-docs/api/document-service#documents Описание: Что такое Document в Strapi 5 (объединение локалей и статусов публикации в один объект).
- Populate (Связи и Медиа): https://docs.strapi.io/dev-docs/api/document-service/populate Описание: Как запрашивать вложенные связи и медиафайлы.
- Fields Selection: https://docs.strapi.io/dev-docs/api/document-service/fields
Описание: Выборка конкретных колонок из БД (параметр
fields). - Filters (Фильтрация): https://docs.strapi.io/dev-docs/api/document-service/filters
Описание: Операторы фильтрации (
$eq,$in,$not,$andи др.). - Sort & Pagination: https://docs.strapi.io/dev-docs/api/document-service/sort-pagination Описание: Сортировка по полям и пагинация (limit, start).
- Locale (i18n): https://docs.strapi.io/dev-docs/api/document-service/locale Описание: Манипуляции с документами для конкретной локали (языка).
- Draft & Publish: https://docs.strapi.io/dev-docs/api/document-service/draft-and-publish
Описание: Работа со статусами (published, draft), методы
publish()иunpublish(). - Document Service Middlewares: https://docs.strapi.io/dev-docs/api/document-service/middlewares
Описание: Перехват и модификация запросов
strapi.documents.use()до обращения к БД.
2. Архитектура и Кастомизация Бэкенда
- Overview & Structure: https://docs.strapi.io/dev-docs/backend-customization Описание: Интерактивная диаграмма запросов бэкенда.
- Project Structure: https://docs.strapi.io/dev-docs/project-structure Описание: Структура папок Strapi-проекта (src/api, config и т.д.).
- Routes: https://docs.strapi.io/dev-docs/backend-customization/routes Описание: Настройка кастомных HTTP-маршрутов и core-роутов.
- Controllers: https://docs.strapi.io/dev-docs/backend-customization/controllers
Описание: Создание кастомных контроллеров и расширение (
createCoreController). - Services: https://docs.strapi.io/dev-docs/backend-customization/services
Описание: Инкапсуляция бизнес-логики (
createCoreService). - Middlewares (HTTP): https://docs.strapi.io/dev-docs/backend-customization/middlewares
Описание: Глобальные и route-мидлвары Koa (
ctx,next). - Policies: https://docs.strapi.io/dev-docs/backend-customization/policies Описание: Защита эндпоинтов и проверка прав доступа до контроллера.
- Requests & Responses: https://docs.strapi.io/dev-docs/backend-customization/requests-responses
Описание: Структура объекта
ctx(ctx.request,ctx.state.user,ctx.response). - Error Handling: https://docs.strapi.io/dev-docs/error-handling
Описание: Выброс стандартизированных ошибок (
ApplicationError,ValidationError). - Lifecycle Functions (Global): https://docs.strapi.io/dev-docs/configurations/functions
Описание: Использование
register,bootstrapиdestroyв файлеsrc/index.ts.
3. モデルとデータベース
- Models & Content-Types: https://docs.strapi.io/dev-docs/backend-customization/models
説明: データスキーマ(
schema.json)の作成、属性の種類。 - Lifecycle Hooks: https://docs.strapi.io/dev-docs/backend-customization/models#lifecycle-hooks
説明: データベースのトリガー(
beforeCreate、afterUpdate)。 - Relations: https://docs.strapi.io/dev-docs/api/rest/relations 説明: API を使用したリレーションの管理(connect、disconnect、set)。
- Database Transactions: https://docs.strapi.io/dev-docs/database/transactions
説明: アトミックな操作に
strapi.db.transaction()を使用します。 - Database Migrations: https://docs.strapi.io/dev-docs/database/migrations
説明: 構造またはデータを移行するスクリプト(
database/migrationsフォルダー)。 - Database Configuration: https://docs.strapi.io/dev-docs/configurations/database
説明:
config/database.tsの設定(SQLite、PostgreSQL、MySQL)。
4. 外部 API(REST、GraphQL、クライアント)
- Content API Overview: https://docs.strapi.io/dev-docs/api/content-api 説明: Strapi の外部 API の概要。
- REST API Reference: https://docs.strapi.io/dev-docs/api/rest 説明: エンドポイントの基本リファレンス。v5 のフラットなレスポンス形式。
- REST API Parameters: https://docs.strapi.io/dev-docs/api/rest/parameters 説明: REST API パラメーターの全一覧。
- REST API Guides: https://docs.strapi.io/dev-docs/api/rest/guides 説明: REST API の具体的な使用例。
- REST API Populate & Select: https://docs.strapi.io/dev-docs/api/rest/populate-select
説明: REST リクエストの
populateおよびfieldsパラメーター。 - REST API Sort & Pagination: https://docs.strapi.io/dev-docs/api/rest/sort-pagination 説明: offset と page による並べ替えとページネーション。
- REST API Status: https://docs.strapi.io/dev-docs/api/rest/status 説明: ステータス(published/draft)による REST レスポンスのフィルタリング。
- REST API Locale: https://docs.strapi.io/dev-docs/api/rest/locale
説明:
localeパラメーターを使用した REST API リクエスト。 - REST API Upload: https://docs.strapi.io/dev-docs/api/rest/upload
説明: POST
/api/uploadによるファイルのアップロード。 - Interactive Query Builder: https://docs.strapi.io/dev-docs/api/rest/interactive-query-builder
説明: 複雑な URL を構築するための
qsライブラリの使用方法。 - GraphQL API: https://docs.strapi.io/dev-docs/api/graphql 説明: GraphQL のミューテーションとクエリーの使用、フィルタリング。
- GraphQL Plugin Config: https://docs.strapi.io/dev-docs/plugins/graphql
説明:
config/plugins.tsでの Apollo Server、Shadow CRUD、複雑度の上限の設定。 - Strapi Client: https://docs.strapi.io/dev-docs/strapi-client
説明: フロントエンド向けの公式ライブラリ
@strapi/client。 - OpenAPI & Swagger: https://docs.strapi.io/dev-docs/api/openapi 説明: OpenAPI 仕様の生成、Documentation プラグイン。
5. TypeScript
- TypeScript Setup & Overview: https://docs.strapi.io/dev-docs/typescript 説明: Strapi での TypeScript の使用。
- TypeScript Development: https://docs.strapi.io/dev-docs/typescript/development
説明: オートコンプリート、
strapiインスタンスの型付け。 - Manipulating Documents: https://docs.strapi.io/dev-docs/typescript/manipulating-documents
説明: 厳密な型付けに
UID.ContentTypeとData.Documentを使用します。 - TypeScript Configuration: https://docs.strapi.io/dev-docs/typescript/configuration
説明:
config/typescript.tsの設定と型の自動生成。 - Adding TypeScript: https://docs.strapi.io/dev-docs/typescript/migration 説明: 既存の JS プロジェクトに TS を追加する方法。
6. 設定と自動化(Settings)
- 設定の概要: https://docs.strapi.io/dev-docs/configurations
説明:
/configフォルダーの概要です。 - サーバー設定: https://docs.strapi.io/dev-docs/configurations/server
説明:
config/server.ts(ホスト、ポート、URL、プロキシ)です。 - API 設定: https://docs.strapi.io/dev-docs/configurations/api
説明:
config/api.ts(プレフィックス、ページネーションの上限)です。 - ミドルウェア設定: https://docs.strapi.io/dev-docs/configurations/middlewares
説明:
config/middlewares.tsで組み込みミドルウェア(CORS、セキュリティ、ボディ)を設定します。 - プラグイン設定: https://docs.strapi.io/dev-docs/configurations/plugins
説明: プラグインをローカルで接続、設定します(
config/plugins.ts)。 - 環境変数: https://docs.strapi.io/dev-docs/configurations/environment
説明:
.envとヘルパーenv()の使用方法です。 - CRON ジョブ: https://docs.strapi.io/dev-docs/configurations/cron 説明: スケジュールに沿ってバックグラウンドタスクを実行します(node-schedule)。
- Webhook: https://docs.strapi.io/dev-docs/configurations/webhooks 説明: 外部システムへの HTTP リクエストをトリガーする設定です。
- 機能(フィーチャーフラグ): https://docs.strapi.io/dev-docs/configurations/features 説明: 実験的な機能を有効にします。
7. プラグインと拡張機能
- プラグインのインストール: https://docs.strapi.io/user-docs/plugins 説明: Marketplace と CLI を使用してプラグインをインストールします。
- ユーザーと権限: https://docs.strapi.io/dev-docs/plugins/users-permissions 説明: ユーザー、JWT、ACL、登録、ロールを管理します。
- ファイルのアップロード/メディアライブラリ: https://docs.strapi.io/dev-docs/plugins/upload 説明: ファイルアップロードプロバイダー(AWS S3、ローカル)を設定します。
- メールプラグイン: https://docs.strapi.io/dev-docs/plugins/email 説明: トランザクションメールの送信と、SMTP プロバイダーの設定です。
- カスタムフィールド: https://docs.strapi.io/dev-docs/custom-fields 説明: カスタムフィールド型を作成、登録します。
- Sentry プラグイン: https://docs.strapi.io/dev-docs/plugins/sentry 説明: エラーを追跡するために Sentry と連携します。
8. v4 から v5 への移行
- アップグレードの概要: https://docs.strapi.io/dev-docs/migration/v4-to-v5 説明: Strapi 5 へのアップグレードプロセスの概要です。
- ステップバイステップガイド: https://docs.strapi.io/dev-docs/migration/v4-to-v5/step-by-step 説明: アップグレードの手順を順を追って説明します。
- アップグレードツール: https://docs.strapi.io/dev-docs/migration/v4-to-v5/upgrade-tool 説明: CLI ユーティリティ(codemods)を使用して移行を自動化します。
- 破壊的変更: https://docs.strapi.io/dev-docs/migration/v4-to-v5/breaking-changes 説明: 破壊的変更の全リストです。
- Entity Service から Document Service へ: https://docs.strapi.io/dev-docs/migration/v4-to-v5/entity-service
説明: 古いクエリを新しい API と
documentIdに合わせてリファクタリングします。 - プラグインの移行: https://docs.strapi.io/dev-docs/migration/v4-to-v5/plugins 説明: プラグインを更新し、Plugin SDK を使用します。
- Helper-plugin の移行: https://docs.strapi.io/dev-docs/migration/v4-to-v5/helper-plugin
説明: 削除された
@strapi/helper-pluginを置き換えます。 - デザインシステムの更新: https://docs.strapi.io/dev-docs/migration/v4-to-v5/design-system 説明: UI コンポーネントの変更点です(Design System v2)。
9. Инфраструктура и CLI
- Installation & Quick Start: https://docs.strapi.io/dev-docs/installation Описание: Установка Strapi (CLI, Docker).
- Command Line Interface (CLI): https://docs.strapi.io/dev-docs/cli
Описание: Команды
strapi generate,build,ts:generate-types. - Templates: https://docs.strapi.io/dev-docs/templates Описание: Создание проектов на основе готовых шаблонов GitHub.
- Deployment: https://docs.strapi.io/dev-docs/deployment Описание: Требования к серверу, переменные для продакшена.
- Data Management: https://docs.strapi.io/dev-docs/data-management Описание: Импорт/Экспорт/Трансфер данных между базами (CLI).
- Testing: https://docs.strapi.io/dev-docs/testing Описание: Настройка Jest и Supertest для unit и интеграционных тестов.
10. CMS Features и Админ-Панель
- Admin Panel Settings: https://docs.strapi.io/user-docs/intro Описание: Обзор графического интерфейса администратора.
- Admin Panel Configuration: https://docs.strapi.io/dev-docs/configurations/admin-panel
Описание: Настройка
config/admin.ts(секреты, переводы). - Homepage Customization: https://docs.strapi.io/dev-docs/admin-panel-customization/homepage Описание: Добавление виджетов на главную страницу админки.
- Content-Type Builder: https://docs.strapi.io/user-docs/content-type-builder Описание: Использование GUI для создания моделей данных.
- Content Manager: https://docs.strapi.io/user-docs/content-manager Описание: Интерфейс редактирования записей.
- Draft & Publish (CMS): https://docs.strapi.io/user-docs/draft-and-publish Описание: Механика статусов контента.
- Internationalization (CMS): https://docs.strapi.io/dev-docs/plugins/i18n Описание: Перевод контента на разные языки в админке.
- Preview: https://docs.strapi.io/dev-docs/plugins/preview Описание: Настройка Live Preview (предпросмотр контента на фронтенде).
- API Tokens: https://docs.strapi.io/user-docs/api-tokens Описание: Токены для Server-to-Server интеграций.
- Role-Based Access Control (RBAC): https://docs.strapi.io/user-docs/users-roles-permissions Описание: Настройка прав администраторов панели.
- Single Sign-On (SSO): https://docs.strapi.io/dev-docs/configurations/sso Описание: Авторизация админов через Azure, Google (Enterprise).
- Audit Logs: https://docs.strapi.io/user-docs/audit-logs Описание: Журналирование действий администраторов (Enterprise).
- Review Workflows: https://docs.strapi.io/user-docs/review-workflows Описание: Настройка стадий ревью контента (Enterprise).
- Content History: https://docs.strapi.io/user-docs/content-history Описание: Версионирование и откат изменений контента (Enterprise).
- Releases: https://docs.strapi.io/user-docs/releases Описание: Пакетная публикация контента (Growth/Enterprise).
コメント
Markdown 対応