skillpull 0.3.3 → 0.3.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/package.json +5 -1
  2. package/skillpull +30 -17
package/package.json CHANGED
@@ -1,10 +1,14 @@
1
1
  {
2
2
  "name": "skillpull",
3
- "version": "0.3.3",
3
+ "version": "0.3.6",
4
4
  "description": "Sync AI agent skills from Git repositories to Claude, Codex, Kiro, and Cursor",
5
5
  "bin": {
6
6
  "skillpull": "./skillpull"
7
7
  },
8
+ "scripts": {
9
+ "postinstall": "echo '✓ skillpull installed. Run: skillpull init'",
10
+ "preuninstall": "echo '✓ skillpull uninstalled.'"
11
+ },
8
12
  "keywords": [
9
13
  "ai",
10
14
  "skills",
package/skillpull CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env bash
2
2
  set -euo pipefail
3
3
 
4
- VERSION="0.3.3"
4
+ VERSION="0.3.6"
5
5
  MANIFEST_FILE=".skillpull.json"
6
6
  TMPDIR_PREFIX="skillpull"
7
7
  CONFIG_DIR="$HOME/.config/skillpull"
@@ -672,13 +672,32 @@ cmd_push() {
672
672
  cmd_uninstall() {
673
673
  local self; self="$(realpath "$0" 2>/dev/null || echo "$0")"
674
674
  local local_bin="${SKILLPULL_INSTALL_DIR:-$HOME/.local/bin}/skillpull"
675
+ local removed=0
675
676
 
676
677
  printf "\n ${CYAN}Uninstall skillpull${RESET}\n\n"
677
678
 
678
- # Remove local binary if exists
679
+ # Remove local binary (~/.local/bin)
679
680
  if [[ -f "$local_bin" ]]; then
680
681
  rm -f "$local_bin"
681
682
  info "Removed $local_bin"
683
+ removed=1
684
+ fi
685
+
686
+ # Remove npm global package (this is likely where the command lives)
687
+ if command -v npm &>/dev/null; then
688
+ local npm_pkg; npm_pkg="$(npm ls -g skillpull --parseable 2>/dev/null)" || true
689
+ if [[ -n "$npm_pkg" ]]; then
690
+ npm uninstall -g skillpull 2>/dev/null
691
+ info "Removed npm global package"
692
+ removed=1
693
+ fi
694
+ fi
695
+
696
+ # Remove the running binary itself if still exists and wasn't already cleaned
697
+ if [[ -f "$self" && "$self" != "$local_bin" ]]; then
698
+ rm -f "$self" 2>/dev/null || true
699
+ info "Removed $self"
700
+ removed=1
682
701
  fi
683
702
 
684
703
  # Remove config
@@ -693,21 +712,12 @@ cmd_uninstall() {
693
712
  fi
694
713
  fi
695
714
 
696
- # npm global uninstall
697
- if command -v npm &>/dev/null; then
698
- local npm_global; npm_global="$(npm root -g 2>/dev/null)/../bin/skillpull"
699
- if [[ -f "$npm_global" ]] || npm ls -g skillpull &>/dev/null 2>&1; then
700
- printf " Remove npm global package? (y/n) "
701
- read -r yn
702
- if [[ "$yn" == "y" || "$yn" == "Y" ]]; then
703
- npm uninstall -g skillpull 2>/dev/null
704
- info "npm global package removed"
705
- fi
706
- fi
707
- fi
708
-
709
715
  echo ""
710
- info "skillpull uninstalled."
716
+ if [[ "$removed" == "1" ]]; then
717
+ info "skillpull uninstalled."
718
+ else
719
+ warn "skillpull not found. Already uninstalled?"
720
+ fi
711
721
  }
712
722
 
713
723
  cmd_init() {
@@ -887,13 +897,16 @@ main() {
887
897
  local global_bin="${SKILLPULL_INSTALL_DIR:-$HOME/.local/bin}/skillpull"
888
898
 
889
899
  if [[ "$self" != "$global_bin" && ! -f "$global_bin" ]]; then
900
+ info "Installing skillpull v${VERSION} ..."
890
901
  mkdir -p "$(dirname "$global_bin")"
891
902
  cp "$self" "$global_bin"
892
903
  chmod +x "$global_bin"
893
- info "Installed skillpull to $global_bin"
904
+ info "Installed to $global_bin"
894
905
  if ! echo "$PATH" | tr ':' '\n' | grep -qx "$(dirname "$global_bin")"; then
895
906
  warn "Add to PATH: export PATH=\"$(dirname "$global_bin"):\$PATH\""
896
907
  fi
908
+ echo ""
909
+ info "Run 'skillpull init' to set up your default skill repo."
897
910
  else
898
911
  usage
899
912
  fi