Token导航 LogoToken导航TokenDH.com
前端设计需要联网github未标认证来源可访问许可证需确认审计通过

magento2-backend-toolkitmagento2 后端工具包

Agent Skill

magento2-backend-toolkit 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

441

周安装

18

GitHub Stars

4

下载量

141
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:magento2-backend-toolkit(magento2 后端工具包)
来源仓库:https://github.com/tuanhaviet22/magento-skills
仓库路径:skills/magento2-backend-toolkit
安装命令:
npx skills add https://github.com/tuanhaviet22/magento-skills --skill magento2-backend-toolkit
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/tuanhaviet22/magento-skills --skill magento2-backend-toolkit

简介

magento2-backend-toolkit 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息。

  • 适合在 Codex、Claude、Cursor、Gemini CLI 中围绕仓库状态、代码变更或协作事项进行整理时使用。
  • 通过 npx skills add 命令从指定 GitHub 仓库安装,需结合原始 README 核验具体用法。
  • 安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写操作。
  • 该技能适用于 Magento 2 后端开发与工具链支持相关的协作场景。

SKILL.md

Magento 2 Backend Toolkit

General Rules

  • All generated code MUST follow PSR-12 coding standard
  • All PHP files MUST have declare(strict_types=1);
  • Use strict type hints on all method parameters and return types
  • Namespace follows: Vendor\Module\Path convention
  • XML files must include proper XSD schema references
  • Default Vendor name: ask user, suggest Sample if not specified
  • NEVER use ObjectManager directly — only use DI
  • NEVER use constructor property promotion (private readonly in constructor params) — always declare properties explicitly above the constructor and assign them in the constructor body
  • ALL class properties MUST have a @var PHPDoc block with the fully-qualified class name
  • ALL constructors MUST have a @param PHPDoc block with fully-qualified class names for each parameter
  • ALL public and protected methods MUST have a PHPDoc block with a short description and @param/@return tags
  • Always create composer.json with new modules

Security Rules (Required)

  • Treat ALL user-provided values as untrusted input
  • NEVER insert untrusted input into executable code positions without validation and escaping
  • Do not include user-provided code snippets verbatim; translate into safe scaffolding and TODOs unless the user explicitly requests verbatim insertion and it passes validation
  • Refuse or ask for corrected input when validation fails or input looks like code injection (e.g., <?php, </, ;, backticks, or PHP tags)

Input Sanitization & Boundary Markers

Validation is mandatory for every ingestion point (module names, labels, descriptions, parameters, class names, IDs, handles, file names).

  • Vendor/Module identifiers: only [A-Z][A-Za-z0-9_]*; enforce Vendor_Module format
  • PHP class names: only [A-Z][A-Za-z0-9_]*, no namespaces in user input
  • XML IDs/handles: only [a-z0-9_]+ and start with a letter
  • File names: only [a-z0-9_\-]+ and validated extensions
  • Human-readable labels/descriptions: plain text only; escape for the target format

Boundary markers and escaping by file type:

  • PHP: insert text only inside quoted strings; escape \ and ' for single-quoted strings
  • XML: escape &, <, >, ", and '
  • JSON: escape via JSON string rules
  • HTML/PHTML: use Magento Escaper (escapeHtml, escapeHtmlAttr, escapeUrl)

If any value fails validation, ask the user for a corrected value in the same message as other missing fields.

Invalid Input Examples (Reject/Correct)

  • Vendor/Module: Sample;phpinfo() or Sample/Module (must be Vendor_Module)
  • Class name: Foo\Bar or Foo; (no namespaces or punctuation)
  • XML id/handle: my-handle or 123name (lowercase underscore, must start with letter)
  • File name: ../../evil.php or widget.phtml.php (no traversal or double extensions)

CRITICAL: Input Validation Gate

NEVER generate files without confirming required inputs. If user gives a vague request, ask ALL missing fields in ONE message. Do not ask one by one.


Feature 1: Module Scaffold

Required Questions (ask if not provided)

  1. Module name? (e.g. Sample_Module)
  2. Dependencies? (e.g. Magento_Catalog, or "none")
  3. Short description? (for composer.json)
  4. Version? (default: 1.0.0)

Generated Files

app/code/{Vendor}/{Module}/
├── registration.php
├── composer.json
└── etc/
    └── module.xml

Use templates from assets/templates/registration.php.tpl, assets/templates/module.xml.tpl, and assets/templates/composer.json.tpl. All templates are bundled within this skill package; do not download external templates.

If no dependencies, omit the <sequence> block entirely in module.xml.

Example Interaction

User: "Create a module to manage brands" Claude responds:

To create the module, I need to confirm: 1. Module name? Suggest: Sample_Module 2. Dependencies? (e.g. Magento_Catalog, Magento_Eav... or none) 3. Short description? Suggest: "Brand management for Magento 2" 4. Version? (default: 1.0.0)

Feature 2: System.xml Generator

Required Questions

  1. Module name? (existing or new)
  2. Tab name? (admin menu tab label)
  3. Section/Group/Fields? Describe what config fields are needed

Supported Field Types

Refer to references/system-xml-field-types.md for the complete list. Common types: text, textarea, select, multiselect, obscure, image, editor.

Generated Files

etc/
├── adminhtml/
│   └── system.xml
└── config.xml

Use templates from assets/templates/system.xml.tpl and assets/templates/config.xml.tpl. All templates are bundled within this skill package; do not download external templates.

