Skip to content

Bug: extensions directory not included in package build #6

@rhnvrm

Description

@rhnvrm

Description

The gateway-install.sh script doesn't copy the extensions/ directory to the output, even though it exists in the source at the pinned commit. This causes built-in channel plugins (Discord, Telegram, etc.) to not load.

Environment

  • nix-clawdbot: latest main branch
  • Pinned source: commit c21469b282213cbcc1858921dc668b1cc5e29f7e

Root Cause

In nix/scripts/gateway-install.sh, only these directories are copied:

  • dist
  • node_modules
  • package.json
  • ui

The extensions/ directory is missing from this list.

Impact

Channels like Discord don't load because the plugin registration code lives in extensions/discord/. The core Discord functionality exists in dist/discord/ but without the extension wrapper, it's never registered as a channel plugin.

Gateway logs show no Discord initialization - channels list shows empty.

Workaround

Manually extract extensions from the pinned commit to ~/.clawdbot/extensions/:

mkdir -p ~/.clawdbot/extensions
cd ~/.clawdbot/extensions
curl -sL 'https://github.com/clawdbot/clawdbot/archive/c21469b282213cbcc1858921dc668b1cc5e29f7e.tar.gz' \
  | tar xz --strip-components=2 'clawdbot-c21469b282213cbcc1858921dc668b1cc5e29f7e/extensions/discord'

Then restart the gateway - Discord will load from the global extensions directory.

Suggested Fix

Add extensions to the copy list in gateway-install.sh:

cp -r dist node_modules package.json ui extensions "$out/lib/clawdbot/"

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions