Module Federation module info

Fetch metadata and manifest info for a remote Module Federation module including publicPath, remoteEntry, file URLs, and module configuration (exposes, remotes, shared).

Sby Skills Guide Bot
DevelopmentIntermediate0 views0 installs3/8/2026
Claude CodeCursorWindsurf
module-federationmicro-frontendsmetadatanodejsbundler

name: mf-module-info description: "Fetch metadata and manifest info for a remote Module Federation module — publicPath, remoteEntry, type file URLs, and the module's remotes/exposes/shared from its mf-manifest.json. Two modes: (1) inside a consumer project, pass only the remote name and the entry URL is resolved from mfConfig.remotes; (2) outside a consumer project, pass the remote name plus its remoteEntry URL directly. To inspect the current project's own config, use mf-context instead." argument-hint: <module-name> [remoteEntry-url] [project-root] allowed-tools: Bash(node *)

Step 1: Parse $ARGUMENTS:

  • First token → <module-name>
  • If a second token looks like a URL (starts with http) → <remoteEntry-url> (standalone mode); remaining tokens → [project-root]
  • Otherwise → [project-root] (consumer mode)

Step 2 — consumer mode (no URL provided): Call the mf-context Skill (passing [project-root]) to collect MFContext, then run:

node scripts/module-info.js --context '<MFContext-JSON>' --module '<module-name>'

Step 2 — standalone mode (URL provided): Run with an empty context and the explicit URL:

node scripts/module-info.js --context '{}' --module '<module-name>' --url '<remoteEntry-url>'

Step 3: Present the result from the script output:

| Field | Description | |---|---| | publicPath | Base URL of the remote | | remoteEntry | Full URL to remoteEntry.js | | typesZip | URL to @mf-types.zip | | typesApi | URL to @mf-types.api (shown only if present) | | hasSsr | Whether SSR build artifacts were detected | | exposes | Modules this remote exposes | | remotes | Remotes this module depends on | | shared | Shared dependencies declared by this module |

If result.error is set, surface it directly and stop.

Step 4 (conditional): If the user explicitly asks to see the type declarations (e.g. "show me the types", "what types does it export"), fetch result.typesZip or result.typesApi and display the relevant type definitions.

Related skills