You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Harden socket security and add hook installation consent
- Change Unix socket permissions from 0o777 to 0o600 (owner-only)
- Move socket from /tmp/claude-island.sock to ~/.claude/claude-island.sock
- Add token-based authentication to the socket protocol
- Require user consent before modifying ~/.claude/settings.json
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@@ -91,6 +91,44 @@ class AppDelegate: NSObject, NSApplicationDelegate {
91
91
_ = windowManager?.setupNotchWindow()
92
92
}
93
93
94
+
privatefunc installHooksWithConsent(){
95
+
letconsent=AppSettings.hooksConsentGiven
96
+
97
+
if consent ==true{
98
+
HookInstaller.installIfNeeded()
99
+
return
100
+
}
101
+
102
+
if consent ==false{
103
+
return
104
+
}
105
+
106
+
// consent == nil: first launch, never asked
107
+
// Existing users with hooks already installed get implied consent
108
+
ifHookInstaller.isInstalled(){
109
+
AppSettings.hooksConsentGiven =true
110
+
HookInstaller.installIfNeeded()
111
+
return
112
+
}
113
+
114
+
// New user: show consent dialog
115
+
letalert=NSAlert()
116
+
alert.messageText ="Enable Claude Code Integration?"
117
+
alert.informativeText ="Claude Island can integrate with Claude Code by installing hooks into your ~/.claude/settings.json configuration. This enables real-time status monitoring and permission management from the menu bar.\n\nYou can change this later in Settings."
0 commit comments