Skip to content

install: --platform X never writes .graphify_version (permanent upgrade warning), and install silently overwrites a modified SKILL.md #3144

Closed

Description

@ryantokam

Two separate defects in graphify install, same command, different files. Filing together since a fix likely touches the same area; happy to split if you would rather.

Same family as #2670 (per-platform install doing only part of the work), but different symptoms.


1. install --platform X never writes .graphify_version, so the upgrade warning is permanent

After pipx upgrade graphifyy (0.8.36 -> 0.9.50), every invocation printed:

warning: skill is from graphify 0.8.36, package is 0.9.50. Run 'graphify install' to update.

I ran graphify install. Exit 0, output included skill installed -> C:\Users\...\.claude\skills\graphify\SKILL.md. The warning persisted.

Cause. _check_skill_version iterates every platform destination:

for skill_dst in {_platform_skill_destination(name) for name in _PLATFORM_CONFIG}:
    _check_skill_version(skill_dst)

A plain graphify install only refreshes the detected platform. A second copy at ~/.agents/skills/graphify/ (Antigravity) still had .graphify_version = 0.8.36, and that stale marker drove the warning even though the Claude skill was current.

Then the targeted command did not fix it either. graphify install --platform antigravity reported:

Done. Open your AI coding assistant and type:
  /graphify .

...and ~/.agents/skills/graphify/.graphify_version was still 0.8.36. Only writing the marker by hand cleared the warning. So --platform X appears to write SKILL.md and references/ but not the version marker.

Net effect: a user who follows the warning's own advice sees the warning again, forever, with no indication of which destination is stale.

Suggestions

  • Write .graphify_version in the --platform X path.
  • Have the warning name the offending destination — skill at ~/.agents/... is from 0.8.36 — since the current message is unactionable when several platform dirs exist.

2. install silently overwrites a user-modified SKILL.md with no backup

We had deliberately edited the description: field in ~/.claude/skills/graphify/SKILL.md to reflect measurements from our own corpus, so the agent would route questions appropriately for our setup.

graphify install replaced the file wholesale. No diff, no prompt, no .bak. The output line:

skill installed  ->  C:\Users\...\.claude\skills\graphify\SKILL.md

does not read as "your local edits to this file are gone" — it reads like a successful no-op if you already had the skill.

Suggestions

  • If the on-disk SKILL.md differs from the bundled one, write SKILL.md.bak before overwriting and say so in the output.
  • Or detect divergence and require --force to clobber.

Minor related note, same command: install prints CLAUDE.md -> already registered (no change). For a user auditing what a tool has written into their agent configuration, that line does not say what was registered or where.

Environment

  • graphify 0.9.50 (pipx), Python 3.14, Windows 11
  • Platform dirs present: ~/.claude/skills/graphify/ and ~/.agents/skills/graphify/

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions