Skip to content

feat(cli): persistent opt-out for install hooks #1857

Open

Description

@Andy11-cpu

Problem

PR #753 identified measurable per-call hook process-spawn overhead. Maintainer direction there was to keep hooks enabled by default, add an opt-out, and persist the user's choice so later installs and updates respect it.

Proposed behavior

  • install --no-hooks disables CBM-managed lifecycle/tool hooks.
  • install --hooks re-enables them.
  • Bare install keeps hooks enabled by default and reads the persisted preference.
  • The preference is stored as install_hooks in the existing CLI config database.
  • All current hook-capable install surfaces obey the same policy.
  • MCP, skills, instructions, profiles, and other non-hook integration remain unchanged.
  • Plan and dry-run reflect the effective policy without persisting preview flags.
  • Existing foreign/user hooks remain untouched.

This follows the maintainer-approved direction in #753.

Activity

  1. added
    enhancementNew feature or request
    priority/normalStandard review queue; useful PR with ordinary maintainer urgency.
    ux/behaviorDisplay bugs, docs, adoption UX
    editor/integrationEditor compatibility and CLI integration
    on Sep 5, 2026
  2. DeusData commented on Oct 25, 2026

    @DeusData
    Owner

    Thank you for spelling out the persistent hook preference and dry-run behavior. The reported direction from #753 is clear; implementation still needs review without changing foreign hooks. Sorry for the delay; this is waiting on maintainer follow-up, and I’ll follow up soon.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    editor/integrationEditor compatibility and CLI integrationenhancementNew feature or requestpriority/normalStandard review queue; useful PR with ordinary maintainer urgency.ux/behaviorDisplay bugs, docs, adoption UX

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions