Skip to content

squad-cli crashes on start: FSStorageProvider not exported from squad-sdk #738

Closed

Description

@bradygaster

Bug

squad-cli v0.9.2-insider.5 crashes immediately on any command (including \squad watch) with:

\
SyntaxError: The requested module '@bradygaster/squad-sdk' does not provide an export named 'FSStorageProvider'
at ModuleJob._instantiate (node:internal/modules/esm/module_job:182:21)
\\

Root Cause

The CLI imports \FSStorageProvider\ from @bradygaster/squad-sdk\ (e.g., in \detect-squad-dir.js, \cli-entry.ts, and 30+ other files). The storage abstraction layer (\src/storage/) exists in the SDK source and is re-exported from \src/index.ts\ via \�xport * from './storage/index.js', but the published npm package (v0.9.1) was built before the storage module was added. The dist doesn't include \storage/.

Reproduction

\\�ash
npm install -g @bradygaster/squad-cli@0.9.2-insider.5
squad watch

-> SyntaxError: FSStorageProvider not exported

\\

Fix

Publish a new version of @bradygaster/squad-sdk\ that includes the \dist/storage/\ directory and its exports. The source is already correct — this is purely a publish-timing issue.

Workaround

Build and link locally from the monorepo:

\\�ash
cd squad-monorepo
npm run build
cd packages/squad-sdk && npm link
cd ../squad-cli && npm link @bradygaster/squad-sdk && npm link
\\

Also remove any stale nested SDK:
m -rf packages/squad-cli/node_modules/@bradygaster/squad-sdk\ so the workspace junction resolves correctly.

Activity

  1. bradygaster commented on Apr 8, 2026

    @bradygaster
    CollaboratorAuthor

    Closing — FSStorageProvider is now properly exported from the SDK barrel file. Upgrade to latest insider build if still hitting this.

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

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions