karnel-termux 0.0.1

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 (258) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +454 -0
  3. package/install.sh +272 -0
  4. package/karnel/bin/karnel +77 -0
  5. package/karnel/cli/commands/brain.sh +1553 -0
  6. package/karnel/cli/commands/cleanup.sh +66 -0
  7. package/karnel/cli/commands/doctor.sh +1528 -0
  8. package/karnel/cli/commands/env.sh +233 -0
  9. package/karnel/cli/commands/help.sh +8 -0
  10. package/karnel/cli/commands/ia.sh +502 -0
  11. package/karnel/cli/commands/init.sh +1274 -0
  12. package/karnel/cli/commands/install.sh +718 -0
  13. package/karnel/cli/commands/list.sh +399 -0
  14. package/karnel/cli/commands/open.sh +106 -0
  15. package/karnel/cli/commands/pg.sh +719 -0
  16. package/karnel/cli/commands/reinstall.sh +663 -0
  17. package/karnel/cli/commands/show.sh +90 -0
  18. package/karnel/cli/commands/start.sh +54 -0
  19. package/karnel/cli/commands/status.sh +96 -0
  20. package/karnel/cli/commands/uninstall.sh +668 -0
  21. package/karnel/cli/commands/update.sh +723 -0
  22. package/karnel/cli/commands/upgrade.sh +40 -0
  23. package/karnel/cli/commands/version.sh +3 -0
  24. package/karnel/cli/commands/voice.sh +230 -0
  25. package/karnel/cli/karnel.sh +706 -0
  26. package/karnel/modules/ai.sh +135 -0
  27. package/karnel/modules/auto.sh +114 -0
  28. package/karnel/modules/db.sh +132 -0
  29. package/karnel/modules/deploy.sh +74 -0
  30. package/karnel/modules/dev.sh +148 -0
  31. package/karnel/modules/editor.sh +115 -0
  32. package/karnel/modules/lang.sh +124 -0
  33. package/karnel/modules/npm.sh +146 -0
  34. package/karnel/modules/shell.sh +338 -0
  35. package/karnel/modules/ui.sh +139 -0
  36. package/karnel/modules/voice.sh +118 -0
  37. package/karnel/tools/ai/all.sh +209 -0
  38. package/karnel/tools/ai/antigravity-cli/README.md +45 -0
  39. package/karnel/tools/ai/antigravity-cli/bin/agy +28 -0
  40. package/karnel/tools/ai/antigravity-cli/helper/agy_helper.c +39 -0
  41. package/karnel/tools/ai/antigravity-cli/install.sh +469 -0
  42. package/karnel/tools/ai/claude-code/README.md +45 -0
  43. package/karnel/tools/ai/claude-code/bin/claude +29 -0
  44. package/karnel/tools/ai/claude-code/helper/claude_helper.c +42 -0
  45. package/karnel/tools/ai/claude-code/install.sh +278 -0
  46. package/karnel/tools/ai/cline/install.sh +160 -0
  47. package/karnel/tools/ai/codegraph/README.md +43 -0
  48. package/karnel/tools/ai/codegraph/bin/codegraph +5 -0
  49. package/karnel/tools/ai/codegraph/install.sh +160 -0
  50. package/karnel/tools/ai/codex/README.md +44 -0
  51. package/karnel/tools/ai/codex/install.sh +104 -0
  52. package/karnel/tools/ai/command-code/README.md +62 -0
  53. package/karnel/tools/ai/command-code/install.sh +136 -0
  54. package/karnel/tools/ai/crush/README.md +17 -0
  55. package/karnel/tools/ai/crush/install.sh +89 -0
  56. package/karnel/tools/ai/ctx7/README.md +26 -0
  57. package/karnel/tools/ai/ctx7/install.sh +61 -0
  58. package/karnel/tools/ai/engram/README.md +44 -0
  59. package/karnel/tools/ai/engram/install.sh +127 -0
  60. package/karnel/tools/ai/freebuff/README.md +52 -0
  61. package/karnel/tools/ai/freebuff/bin/freebuff +28 -0
  62. package/karnel/tools/ai/freebuff/helper/freebuff_helper.c +47 -0
  63. package/karnel/tools/ai/freebuff/install.sh +303 -0
  64. package/karnel/tools/ai/gemini-cli/README.md +46 -0
  65. package/karnel/tools/ai/gemini-cli/install.sh +111 -0
  66. package/karnel/tools/ai/gentle-ai/README.md +42 -0
  67. package/karnel/tools/ai/gentle-ai/install.sh +253 -0
  68. package/karnel/tools/ai/gentle-ai/termux-patches.go +256 -0
  69. package/karnel/tools/ai/gga/README.md +49 -0
  70. package/karnel/tools/ai/gga/install.sh +134 -0
  71. package/karnel/tools/ai/hermes-agent/README.md +50 -0
  72. package/karnel/tools/ai/hermes-agent/install.sh +120 -0
  73. package/karnel/tools/ai/kilocode-cli/README.md +45 -0
  74. package/karnel/tools/ai/kilocode-cli/bin/kilocode +21 -0
  75. package/karnel/tools/ai/kilocode-cli/helper/kilocode_helper.c +47 -0
  76. package/karnel/tools/ai/kilocode-cli/install.sh +179 -0
  77. package/karnel/tools/ai/kimchi-code/README.md +53 -0
  78. package/karnel/tools/ai/kimchi-code/install.sh +221 -0
  79. package/karnel/tools/ai/kimi-code/README.md +45 -0
  80. package/karnel/tools/ai/kimi-code/install.sh +111 -0
  81. package/karnel/tools/ai/kiro/README.md +17 -0
  82. package/karnel/tools/ai/kiro/install.sh +134 -0
  83. package/karnel/tools/ai/mimocode/README.md +43 -0
  84. package/karnel/tools/ai/mimocode/bin/mimo +28 -0
  85. package/karnel/tools/ai/mimocode/helper/mimocode_helper.c +47 -0
  86. package/karnel/tools/ai/mimocode/install.sh +287 -0
  87. package/karnel/tools/ai/minimax-cli/README.md +45 -0
  88. package/karnel/tools/ai/minimax-cli/install.sh +111 -0
  89. package/karnel/tools/ai/mistral-vibe/README.md +46 -0
  90. package/karnel/tools/ai/mistral-vibe/install.sh +119 -0
  91. package/karnel/tools/ai/odysseus/README.md +35 -0
  92. package/karnel/tools/ai/odysseus/install.sh +198 -0
  93. package/karnel/tools/ai/ollama/README.md +44 -0
  94. package/karnel/tools/ai/ollama/install.sh +78 -0
  95. package/karnel/tools/ai/omni-route/README.md +111 -0
  96. package/karnel/tools/ai/omni-route/install.sh +165 -0
  97. package/karnel/tools/ai/openclaude/README.md +46 -0
  98. package/karnel/tools/ai/openclaude/install.sh +110 -0
  99. package/karnel/tools/ai/openclaw/README.md +47 -0
  100. package/karnel/tools/ai/openclaw/install.sh +112 -0
  101. package/karnel/tools/ai/opencode/README.md +51 -0
  102. package/karnel/tools/ai/opencode/bin/opencode +28 -0
  103. package/karnel/tools/ai/opencode/helper/opencode_helper.c +57 -0
  104. package/karnel/tools/ai/opencode/install.sh +290 -0
  105. package/karnel/tools/ai/openspec/README.md +34 -0
  106. package/karnel/tools/ai/openspec/install.sh +61 -0
  107. package/karnel/tools/ai/pi/README.md +46 -0
  108. package/karnel/tools/ai/pi/install.sh +104 -0
  109. package/karnel/tools/ai/qwen-code/README.md +45 -0
  110. package/karnel/tools/ai/qwen-code/install.sh +111 -0
  111. package/karnel/tools/auto/all.sh +57 -0
  112. package/karnel/tools/auto/n8n/README.md +47 -0
  113. package/karnel/tools/auto/n8n/install.sh +102 -0
  114. package/karnel/tools/db/all.sh +61 -0
  115. package/karnel/tools/db/mariadb/README.md +43 -0
  116. package/karnel/tools/db/mariadb/install.sh +65 -0
  117. package/karnel/tools/db/mongodb/README.md +42 -0
  118. package/karnel/tools/db/mongodb/install.sh +73 -0
  119. package/karnel/tools/db/postgresql/README.md +45 -0
  120. package/karnel/tools/db/postgresql/install.sh +65 -0
  121. package/karnel/tools/db/redis/README.md +46 -0
  122. package/karnel/tools/db/redis/install.sh +64 -0
  123. package/karnel/tools/db/sqlite/README.md +44 -0
  124. package/karnel/tools/db/sqlite/install.sh +65 -0
  125. package/karnel/tools/deploy/all.sh +43 -0
  126. package/karnel/tools/deploy/netlify/install.sh +41 -0
  127. package/karnel/tools/deploy/railway/install.sh +109 -0
  128. package/karnel/tools/deploy/vercel/install.sh +43 -0
  129. package/karnel/tools/dev/all.sh +77 -0
  130. package/karnel/tools/dev/bat/README.md +44 -0
  131. package/karnel/tools/dev/bat/install.sh +82 -0
  132. package/karnel/tools/dev/bc/README.md +44 -0
  133. package/karnel/tools/dev/bc/install.sh +82 -0
  134. package/karnel/tools/dev/cloudflared/README.md +43 -0
  135. package/karnel/tools/dev/cloudflared/install.sh +82 -0
  136. package/karnel/tools/dev/curl/README.md +43 -0
  137. package/karnel/tools/dev/curl/install.sh +82 -0
  138. package/karnel/tools/dev/fzf/README.md +44 -0
  139. package/karnel/tools/dev/fzf/install.sh +82 -0
  140. package/karnel/tools/dev/gh/README.md +43 -0
  141. package/karnel/tools/dev/gh/install.sh +82 -0
  142. package/karnel/tools/dev/html2text/README.md +44 -0
  143. package/karnel/tools/dev/html2text/install.sh +82 -0
  144. package/karnel/tools/dev/imagemagick/README.md +44 -0
  145. package/karnel/tools/dev/imagemagick/install.sh +82 -0
  146. package/karnel/tools/dev/jq/README.md +44 -0
  147. package/karnel/tools/dev/jq/install.sh +82 -0
  148. package/karnel/tools/dev/lsd/README.md +44 -0
  149. package/karnel/tools/dev/lsd/install.sh +82 -0
  150. package/karnel/tools/dev/make/README.md +44 -0
  151. package/karnel/tools/dev/make/install.sh +82 -0
  152. package/karnel/tools/dev/ncurses/README.md +42 -0
  153. package/karnel/tools/dev/ncurses/install.sh +82 -0
  154. package/karnel/tools/dev/openssh/README.md +43 -0
  155. package/karnel/tools/dev/openssh/install.sh +75 -0
  156. package/karnel/tools/dev/proot/README.md +43 -0
  157. package/karnel/tools/dev/proot/install.sh +82 -0
  158. package/karnel/tools/dev/shfmt/README.md +44 -0
  159. package/karnel/tools/dev/shfmt/install.sh +82 -0
  160. package/karnel/tools/dev/tmate/README.md +44 -0
  161. package/karnel/tools/dev/tmate/install.sh +82 -0
  162. package/karnel/tools/dev/tmux/README.md +43 -0
  163. package/karnel/tools/dev/tmux/install.sh +75 -0
  164. package/karnel/tools/dev/translate/README.md +44 -0
  165. package/karnel/tools/dev/translate/install.sh +82 -0
  166. package/karnel/tools/dev/tree/README.md +44 -0
  167. package/karnel/tools/dev/tree/install.sh +82 -0
  168. package/karnel/tools/dev/udocker/README.md +44 -0
  169. package/karnel/tools/dev/udocker/install.sh +82 -0
  170. package/karnel/tools/dev/wget/README.md +44 -0
  171. package/karnel/tools/dev/wget/install.sh +82 -0
  172. package/karnel/tools/editor/all.sh +59 -0
  173. package/karnel/tools/editor/code-server/README.md +42 -0
  174. package/karnel/tools/editor/code-server/install.sh +74 -0
  175. package/karnel/tools/editor/neovim/README.md +43 -0
  176. package/karnel/tools/editor/neovim/install.sh +64 -0
  177. package/karnel/tools/editor/nvchad/README.md +45 -0
  178. package/karnel/tools/editor/nvchad/install.sh +105 -0
  179. package/karnel/tools/lang/all.sh +63 -0
  180. package/karnel/tools/lang/clang/README.md +43 -0
  181. package/karnel/tools/lang/clang/install.sh +79 -0
  182. package/karnel/tools/lang/golang/README.md +43 -0
  183. package/karnel/tools/lang/golang/install.sh +79 -0
  184. package/karnel/tools/lang/nodejs/README.md +43 -0
  185. package/karnel/tools/lang/nodejs/install.sh +79 -0
  186. package/karnel/tools/lang/perl/README.md +43 -0
  187. package/karnel/tools/lang/perl/install.sh +79 -0
  188. package/karnel/tools/lang/php/README.md +43 -0
  189. package/karnel/tools/lang/php/install.sh +79 -0
  190. package/karnel/tools/lang/python/README.md +43 -0
  191. package/karnel/tools/lang/python/install.sh +79 -0
  192. package/karnel/tools/lang/rust/README.md +43 -0
  193. package/karnel/tools/lang/rust/install.sh +79 -0
  194. package/karnel/tools/npm/all.sh +90 -0
  195. package/karnel/tools/npm/live-server/README.md +43 -0
  196. package/karnel/tools/npm/live-server/install.sh +96 -0
  197. package/karnel/tools/npm/localtunnel/README.md +43 -0
  198. package/karnel/tools/npm/localtunnel/install.sh +112 -0
  199. package/karnel/tools/npm/markserv/README.md +43 -0
  200. package/karnel/tools/npm/markserv/install.sh +95 -0
  201. package/karnel/tools/npm/ncu/README.md +43 -0
  202. package/karnel/tools/npm/ncu/install.sh +95 -0
  203. package/karnel/tools/npm/nestjs/README.md +43 -0
  204. package/karnel/tools/npm/nestjs/install.sh +95 -0
  205. package/karnel/tools/npm/ngrok/README.md +44 -0
  206. package/karnel/tools/npm/ngrok/install.sh +95 -0
  207. package/karnel/tools/npm/prettier/README.md +43 -0
  208. package/karnel/tools/npm/prettier/install.sh +95 -0
  209. package/karnel/tools/npm/psqlformat/README.md +43 -0
  210. package/karnel/tools/npm/psqlformat/install.sh +95 -0
  211. package/karnel/tools/npm/turbopack/README.md +8 -0
  212. package/karnel/tools/npm/turbopack/install.sh +42 -0
  213. package/karnel/tools/npm/typescript/README.md +43 -0
  214. package/karnel/tools/npm/typescript/install.sh +95 -0
  215. package/karnel/tools/npm/vercel/README.md +43 -0
  216. package/karnel/tools/npm/vercel/install.sh +95 -0
  217. package/karnel/tools/shell/all.sh +67 -0
  218. package/karnel/tools/shell/better-npm/README.md +43 -0
  219. package/karnel/tools/shell/better-npm/install.sh +85 -0
  220. package/karnel/tools/shell/fzf-tab/README.md +44 -0
  221. package/karnel/tools/shell/fzf-tab/install.sh +85 -0
  222. package/karnel/tools/shell/history-substring/README.md +43 -0
  223. package/karnel/tools/shell/history-substring/install.sh +85 -0
  224. package/karnel/tools/shell/powerlevel10k/README.md +43 -0
  225. package/karnel/tools/shell/powerlevel10k/install.sh +85 -0
  226. package/karnel/tools/shell/you-should-use/README.md +43 -0
  227. package/karnel/tools/shell/you-should-use/install.sh +85 -0
  228. package/karnel/tools/shell/zsh-autopair/README.md +44 -0
  229. package/karnel/tools/shell/zsh-autopair/install.sh +85 -0
  230. package/karnel/tools/shell/zsh-autosuggestions/README.md +43 -0
  231. package/karnel/tools/shell/zsh-autosuggestions/install.sh +85 -0
  232. package/karnel/tools/shell/zsh-completions/README.md +43 -0
  233. package/karnel/tools/shell/zsh-completions/install.sh +85 -0
  234. package/karnel/tools/shell/zsh-defer/README.md +43 -0
  235. package/karnel/tools/shell/zsh-defer/install.sh +85 -0
  236. package/karnel/tools/shell/zsh-syntax-highlighting/README.md +43 -0
  237. package/karnel/tools/shell/zsh-syntax-highlighting/install.sh +72 -0
  238. package/karnel/tools/ui/all.sh +61 -0
  239. package/karnel/tools/ui/banner/README.md +42 -0
  240. package/karnel/tools/ui/banner/install.sh +160 -0
  241. package/karnel/tools/ui/cursor/README.md +42 -0
  242. package/karnel/tools/ui/cursor/install.sh +58 -0
  243. package/karnel/tools/ui/extra-keys/README.md +43 -0
  244. package/karnel/tools/ui/extra-keys/install.sh +62 -0
  245. package/karnel/tools/ui/font/README.md +43 -0
  246. package/karnel/tools/ui/font/install.sh +63 -0
  247. package/karnel/tools/voice/all.sh +27 -0
  248. package/karnel/tools/voice/install.sh +10 -0
  249. package/karnel/tools/voice/uninstall.sh +8 -0
  250. package/karnel/utils/banner.sh +492 -0
  251. package/karnel/utils/bootstrap.sh +25 -0
  252. package/karnel/utils/colors.sh +33 -0
  253. package/karnel/utils/dialogrc +30 -0
  254. package/karnel/utils/env.sh +53 -0
  255. package/karnel/utils/log.sh +567 -0
  256. package/karnel/utils/version.sh +205 -0
  257. package/package.json +42 -0
  258. package/scripts/npm-install.js +60 -0
