Эх сурвалжийг харах

Add version field to 27 local-sourced plugins

Local-path plugins (source is a string like "./plugins/foo" in
marketplace.json) without a manifest version cache at
~/.claude/plugins/cache/{marketplace}/{plugin}/unknown/ forever.

The cache check in claude-cli's copyPluginToVersionedCache sees
pathExists(.../unknown/) → true → skips re-extraction, even after
the marketplace content updates. Users are stuck with stale plugin
files until they manually delete the cache.

Adding "version": "1.0.0" fixes this because calculatePluginVersion
reads the manifest from the freshly-synced marketplace tree (not the
stale cache), and manifest.version is priority #1 in version
resolution. New version → new cache path → cache miss → re-extract.

This is preferable to the GCS-SHA fallback approach
(anthropics/claude-cli-internal#24773) because:
- Per-plugin granularity: only bumped plugins re-extract, not all
  27 on every marketplace push
- No disk accumulation from unrelated marketplace churn
- Fixes both the runtime loader path AND the migration path
  (manifest.version is priority #1 in both)
- No claude-cli code change needed

Remote-sourced plugins (github/git/url) already get a git SHA as
their version and are unaffected.
Dickson Tsai 5 сар өмнө
parent
commit
f227eeb90c
27 өөрчлөгдсөн 36 нэмэгдсэн , 5 устгасан
  1. 1 0
      external_plugins/asana/.claude-plugin/plugin.json
  2. 1 0
      external_plugins/context7/.claude-plugin/plugin.json
  3. 1 0
      external_plugins/firebase/.claude-plugin/plugin.json
  4. 1 0
      external_plugins/github/.claude-plugin/plugin.json
  5. 1 0
      external_plugins/gitlab/.claude-plugin/plugin.json
  6. 8 1
      external_plugins/greptile/.claude-plugin/plugin.json
  7. 1 0
      external_plugins/laravel-boost/.claude-plugin/plugin.json
  8. 1 0
      external_plugins/linear/.claude-plugin/plugin.json
  9. 1 0
      external_plugins/playwright/.claude-plugin/plugin.json
  10. 1 0
      external_plugins/serena/.claude-plugin/plugin.json
  11. 1 0
      external_plugins/supabase/.claude-plugin/plugin.json
  12. 1 0
      external_plugins/terraform/.claude-plugin/plugin.json
  13. 1 0
      plugins/agent-sdk-dev/.claude-plugin/plugin.json
  14. 1 1
      plugins/code-review/.claude-plugin/plugin.json
  15. 1 1
      plugins/commit-commands/.claude-plugin/plugin.json
  16. 1 0
      plugins/explanatory-output-style/.claude-plugin/plugin.json
  17. 1 0
      plugins/feature-dev/.claude-plugin/plugin.json
  18. 1 0
      plugins/frontend-design/.claude-plugin/plugin.json
  19. 1 0
      plugins/hookify/.claude-plugin/plugin.json
  20. 1 0
      plugins/learning-output-style/.claude-plugin/plugin.json
  21. 2 1
      plugins/mcp-server-dev/.claude-plugin/plugin.json
  22. 2 1
      plugins/playground/.claude-plugin/plugin.json
  23. 1 0
      plugins/plugin-dev/.claude-plugin/plugin.json
  24. 1 0
      plugins/pr-review-toolkit/.claude-plugin/plugin.json
  25. 1 0
      plugins/ralph-loop/.claude-plugin/plugin.json
  26. 1 0
      plugins/security-guidance/.claude-plugin/plugin.json
  27. 1 0
      plugins/skill-creator/.claude-plugin/plugin.json

+ 1 - 0
external_plugins/asana/.claude-plugin/plugin.json

@@ -1,5 +1,6 @@
 {
   "name": "asana",
+  "version": "1.0.0",
   "description": "Asana project management integration. Create and manage tasks, search projects, update assignments, track progress, and integrate your development workflow with Asana's work management platform.",
   "author": {
     "name": "Asana"

+ 1 - 0
external_plugins/context7/.claude-plugin/plugin.json

@@ -1,5 +1,6 @@
 {
   "name": "context7",
+  "version": "1.0.0",
   "description": "Upstash Context7 MCP server for up-to-date documentation lookup. Pull version-specific documentation and code examples directly from source repositories into your LLM context.",
   "author": {
     "name": "Upstash"

+ 1 - 0
external_plugins/firebase/.claude-plugin/plugin.json

@@ -1,5 +1,6 @@
 {
   "name": "firebase",
+  "version": "1.0.0",
   "description": "Google Firebase MCP integration. Manage Firestore databases, authentication, cloud functions, hosting, and storage. Build and manage your Firebase backend directly from your development workflow.",
   "author": {
     "name": "Google"

+ 1 - 0
external_plugins/github/.claude-plugin/plugin.json

@@ -1,5 +1,6 @@
 {
   "name": "github",
+  "version": "1.0.0",
   "description": "Official GitHub MCP server for repository management. Create issues, manage pull requests, review code, search repositories, and interact with GitHub's full API directly from Claude Code.",
   "author": {
     "name": "GitHub"

+ 1 - 0
external_plugins/gitlab/.claude-plugin/plugin.json

@@ -1,5 +1,6 @@
 {
   "name": "gitlab",
+  "version": "1.0.0",
   "description": "GitLab DevOps platform integration. Manage repositories, merge requests, CI/CD pipelines, issues, and wikis. Full access to GitLab's comprehensive DevOps lifecycle tools.",
   "author": {
     "name": "GitLab"

+ 8 - 1
external_plugins/greptile/.claude-plugin/plugin.json

@@ -1,10 +1,17 @@
 {
   "name": "greptile",
+  "version": "1.0.0",
   "description": "AI code review agent for GitHub and GitLab. View and resolve Greptile's PR review comments directly from Claude Code.",
   "author": {
     "name": "Greptile",
     "url": "https://greptile.com"
   },
   "homepage": "https://greptile.com/docs",
-  "keywords": ["code-review", "pull-requests", "github", "gitlab", "ai"]
+  "keywords": [
+    "code-review",
+    "pull-requests",
+    "github",
+    "gitlab",
+    "ai"
+  ]
 }

+ 1 - 0
external_plugins/laravel-boost/.claude-plugin/plugin.json

@@ -1,5 +1,6 @@
 {
   "name": "laravel-boost",
+  "version": "1.0.0",
   "description": "Laravel development toolkit MCP server. Provides intelligent assistance for Laravel applications including Artisan commands, Eloquent queries, routing, migrations, and framework-specific code generation.",
   "author": {
     "name": "Laravel"

+ 1 - 0
external_plugins/linear/.claude-plugin/plugin.json

@@ -1,5 +1,6 @@
 {
   "name": "linear",
+  "version": "1.0.0",
   "description": "Linear issue tracking integration. Create issues, manage projects, update statuses, search across workspaces, and streamline your software development workflow with Linear's modern issue tracker.",
   "author": {
     "name": "Linear"

+ 1 - 0
external_plugins/playwright/.claude-plugin/plugin.json

@@ -1,5 +1,6 @@
 {
   "name": "playwright",
+  "version": "1.0.0",
   "description": "Browser automation and end-to-end testing MCP server by Microsoft. Enables Claude to interact with web pages, take screenshots, fill forms, click elements, and perform automated browser testing workflows.",
   "author": {
     "name": "Microsoft"

+ 1 - 0
external_plugins/serena/.claude-plugin/plugin.json

@@ -1,5 +1,6 @@
 {
   "name": "serena",
+  "version": "1.0.0",
   "description": "Semantic code analysis MCP server providing intelligent code understanding, refactoring suggestions, and codebase navigation through language server protocol integration.",
   "author": {
     "name": "Oraios"

+ 1 - 0
external_plugins/supabase/.claude-plugin/plugin.json

@@ -1,5 +1,6 @@
 {
   "name": "supabase",
+  "version": "1.0.0",
   "description": "Supabase MCP integration for database operations, authentication, storage, and real-time subscriptions. Manage your Supabase projects, run SQL queries, and interact with your backend directly.",
   "author": {
     "name": "Supabase"

+ 1 - 0
external_plugins/terraform/.claude-plugin/plugin.json

@@ -1,5 +1,6 @@
 {
   "name": "terraform",
+  "version": "1.0.0",
   "description": "The Terraform MCP Server provides seamless integration with Terraform ecosystem, enabling advanced automation and interaction capabilities for Infrastructure as Code (IaC) development.",
   "author": {
     "name": "HashiCorp"

+ 1 - 0
plugins/agent-sdk-dev/.claude-plugin/plugin.json

@@ -1,5 +1,6 @@
 {
   "name": "agent-sdk-dev",
+  "version": "1.0.0",
   "description": "Claude Agent SDK Development Plugin",
   "author": {
     "name": "Anthropic",

+ 1 - 1
plugins/code-review/.claude-plugin/plugin.json

@@ -1,9 +1,9 @@
 {
   "name": "code-review",
+  "version": "1.0.0",
   "description": "Automated code review for pull requests using multiple specialized agents with confidence-based scoring",
   "author": {
     "name": "Anthropic",
     "email": "support@anthropic.com"
   }
 }
-

+ 1 - 1
plugins/commit-commands/.claude-plugin/plugin.json

@@ -1,9 +1,9 @@
 {
   "name": "commit-commands",
+  "version": "1.0.0",
   "description": "Streamline your git workflow with simple commands for committing, pushing, and creating pull requests",
   "author": {
     "name": "Anthropic",
     "email": "support@anthropic.com"
   }
 }
-

+ 1 - 0
plugins/explanatory-output-style/.claude-plugin/plugin.json

@@ -1,5 +1,6 @@
 {
   "name": "explanatory-output-style",
+  "version": "1.0.0",
   "description": "Adds educational insights about implementation choices and codebase patterns (mimics the deprecated Explanatory output style)",
   "author": {
     "name": "Anthropic",

+ 1 - 0
plugins/feature-dev/.claude-plugin/plugin.json

@@ -1,5 +1,6 @@
 {
   "name": "feature-dev",
+  "version": "1.0.0",
   "description": "Comprehensive feature development workflow with specialized agents for codebase exploration, architecture design, and quality review",
   "author": {
     "name": "Anthropic",

+ 1 - 0
plugins/frontend-design/.claude-plugin/plugin.json

@@ -1,5 +1,6 @@
 {
   "name": "frontend-design",
+  "version": "1.0.0",
   "description": "Frontend design skill for UI/UX implementation",
   "author": {
     "name": "Anthropic",

+ 1 - 0
plugins/hookify/.claude-plugin/plugin.json

@@ -1,5 +1,6 @@
 {
   "name": "hookify",
+  "version": "1.0.0",
   "description": "Easily create hooks to prevent unwanted behaviors by analyzing conversation patterns",
   "author": {
     "name": "Anthropic",

+ 1 - 0
plugins/learning-output-style/.claude-plugin/plugin.json

@@ -1,5 +1,6 @@
 {
   "name": "learning-output-style",
+  "version": "1.0.0",
   "description": "Interactive learning mode that requests meaningful code contributions at decision points (mimics the unshipped Learning output style)",
   "author": {
     "name": "Anthropic",

+ 2 - 1
plugins/mcp-server-dev/.claude-plugin/plugin.json

@@ -1,6 +1,7 @@
 {
   "name": "mcp-server-dev",
-  "description": "Skills for designing and building MCP servers that work seamlessly with Claude — guides you through deployment models (remote HTTP, MCPB, local), tool design patterns, auth, and interactive MCP apps.",
+  "version": "1.0.0",
+  "description": "Skills for designing and building MCP servers that work seamlessly with Claude \u2014 guides you through deployment models (remote HTTP, MCPB, local), tool design patterns, auth, and interactive MCP apps.",
   "author": {
     "name": "Anthropic",
     "email": "support@anthropic.com"

+ 2 - 1
plugins/playground/.claude-plugin/plugin.json

@@ -1,6 +1,7 @@
 {
   "name": "playground",
-  "description": "Creates interactive HTML playgrounds — self-contained single-file explorers with visual controls, live preview, and prompt output with copy button",
+  "version": "1.0.0",
+  "description": "Creates interactive HTML playgrounds \u2014 self-contained single-file explorers with visual controls, live preview, and prompt output with copy button",
   "author": {
     "name": "Anthropic",
     "email": "support@anthropic.com"

+ 1 - 0
plugins/plugin-dev/.claude-plugin/plugin.json

@@ -1,5 +1,6 @@
 {
   "name": "plugin-dev",
+  "version": "1.0.0",
   "description": "Plugin development toolkit with skills for creating agents, commands, hooks, MCP integrations, and comprehensive plugin structure guidance",
   "author": {
     "name": "Anthropic",

+ 1 - 0
plugins/pr-review-toolkit/.claude-plugin/plugin.json

@@ -1,5 +1,6 @@
 {
   "name": "pr-review-toolkit",
+  "version": "1.0.0",
   "description": "Comprehensive PR review agents specializing in comments, tests, error handling, type design, code quality, and code simplification",
   "author": {
     "name": "Anthropic",

+ 1 - 0
plugins/ralph-loop/.claude-plugin/plugin.json

@@ -1,5 +1,6 @@
 {
   "name": "ralph-loop",
+  "version": "1.0.0",
   "description": "Continuous self-referential AI loops for interactive iterative development, implementing the Ralph Wiggum technique. Run Claude in a while-true loop with the same prompt until task completion.",
   "author": {
     "name": "Anthropic",

+ 1 - 0
plugins/security-guidance/.claude-plugin/plugin.json

@@ -1,5 +1,6 @@
 {
   "name": "security-guidance",
+  "version": "1.0.0",
   "description": "Security reminder hook that warns about potential security issues when editing files, including command injection, XSS, and unsafe code patterns",
   "author": {
     "name": "Anthropic",

+ 1 - 0
plugins/skill-creator/.claude-plugin/plugin.json

@@ -1,5 +1,6 @@
 {
   "name": "skill-creator",
+  "version": "1.0.0",
   "description": "Create new skills, improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, update or optimize an existing skill, run evals to test a skill, or benchmark skill performance with variance analysis.",
   "author": {
     "name": "Anthropic",