Monorepos
Buttons scans package.json and composer.json files in nested directories, so a monorepo is handled naturally:
project/├── package.json├── apps/│ └── web/package.json├── packages/│ └── api/package.json└── plugin/composer.jsonEach script’s terminal is opened with its working directory set to the script’s packageDir, so pnpm dev in apps/web runs in the right place. Nested packages are assumed to share the workspace’s package manager.
How it appears
Section titled “How it appears”Scripts from nested packages show up in the Project scripts tab with their relative path — for example packages/api/package.json — and are stored in .buttons.json with their packageDir and file fields set accordingly. See .buttons.json for the exact format.
Ignored directories
Section titled “Ignored directories”Installed packages, VCS, and build output are skipped during discovery so only your own source is scanned. For the full list, see Script scanning.