Preflight
What happened?
I hope this bug is helpful - I am enjoying using the app but every time I update the the app I get a git sync issue between my 2 machines. Trivial to fix, but a bit annoying (especially since I am often not physically at the one machine). This is caused because the updater regenerates the installer-managed SKILL.md files and bumps the metadata.version field (I was on 0.28.2 and updated to 0.29.1). Because these files are tracked in git and synced across machines, updating the app on each machine independently rewrites the same line locally. This leaves an uncommitted working-tree change on whichever machine I update second, which blocks the sync with:
Sync paused — your local changes to .claude/skills/open-knowledge/SKILL.md, .codex/skills/open-knowledge/SKILL.md, .cursor/skills/open-knowledge/SKILL.md, +1 more conflict with incoming changes. Commit, stash, or discard them before syncing.
However, in my last case, both machines wrote the identical new version (0.29.1), so there is no real content difference, the only diff is a line the installer itself churns. (Note: I have not tried, but I think that this will also result in a version number that is incorrect in a machine that has not yet been updated.)
Some suggestions:
Keep the installer-managed version out of the tracked file. Store the skill version outside SKILL.md in a local, gitignored manifest so app updates don't rewrite a synced file. This preserves syncing of genuine user edits to the skill body while removing the churn. It will also make it so that the version number is correct across machines (as I above, I haven't tested, but I think if I update my laptop to a 0.29.1 that would make the skill version incorrect on my desktop until I update there).
Normalise the version line on merge. Ship a .gitattributes merge strategy (or have the app manage one) so the version field auto-resolves instead of conflicting.
Steps to reproduce
- Have OK running on 2 machines.
- Update on the one machine: The installer rewrites the SKILL.md files and bumps metadata.version. This gets committed/synced from machine 1.
- Update on the 2nd machine The installer rewrites the same four files locally (same new version), producing an uncommitted working-tree change on this machine.
- Machine B now has local edits that collide with A's incoming commit, which causes the sync to pause and an error to display.
Platform
macOS (Apple Silicon)
How did you install OpenKnowledge?
Desktop app (DMG)
Version
0.28.2 → 0.29.1
Logs, errors, or screenshots
Sync paused — your local changes to .claude/skills/open-knowledge/SKILL.md, .codex/skills/open-knowledge/SKILL.md, .cursor/skills/open-knowledge/SKILL.md, +1 more conflict with incoming changes. Commit, stash, or discard them before syncing.
Preflight
What happened?
I hope this bug is helpful - I am enjoying using the app but every time I update the the app I get a git sync issue between my 2 machines. Trivial to fix, but a bit annoying (especially since I am often not physically at the one machine). This is caused because the updater regenerates the installer-managed SKILL.md files and bumps the metadata.version field (I was on 0.28.2 and updated to 0.29.1). Because these files are tracked in git and synced across machines, updating the app on each machine independently rewrites the same line locally. This leaves an uncommitted working-tree change on whichever machine I update second, which blocks the sync with:
Sync paused — your local changes to .claude/skills/open-knowledge/SKILL.md, .codex/skills/open-knowledge/SKILL.md, .cursor/skills/open-knowledge/SKILL.md, +1 more conflict with incoming changes. Commit, stash, or discard them before syncing.
However, in my last case, both machines wrote the identical new version (0.29.1), so there is no real content difference, the only diff is a line the installer itself churns. (Note: I have not tried, but I think that this will also result in a version number that is incorrect in a machine that has not yet been updated.)
Some suggestions:
Keep the installer-managed version out of the tracked file. Store the skill version outside SKILL.md in a local, gitignored manifest so app updates don't rewrite a synced file. This preserves syncing of genuine user edits to the skill body while removing the churn. It will also make it so that the version number is correct across machines (as I above, I haven't tested, but I think if I update my laptop to a 0.29.1 that would make the skill version incorrect on my desktop until I update there).
Normalise the version line on merge. Ship a .gitattributes merge strategy (or have the app manage one) so the version field auto-resolves instead of conflicting.
Steps to reproduce
Platform
macOS (Apple Silicon)
How did you install OpenKnowledge?
Desktop app (DMG)
Version
0.28.2 → 0.29.1
Logs, errors, or screenshots
Sync paused — your local changes to .claude/skills/open-knowledge/SKILL.md, .codex/skills/open-knowledge/SKILL.md, .cursor/skills/open-knowledge/SKILL.md, +1 more conflict with incoming changes. Commit, stash, or discard them before syncing.