@@ -0,0 +1,668 @@
1
+ #!/data/data/com.termux/files/usr/bin/bash
2
+
3
+ import "@/utils/log"
4
+ import "@/utils/colors"
5
+
6
+ uninstall_main() {
7
+
8
+ if [[ $# -eq 0 ]]; then
9
+ echo
10
+ box "Karnel Uninstall"
11
+ echo
12
+ log_info "Usage: karnel uninstall <target>"
13
+ log_info "Usage: karnel uninstall <target> --tool1 --tool2"
14
+ echo
15
+ log_info "Available targets:"
16
+ echo
17
+ list_item "lang - Remove language packages"
18
+ list_item "db - Remove databases"
19
+ list_item "ai - Remove AI tools"
20
+ list_item "editor - Remove code editor"
21
+ list_item "dev - Remove development tools"
22
+ list_item "npm - Remove Node.js global modules"
23
+ list_item "shell - Remove ZSH + Oh My Zsh"
24
+ list_item "ui - Restore Termux UI to default"
25
+ list_item "auto - Remove automation tools"
26
+ echo
27
+ log_info "Uninstall specific tools with flags:"
28
+ echo
29
+ list_item "karnel uninstall ai --qwen-code --ollama"
30
+ list_item "karnel uninstall db --postgresql --sqlite"
31
+ list_item "Run ${D_CYAN}karnel list <target>${NC} to see all available tools"
32
+ echo
33
+ log_warn "Warning: This will remove installed packages and configurations!"
34
+ echo
35
+ return
36
+ fi
37
+
38
+ # Separate module target from tool flags
39
+ local module_target=""
40
+ local -a tool_flags=()
41
+
42
+ for arg in "$@"; do
43
+ if [[ "$arg" == --* ]]; then
44
+ local flag="${arg#--}"
45
+ tool_flags+=("$flag")
46
+ elif [[ -z "$module_target" ]]; then
47
+ module_target="$arg"
48
+ fi
49
+ done
50
+
51
+ # If no module target specified, show error
52
+ if [[ -z "$module_target" ]]; then
53
+ log_error "No target specified"
54
+ echo "Run 'karnel uninstall' to see available targets"
55
+ return 1
56
+ fi
57
+
58
+ # If no tool flags, uninstall entire module (original behavior)
59
+ if [[ ${#tool_flags[@]} -eq 0 ]]; then
60
+ _uninstall_full_module "$module_target"
61
+ else
62
+ # Uninstall specific tools
63
+ _uninstall_specific_tools "$module_target" "${tool_flags[@]}"
64
+ fi
65
+ }
66
+
67
+ # Uninstall entire module (original behavior)
68
+ _uninstall_full_module() {
69
+ local target="$1"
70
+
71
+ case "$target" in
72
+ lang)
73
+ import "@/modules/lang"
74
+ uninstall_lang
75
+ ;;
76
+ db)
77
+ import "@/modules/db"
78
+ uninstall_db
79
+ ;;
80
+ ai)
81
+ import "@/modules/ai"
82
+ uninstall_ai
83
+ ;;
84
+ editor)
85
+ import "@/modules/editor"
86
+ uninstall_editor
87
+ ;;
88
+ dev)
89
+ import "@/modules/dev"
90
+ uninstall_dev
91
+ ;;
92
+ npm)
93
+ import "@/modules/npm"
94
+ uninstall_npm
95
+ ;;
96
+ shell)
97
+ import "@/modules/shell"
98
+ uninstall_shell
99
+ ;;
100
+ ui)
101
+ import "@/modules/ui"
102
+ uninstall_ui
103
+ ;;
104
+ auto)
105
+ import "@/modules/auto"
106
+ uninstall_auto
107
+ ;;
108
+ *)
109
+ log_warn "Unknown uninstall target: $target"
110
+ echo "Run 'karnel uninstall' to see available targets"
111
+ ;;
112
+ esac
113
+ }
114
+
115
+ _uninstall_specific_tools() {
116
+ local module="$1"
117
+ shift
118
+ local -a tools=("$@")
119
+
120
+ case "$module" in
121
+ ai)
122
+ import "@/tools/ai/all"
123
+ local uninstalled_count=0
124
+ local failed_count=0
125
+
126
+ for tool in "${tools[@]}"; do
127
+ case "$tool" in
128
+ qwen-code)
129
+ uninstall_qwen_code
130
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
131
+ ;;
132
+ gemini-cli)
133
+ uninstall_gemini_cli
134
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
135
+ ;;
136
+ claude-code)
137
+ uninstall_claude_code
138
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
139
+ ;;
140
+ mistral-vibe)
141
+ uninstall_mistral_vibe
142
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
143
+ ;;
144
+ openclaude)
145
+ uninstall_openclaude
146
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
147
+ ;;
148
+ openclaw)
149
+ uninstall_openclaw
150
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
151
+ ;;
152
+ ollama)
153
+ uninstall_ollama
154
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
155
+ ;;
156
+ codex)
157
+ uninstall_codex
158
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
159
+ ;;
160
+ opencode)
161
+ uninstall_opencode
162
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
163
+ ;;
164
+ kilocode-cli)
165
+ uninstall_kilocode_cli
166
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
167
+ ;;
168
+ kimchi)
169
+ uninstall_kimchi
170
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
171
+ ;;
172
+ mimocode)
173
+ uninstall_mimocode
174
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
175
+ ;;
176
+ engram)
177
+ uninstall_engram
178
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
179
+ ;;
180
+ codegraph)
181
+ uninstall_codegraph
182
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
183
+ ;;
184
+ pi)
185
+ uninstall_pi
186
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
187
+ ;;
188
+ antigravity-cli)
189
+ uninstall_antigravity_cli
190
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
191
+ ;;
192
+ minimax-cli)
193
+ uninstall_minimax_cli
194
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
195
+ ;;
196
+ gentle-ai)
197
+ uninstall_gentle_ai
198
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
199
+ ;;
200
+ gga)
201
+ uninstall_gga
202
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
203
+ ;;
204
+ hermes-agent)
205
+ uninstall_hermes_agent
206
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
207
+ ;;
208
+ kimi-code)
209
+ uninstall_kimi_code
210
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
211
+ ;;
212
+ command-code)
213
+ uninstall_command_code
214
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
215
+ ;;
216
+ freebuff)
217
+ uninstall_freebuff
218
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
219
+ ;;
220
+ ctx7)
221
+ uninstall_ctx7
222
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
223
+ ;;
224
+ openspec)
225
+ uninstall_openspec
226
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
227
+ ;;
228
+ *)
229
+ log_warn "Unknown AI tool: --$tool"
230
+ ;;
231
+ esac
232
+ done
233
+
234
+ echo
235
+ if [[ $uninstalled_count -gt 0 ]]; then
236
+ log_success "$uninstalled_count AI tool(s) uninstalled"
237
+ fi
238
+ if [[ $failed_count -gt 0 ]]; then
239
+ log_warn "$failed_count tool(s) failed to uninstall"
240
+ fi
241
+ echo
242
+ ;;
243
+ db)
244
+ import "@/tools/db/all"
245
+ local uninstalled_count=0
246
+ local failed_count=0
247
+
248
+ for tool in "${tools[@]}"; do
249
+ case "$tool" in
250
+ postgresql)
251
+ uninstall_postgresql
252
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
253
+ ;;
254
+ mariadb)
255
+ uninstall_mariadb
256
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
257
+ ;;
258
+ sqlite)
259
+ uninstall_sqlite
260
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
261
+ ;;
262
+ mongodb)
263
+ uninstall_mongodb
264
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
265
+ ;;
266
+ redis)
267
+ uninstall_redis
268
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
269
+ ;;
270
+ *)
271
+ log_warn "Unknown database: --$tool"
272
+ ;;
273
+ esac
274
+ done
275
+
276
+ echo
277
+ if [[ $uninstalled_count -gt 0 ]]; then
278
+ log_success "$uninstalled_count database(s) uninstalled"
279
+ fi
280
+ if [[ $failed_count -gt 0 ]]; then
281
+ log_warn "$failed_count database(s) failed to uninstall"
282
+ fi
283
+ echo
284
+ ;;
285
+ dev)
286
+ import "@/tools/dev/all"
287
+ local uninstalled_count=0
288
+ local failed_count=0
289
+
290
+ for tool in "${tools[@]}"; do
291
+ case "$tool" in
292
+ gh)
293
+ uninstall_gh
294
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
295
+ ;;
296
+ wget)
297
+ uninstall_wget
298
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
299
+ ;;
300
+ curl)
301
+ uninstall_curl
302
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
303
+ ;;
304
+ lsd)
305
+ uninstall_lsd
306
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
307
+ ;;
308
+ bat)
309
+ uninstall_bat
310
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
311
+ ;;
312
+ proot)
313
+ uninstall_proot
314
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
315
+ ;;
316
+ ncurses)
317
+ uninstall_ncurses
318
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
319
+ ;;
320
+ tmate)
321
+ uninstall_tmate
322
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
323
+ ;;
324
+ tmux)
325
+ uninstall_tmux
326
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
327
+ ;;
328
+ openssh)
329
+ uninstall_openssh
330
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
331
+ ;;
332
+ cloudflared)
333
+ uninstall_cloudflared
334
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
335
+ ;;
336
+ translate)
337
+ uninstall_translate
338
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
339
+ ;;
340
+ html2text)
341
+ uninstall_html2text
342
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
343
+ ;;
344
+ jq)
345
+ uninstall_jq
346
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
347
+ ;;
348
+ bc)
349
+ uninstall_bc
350
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
351
+ ;;
352
+ tree)
353
+ uninstall_tree
354
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
355
+ ;;
356
+ fzf)
357
+ uninstall_fzf
358
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
359
+ ;;
360
+ imagemagick)
361
+ uninstall_imagemagick
362
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
363
+ ;;
364
+ shfmt)
365
+ uninstall_shfmt
366
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
367
+ ;;
368
+ make)
369
+ uninstall_make
370
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
371
+ ;;
372
+ udocker)
373
+ uninstall_udocker
374
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
375
+ ;;
376
+ *)
377
+ log_warn "Unknown tool: --$tool"
378
+ ;;
379
+ esac
380
+ done
381
+
382
+ echo
383
+ if [[ $uninstalled_count -gt 0 ]]; then
384
+ log_success "$uninstalled_count tool(s) uninstalled"
385
+ fi
386
+ if [[ $failed_count -gt 0 ]]; then
387
+ log_warn "$failed_count tool(s) failed to uninstall"
388
+ fi
389
+ echo
390
+ ;;
391
+ npm)
392
+ import "@/tools/npm/all"
393
+ local uninstalled_count=0
394
+ local failed_count=0
395
+
396
+ for tool in "${tools[@]}"; do
397
+ case "$tool" in
398
+ typescript)
399
+ uninstall_typescript
400
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
401
+ ;;
402
+ nestjs)
403
+ uninstall_nestjs
404
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
405
+ ;;
406
+ prettier)
407
+ uninstall_prettier
408
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
409
+ ;;
410
+ live-server)
411
+ uninstall_live_server
412
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
413
+ ;;
414
+ localtunnel)
415
+ uninstall_localtunnel
416
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
417
+ ;;
418
+ vercel)
419
+ uninstall_vercel
420
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
421
+ ;;
422
+ markserv)
423
+ uninstall_markserv
424
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
425
+ ;;
426
+ psqlformat)
427
+ uninstall_psqlformat
428
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
429
+ ;;
430
+ ncu)
431
+ uninstall_ncu
432
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
433
+ ;;
434
+ ngrok)
435
+ uninstall_ngrok
436
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
437
+ ;;
438
+ turbopack)
439
+ uninstall_turbopack
440
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
441
+ ;;
442
+ *)
443
+ log_warn "Unknown node module: --$tool"
444
+ ;;
445
+ esac
446
+ done
447
+
448
+ echo
449
+ if [[ $uninstalled_count -gt 0 ]]; then
450
+ log_success "$uninstalled_count Node.js module(s) uninstalled"
451
+ fi
452
+ if [[ $failed_count -gt 0 ]]; then
453
+ log_warn "$failed_count module(s) failed to uninstall"
454
+ fi
455
+ echo
456
+ ;;
457
+ lang)
458
+ import "@/tools/lang/all"
459
+ local uninstalled_count=0
460
+ local failed_count=0
461
+
462
+ for tool in "${tools[@]}"; do
463
+ case "$tool" in
464
+ nodejs)
465
+ uninstall_npmjs
466
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
467
+ ;;
468
+ python)
469
+ uninstall_python
470
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
471
+ ;;
472
+ perl)
473
+ uninstall_perl
474
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
475
+ ;;
476
+ php)
477
+ uninstall_php
478
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
479
+ ;;
480
+ rust)
481
+ uninstall_rust
482
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
483
+ ;;
484
+ clang)
485
+ uninstall_clang
486
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
487
+ ;;
488
+ golang)
489
+ uninstall_golang
490
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
491
+ ;;
492
+ *)
493
+ log_warn "Unknown language: --$tool"
494
+ ;;
495
+ esac
496
+ done
497
+
498
+ echo
499
+ if [[ $uninstalled_count -gt 0 ]]; then
500
+ log_success "$uninstalled_count language(s) uninstalled"
501
+ fi
502
+ if [[ $failed_count -gt 0 ]]; then
503
+ log_warn "$failed_count language(s) failed to uninstall"
504
+ fi
505
+ echo
506
+ ;;
507
+ shell)
508
+ import "@/tools/shell/all"
509
+ local uninstalled_count=0
510
+ local failed_count=0
511
+
512
+ for tool in "${tools[@]}"; do
513
+ case "$tool" in
514
+ powerlevel10k)
515
+ uninstall_powerlevel10k
516
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
517
+ ;;
518
+ zsh-defer)
519
+ uninstall_zsh_defer
520
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
521
+ ;;
522
+ zsh-autosuggestions)
523
+ uninstall_zsh_autosuggestions
524
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
525
+ ;;
526
+ zsh-syntax-highlighting)
527
+ uninstall_zsh_syntax_highlighting
528
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
529
+ ;;
530
+ history-substring)
531
+ uninstall_history_substring
532
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
533
+ ;;
534
+ zsh-completions)
535
+ uninstall_zsh_completions
536
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
537
+ ;;
538
+ fzf-tab)
539
+ uninstall_fzf_tab
540
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
541
+ ;;
542
+ you-should-use)
543
+ uninstall_you_should_use
544
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
545
+ ;;
546
+ zsh-autopair)
547
+ uninstall_zsh_autopair
548
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
549
+ ;;
550
+ better-npm)
551
+ uninstall_better_npm
552
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
553
+ ;;
554
+ *)
555
+ log_warn "Unknown plugin: --$tool"
556
+ ;;
557
+ esac
558
+ done
559
+
560
+ echo
561
+ if [[ $uninstalled_count -gt 0 ]]; then
562
+ log_success "$uninstalled_count plugin(s) uninstalled"
563
+ fi
564
+ if [[ $failed_count -gt 0 ]]; then
565
+ log_warn "$failed_count plugin(s) failed to uninstall"
566
+ fi
567
+ echo
568
+ ;;
569
+ editor)
570
+ import "@/tools/editor/all"
571
+ local uninstalled_count=0
572
+ local failed_count=0
573
+
574
+ for tool in "${tools[@]}"; do
575
+ case "$tool" in
576
+ neovim)
577
+ uninstall_neovim
578
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
579
+ ;;
580
+ nvchad)
581
+ uninstall_nvchad
582
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
583
+ ;;
584
+ *)
585
+ log_warn "Unknown editor component: --$tool"
586
+ ;;
587
+ esac
588
+ done
589
+
590
+ echo
591
+ if [[ $uninstalled_count -gt 0 ]]; then
592
+ log_success "$uninstalled_count editor component(s) uninstalled"
593
+ fi
594
+ if [[ $failed_count -gt 0 ]]; then
595
+ log_warn "$failed_count component(s) failed to uninstall"
596
+ fi
597
+ echo
598
+ ;;
599
+ ui)
600
+ import "@/tools/ui/all"
601
+ local uninstalled_count=0
602
+ local failed_count=0
603
+
604
+ for tool in "${tools[@]}"; do
605
+ case "$tool" in
606
+ font)
607
+ uninstall_font
608
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
609
+ ;;
610
+ extra-keys)
611
+ uninstall_extra_keys
612
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
613
+ ;;
614
+ cursor)
615
+ uninstall_cursor
616
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
617
+ ;;
618
+ banner)
619
+ uninstall_banner
620
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
621
+ ;;
622
+ *)
623
+ log_warn "Unknown UI component: --$tool"
624
+ ;;
625
+ esac
626
+ done
627
+
628
+ echo
629
+ if [[ $uninstalled_count -gt 0 ]]; then
630
+ log_success "$uninstalled_count UI component(s) uninstalled"
631
+ fi
632
+ if [[ $failed_count -gt 0 ]]; then
633
+ log_warn "$failed_count component(s) failed to uninstall"
634
+ fi
635
+ echo
636
+ ;;
637
+ auto)
638
+ import "@/tools/auto/all"
639
+ local uninstalled_count=0
640
+ local failed_count=0
641
+
642
+ for tool in "${tools[@]}"; do
643
+ case "$tool" in
644
+ n8n)
645
+ uninstall_n8n
646
+ case $? in 0) ((uninstalled_count++));; 1) ((failed_count++));; esac
647
+ ;;
648
+ *)
649
+ log_warn "Unknown automation tool: --$tool"
650
+ ;;
651
+ esac
652
+ done
653
+
654
+ echo
655
+ if [[ $uninstalled_count -gt 0 ]]; then
656
+ log_success "$uninstalled_count automation tool(s) uninstalled"
657
+ fi
658
+ if [[ $failed_count -gt 0 ]]; then
659
+ log_warn "$failed_count tool(s) failed to uninstall"
660
+ fi
661
+ echo
662
+ ;;
663
+ *)
664
+ log_warn "Unknown uninstall target: $module"
665
+ echo "Run 'karnel uninstall' to see available targets"
666
+ ;;
667
+ esac
668
+ }