Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 16 additions & 3 deletions generated/skill-catalog.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# Skill Catalog

> Auto-generated by `scripts/generate-catalog.ts` — do not edit manually.
> Generated: 2026-03-30T19:31:16.295Z
> Skills: 25
> Generated: 2026-04-07T18:27:48.496Z
> Skills: 26

## Table of Contents

Expand All @@ -23,6 +23,7 @@
| `vercel-functions` | 8 | 11 | 2 | 0 |
| `ai-gateway` | 7 | 0 | 5 | 2 |
| `env-vars` | 7 | 10 | 4 | 0 |
| `microfrontends` | 7 | 4 | 2 | 0 |
| `vercel-storage` | 7 | 15 | 48 | 8 |
| `verification` | 7 | 0 | 8 | 0 |
| `auth` | 6 | 14 | 12 | 0 |
Expand Down Expand Up @@ -328,6 +329,18 @@
- `vercel env pull` (bash)
- `vercel env add` (bash)

#### `microfrontends` (priority 7)

**Path patterns:**
- `microfrontends.json`
- `microfrontends.jsonc`
- `apps/*/microfrontends.json`
- `apps/*/microfrontends.jsonc`

**Bash patterns:**
- `\bvercel\s+microfrontends\b`
- `\bvercel\s+mf\b`

#### `vercel-storage` (priority 7)

**Path patterns:**
Expand Down Expand Up @@ -892,7 +905,7 @@ Shows which skills compete on shared bash commands.

**Priority 8:** `ai-sdk`, `bootstrap`, `chat-sdk`, `vercel-functions`

**Priority 7:** `ai-gateway`, `env-vars`, `vercel-storage`, `verification`
**Priority 7:** `ai-gateway`, `env-vars`, `microfrontends`, `vercel-storage`, `verification`

**Priority 6:** `auth`, `deployments-cicd`, `next-cache-components`, `next-forge`, `next-upgrade`, `routing-middleware`, `runtime-cache`, `shadcn`

Expand Down
65 changes: 64 additions & 1 deletion generated/skill-manifest.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"generatedAt": "2026-04-06T17:43:11.165Z",
"generatedAt": "2026-04-07T18:27:39.398Z",
"version": 2,
"skills": {
"vercel-agent": {
Expand Down Expand Up @@ -2831,6 +2831,69 @@
]
}
},
"microfrontends": {
"priority": 7,
"summary": "",
"docs": [
"https://vercel.com/docs/microfrontends"
],
"pathPatterns": [
"microfrontends.json",
"microfrontends.jsonc",
"apps/*/microfrontends.json",
"apps/*/microfrontends.jsonc"
],
"bashPatterns": [
"\\bvercel\\s+microfrontends\\b",
"\\bvercel\\s+mf\\b"
],
"importPatterns": [],
"bodyPath": "skills/microfrontends/SKILL.md",
"pathRegexSources": [
"^microfrontends\\.json$",
"^microfrontends\\.jsonc$",
"^apps\\/[^/]*\\/microfrontends\\.json$",
"^apps\\/[^/]*\\/microfrontends\\.jsonc$"
],
"bashRegexSources": [
"\\bvercel\\s+microfrontends\\b",
"\\bvercel\\s+mf\\b"
],
"importRegexSources": [],
"chainTo": [
{
"pattern": "runMicrofrontendsMiddleware|flag.*microfrontend|microfrontend.*flag",
"targetSkill": "routing-middleware",
"message": "Flag-controlled microfrontend routing requires middleware in the default app — loading Routing Middleware guidance."
}
],
"retrieval": {
"aliases": [
"microfrontends",
"multi-zones",
"multi zones",
"mfe",
"microfrontend routing",
"cross-zone navigation"
],
"intents": [
"split app into microfrontends",
"set up microfrontends",
"configure microfrontends.json",
"add path routing between projects",
"share layout across microfrontends"
],
"entities": [
"microfrontends.json",
"@vercel/microfrontends",
"default app",
"child app",
"asset prefix",
"microfrontends group"
],
"examples": []
}
},
"vercel-sandbox": {
"priority": 4,
"summary": "",
Expand Down
74 changes: 74 additions & 0 deletions skills/microfrontends/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
---
name: microfrontends
description: Guide for building, configuring, and deploying microfrontends on Vercel. Use this skill when the user mentions microfrontends, multi-zones, splitting an app across teams, independent deployments, cross-app routing, incremental migration, composing multiple frontends under one domain, microfrontends.json, @vercel/microfrontends, the microfrontends local proxy, or path-based routing between Vercel projects. Also use when the user asks about shared layouts across projects, navigation between microfrontends, fallback environments, asset prefixes, or feature flag controlled routing.
metadata:
priority: 7
docs:
- "https://vercel.com/docs/microfrontends"
pathPatterns:
- 'microfrontends.json'
- 'microfrontends.jsonc'
- 'apps/*/microfrontends.json'
- 'apps/*/microfrontends.jsonc'
bashPatterns:
- '\bvercel\s+microfrontends\b'
- '\bvercel\s+mf\b'
retrieval:
aliases:
- microfrontends
- multi-zones
- multi zones
- mfe
- microfrontend routing
- cross-zone navigation
intents:
- split app into microfrontends
- set up microfrontends
- configure microfrontends.json
- add path routing between projects
- share layout across microfrontends
entities:
- microfrontends.json
- "@vercel/microfrontends"
- default app
- child app
- asset prefix
- microfrontends group
chainTo:
-
pattern: 'runMicrofrontendsMiddleware|flag.*microfrontend|microfrontend.*flag'
targetSkill: routing-middleware
message: 'Flag-controlled microfrontend routing requires middleware in the default app — loading Routing Middleware guidance.'

---

# Vercel Microfrontends
Split a large application into independently deployable units that render as one cohesive app. Vercel handles routing on its global network using `microfrontends.json`.

**Core concepts:** default app (has `microfrontends.json`, serves unmatched requests) · child apps (have `routing` path patterns) · asset prefix (prevents static-asset collisions) · independent deployments.

**Frameworks:** Next.js (App Router + Pages Router), SvelteKit, React Router, Vite — all via `@vercel/microfrontends`.

**CLI (`vercel microfrontends` / `vercel mf`):**
- `create-group` — create a new group; interactive by default, or fully non-interactive with `--non-interactive` (options: `--name`, `--project` (repeatable), `--default-app`, `--default-route`, `--project-default-route` (repeatable, format: `<project>=<route>`, required for each non-default project in non-interactive mode), `--yes` to skip confirmation prompt); note: `--non-interactive` is blocked if adding the projects would exceed the free tier limit — the user must confirm billing changes interactively
- `add-to-group` — add the current project to an existing group; requires interactive terminal (options: `--group`, `--default-route`)
- `remove-from-group` — remove the current project from its group; requires interactive terminal (option: `--yes` skips project-link prompt only)
- `delete-group` — delete a group and all its settings, irreversible; requires interactive terminal (option: `--group` to pre-select group)
- `inspect-group` — retrieve group metadata (project names, frameworks, git repos, root dirs); useful for automating setup (options: `--group`, `--format=json`, `--config-file-name`)
- `pull` — pull remote `microfrontends.json` for local development (option: `--dpl`)
- `microfrontends proxy` — local dev proxy · `microfrontends port` — print auto-assigned port

## Finding Detailed Information

This skill includes detailed reference docs in the `references/` directory. **Do not read all references upfront.** Instead, search or grep the relevant file when the user asks about a specific topic:

| Topic | Reference file |
|---|---|
| Getting started, quickstart, framework setup, `microfrontends.json` schema, fields, naming, examples | `references/configuration.md` |
| Path expressions, asset prefixes, flag-controlled routing, middleware | `references/path-routing.md` |
| Local proxy setup, polyrepo config, Turborepo, ports, deployment protection | `references/local-development.md` |
| Inspecting groups (`inspect-group`), adding/removing projects, fallback environments, navigation, observability | `references/managing-microfrontends.md` |
| Testing utilities (`validateMiddlewareConfig`, `validateRouting`, etc.), debug headers, common issues | `references/troubleshooting.md` |
| Deployment protection, Vercel Firewall, WAF rules for microfrontends | `references/security.md` |

When the user asks about a specific topic, use grep or search over the relevant reference file to find the answer without loading all references into context.
Loading
Loading