Skip to main content

remove_claude_global_hook

Function remove_claude_global_hook 

Source
pub fn remove_claude_global_hook() -> Result<Option<(PathBuf, bool)>>
Expand description

Remove sqz’s hook entries from ~/.claude/settings.json without touching any other keys. Symmetric with install_claude_global_at.

Returns:

  • Ok(Some((path, true))) — file existed, sqz entries found and stripped. If the resulting hooks object is empty, we also remove the hooks key entirely. If the resulting root object is empty, we remove the file — matches the uninstall UX of every other sqz surface.
  • Ok(Some((path, false))) — file existed but contained no sqz entries. No write.
  • Ok(None) — file did not exist.
  • Err(_) — file existed but could not be read or parsed.