Complete reference of all CLI commands provided by the MageForge module.
| Group | Command | Description | Aliases |
|---|---|---|---|
| Theme | mageforge:theme:list |
List all available Magento themes | frontend:list |
| Theme | mageforge:theme:build |
Build selected themes (CSS/TailwindCSS) | frontend:build |
| Theme | mageforge:theme:watch |
Watch theme files and auto-rebuild | frontend:watch |
| Theme | mageforge:theme:clean |
Clean static files and cache directories | frontend:clean |
| Theme | mageforge:theme:inspector |
Manage Frontend Inspector (enable/disable/status) | — |
| Template | mageforge:template:override |
Copy a module template into a theme (override) | template:override |
| Dependencies | mageforge:dependencies:update |
Update the Node.js dependencies of themes | dependencies:update |
| Hyvä | mageforge:hyva:tokens |
Generate Hyvä design tokens | hyva:tokens |
| Hyvä | mageforge:hyva:compatibility:check |
Check modules for Hyvä compatibility issues | hyva:check |
| System | mageforge:system:version |
Show current and latest module version | system:version |
| System | mageforge:system:check |
Display system information (PHP, Node.js, DB, etc.) | system:check |
Lists all available Magento themes in the installation.
bin/magento mageforge:theme:list
# or alias
bin/magento frontend:listOutput: Displays a table with Code, Title, and Path for each theme.
Builds selected themes by compiling assets (CSS/TailwindCSS) and deploying static content.
bin/magento mageforge:theme:build <theme-code> [<theme-code> ...]
bin/magento frontend:build Magento/luma Magento/blankArguments:
themeCodes— One or more theme codes in formatVendor/theme. Accepts wildcards likeMagento/*.
Behavior:
- If no theme codes are provided, an interactive prompt lets you select themes.
- For each theme, the appropriate builder is determined automatically (Hyvä, TailwindCSS, Magento Standard, etc.).
- Displays a summary of built themes and execution time.
Watches theme files for changes and automatically rebuilds when modifications are detected.
bin/magento mageforge:theme:watch <theme-code>
bin/magento frontend:watch Magento/lumaArguments:
themeCode— Optional. Theme to watch in formatVendor/theme. If omitted, an interactive prompt appears.
Options:
-t, --theme=VALUE— Alternative way to specify the theme code.
Behavior:
- Runs indefinitely until interrupted (Ctrl+C).
- Monitors source files (SCSS, JS, etc.) and triggers rebuilds on change.
- Useful for active theme development.
Cleans theme static files and cache directories.
bin/magento mageforge:theme:clean [<theme-code> ...]
bin/magento mageforge:theme:clean --all
bin/magento mageforge:theme:clean --dry-runArguments:
themeCodes— Optional. One or more theme codes to clean.
Options:
-a, --all— Clean all themes.--dry-run— Show what would be cleaned without actually deleting anything.
Manage the MageForge Frontend Inspector (developer tool for inspecting blocks, templates, and performance metrics).
bin/magento mageforge:theme:inspector enable
bin/magento mageforge:theme:inspector disable
bin/magento mageforge:theme:inspector statusArguments:
action— Required. One of:enable,disable,status.
Notes:
- Requires Magento Developer Mode for enabling.
- Can also be toggled via Admin:
Stores > Configuration > MageForge > Frontend Inspector. - Browser shortcut:
Ctrl+Shift+I(Windows/Linux) orCmd+Option+I(macOS). - Not compatible with Magewire components (automatically excluded).
Copies a module view file into a theme as an override, following Magento's view file fallback logic. The command resolves both the correct source file and the correct target directory for you — including the tricky cases where Hyvä compatibility modules ship the template that is actually rendered.
bin/magento mageforge:template:override <template> --theme <theme-code>
bin/magento mageforge:template:override 'Magento_Catalog::product/view/details.phtml' --theme Vendor/theme
bin/magento mageforge:template:override vendor/magento/module-catalog/view/frontend/templates/product/view/details.phtml -t Vendor/theme
bin/magento mageforge:template:override 'Magento_Sales::order/new.html' --theme Vendor/theme
bin/magento mageforge:template:override 'Magento_Theme::css/source/_module.less' --theme Vendor/themeArguments:
template— The view file to override. Accepts theModule_Name::path/to/file.phtmlnotation or a file path (absolute, or relative to the Magento root / current directory). File paths may point into a module'sview/<area>/templates,view/<area>/emailorview/<area>/webdirectory, a Hyvä compat module, or another theme's override directory. Email templates (.html) and static view files (CSS, LESS, JS, images, fonts, ...) are detected automatically and copied to<theme>/<Module_Name>/email/or<theme>/<Module_Name>/web/respectively.
Options:
-t, --theme=VALUE— Target theme code (format:Vendor/theme). If omitted, an interactive prompt appears.--dry-run— Show source, target, and the full fallback search order without copying.-f, --force— Replace an existing override with the next file in the fallback chain (useful to reset an override to the original template).
Behavior:
- Uses Magento's own fallback rule (
RulePool) with the frontend area DI configuration loaded, so plugins like Hyvä's compat module fallback are honored. - Hyvä compat module templates are copied from the compat module (the file actually
rendered), but the override is placed under the original module's directory name,
e.g.
<theme>/Mollie_Payment/templates/...— exactly where Magento looks for it. - Email templates are handled with the same fallback logic and placed under
<theme>/<Module_Name>/email/. - Static view files (CSS, LESS, JS, images, fonts, ...) use Magento's static file fallback
and are placed under
<theme>/<Module_Name>/web/. - After copying, the command re-resolves the file to verify the new override wins and cleans
the relevant caches (
full_page,block_html,layout,translate). - If the file is already overridden in the target theme, nothing is copied unless
--forceis given.
Updates the Node.js dependencies (npm packages) of one or more themes. Works with all themes that ship their own package.json, e.g. Hyvä and TailwindCSS themes (web/tailwind/package.json). For standard Magento themes (e.g. Magento/luma) the Node.js setup in the Magento root is updated instead, since that is what builds their assets.
bin/magento mageforge:dependencies:update <theme-code> [<theme-code> ...]
bin/magento mageforge:dependencies:update Vendor/theme
bin/magento mageforge:dependencies:update Vendor/theme --dry-run
bin/magento mageforge:dependencies:update Vendor/theme --latestArguments:
themeCodes— One or more theme codes in formatVendor/theme. Accepts wildcards likeVendor/*. If omitted, an interactive prompt lets you select themes.
Options:
--dry-run— Only show the outdated packages without changing anything.-l, --latest— Update packages beyond their semver ranges to the latest available versions. This rewritespackage.jsonand may pull in breaking changes.
Behavior:
- Shows a table of all outdated packages (current, wanted, latest version and dependency type) per theme.
- By default runs a safe
npm update: packages are only updated within the semver ranges defined inpackage.json(package.jsonitself stays untouched). - With
--latest, outdated packages are updated to their latest released versions, grouped by dependency type (dependencies,devDependencies, ...). - Installs
node_modulesfirst if missing, so the report is meaningful. - Themes installed in
vendor/(managed by Composer) are skipped with an explanation. - Standard Magento themes (Luma-based, no own
package.json) fall back to thepackage.jsonin the Magento root (copied frompackage.json.sample), which powers their Grunt build. The root setup is shared, so it is updated at most once per run; if the Magento root has nopackage.json, the theme is skipped with a setup hint. Note that with--latestthis major-bumps Grunt tooling used by all standard themes. - Other themes without their own
package.jsonare skipped. - After a successful update, a hint reminds you to rebuild the affected themes with
mageforge:theme:build.
Generate Hyvä design tokens from design.tokens.json or hyva.config.json.
bin/magento mageforge:hyva:tokens [<theme-code>]
bin/magento hyva:tokens Hyva/defaultArguments:
themeCode— Optional. Theme code in formatVendor/theme. If omitted, an interactive prompt appears.
Output: Creates a generated/hyva-tokens.css file from the design tokens configuration.
Scans Magento modules for Hyvä theme compatibility issues (RequireJS, Knockout.js, jQuery, UI Components).
bin/magento mageforge:hyva:compatibility:check
bin/magento hyva:checkOptions:
-a, --show-all— Show all modules including compatible ones.-t, --third-party-only— Check only third-party modules (exclude Magento_*).--include-vendor— Include Magento core modules in the check.--detailed— Show detailed compatibility information.
Output: Displays a table with compatibility status per module.
Displays the current installed MageForge version and checks for the latest release.
bin/magento mageforge:system:version
bin/magento system:versionOutput: Shows Module Version and Latest Version (fetched from GitHub API).
Displays comprehensive system information for troubleshooting and setup validation.
bin/magento mageforge:system:check
bin/magento system:checkReports:
- PHP version and extensions
- Magento version
- Database type and version (MySQL/MariaDB)
- Node.js version (with LTS reference)
- Composer and npm versions
- Git version
- Xdebug status
- Redis status
- Search engine status (Elasticsearch/OpenSearch)
- Disk space
mageforge:theme:list → List available themes
mageforge:theme:build → Build theme assets
mageforge:theme:watch → Watch & auto-rebuild
mageforge:theme:clean → Clean static files
mageforge:theme:inspector → Manage inspector tool
mageforge:template:override → Copy module template into a theme
mageforge:dependencies:update → Update theme Node.js dependencies
mageforge:hyva:tokens → Generate Hyvä design tokens
mageforge:hyva:compatibility:check → Check Hyvä compatibility
mageforge:system:version → Show module version
mageforge:system:check → System diagnostics