Skip to content

feat: restore dev mode after a marketplace auto-update - #14

Merged
grams merged 1 commit into
mainfrom
feat/dev-survives-update
Oct 10, 2026
Merged

grams merged 1 commit into
mainfrom
feat/dev-survives-update

Conversation

@grams

@grams grams commented Oct 10, 2026

Copy link
Copy Markdown
Contributor

L'auto-update de la marketplace repointe un plugin en cplugins dev sur le cache dès qu'une nouvelle version est publiée : le mode dev saute sans prévenir. dev enregistre désormais le chemin de dev dans ~/.claude/cplugins/dev.json, et repair (lancé au démarrage de session par le hook) remet le plugin sur ce chemin. undev efface l'entrée.

  • Un plugin déjà en dev sans entrée (passé en dev par une version précédente de cplugins) est enregistré au premier repair.
  • repair suit le chemin de dev actif, rétablit toutes les installs (user et project), oublie l'entrée d'un plugin désinstallé ou dont le chemin de dev a disparu.
  • Le fichier d'état ne bloque jamais repair : absent, il vaut un état vide ; illisible, il est laissé en place sans réécriture ; non parsable, il est mis de côté. Les champs inconnus sont conservés à la réécriture.
  • L'écriture atomique de installed_write.go devient claude.WriteFileAtomic, partagée.

Limite : le rétablissement arrive au démarrage de la session suivante, l'auto-update passant après le premier message. Désinstaller puis réinstaller un plugin en dev sans undev ni repair entre les deux le remet en dev : on sort du mode dev par undev.

Test du comportement de l'auto-update

Sur un poste avec autoUpdate: true pour evaneos-claude-marketplace : platform passé en dev avec sa version reculée à 1.27.2 dans installed_plugins.json, puis session interactive. L'entrée est revenue sur cache/evaneos-claude-marketplace/platform/1.27.3. Doc : https://code.claude.com/docs/en/plugins/loading#versions-and-updates (version recalculée et comparée à installed_plugins.json) et #when-auto-update-runs (après le premier message, délai jusqu'à 10 min).

🤖 Generated with Claude Code

https://claude.ai/code/session_015yD1s8VzXhcfHp2wbuFqNZ

Claude Code's plugin auto-update repoints a dev-mode plugin at the cache as
soon as the marketplace publishes a new version. dev now records the dev
path in <claudeDir>/cplugins/dev.json and repair, run at session start,
points the plugin back at it; undev drops the record.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015yD1s8VzXhcfHp2wbuFqNZ
@grams grams self-assigned this Oct 10, 2026
@grams
grams merged commit ec16229 into main Oct 10, 2026
1 check passed
@grams
grams deleted the feat/dev-survives-update branch October 10, 2026 16:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant