Problem
Adding a new security tool requires editing source files in at least 3 places: src/mastra/tools/, src/lib/tools/catalog.ts, and potentially the Render JSON catalog. There is no config-driven or plugin-based registration. This prevents community contributions and makes the core codebase a bottleneck.
Goal
Design and implement a tool plugin manifest system where new tools can be registered via configuration without modifying core source files.
Acceptance Criteria
Context
src/lib/tools/catalog.ts defines a closed union of tool names
src/mastra/tools/ has individual tool definitions
- The Render JSON catalog in
src/lib/render-json/security-research-catalog.ts may need to reference tool outputs
Labels
dx, tier-3-virality-polish, help wanted
Problem
Adding a new security tool requires editing source files in at least 3 places:
src/mastra/tools/,src/lib/tools/catalog.ts, and potentially the Render JSON catalog. There is no config-driven or plugin-based registration. This prevents community contributions and makes the core codebase a bottleneck.Goal
Design and implement a tool plugin manifest system where new tools can be registered via configuration without modifying core source files.
Acceptance Criteria
src/mastra/tools/registry.tsthat loads manifests from atools/directory or config fileselectSecurityResearchToolsto use the registry instead of hardcoded importsdocs/tool-plugin-manifest.mdContext
src/lib/tools/catalog.tsdefines a closed union of tool namessrc/mastra/tools/has individual tool definitionssrc/lib/render-json/security-research-catalog.tsmay need to reference tool outputsLabels
dx,tier-3-virality-polish,help wanted