From 4abb6513e13378dce3bbf6d2072a313af577b481 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Thu, 4 Jun 2026 19:52:54 +0000 Subject: [PATCH 1/3] Update plugin display copy --- .claude-plugin/marketplace.json | 2 +- .claude-plugin/plugin.json | 2 +- .codex-plugin/plugin.json | 6 +++--- .cursor-plugin/marketplace.json | 4 ++-- .cursor-plugin/plugin.json | 3 ++- tooling/generate.ts | 6 ++++-- tooling/manifest.test.ts | 7 +++++-- 7 files changed, 18 insertions(+), 12 deletions(-) diff --git a/.claude-plugin/marketplace.json b/.claude-plugin/marketplace.json index 46d9ef5..e452281 100644 --- a/.claude-plugin/marketplace.json +++ b/.claude-plugin/marketplace.json @@ -8,7 +8,7 @@ { "name": "mainframe", "source": "./", - "description": "Create and share short video updates from agent work." + "description": "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch." } ] } diff --git a/.claude-plugin/plugin.json b/.claude-plugin/plugin.json index 630bb5b..35b81b2 100644 --- a/.claude-plugin/plugin.json +++ b/.claude-plugin/plugin.json @@ -1,7 +1,7 @@ { "name": "mainframe", "version": "0.1.0", - "description": "Create and share short video updates from agent work.", + "description": "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch.", "author": { "name": "Mainframe", "email": "support@mainframe.app" diff --git a/.codex-plugin/plugin.json b/.codex-plugin/plugin.json index 040b345..5fadc3b 100644 --- a/.codex-plugin/plugin.json +++ b/.codex-plugin/plugin.json @@ -1,7 +1,7 @@ { "name": "mainframe", "version": "0.1.0", - "description": "Create and share short video updates from agent work.", + "description": "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch.", "author": { "name": "Mainframe", "email": "support@mainframe.app" @@ -15,8 +15,8 @@ "hooks": "./hooks/codex/hooks.json", "interface": { "displayName": "Mainframe", - "shortDescription": "Create and share short video updates from agent work.", - "longDescription": "Watch what your agents did instead of reading through all of it. Each task wraps up with a short narrated video in your own voice and company branding, so you stay up to date at a glance and can share it with your team.", + "shortDescription": "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch.", + "longDescription": "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch.", "developerName": "Mainframe", "category": "Productivity", "logo": "./assets/logo.png" diff --git a/.cursor-plugin/marketplace.json b/.cursor-plugin/marketplace.json index 24a7656..a5bb199 100644 --- a/.cursor-plugin/marketplace.json +++ b/.cursor-plugin/marketplace.json @@ -5,13 +5,13 @@ "email": "support@mainframe.app" }, "metadata": { - "description": "Create and share short video updates from agent work." + "description": "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch." }, "plugins": [ { "name": "mainframe", "source": ".", - "description": "Create and share short video updates from agent work." + "description": "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch." } ] } diff --git a/.cursor-plugin/plugin.json b/.cursor-plugin/plugin.json index 2e85ad6..64f7aee 100644 --- a/.cursor-plugin/plugin.json +++ b/.cursor-plugin/plugin.json @@ -1,7 +1,7 @@ { "name": "mainframe", "version": "0.1.0", - "description": "Create and share short video updates from agent work.", + "description": "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch.", "author": { "name": "Mainframe", "email": "support@mainframe.app" @@ -10,6 +10,7 @@ "repository": "https://github.com/mainframecomputer/mainframe-plugins.git", "license": "UNLICENSED", "keywords": ["mainframe", "agent-skills", "mcp", "hooks", "video"], + "displayName": "Mainframe", "logo": "assets/logo.png", "skills": "./skills", "mcpServers": "./.mcp.json", diff --git a/tooling/generate.ts b/tooling/generate.ts index 7a35d7b..099b15b 100644 --- a/tooling/generate.ts +++ b/tooling/generate.ts @@ -36,9 +36,10 @@ const metadata = MetadataSchema.parse({ displayName: "Mainframe", packageName: "@mainframe/plugins", version: "0.1.0", - description: "Create and share short video updates from agent work.", + description: + "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch.", longDescription: - "Watch what your agents did instead of reading through all of it. Each task wraps up with a short narrated video in your own voice and company branding, so you stay up to date at a glance and can share it with your team.", + "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch.", category: "Productivity", author: { name: "Mainframe", @@ -67,6 +68,7 @@ const sharedManifest = { function main(): void { writeJson(".cursor-plugin/plugin.json", { ...sharedManifest, + displayName: metadata.displayName, logo: metadata.logo, skills: metadata.skillDirectory, mcpServers: metadata.mcpServers, diff --git a/tooling/manifest.test.ts b/tooling/manifest.test.ts index 799f5fd..609be6e 100644 --- a/tooling/manifest.test.ts +++ b/tooling/manifest.test.ts @@ -12,10 +12,12 @@ const AuthorSchema = z const RepositorySchema = z.literal("https://github.com/mainframecomputer/mainframe-plugins.git"); -const DescriptionSchema = z.literal("Create and share short video updates from agent work."); +const DescriptionSchema = z.literal( + "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch.", +); const LongDescriptionSchema = z.literal( - "Watch what your agents did instead of reading through all of it. Each task wraps up with a short narrated video in your own voice and company branding, so you stay up to date at a glance and can share it with your team.", + "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch.", ); const KeywordsSchema = z.tuple([ @@ -40,6 +42,7 @@ const SharedManifestSchema = z.object({ }); const CursorManifestSchema = SharedManifestSchema.extend({ + displayName: z.literal("Mainframe"), logo: z.literal("assets/logo.png"), hooks: z.literal("./hooks/cursor/hooks.json"), }).strict(); From ab0e7ba1cbe8f119ea29c326fa3694deccba9d83 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Thu, 4 Jun 2026 20:01:52 +0000 Subject: [PATCH 2/3] Add Claude plugin display name --- .claude-plugin/marketplace.json | 1 + .claude-plugin/plugin.json | 1 + tooling/generate.ts | 2 ++ tooling/manifest.test.ts | 2 ++ 4 files changed, 6 insertions(+) diff --git a/.claude-plugin/marketplace.json b/.claude-plugin/marketplace.json index e452281..de39bd0 100644 --- a/.claude-plugin/marketplace.json +++ b/.claude-plugin/marketplace.json @@ -7,6 +7,7 @@ "plugins": [ { "name": "mainframe", + "displayName": "Mainframe", "source": "./", "description": "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch." } diff --git a/.claude-plugin/plugin.json b/.claude-plugin/plugin.json index 35b81b2..be5fa74 100644 --- a/.claude-plugin/plugin.json +++ b/.claude-plugin/plugin.json @@ -10,6 +10,7 @@ "repository": "https://github.com/mainframecomputer/mainframe-plugins.git", "license": "UNLICENSED", "keywords": ["mainframe", "agent-skills", "mcp", "hooks", "video"], + "displayName": "Mainframe", "skills": "./skills", "mcpServers": "./.mcp.json", "hooks": "./hooks/claude/hooks.json" diff --git a/tooling/generate.ts b/tooling/generate.ts index 099b15b..309ae8f 100644 --- a/tooling/generate.ts +++ b/tooling/generate.ts @@ -149,6 +149,7 @@ function codexMarketplace() { function claudeManifest() { return { ...sharedManifest, + displayName: metadata.displayName, skills: metadata.skillDirectory, mcpServers: metadata.mcpServers, hooks: CLAUDE_HOOKS, @@ -166,6 +167,7 @@ function claudeMarketplace() { plugins: [ { name: metadata.name, + displayName: metadata.displayName, source: "./", description: metadata.description, }, diff --git a/tooling/manifest.test.ts b/tooling/manifest.test.ts index 609be6e..ca62355 100644 --- a/tooling/manifest.test.ts +++ b/tooling/manifest.test.ts @@ -62,6 +62,7 @@ const CodexManifestSchema = SharedManifestSchema.extend({ }).strict(); const ClaudeManifestSchema = SharedManifestSchema.extend({ + displayName: z.literal("Mainframe"), hooks: z.literal("./hooks/claude/hooks.json"), }).strict(); @@ -159,6 +160,7 @@ describe("generated plugin manifests", () => { z .object({ name: z.literal("mainframe"), + displayName: z.literal("Mainframe"), source: z.literal("./"), description: DescriptionSchema, }) From 17bc2c2b31002ac167b16acd6455da89c01b49b0 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Thu, 4 Jun 2026 20:37:44 +0000 Subject: [PATCH 3/3] Split plugin short and long descriptions --- .claude-plugin/marketplace.json | 2 +- .claude-plugin/plugin.json | 2 +- .codex-plugin/plugin.json | 4 ++-- .cursor-plugin/marketplace.json | 4 ++-- .cursor-plugin/plugin.json | 2 +- tooling/generate.ts | 3 +-- tooling/manifest.test.ts | 4 +--- 7 files changed, 9 insertions(+), 12 deletions(-) diff --git a/.claude-plugin/marketplace.json b/.claude-plugin/marketplace.json index de39bd0..c07dddd 100644 --- a/.claude-plugin/marketplace.json +++ b/.claude-plugin/marketplace.json @@ -9,7 +9,7 @@ "name": "mainframe", "displayName": "Mainframe", "source": "./", - "description": "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch." + "description": "Create and share short video updates from agent work." } ] } diff --git a/.claude-plugin/plugin.json b/.claude-plugin/plugin.json index be5fa74..36d75c9 100644 --- a/.claude-plugin/plugin.json +++ b/.claude-plugin/plugin.json @@ -1,7 +1,7 @@ { "name": "mainframe", "version": "0.1.0", - "description": "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch.", + "description": "Create and share short video updates from agent work.", "author": { "name": "Mainframe", "email": "support@mainframe.app" diff --git a/.codex-plugin/plugin.json b/.codex-plugin/plugin.json index 5fadc3b..04dacaf 100644 --- a/.codex-plugin/plugin.json +++ b/.codex-plugin/plugin.json @@ -1,7 +1,7 @@ { "name": "mainframe", "version": "0.1.0", - "description": "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch.", + "description": "Create and share short video updates from agent work.", "author": { "name": "Mainframe", "email": "support@mainframe.app" @@ -15,7 +15,7 @@ "hooks": "./hooks/codex/hooks.json", "interface": { "displayName": "Mainframe", - "shortDescription": "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch.", + "shortDescription": "Create and share short video updates from agent work.", "longDescription": "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch.", "developerName": "Mainframe", "category": "Productivity", diff --git a/.cursor-plugin/marketplace.json b/.cursor-plugin/marketplace.json index a5bb199..24a7656 100644 --- a/.cursor-plugin/marketplace.json +++ b/.cursor-plugin/marketplace.json @@ -5,13 +5,13 @@ "email": "support@mainframe.app" }, "metadata": { - "description": "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch." + "description": "Create and share short video updates from agent work." }, "plugins": [ { "name": "mainframe", "source": ".", - "description": "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch." + "description": "Create and share short video updates from agent work." } ] } diff --git a/.cursor-plugin/plugin.json b/.cursor-plugin/plugin.json index 64f7aee..3ba67ae 100644 --- a/.cursor-plugin/plugin.json +++ b/.cursor-plugin/plugin.json @@ -1,7 +1,7 @@ { "name": "mainframe", "version": "0.1.0", - "description": "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch.", + "description": "Create and share short video updates from agent work.", "author": { "name": "Mainframe", "email": "support@mainframe.app" diff --git a/tooling/generate.ts b/tooling/generate.ts index 309ae8f..5af20ba 100644 --- a/tooling/generate.ts +++ b/tooling/generate.ts @@ -36,8 +36,7 @@ const metadata = MetadataSchema.parse({ displayName: "Mainframe", packageName: "@mainframe/plugins", version: "0.1.0", - description: - "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch.", + description: "Create and share short video updates from agent work.", longDescription: "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch.", category: "Productivity", diff --git a/tooling/manifest.test.ts b/tooling/manifest.test.ts index ca62355..b5eccdf 100644 --- a/tooling/manifest.test.ts +++ b/tooling/manifest.test.ts @@ -12,9 +12,7 @@ const AuthorSchema = z const RepositorySchema = z.literal("https://github.com/mainframecomputer/mainframe-plugins.git"); -const DescriptionSchema = z.literal( - "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch.", -); +const DescriptionSchema = z.literal("Create and share short video updates from agent work."); const LongDescriptionSchema = z.literal( "Turn agent work into videos your team can keep up with. Agents can generate a short video or upload one they recorded themselves, narrated in your voice and styled with your brand. Every video becomes a link your team can watch.",