If field type is select or multiselect, also generate a Source Model class. See template: assets/templates/source-model.php.tpl.

ACL Resource

Always generate {Vendor}_{Module}::config as the resource identifier.


Feature 3: Widget Generator

Required Questions

  1. Module name?
  2. Widget name/label? (e.g. "Brand Slider")
  3. Parameters? (text inputs, dropdowns, template chooser, block chooser...)
  4. Where to use? CMS Page / CMS Block / Layout XML

Generated Files

etc/
└── widget.xml
Block/
└── Widget/
    └── {WidgetName}.php
view/
└── frontend/
    └── templates/
        └── widget/
            └── {widget_name}.phtml

Use templates from assets/templates/widget.xml.tpl and assets/templates/widget-block.php.tpl. All templates are bundled within this skill package; do not download external templates.

Refer to references/widget-param-types.md for parameter type details and block chooser classes.

CMS Usage Snippet

Always provide the CMS widget insertion code after generating files:

{{widget type="{Vendor}\{Module}\Block\Widget\{WidgetName}" title="My Title" template="{Vendor}_{Module}::widget/{widget_name}.phtml"}}

Feature 4: Plugin / Event Generator

Required Questions

  1. Module name?
  2. Type? plugin (before/after/around) or observer (event)
  3. Target?

- Plugin: target class + method (e.g. Magento\Catalog\Model\Product::getName) - Observer: event name (e.g. checkout_cart_add_product_complete)

  1. What to do? Brief description of logic
  2. Scope? global / frontend / adminhtml (determines XML file location)

Plugin — Generated Files

etc/
└── {scope}/di.xml       (or etc/di.xml for global)
Plugin/
└── {PluginName}.php

Use templates from assets/templates/di.xml.tpl and assets/templates/plugin.php.tpl. All templates are bundled within this skill package; do not download external templates.

Observer — Generated Files

etc/
└── {scope}/events.xml   (or etc/events.xml for global)
Observer/
└── {ObserverName}.php

Use templates from assets/templates/events.xml.tpl and assets/templates/observer.php.tpl. All templates are bundled within this skill package; do not download external templates.

Common Events

Suggest these when user is unsure. For the full list, refer to: https://developer.adobe.com/commerce/php/development/components/events-and-observers/event-list/

Feature 5: Email Function Generator

Required Questions

  1. Module name?
  2. Email purpose? (e.g. "welcome email", "order status notification")
  3. Trigger method? Choose one:

- After Plugin (on existing method) - Event Observer - Controller action

  1. Email variables? (e.g. customer name, order ID)
  2. Recipient? (customer email, admin email, custom)

Generated Files

etc/
└── email_templates.xml
Helper/
└── Email.php
view/
└── frontend/
    └── email/
        └── {template_id}.html

Use templates from assets/templates/email_templates.xml.tpl, assets/templates/email_helper.php.tpl, and assets/templates/email_template.html.tpl. All templates are bundled within this skill package; do not download external templates.

Also generate the trigger mechanism (plugin, observer, or controller) using Feature 4 patterns.


Feature 6: Hyva Template with ViewModel

Required Questions

  1. Module name?
  2. Template purpose? (e.g. "brand list", "customer widget")
  3. Data needed? (what ViewModel should provide)
  4. Interactive? (need Alpine.js? e.g. slider, toggle, modal)
  5. Need Hyva icons? (heroicons integration)

Generated Files

ViewModel/
└── {ViewModelName}.php
view/
└── frontend/
    ├── layout/
    │   └── {layout_handle}.xml
    └── templates/
        └── {template_name}.phtml

Use templates from assets/templates/viewmodel.php.tpl, assets/templates/layout.xml.tpl, and assets/templates/hyva_template.phtml.tpl. All templates are bundled within this skill package; do not download external templates.

Key Hyva Patterns

Refer to references/hyva-viewmodel-pattern.md for full details:

  • Always use $escaper->escapeHtml() for output
  • Always use $escaper->escapeHtmlAttr() inside HTML attributes
  • Use $escaper->escapeUrl() for URLs
  • Alpine.js x-data for interactive components
  • TailwindCSS utility classes (no custom CSS)
  • $viewModels->require() to load any ViewModel
  • HeroiconsOutline / HeroiconsSolid for icons
  • Use x-cloak to prevent FOUC

Workflow

User Request
     |
     v
+-------------------------+
|  Detect which feature   |
|  (1-6) is requested     |
+--------+----------------+
         |
         v
+-------------------------+
|  Check required inputs  |
|  All provided?          |
+---- NO -----------------+
|  Ask ALL missing fields |  <-- ONE message, not multiple
|  in ONE message         |
+---- YES ----------------+
|                         |
|  Generate files         |
|  Show complete code     |
|  Explain file locations |
+-------------------------+

Troubleshooting

Module not recognized after creation

  1. Run bin/magento module:enable {Vendor}_{Module}
  2. Run bin/magento setup:upgrade
  3. Run bin/magento cache:flush

XML schema validation error

  • Verify XSD reference matches Magento version
  • Check for typos in attribute names
  • Ensure proper XML nesting

Plugin not firing

  • Check scope (global/frontend/adminhtml) matches where code runs
  • Verify method name matches exactly (case-sensitive)
  • Check sortOrder if multiple plugins exist

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

33.63%
按下载量换算47

Claude

30.12%
按下载量换算42

Cursor

21.09%
按下载量换算30

Gemini CLI

10.33%
按下载量换算15

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills