Skip to content
Merged
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
2 changes: 1 addition & 1 deletion .claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "vercel",
"version": "0.45.1",
"version": "0.46.0",
"description": "Build and deploy web apps and agents",
"author": {
"name": "Vercel",
Expand Down
2 changes: 1 addition & 1 deletion .cursor-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "vercel",
"version": "0.45.1",
"version": "0.46.0",
"description": "Build and deploy web apps and agents",
"author": {
"name": "Vercel",
Expand Down
2 changes: 1 addition & 1 deletion .kimi-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "vercel-plugin",
"version": "0.45.1",
"version": "0.46.0",
"description": "Comprehensive Vercel ecosystem plugin — relational knowledge graph, skills for every major product, specialized agents, and Vercel conventions. Turns any AI agent into a Vercel expert.",
"keywords": [
"vercel",
Expand Down
2 changes: 1 addition & 1 deletion .plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "vercel-plugin",
"version": "0.45.1",
"version": "0.46.0",
"description": "Comprehensive Vercel ecosystem plugin — relational knowledge graph, skills for every major product, specialized agents, and Vercel conventions. Turns any AI agent into a Vercel expert.",
"author": {
"name": "Vercel",
Expand Down
6 changes: 4 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,10 +46,11 @@ A text-form relational graph covering:
- Common cross-product workflows
- Migration awareness for sunset products

### Skills (30 skills)
### Skills (31 skills)

| Skill | Covers |
| ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| `access-protected-vercel-deployment` | Authenticated CLI and browser access to protected preview and production deployments using `vc curl`, OIDC, and Trusted Sources |
| `ai-gateway` | Unified model API, provider routing, failover, cost tracking, 100+ models |
| `ai-sdk` | AI SDK v6 — text/object generation, streaming, tool calling, agents, MCP, providers, embeddings |
| `auth` | Authentication integrations — Clerk, Descope, Auth0 setup for Next.js with Marketplace provisioning |
Expand Down Expand Up @@ -226,7 +227,7 @@ Exits non-zero if any `SKILL.md` is stale. Add to CI to catch drift.
vercel-plugin/
├── .plugin/plugin.json # Plugin manifest
├── vercel.md # Ecosystem graph + conventions (injected via SessionStart hook)
├── skills/ # 29 skills
├── skills/ # 31 skills
│ ├── ai-sdk/ # Upstream-synced skill example:
│ │ ├── overlay.yaml # Plugin injection metadata
│ │ ├── upstream/ # Pure upstream content
Expand Down Expand Up @@ -280,6 +281,7 @@ bun run build:from-skills # Stage 4: Resolve template includes
- Turbopack (default bundler in Next.js 16)
- v0 (agentic intelligence, GitHub integration)
- Vercel CLI (cache management, MCP integration, marketplace discovery)
- Protected deployment access (`vc curl`, local OIDC tokens, Trusted Sources)
- Vercel Observability (Analytics, Speed Insights, Drains)
- Vercel Marketplace (one-click integrations, unified billing)
- Agent Browser (browser automation for dev server verification and testing)
Expand Down
15 changes: 12 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-07-06T20:39:13.075Z
> Skills: 30
> Generated: 2026-07-31T16:50:47.870Z
> Skills: 31

## Table of Contents

Expand All @@ -17,6 +17,7 @@
|-------|----------|---------------|---------------|-----------------|
| `knowledge-update` | 10 | 1 | 0 | 0 |
| `workflow` | 9 | 6 | 14 | 4 |
| `access-protected-vercel-deployment` | 8 | 0 | 4 | 0 |
| `ai-sdk` | 8 | 27 | 11 | 2 |
| `bootstrap` | 8 | 10 | 6 | 8 |
| `chat-sdk` | 8 | 45 | 12 | 2 |
Expand Down Expand Up @@ -88,6 +89,14 @@
**Matched examples:**
- `lib/workflow/index.ts` (path)

#### `access-protected-vercel-deployment` (priority 8)

**Bash patterns:**
- `\b(?:vercel|vc)\s+curl\b`
- `\b(?:curl|wget)\b[^\n]*\.vercel\.app\b`
- `\bagent-browser\b[^\n]*(?:open|navigate|goto)[^\n]*\.vercel\.app\b`
- `\bx-vercel-(?:trusted-oidc-idp-token|protection-bypass)\b`

#### `ai-sdk` (priority 8)

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

**Priority 9:** `workflow`

**Priority 8:** `ai-sdk`, `bootstrap`, `chat-sdk`, `eve`, `vercel-functions`
**Priority 8:** `access-protected-vercel-deployment`, `ai-sdk`, `bootstrap`, `chat-sdk`, `eve`, `vercel-functions`

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

Expand Down
111 changes: 110 additions & 1 deletion generated/skill-manifest.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,116 @@
{
"generatedAt": "2026-07-24T23:01:08.971Z",
"generatedAt": "2026-07-31T18:16:05.834Z",
"version": 2,
"skills": {
"access-protected-vercel-deployment": {
"priority": 8,
"summary": "Access protected Vercel URLs with vercel curl or a short-lived OIDC token",
"docs": [
"https://vercel.com/docs/cli/curl",
"https://vercel.com/docs/deployment-protection/methods-to-bypass-deployment-protection/trusted-sources",
"https://vercel.com/docs/oidc#in-local-development"
],
"sitemap": "https://vercel.com/sitemap/docs.xml",
"pathPatterns": [],
"bashPatterns": [
"\\b(?:vercel|vc)\\s+curl\\b",
"\\b(?:curl|wget)\\b[^\\n]*\\.vercel\\.app\\b",
"\\bagent-browser\\b[^\\n]*(?:open|navigate|goto)[^\\n]*\\.vercel\\.app\\b",
"\\bx-vercel-(?:trusted-oidc-idp-token|protection-bypass)\\b"
],
"importPatterns": [],
"bodyPath": "skills/access-protected-vercel-deployment/SKILL.md",
"pathRegexSources": [],
"bashRegexSources": [
"\\b(?:vercel|vc)\\s+curl\\b",
"\\b(?:curl|wget)\\b[^\\n]*\\.vercel\\.app\\b",
"\\bagent-browser\\b[^\\n]*(?:open|navigate|goto)[^\\n]*\\.vercel\\.app\\b",
"\\bx-vercel-(?:trusted-oidc-idp-token|protection-bypass)\\b"
],
"importRegexSources": [],
"promptSignals": {
"phrases": [
"access protected vercel deployment",
"protected vercel deployment",
"deployment protection",
"vercel sso",
"vercel authentication page",
"behind vercel authentication",
"behind vercel sso",
"x-vercel-trusted-oidc-idp-token",
"trusted_sources_environment_mismatch",
"trusted sources environment mismatch",
"protection bypass"
],
"allOf": [
[
"vercel",
"protected"
],
[
"vercel",
"sso"
],
[
"vercel",
"403"
],
[
"deployment",
"login"
],
[
"preview",
"protected"
],
[
"production",
"protected"
]
],
"anyOf": [
"deployment",
"preview",
"production",
"curl",
"browser",
"authentication"
],
"noneOf": [
"aws deployment protection",
"github deployment protection",
"kubernetes deployment protection"
],
"minScore": 6
},
"retrieval": {
"aliases": [
"protected Vercel deployment",
"Vercel SSO bypass",
"Vercel deployment authentication",
"Vercel Trusted Sources"
],
"intents": [
"access a protected deployment",
"test a protected preview",
"verify a protected production deployment",
"authenticate browser automation to Vercel"
],
"entities": [
"vercel curl",
"VERCEL_OIDC_TOKEN",
"x-vercel-trusted-oidc-idp-token",
"Trusted Sources",
"Deployment Protection"
],
"examples": [
"preview is behind Vercel SSO",
"curl this protected Vercel deployment",
"access a protected Vercel deployment through a custom domain",
"open the protected production URL in agent-browser"
]
}
},
"ai-gateway": {
"priority": 7,
"summary": "",
Expand Down
2 changes: 1 addition & 1 deletion hooks/telemetry.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import { join, dirname } from "path";
import { homedir } from "os";
var BRIDGE_ENDPOINT = "https://telemetry.vercel.com/api/vercel-plugin/v1/events";
var FLUSH_TIMEOUT_MS = 3e3;
var PLUGIN_VERSION = true ? "0.45.1" : "0.43.0";
var PLUGIN_VERSION = true ? "0.46.0" : "0.43.0";
var ACTIVE_SESSION_TTL_MS = 60 * 60 * 1e3;
var DAU_STAMP_PATH = join(homedir(), ".config", "vercel-plugin", "dau-stamp");
var FIRST_USE_STAMP_PATH = join(homedir(), ".config", "vercel-plugin", "first-use-stamp");
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "vercel-plugin",
"version": "0.45.1",
"version": "0.46.0",
"private": true,
"license": "Apache-2.0",
"bin": {
Expand Down
Loading
Loading