You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
php artisan register:app fails: "There are no commands defined in the "register" namespace" #1606
Registering a private app as described in the Heimdall-Apps wiki no longer works. The command exists in app/Console/Commands/RegisterApp.php, but artisan does not know it.
Steps to reproduce
Put a private app folder, e.g. MyApp, into SupportedApps.
withRouting() then calls withCommands([routes/console.php]). Because that array is not empty, ApplicationBuilder::withCommands() does not add its default path app/Console/Commands. As a result, RegisterApp is never discovered.
Suggested fix
Register the commands directory explicitly in bootstrap/app.php, for example:
changed the title [-]php artisan register:app fails: "There are no commands defined in the \"register\" namespace"[/-][+]php artisan register:app fails: "There are no commands defined in the "register" namespace"[/+]on Sep 16, 2026
Thanks for the detailed report. Reproduced in the 2.8.3 image, fix is in #1607.
The cause turned out to be slightly different from the withRouting() one: Application::configure() already adds app/Console/Commands, but only once providers have finished booting. On startup Heimdall checks for public/storage/.gitignore and runs storage:link if it is missing. The Docker image does not ship that file, so storage:link ran on every start, and calling Artisan during provider boot locks in the command list before app/Console/Commands is added. So explicitly adding the path in bootstrap/app.php would not have helped either.
Until the fix is released, a simpler workaround than the script is to create that file once in the container:
Activity
[-]php artisan register:app fails: "There are no commands defined in the \"register\" namespace"[/-][+]php artisan register:app fails: "There are no commands defined in the "register" namespace"[/+]KodeStar commentedon Oct 3, 2026
Thanks for the detailed report. Reproduced in the 2.8.3 image, fix is in #1607.
The cause turned out to be slightly different from the
withRouting()one:Application::configure()already addsapp/Console/Commands, but only once providers have finished booting. On startup Heimdall checks forpublic/storage/.gitignoreand runsstorage:linkif it is missing. The Docker image does not ship that file, sostorage:linkran on every start, and calling Artisan during provider boot locks in the command list beforeapp/Console/Commandsis added. So explicitly adding the path inbootstrap/app.phpwould not have helped either.Until the fix is released, a simpler workaround than the script is to create that file once in the container:
(It lives inside the container, so it needs redoing if the container is recreated.)