Problem
dshfind currently checks only the repository root package.json when determining whether a repository contains a DSH bundle.
This does not work for monorepos where the root package is private and the actual bundles live under workspace directories.
For example, TGYD-helige/dsh-plugins contains three independently published bundles:
packages/dsh-a2a → @amaster.ai/dsh-a2a
packages/dsh-langfuse → @amaster.ai/dsh-langfuse
packages/dsh-storage → @amaster.ai/dsh-storage
Each package declares dsh.bundle, but the root package does not. As a result, dshfind currently marks the repository as is_plugin: false.
Expected behavior
dshfind should support discovering multiple DSH bundles from a single repository and expose each bundle as a separate catalog item.
Each item should use its package name as its identity while retaining the repository URL and package subdirectory as source metadata.
Existing single-package repositories should continue working unchanged.
Possible approach
Either:
- discover bundle manifests through the root workspace configuration; or
- support an explicit repository-level configuration listing bundle directories.
An explicit configuration may be preferable if unrestricted workspace scanning is too expensive or ambiguous.
Problem
dshfind currently checks only the repository root
package.jsonwhen determining whether a repository contains a DSH bundle.This does not work for monorepos where the root package is private and the actual bundles live under workspace directories.
For example,
TGYD-helige/dsh-pluginscontains three independently published bundles:packages/dsh-a2a→@amaster.ai/dsh-a2apackages/dsh-langfuse→@amaster.ai/dsh-langfusepackages/dsh-storage→@amaster.ai/dsh-storageEach package declares
dsh.bundle, but the root package does not. As a result, dshfind currently marks the repository asis_plugin: false.Expected behavior
dshfind should support discovering multiple DSH bundles from a single repository and expose each bundle as a separate catalog item.
Each item should use its package name as its identity while retaining the repository URL and package subdirectory as source metadata.
Existing single-package repositories should continue working unchanged.
Possible approach
Either:
An explicit configuration may be preferable if unrestricted workspace scanning is too expensive or ambiguous.