n98-magerun release 1.99.0 – Fix for autoloader bug / Support for developer mode

We released today n98-magerun version 1.99.0. The release contains one important bugfix which solves autoloading issues introduced with V1.98.0.
The new release contains one new feature. It is now possible to run n98-magerun in Magento Developer Mode by adding the global option “–developer-mode” to a call.

  • Fix: Fatal error w/ Magento Composer Installer (by Luke Rodgers and Tom Klingenberg, #938)
  • Remove PHP 5.3 after travis ended support (by Christian Münch, #941)
  • Support for Magento developer mode (by Luke Rodgers, #940)

Major Break in next n98-magerun2 version / Config-Commands

According to the new native config:set command in the upcoming Magento 2.2 version we need to rename our n98-magerun2 command “config:set” to “config:store:set”.
We also rename the “config:delete” and “config:get” commands to have a consistent names.

Please note that you have to change custom scripts using “config:set”, “config:get” and “config:delete” to be compatible with the next n98-magerun2 release.

Further informations about the Magento 2.2 changes can be found in the developer docs:


n98-magerun 1/2 Release Bundle


We are happy to announce two new n98-magerun releases. It is the first time we release both Versions at once.
Both versions contain new features and a ton of bug fixes. With the future releases we try to mainline the code of both repositories. Our “gatekeeper” Tom Klingenberg is responsible for this.

Changelog n98-magerun1 (Version 1.98.0)

  • Fix: Borken image badge in readme (by Tom Klingenberg)
  • Fix: Check Suhosin phar support (report by Decorate, fix by Tom Klingenberg, #926)
  • Fix: File hash is optional in package.xml (report by Viktor Szépe, fix by Tom Klingenberg, #927)
  • Fix: Show full path for phpstorm autocompletion folder (by Carlos Reynosa, #922)
  • Fix: Enterprise Edition detection / enabling commands (report by Luke Rodgers, fix by Tom Klingenberg, #902)
  • Fix: Nonexistent class reference in config (by Tom Klingenberg)(by Chris Potter, #909)
  • Fix: File integrity checking guide (by Max Chadwick, #896)
  • Fix: Prevent sys:setup:run from ending script (report by Tjerk Ameel, #895)
  • Fix: Updates script command to have non-zero exit code
  • Fix: Remove duplicate entry in config.yaml (by Alexander Menk, #914)
  • Fix: Restore historic packages for install command (by Tom Klingenberg)
  • Fix: Compatibility for installed Symfony 3 components (by Christian Münch)
  • Fix: Update readme (by Goose)
  • New: Add package magento-mirror- (by Peter O’Callaghan, #894)
  • New: Add current Magento version (by Jonas Hüning, #920)
  • New: Add current Magento version (by Will-B, #930)
  • New: Check Suhosin phar support (by Tom Klingenberg, #926)
  • New: New commands to clear media and css cache (by Christian Münch, #932)
  • New: Streamlining of N98-Magerun1 and N98-Magerun2 (by Tom Klingenberg)

New Commands

Changelog n98-magerun2 (Version 1.6.0)

  • Feature: Add Magento Open Source Edition 2.1.8 (by Alexander Menk)
  • Feature: App state injection support in sys:check command (by Manuel Schmid / Christian Münch)
  • Feature: Improve db:dump command (by Scott Buchanan, #303 #304)
  • Fix: GMT timestamps for Magento 2.2.0 (by Tom Klingenberg, #296)
  • Fix: Typo in install command (by Tom Klingenberg / Tim Neutken, #297)
  • Fix: Typo in readme (Chris Orlando, #301)

Area Code Injection for sys:check

It is now possible to have check commands for different app areas. Before the change all checks was running in “adminhtml” area. Sometimes we need a check for e.g. the frontend or other areas. This is now possible. The commands are now running in area context.

To define a specific area in your check you must implement the new \N98\Magento\Framework\AreaAware interface.
The interface contain only a method which returns the name of the area.


n98-magerun2 1.5.0 is available

Hi everyone,

after our last release before Magento Imagine 2017 we are back again with a new release for you guys.
The new release contains one new command and some ports of n98-magerun1 features to existing n98-magerun2 commands.
Also we fixed some bugs related to the DB logic or improved the developer console.

New Command index:trigger:recreate

The new command is handy to recreate triggers on the fly. If you are not familiar with the new index logic: If you change the index mode of an indexer in Magento 2 the system will create DB triggers on the fly.
If one of the “mview.xml” files is changed the triggers should be regenerated. Why do we need this command? With this command you can force to regenerate the triggers during develpment. It is not needed to wait for a cronjob which triggers the regeneration. Also there are some edgecases. A trigger is assigned to the DB user who created the trigger. It this user will be removed from the system the trigger is in an invalid state. With the new command you are able to recreate the triggers with the new user so that the trigger are can work again.

Developer Console

Are you a fan of the dev:console command and the useful “make” commands? If yes, you should know Jacques Bodin-Hullin,
He is a smart guy and had the initial idea of the stateful commands. The n98-magerun2 commands are a clone of the great Installer tool features.

Thanks Jacques!


The release contains a lot of refactoring work under the hood by Tom Klingenberg. He is currently streamlining some utility classes so that we can share the code between n98-magerun1 and n98-magerun2. Thanks Tom!

Complete Changelog

  • Fix: Add Phar checksum guide to readme (report by Max Chadwick, fix by Tom Klingenberg, #279)
  • Fix: Prevent exceptions in dev:console from being suppressed and hidden (by Jason Woods, #282)
  • Fix: Sync optimize() with Magerun1 (by Alexander Menk, #291)
  • Fix: Updates script command to have non-zero exit code (by Christian Münch)
  • Fix: customer:create shows incorrect notice (by Christian Münch, #289)
  • Imp: Streamline db:dump with Magerun (by Tom Klingenberg)
  • Imp: Optimize description of –add-time option (by Christian Münch, #281)
  • New: Add current Magento2 versions (by Kristof Ringleff, #292)
  • New: Port db:dump –exclude from Magerun 1 (by Torrey Tsui, #294)
  • New: Command index:trigger:recreate (by Christian Münch)




Our Magento Imagine gift: n98-magerun2 version 1.4.0 is out!

Like promised in a tweet we deployed the stable version of n98-magerun2 before the start of Magento Imagine 2017. The new release contains five new commands and some bugfixes.


List EAV attributes

My colleague Jürgen Thelen ported two Magerun 1 commands to V2. One of it is “eav:attribute:list” which can give you a list of all your EAV attibutes.

n98-magerun2.phar eav:attribute:list

The output is a list of attributes which can filtered by entity type.

n98-magerun2.phar eav:attribute:list –add-source –add-backend –filter-type=customer

Clear your asset cache

The second command ported by Jürgen is to clear static assets.

n98-magerun2.phar dev:asset:clear

After the deletion you get a list of the affected files.

Print the merged XML config data

It’s now possible to see the ACL tree in correct order.

n98-magerun2.phar config:data:acl

The second config related command prints the “DI config”. It can be filtered by scope/area.


n98-magerun2.phar config:data:di --scope webapi_soap "Magento\Framework\App\FrontControllerInterface"



  • sys:cron:schedule ‘area code is not set’ exception. (by Pieter Hoste, #277)
  • Allow -1 as value for infinite max nesting level for xdebug (by Peter Jaap, #278)
  • Generate a shorter version of registration.php (by Alexander Turiak #280)

Find available updates for installed modules

The Hypernode team of byte a hosting company in the Netherlands created a very useful n98-magerun plugin to detect outdated modules in your shop.

You can find the plugin on github.

The plugins adds two new command to your command list:

  • sys:modules:list-updates
  • sys:info:patches

The command sys:modules:list-updates command checks your locally installed modules against a list of 500 community modules and prints all module which are outdated.


The other command sys:info:patches prints all not applied official patches.


Thanks Byte for this useful n98-magerun plugin.


Magerun 2.0 is alive!

n98-magerun2 Logo

If you missed it: V2 of n98-magerun dedicated for Magento 2 is here!
We deployed it on November 11 before an exclusive “Stammtisch” after the official Magento 2 release.
As you can imagine we had to fix several issues after the official Magento 2 launch one day before.


Released n98-magerun version 1.97.0


A new version of n98-magerun spreads the world. This release focus software refactorings.
To check the improvements we added our project to scrutinizer.


As you can see in the list out team and the community did a lot of work during the last weeks.


The release contains also some functionality improvements like a correcred cookie domain check in sys:check command or checksums for installer download sources.

One big advantage for command developers is the new “soft init” mode. Some commands need only the Magento autoloading and not a fully initialized store.
A new parameter “$soft” was added to initMagento method.

Example command code:

Magento CE

The official Magento CE is currently not available as simple download. You need to login at to download the source code.
So we are not able to provide you an official download.
As alternative the “magento-mirror-” ( was added to the list of downloads.

If the official download url will be published we will add it n98-magerun.


  • #549 general code cleanup (by Simon Bräuer)
  • #564 Print only magento version -> sys:info command (by David Alger)
  • #572 fixes and improvements (by Tom Klingenberg)
  • #573 Improve observer list accuracy (by Peter O’Callaghan)
  • #574 reduced complexity observer list command (by Tom Klingenberg)
  • #580 reset magento root folder in N98\Magento\Application::reinit (by Claudio Kressibucher)
  • #590 Bugfix/Bash Completion on OS X (by Joey Hoer)
  • #591 Bugfix/Configuration Agnostic ZSH Completion (by Joey Hoer)
  • #593 n98-magerun.phar dev:module:create –add-all does not create setup scripts (by Michael Lühr)
  • #599 Excluding wishlist tables (by Aaron Edmonds)
  • #600 Update lookup command (by Tomas Liubinas)
  • #602 Update Travis configuration (by Tom Klingenberg)
  • #603 Feature/autoload restorer (by Tom Klingenberg)
  • #604 Fix Cookie Domain validation (by Tom Klingenberg)
  • #610 Checksum for package downloads (by Tom Klingenberg)
  • #614 Package magento-mirror- (by Achim Rosenhagen)
  • #618 CommandTester normalization of Display (by Tom Klingenberg)

Update to latest version

Please note that we changed the download path of all phar files with the last release. This means that We don’t update the phar file at github anymore.
If you are updating and fetch version 1.96.1 you should run “self-update” again.

To directly download the phar file from our server please visit


Changed download URLs for phar version


Please note that the download of the phar version of n98-magerun from github is now deprecated.
We created a new file hub to deliver phar files of each version.

The new website will provide nightly builds of the development version.
Our goal is to remove the phar to reduce the repository size (i.e. for a faster composer installation) file from main repository in the next half year.

If n98-magerun is used in any automatization you should replace the download url to the new one.



Download Hub

If you visit the new download page you will see a list of links to the generated phar files.
The new site lists version of n98-magerun for Magento 1 and n98-magerun2 for Magento 2 on the same page.


The new phar file creation service will give us more speed to provide new versions of n98-magerun and n98-magerun2.
We hope you like the new service.


Released n98-magerun version 1.96.0


We release a new version of our Magento CLI tool.

The changelog in this release is a little bit longer. Thats the result of the great community which supports the tool with great new features and many bug fixes to stabilize it in every new release.
The new release adds many new features (admin:user:change-status, dev:theme:info) or extends existing commands like db:dump or the installer.

If you created some issues in the last weeks you should be noticed that two developers of netz98 are now maintaining the issues beside me. They also develop new features and do QA for the project.
You can identify them on github by there usernames redshark1802 and tkn98.
I hope you like that good news. With the bigger core team we try to solve all the incoming issues with shorter response times.


  • #505 new command admin:user:change-status (by Cristian Quiroz)
  • #514 Some small database connection & db:info improvements (by Pieter Hoste)
  • #515 Autocompletion for oh-my-zsh (by Johannes Klein)
  • #517 Update ordering of compare-versions so that output is alphabetised (by Luke Rodgers)
  • #518 PhpStorm autocompletion / Mac folde (by Rafael Correa Gomes)
  • #522 Add db_prefix support to installer command. (by Peter O’Callaghan)
  • #524 Update readme.rst (by Mehdi Chaouch)
  • #526 Hide password when creating admin account. (by Peter O’Callaghan)
  • #527 Fix global options swallowing arguments. (by Peter O’Callaghan)
  • #532 Optimization fixes and improvements (by Alexander Menk)
  • #533 Unattended install fail when unable to access database, but still produce clean exit code. (by Simon Bräuer)
  • #535 Added display current design settings on particular store (by Lucas Olucha)
  • #537 Fixing plurality language in rewrite conflict detection (by Steve Robbins)
  • #538 dev:console disappeared (by Christian Münch)
  • #542 Add tests for some of the admin:user commands. (by Peter O’Callaghan)
  • #544 Fixing travis integration (by Steve Robbins)
  • #553 Add option to dump binary columns using hexadecimal notation (by David Moises Paz Reyes)
  • Added windows system utilities (by Tom Klingenberg)
  • Support for git bash (by Tom Klingenberg)
  • Added Magento to installer (by Christian Münch)
  • Added –only-download option to Magento installer
  • Updated 3rd party components