Skip to content

claude-sync plugin not auto-installed — SessionStart/SessionEnd hooks never fire #26

Description

@albertgwo

Bug

The claude-sync plugin is listed in the claude-sync-forks marketplace (~/.claude-sync/plugins/.claude-plugin/marketplace.json) but is never actually installed into Claude Code's installed_plugins.json.

This means the SessionStart, SessionEnd, and Stop hooks defined in hooks/hooks.json never fire.

Current State

# In the marketplace manifest:
claude-sync@claude-sync-forks → version 0.1.0 ✓

# In installed_plugins.json:
bash-validator@claude-sync-forks → installed ✓
compound-engineering-refined@claude-sync-forks → installed ✓
claude-sync@claude-sync-forks → NOT INSTALLED ✗

# In settings.json enabledPlugins:
bash-validator@claude-sync-forks: true ✓
compound-engineering-refined@claude-sync-forks: true ✓
claude-sync@claude-sync-forks → NOT PRESENT ✗

Impact

  • SessionStart hook never runs → claude-sync pull --auto never runs on session start → plugin updates don't auto-sync across machines
  • SessionEnd hook never runs → config changes are never auto-pushed
  • Stop hooks never run → no next-steps enforcement or CLAUDE.md change detection

The auto-sync functionality that claude-sync advertises is effectively disabled.

Expected Behavior

claude-sync pull should detect that the claude-sync plugin is in the marketplace but not installed, and install it. Alternatively, claude-sync config create or claude-sync config join should install it during initial setup.

Reproduction

  1. claude-sync status shows claude-sync@claude-sync-forks as synced
  2. But cat ~/.claude/plugins/installed_plugins.json | grep claude-sync returns nothing
  3. Starting a new Claude Code session does NOT trigger session-start.sh

Workaround

Manually install:

claude plugin install claude-sync@claude-sync-forks

But this should happen automatically.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions