Skip to content

feat: node.js app doesn't reload when files change #283

Closed

Description

@EvHaus

Question

I'm using Bolt JS with Slack CLI (slack run command). If I modify the manifest.json file in the root of my project, I see:

File change detected: /slack-bolt-app/manifest.json, reinstalling app...
App successfully reinstalled

However, if I modify any other application file, my app isn't reloaded. This is frustrating because I have to shutdown and restart the Slack app on every line change I want to test.

Looking at the code, I see that (maybe) the Slack CLI provides some mechanisms already to specify the Regex file paths which should be monitored for changes (code)? But I'm not sure how to use them slack run --watch says "unknown flag: --watch".

Any advice on how I could debug this further would be great.

Version

Using slack v3.9.2

OS Info

ProductName: macOS
ProductVersion: 26.1
BuildVersion: 25B78
Darwin Kernel Version 25.1.0: Mon Oct 20 19:33:00 PDT 2025; root:xnu-12377.41.6~2/RELEASE_ARM64_T6020

Steps to reproduce:

  1. Run the getting started Bolt JS app: https://github.com/slackapi/bolt-js/tree/main/examples/getting-started-typescript
  2. Modify a file in src/
  3. BUG: Slack app is not reinstalled

Expected result:

Any file changes in my project should trigger an Slack app reinstall when using slack run

Actual result:

Nothing happens

Requirements

  • I've read and understood the Contributing guidelines and have done my best effort to follow them.
  • I've read and agree to the Code of Conduct.
  • I've searched for any related issues and avoided creating a duplicate issue.

Activity

  1. added
    untriagedAn issues and pull request that needs to be looked at by a maintainer
    on Dec 1, 2025
  2. added
    questionM-T: User needs support to use the project
    and removed
    untriagedAn issues and pull request that needs to be looked at by a maintainer
    on Dec 1, 2025
  3. mwbrooks commented on Dec 1, 2025

    @mwbrooks
    Member

    Hi @EvHaus 👋🏻

    Thank you for the sharing this feedback! 🙇🏻 We're aware of this feature gap, but haven't been able to prioritized it. Thanks to your feedback, we should be able to move this up our backlog 🙂

    I understand how frustrating this can be for your development workflow. A workaround is to add the following line to your project's .slack/hooks.json file:

    "start": "node --watch app.js"

    A complete version of your file may look like:

    {
      "hooks": {
        "get-hooks": "npx -q --no-install -p @slack/cli-hooks slack-cli-get-hooks",
        "start": "node --watch app.js"
      }
    }

    You could also change this to run a custom npm script, such as "start": "npm run start-dev".

    As a heads up, you won't see the File change detected: message, because the file reloading is handled by the node process instead of slack.

    Thanks to your feedback, we'll look into how we can enable node file change detection in development while disabling it in production. 👌🏻

  4. EvHaus commented on Dec 1, 2025

    @EvHaus
    Author

    Thanks for the quick response. The hook approach seems to be working well!

  5. mwbrooks commented on Dec 1, 2025

    @mwbrooks
    Member

    Awesome, that's great to hear @EvHaus 🙌🏻

    We'll keep this issue open as a feature request for Node file change support. Thanks again for taking the time to submit it.

  6. added
    enhancementM-T: A feature request for new functionality
    semver:minorUse on pull requests to describe the release version increment
    and removed
    questionM-T: User needs support to use the project
    on Dec 1, 2025
  7. added theissue type on Dec 1, 2025
  8. changed the title [-]Not clear how to specify watch options (app doesn't reload when files change)[/-] [+]feat: Node.js app doesn't reload when files change[/+] on Dec 1, 2025
  9. changed the title [-]feat: Node.js app doesn't reload when files change[/-] [+]feat: node.js app doesn't reload when files change[/+] on Dec 1, 2025
  10. linked a pull request that will close this issuefeat: add default app and manifest watch config #89on Feb 5, 2026
  11. added this to the v3.12.0 milestone on Feb 5, 2026
  12. zimeg commented on Feb 5, 2026

    @zimeg
    Member

    🚀 The latest CLI release v3.12.0 supports automatic server restarts on file change! The following hook versions are required for this:

    @EvHaus This is such an appreciated suggestion - I'll close this issue now, but if issues arise please do feel free to comment more!

  13. zimeg commented on Feb 5, 2026

    @zimeg
    Member

    🤖 A note to typescript development recommendations is included in these release notes too - we suggest running the tsc server separate from the Slack CLI run command:

    📚 https://github.com/slackapi/node-slack-sdk/releases/tag/%40slack%2Fcli-hooks%401.3.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementM-T: A feature request for new functionalitysemver:minorUse on pull requests to describe the release version increment

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions