Fix install / uninstall.

This commit is contained in:
2025-12-16 11:33:51 +00:00
parent 6e4c132651
commit e975419ec7
4 changed files with 59 additions and 13 deletions
+1 -1
View File
@@ -147,7 +147,7 @@ install: build stop-worker
@echo "Installation complete!"
# Uninstall
uninstall:
uninstall: stop-worker
@echo "Uninstalling..."
@./scripts/unregister-plugin.sh
rm -rf $(HOME)/.claude/plugins/marketplaces/claude-mnemonic
+55 -9
View File
@@ -4,19 +4,65 @@
set -e
PLUGINS_FILE="$HOME/.claude/plugins/installed_plugins.json"
SETTINGS_FILE="$HOME/.claude/settings.json"
MARKETPLACES_FILE="$HOME/.claude/plugins/known_marketplaces.json"
CACHE_DIR="$HOME/.claude/plugins/cache/claude-mnemonic"
PLUGIN_KEY="claude-mnemonic@claude-mnemonic"
if [ ! -f "$PLUGINS_FILE" ]; then
echo "No plugins file found, nothing to unregister"
exit 0
fi
MARKETPLACE_NAME="claude-mnemonic"
# Check if jq is available
if command -v jq &> /dev/null; then
# Use jq to remove the plugin entry
if ! command -v jq &> /dev/null; then
echo "Warning: jq not found, please manually remove plugin entries from:"
echo " - $PLUGINS_FILE (remove $PLUGIN_KEY)"
echo " - $SETTINGS_FILE (remove from enabledPlugins and statusLine)"
echo " - $MARKETPLACES_FILE (remove $MARKETPLACE_NAME)"
echo " - $CACHE_DIR (remove directory)"
echo " - $HOME/.claude-mnemonic (remove data directory)"
exit 1
fi
# Remove from installed_plugins.json
if [ -f "$PLUGINS_FILE" ]; then
jq --arg key "$PLUGIN_KEY" 'del(.plugins[$key])' "$PLUGINS_FILE" > "${PLUGINS_FILE}.tmp" \
&& mv "${PLUGINS_FILE}.tmp" "$PLUGINS_FILE"
echo "Plugin unregistered successfully"
echo "Plugin removed from installed_plugins.json"
else
echo "Warning: jq not found, please manually remove $PLUGIN_KEY from $PLUGINS_FILE"
echo "No plugins file found, skipping"
fi
# Remove from settings.json (enabledPlugins and statusLine if it points to our plugin)
if [ -f "$SETTINGS_FILE" ]; then
# Remove from enabledPlugins and clear statusLine if it references our plugin
jq --arg key "$PLUGIN_KEY" '
del(.enabledPlugins[$key]) |
if .statusLine.command and (.statusLine.command | contains("claude-mnemonic")) then
del(.statusLine)
else
.
end
' "$SETTINGS_FILE" > "${SETTINGS_FILE}.tmp" \
&& mv "${SETTINGS_FILE}.tmp" "$SETTINGS_FILE"
echo "Plugin removed from settings.json"
fi
# Remove from known_marketplaces.json
if [ -f "$MARKETPLACES_FILE" ]; then
jq --arg key "$MARKETPLACE_NAME" 'del(.[$key])' "$MARKETPLACES_FILE" > "${MARKETPLACES_FILE}.tmp" \
&& mv "${MARKETPLACES_FILE}.tmp" "$MARKETPLACES_FILE"
echo "Marketplace removed from known_marketplaces.json"
fi
# Remove cache directory
if [ -d "$CACHE_DIR" ]; then
rm -rf "$CACHE_DIR"
echo "Cache directory removed"
fi
# Remove data directory (database, embeddings, etc.)
DATA_DIR="$HOME/.claude-mnemonic"
if [ -d "$DATA_DIR" ]; then
rm -rf "$DATA_DIR"
echo "Data directory removed ($DATA_DIR)"
fi
echo "Plugin unregistered successfully"
+2 -2
View File
@@ -1,12 +1,12 @@
{
"name": "claude-mnemonic-dashboard",
"version": "v0.6.1-10-g6c28ecb-dirty",
"version": "v0.6.1-11-g7fe679f-dirty",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "claude-mnemonic-dashboard",
"version": "v0.6.1-10-g6c28ecb-dirty",
"version": "v0.6.1-11-g7fe679f-dirty",
"dependencies": {
"vue": "^3.5.13"
},
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "claude-mnemonic-dashboard",
"version": "v0.6.1-10-g6c28ecb-dirty",
"version": "v0.6.1-11-g7fe679f-dirty",
"private": true,
"type": "module",
"scripts": {