karnel-termux 4.17.44 → 4.17.45

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 (173) hide show
  1. package/README.md +14 -14
  2. package/docs/CHANGELOG.md +8 -0
  3. package/docs/_layouts/base.html +1 -1
  4. package/docs/cli/index.md +1 -1
  5. package/docs/index.md +5 -5
  6. package/docs/karnel/ai/index.md +1 -1
  7. package/docs/karnel/auto/index.md +1 -1
  8. package/docs/karnel/db/index.md +1 -1
  9. package/docs/karnel/deploy/index.md +1 -1
  10. package/docs/karnel/dev/index.md +1 -1
  11. package/docs/karnel/editor/index.md +1 -1
  12. package/docs/karnel/games/index.md +1 -1
  13. package/docs/karnel/lang/index.md +1 -1
  14. package/docs/karnel/network/index.md +1 -1
  15. package/docs/karnel/npm/index.md +1 -1
  16. package/docs/karnel/osint/index.md +1 -1
  17. package/docs/karnel/plugin/index.md +1 -1
  18. package/docs/karnel/security/index.md +1 -1
  19. package/docs/karnel/shell/index.md +1 -1
  20. package/docs/karnel/ui/index.md +1 -1
  21. package/docs/karnel/utils/index.md +1 -1
  22. package/docs/karnel/voice/index.md +1 -1
  23. package/docs/troubleshooting/index.md +2 -2
  24. package/install.sh +1 -1
  25. package/karnel/RELEASE_COMMIT +1 -1
  26. package/karnel/bin/karnel +1 -1
  27. package/karnel/cli/commands/init.sh +9 -8
  28. package/karnel/cli/commands/install.sh +3 -6
  29. package/karnel/cli/commands/update.sh +9 -8
  30. package/karnel/tools/ai/10router/install.sh +4 -3
  31. package/karnel/tools/ai/all.sh +4 -10
  32. package/karnel/tools/ai/antigravity-cli/README.md +1 -1
  33. package/karnel/tools/ai/cactus-needle/README.md +1 -1
  34. package/karnel/tools/ai/claude-code/README.md +1 -1
  35. package/karnel/tools/ai/cline/install.sh +7 -6
  36. package/karnel/tools/ai/codebuff/README.md +1 -1
  37. package/karnel/tools/ai/codegraph/README.md +1 -1
  38. package/karnel/tools/ai/codex/README.md +1 -1
  39. package/karnel/tools/ai/codex/install.sh +4 -3
  40. package/karnel/tools/ai/command-code/README.md +1 -1
  41. package/karnel/tools/ai/command-code/install.sh +4 -3
  42. package/karnel/tools/ai/copilot-termux/install.sh +5 -4
  43. package/karnel/tools/ai/crush/install.sh +4 -3
  44. package/karnel/tools/ai/ctx7/install.sh +4 -3
  45. package/karnel/tools/ai/engram/README.md +1 -1
  46. package/karnel/tools/ai/freebuff/install.sh +4 -3
  47. package/karnel/tools/ai/gemini-cli/README.md +1 -1
  48. package/karnel/tools/ai/gemini-cli/install.sh +4 -3
  49. package/karnel/tools/ai/gga/README.md +1 -1
  50. package/karnel/tools/ai/hermes-agent/README.md +1 -1
  51. package/karnel/tools/ai/keelcode/install.sh +12 -6
  52. package/karnel/tools/ai/kilocode-cli/README.md +1 -1
  53. package/karnel/tools/ai/kimchi-code/README.md +1 -1
  54. package/karnel/tools/ai/kimi-code/README.md +1 -1
  55. package/karnel/tools/ai/kimi-code/install.sh +4 -3
  56. package/karnel/tools/ai/mimocode/README.md +1 -1
  57. package/karnel/tools/ai/minimax-cli/README.md +1 -1
  58. package/karnel/tools/ai/minimax-cli/install.sh +4 -3
  59. package/karnel/tools/ai/mistral-vibe/README.md +1 -1
  60. package/karnel/tools/ai/ollama/README.md +1 -1
  61. package/karnel/tools/ai/omni-route/README.md +1 -1
  62. package/karnel/tools/ai/omni-route/install.sh +3 -2
  63. package/karnel/tools/ai/openclaude/README.md +1 -1
  64. package/karnel/tools/ai/openclaude/install.sh +4 -3
  65. package/karnel/tools/ai/openclaw/README.md +1 -1
  66. package/karnel/tools/ai/openclaw/install.sh +5 -4
  67. package/karnel/tools/ai/opencode/README.md +1 -1
  68. package/karnel/tools/ai/openspec/install.sh +4 -3
  69. package/karnel/tools/ai/pi/README.md +1 -1
  70. package/karnel/tools/ai/pi/install.sh +4 -3
  71. package/karnel/tools/ai/puter/install.sh +4 -3
  72. package/karnel/tools/ai/qwen-code/README.md +1 -1
  73. package/karnel/tools/ai/qwen-code/install.sh +4 -3
  74. package/karnel/tools/ai/supercode-cli/README.md +1 -1
  75. package/karnel/tools/ai/supercode-cli/install.sh +4 -3
  76. package/karnel/tools/ai/walkie/install.sh +6 -5
  77. package/karnel/tools/auto/n8n/README.md +1 -1
  78. package/karnel/tools/auto/n8n/install.sh +4 -3
  79. package/karnel/tools/db/mariadb/README.md +1 -1
  80. package/karnel/tools/db/mongodb/README.md +1 -1
  81. package/karnel/tools/db/postgresql/README.md +1 -1
  82. package/karnel/tools/db/redis/README.md +1 -1
  83. package/karnel/tools/db/sqlite/README.md +1 -1
  84. package/karnel/tools/deploy/netlify/install.sh +5 -4
  85. package/karnel/tools/deploy/railway/install.sh +4 -3
  86. package/karnel/tools/deploy/vercel/install.sh +4 -3
  87. package/karnel/tools/dev/bat/README.md +1 -1
  88. package/karnel/tools/dev/bc/README.md +1 -1
  89. package/karnel/tools/dev/cloudflared/README.md +1 -1
  90. package/karnel/tools/dev/curl/README.md +1 -1
  91. package/karnel/tools/dev/fzf/README.md +1 -1
  92. package/karnel/tools/dev/gh/README.md +1 -1
  93. package/karnel/tools/dev/html2text/README.md +1 -1
  94. package/karnel/tools/dev/imagemagick/README.md +1 -1
  95. package/karnel/tools/dev/jq/README.md +1 -1
  96. package/karnel/tools/dev/lsd/README.md +1 -1
  97. package/karnel/tools/dev/make/README.md +1 -1
  98. package/karnel/tools/dev/ncurses/README.md +1 -1
  99. package/karnel/tools/dev/openssh/README.md +1 -1
  100. package/karnel/tools/dev/proot/README.md +1 -1
  101. package/karnel/tools/dev/shfmt/README.md +1 -1
  102. package/karnel/tools/dev/snyk/install.sh +4 -3
  103. package/karnel/tools/dev/tmate/README.md +1 -1
  104. package/karnel/tools/dev/tmux/README.md +1 -1
  105. package/karnel/tools/dev/translate/README.md +1 -1
  106. package/karnel/tools/dev/tree/README.md +1 -1
  107. package/karnel/tools/dev/udocker/README.md +1 -1
  108. package/karnel/tools/dev/wget/README.md +1 -1
  109. package/karnel/tools/editor/neovim/README.md +1 -1
  110. package/karnel/tools/editor/nvchad/README.md +1 -1
  111. package/karnel/tools/lang/clang/README.md +1 -1
  112. package/karnel/tools/lang/golang/README.md +1 -1
  113. package/karnel/tools/lang/nodejs/README.md +1 -1
  114. package/karnel/tools/lang/perl/README.md +1 -1
  115. package/karnel/tools/lang/php/README.md +1 -1
  116. package/karnel/tools/lang/python/README.md +1 -1
  117. package/karnel/tools/lang/rust/README.md +1 -1
  118. package/karnel/tools/network/dark/README.md +1 -1
  119. package/karnel/tools/network/dedsec-network/README.md +1 -1
  120. package/karnel/tools/npm/live-server/README.md +1 -1
  121. package/karnel/tools/npm/live-server/install.sh +4 -3
  122. package/karnel/tools/npm/localtunnel/README.md +1 -1
  123. package/karnel/tools/npm/localtunnel/install.sh +4 -3
  124. package/karnel/tools/npm/markserv/README.md +1 -1
  125. package/karnel/tools/npm/markserv/install.sh +4 -3
  126. package/karnel/tools/npm/ncu/README.md +1 -1
  127. package/karnel/tools/npm/ncu/install.sh +4 -3
  128. package/karnel/tools/npm/nestjs/README.md +1 -1
  129. package/karnel/tools/npm/nestjs/install.sh +4 -3
  130. package/karnel/tools/npm/ngrok/README.md +1 -1
  131. package/karnel/tools/npm/ngrok/install.sh +4 -3
  132. package/karnel/tools/npm/prettier/README.md +1 -1
  133. package/karnel/tools/npm/prettier/install.sh +4 -3
  134. package/karnel/tools/npm/psqlformat/README.md +1 -1
  135. package/karnel/tools/npm/psqlformat/install.sh +4 -3
  136. package/karnel/tools/npm/turbopack/README.md +1 -1
  137. package/karnel/tools/npm/typescript/README.md +1 -1
  138. package/karnel/tools/npm/typescript/install.sh +4 -3
  139. package/karnel/tools/npm/vercel/README.md +1 -1
  140. package/karnel/tools/npm/vercel/install.sh +4 -3
  141. package/karnel/tools/plugins/install.sh +1 -1
  142. package/karnel/tools/security/wafw00f/install.sh +3 -1
  143. package/karnel/tools/security/wpscan/install.sh +3 -1
  144. package/karnel/tools/shell/better-npm/README.md +1 -1
  145. package/karnel/tools/shell/fzf-tab/README.md +1 -1
  146. package/karnel/tools/shell/history-substring/README.md +1 -1
  147. package/karnel/tools/shell/powerlevel10k/README.md +1 -1
  148. package/karnel/tools/shell/you-should-use/README.md +1 -1
  149. package/karnel/tools/shell/zsh-autopair/README.md +1 -1
  150. package/karnel/tools/shell/zsh-autosuggestions/README.md +1 -1
  151. package/karnel/tools/shell/zsh-completions/README.md +1 -1
  152. package/karnel/tools/shell/zsh-defer/README.md +1 -1
  153. package/karnel/tools/shell/zsh-syntax-highlighting/README.md +1 -1
  154. package/karnel/tools/ui/banner/README.md +1 -1
  155. package/karnel/tools/ui/cursor/README.md +1 -1
  156. package/karnel/tools/ui/extra-keys/README.md +1 -1
  157. package/karnel/tools/ui/font/README.md +1 -1
  158. package/karnel/tools/utils/applaunch/README.md +1 -1
  159. package/karnel/tools/utils/fconv/README.md +1 -1
  160. package/karnel/tools/utils/filecheck/README.md +1 -1
  161. package/karnel/tools/utils/httptmux/README.md +1 -1
  162. package/karnel/tools/utils/httptmux/install.sh +4 -3
  163. package/karnel/tools/utils/notes/README.md +1 -1
  164. package/karnel/tools/utils/passman/README.md +1 -1
  165. package/karnel/tools/utils/qrcode/README.md +1 -1
  166. package/karnel/tools/utils/splash/README.md +1 -1
  167. package/karnel/tools/utils/treex/README.md +1 -1
  168. package/karnel/tools/utils/websites/README.md +1 -1
  169. package/karnel/tools/utils/zork/README.md +1 -1
  170. package/karnel/utils/npm.sh +95 -0
  171. package/karnel/utils/tools.sh +34 -0
  172. package/karnel/utils/version.sh +10 -8
  173. package/package.json +3 -3
package/README.md CHANGED
@@ -1,5 +1,5 @@
1
1
  <p align="center">
2
- <img src="https://raw.githubusercontent.com/israelmarques1024-dotcom/karnel-termux/main/assets/images/karnel-logo.png" alt="Karnel Termux Logo" width="400">
2
+ <img src="https://raw.githubusercontent.com/karnel-termuxOFC/karnel-termux/main/assets/images/karnel-logo.png" alt="Karnel Termux Logo" width="400">
3
3
  </p>
4
4
 
5
5
  <p align="center">
@@ -7,8 +7,8 @@
7
7
  </p>
8
8
 
9
9
  <p align="center">
10
- <a href="https://github.com/israelmarques1024-dotcom/karnel-termux">
11
- <img src="https://img.shields.io/badge/version-4.17.44-0078D4?style=for-the-badge" alt="Version">
10
+ <a href="https://github.com/karnel-termuxOFC/karnel-termux">
11
+ <img src="https://img.shields.io/badge/version-4.17.45-0078D4?style=for-the-badge" alt="Version">
12
12
  </a>
13
13
  <a href="https://www.npmjs.com/package/karnel-termux">
14
14
  <img src="https://img.shields.io/npm/v/karnel-termux?style=for-the-badge&logo=npm&color=cb3837" alt="npm">
@@ -16,7 +16,7 @@
16
16
  <a href="https://www.npmjs.com/package/karnel-termux">
17
17
  <img src="https://img.shields.io/npm/dt/karnel-termux?style=for-the-badge&logo=npm&color=cb3837" alt="npm downloads">
18
18
  </a>
19
- <a href="https://github.com/israelmarques1024-dotcom/karnel-termux/blob/main/LICENSE">
19
+ <a href="https://github.com/karnel-termuxOFC/karnel-termux/blob/main/LICENSE">
20
20
  <img src="https://img.shields.io/badge/license-MIT-0078D4?style=for-the-badge" alt="License">
21
21
  </a>
22
22
  <a href="https://termux.dev/">
@@ -78,9 +78,9 @@ Why it's great:
78
78
  ### Via checksummed GitHub release (recommended)
79
79
 
80
80
  ```bash
81
- version=4.17.44
81
+ version=4.17.45
82
82
  tmpdir=$(mktemp -d) && trap 'rm -rf "$tmpdir"' EXIT
83
- base="https://github.com/israelmarques1024-dotcom/karnel-termux/releases/download/v$version"
83
+ base="https://github.com/karnel-termuxOFC/karnel-termux/releases/download/v$version"
84
84
  curl -fsSL "$base/karnel-termux-install.sh" -o "$tmpdir/karnel-termux-install.sh"
85
85
  curl -fsSL "$base/karnel-termux-install.sh.sha256" -o "$tmpdir/karnel-termux-install.sh.sha256"
86
86
  (cd "$tmpdir" && sha256sum -c karnel-termux-install.sh.sha256) && bash "$tmpdir/karnel-termux-install.sh" --ref "v$version"
@@ -250,7 +250,7 @@ optional checksum, and informational capabilities. Native command names and
250
250
  plugin-to-plugin command collisions are rejected.
251
251
 
252
252
  The installed plugin directory is `${XDG_DATA_HOME:-$HOME/.local/share}/karnel-data/plugins`.
253
- See the [official plugin registry](https://github.com/israelmarques1024-dotcom/karnel-plugins)
253
+ See the [official plugin registry](https://github.com/karnel-termuxOFC/karnel-plugins)
254
254
  for schemas, review policy, and safe publication requirements.
255
255
 
256
256
  ## AI CLIs
@@ -408,7 +408,7 @@ definitions across 68 distinct tool labels. It detects subprojects, executes
408
408
  checks in the matching project or subproject directory, preserves command exit status, and writes
409
409
  timestamped text reports under `$KARNEL_DATA/doctor_code_reports/`.
410
410
 
411
- Read the **[complete Doctor reference](https://github.com/israelmarques1024-dotcom/karnel-termux/blob/main/docs/doctor/index.md)** for modes,
411
+ Read the **[complete Doctor reference](https://github.com/karnel-termuxOFC/karnel-termux/blob/main/docs/doctor/index.md)** for modes,
412
412
  supported ecosystems, tool coverage, JSON schema, reports, and auto-fix safety.
413
413
 
414
414
  ---
@@ -565,12 +565,12 @@ Documentation loads from https://karneltermux.vercel.app.
565
565
 
566
566
  ## Documentation
567
567
 
568
- - [Documentation index](https://github.com/israelmarques1024-dotcom/karnel-termux/blob/main/docs/index.md)
569
- - [CLI reference](https://github.com/israelmarques1024-dotcom/karnel-termux/blob/main/docs/cli/index.md)
570
- - [Doctor reference](https://github.com/israelmarques1024-dotcom/karnel-termux/blob/main/docs/doctor/index.md)
571
- - [Troubleshooting](https://github.com/israelmarques1024-dotcom/karnel-termux/blob/main/docs/troubleshooting/index.md)
572
- - [Architecture](https://github.com/israelmarques1024-dotcom/karnel-termux/blob/main/docs/ARCHITECTURE/index.md)
573
- - [Documentation changelog](https://github.com/israelmarques1024-dotcom/karnel-termux/blob/main/docs/CHANGELOG.md)
568
+ - [Documentation index](https://github.com/karnel-termuxOFC/karnel-termux/blob/main/docs/index.md)
569
+ - [CLI reference](https://github.com/karnel-termuxOFC/karnel-termux/blob/main/docs/cli/index.md)
570
+ - [Doctor reference](https://github.com/karnel-termuxOFC/karnel-termux/blob/main/docs/doctor/index.md)
571
+ - [Troubleshooting](https://github.com/karnel-termuxOFC/karnel-termux/blob/main/docs/troubleshooting/index.md)
572
+ - [Architecture](https://github.com/karnel-termuxOFC/karnel-termux/blob/main/docs/ARCHITECTURE/index.md)
573
+ - [Documentation changelog](https://github.com/karnel-termuxOFC/karnel-termux/blob/main/docs/CHANGELOG.md)
574
574
  - [Official website](https://karneltermux.vercel.app)
575
575
 
576
576
  ---
package/docs/CHANGELOG.md CHANGED
@@ -6,6 +6,14 @@ layout: base
6
6
 
7
7
  # Documentation Changelog
8
8
 
9
+ ## 4.17.45
10
+
11
+ - **npm on a real Termux host:** every npm call goes through `karnel_npm()`, which runs npm through `node` when its `#!/usr/bin/env node` shebang cannot be executed (Termux ships no `/usr`, so the kernel answered `bad interpreter`) and retries with `--force` only on `EBADPLATFORM`. The remaining bare `npm install/uninstall/update/view/ls` calls in the installers were converted; guests inside proot keep plain npm.
12
+ - **Installers that could never succeed:** wpscan and wafw00f read their recorded backend with a redirection-only command (`< file`) that prints nothing, so update and uninstall always failed; KeelCode validated the base package digest instead of the `linux-arm64` release it actually downloads; Cline, Command Code, Copilot Termux and Walkie repaired the shebang on the failure branch, leaving the installed binary unrunnable.
13
+ - **Stub detection:** `karnel_is_stub_binary()` replaces a word-list heuristic that reported real CLIs (`supercode`, `python-config`) as offline placeholders right after a successful install.
14
+ - **Test harness:** `run_test` runs the body under `set -e` so intermediate failures surface. This exposed a Turbopack contract that always failed on the x86_64 CI runner, a Kilo Code install aborted by a `tar` stub and an Odysseus uninstall that had to assert its refusal explicitly.
15
+ - **Output noise:** the version spinner probes `/dev/tty` for real instead of trusting `-c`, which passed without a controlling terminal and leaked `No such device or address` into every `karnel update`.
16
+
9
17
  ## 4.17.44
10
18
 
11
19
  - **CLI correctness:** `karnel search` builds its catalog from tool READMEs in one pass instead of per-directory subshells; `karnel stats` counts modules that actually carry install markers and prints `not installed` instead of empty probes; `karnel open` gained routes for `doctor`, `brain`, `pg`, `init`, `env`, `backup`, `show`, `cleanup`, `supabase`, `linux`, `plugin`, `voice`, `security`, `osint`, `termux`, `termux-api` and `terms`.
@@ -9,7 +9,7 @@ layout: default
9
9
  <a href="{{ '/troubleshooting/' | relative_url }}">Troubleshooting</a>
10
10
  <a href="{{ '/ARCHITECTURE/' | relative_url }}">Architecture</a>
11
11
  <a href="{{ '/CHANGELOG/' | relative_url }}">Changelog</a>
12
- <a href="https://github.com/israelmarques1024-dotcom/karnel-termux">GitHub</a>
12
+ <a href="https://github.com/karnel-termuxOFC/karnel-termux">GitHub</a>
13
13
  </nav>
14
14
 
15
15
  {{ content }}
package/docs/cli/index.md CHANGED
@@ -349,7 +349,7 @@ karnel robin doctor --network
349
349
  karnel robin purge-data --yes
350
350
  ```
351
351
 
352
- See the [Robin reference](https://github.com/israelmarques1024-dotcom/karnel-termux/blob/main/karnel/tools/osint/robin/README.md) for detailed
352
+ See the [Robin reference](https://github.com/karnel-termuxOFC/karnel-termux/blob/main/karnel/tools/osint/robin/README.md) for detailed
353
353
  lifecycle, data locations, and troubleshooting.
354
354
 
355
355
  ---
package/docs/index.md CHANGED
@@ -37,11 +37,11 @@ Open its docs with `karnel open herdr`.
37
37
  <a href="./cli/">CLI Commands — full reference for every <code>karnel</code> subcommand</a>
38
38
  <a href="./doctor/">Doctor System — environment checks and the code-analysis engine</a>
39
39
  <a href="./troubleshooting/">Troubleshooting — common issues and fixes</a>
40
- <a href="https://github.com/israelmarques1024-dotcom/karnel-termux/blob/main/karnel/tools/osint/robin/README.md">Robin OSINT — responsible use, lifecycle, data locations</a>
41
- <a href="https://github.com/israelmarques1024-dotcom/karnel-termux/blob/main/karnel/tools/network/dark/README.md">Network Tools — dark, dedsec-network</a>
42
- <a href="https://github.com/israelmarques1024-dotcom/karnel-termux/blob/main/karnel/tools/ai/keelcode/README.md">KeelCode — hosted coding-agent CLI</a>
43
- <a href="https://github.com/israelmarques1024-dotcom/karnel-termux/blob/main/karnel/tools/utils/superfile/README.md">SuperFile — terminal file manager</a>
44
- <a href="https://github.com/israelmarques1024-dotcom/karnel-termux/blob/main/karnel/tools/utils/fconv/README.md">Utility Scripts — fconv, notes, treex, and more</a>
40
+ <a href="https://github.com/karnel-termuxOFC/karnel-termux/blob/main/karnel/tools/osint/robin/README.md">Robin OSINT — responsible use, lifecycle, data locations</a>
41
+ <a href="https://github.com/karnel-termuxOFC/karnel-termux/blob/main/karnel/tools/network/dark/README.md">Network Tools — dark, dedsec-network</a>
42
+ <a href="https://github.com/karnel-termuxOFC/karnel-termux/blob/main/karnel/tools/ai/keelcode/README.md">KeelCode — hosted coding-agent CLI</a>
43
+ <a href="https://github.com/karnel-termuxOFC/karnel-termux/blob/main/karnel/tools/utils/superfile/README.md">SuperFile — terminal file manager</a>
44
+ <a href="https://github.com/karnel-termuxOFC/karnel-termux/blob/main/karnel/tools/utils/fconv/README.md">Utility Scripts — fconv, notes, treex, and more</a>
45
45
  <a href="./cli/#supabase--remote-project-helpers">Supabase CLI — remote-project helpers</a>
46
46
  <a href="./CHANGELOG/">Changelog — version history and fixes</a>
47
47
  </div>
@@ -12,6 +12,6 @@ AI coding agents and assistants (Claude Code, Codex, Cline, Goose, and many more
12
12
  | `ai` | `--qwen-code`, `--gemini-cli`, `--claude-code`, `--mistral-vibe`, `--openclaude`, `--openclaw`, `--ollama`, `--codex`, `--opencode`, `--mimocode`, `--engram`, `--codegraph`, `--pi`, `--antigravity-cli`, `--minimax-cli`, `--gentle-ai`, `--gga`, `--hermes-agent`, `--kimi-code`, `--command-code`, `--codebuff`, `--freebuff`, `--kilocode-cli`, `--kiro`, `--crush`, `--cline`, `--odysseus`, `--kimchi-code`, `--omni-route`, `--ctx7`, `--openspec`, `--supercode-cli`, `--puter`, `--keelcode`, `--copilot-termux`, `--qoder`, `--ampcode`, `--cursor-cli`, `--oh-my-pi`, `--goose`, `--droid`, `--cactus`, `--cactus-needle`, `--walkie`, `--hugging-face` |
13
13
 
14
14
  See the [CLI reference]({{ '/cli/' | relative_url }}#ai) for the full command list, or the
15
- [source on GitHub](https://github.com/israelmarques1024-dotcom/karnel-termux/tree/main/karnel/modules/ai.sh).
15
+ [source on GitHub](https://github.com/karnel-termuxOFC/karnel-termux/tree/main/karnel/modules/ai.sh).
16
16
 
17
17
  [← Back to docs]({{ '/' | relative_url }}) · [CLI reference]({{ '/cli/' | relative_url }})
@@ -12,6 +12,6 @@ Automation and workflow tooling (n8n).
12
12
  | `auto` | `--n8n` |
13
13
 
14
14
  See the [CLI reference]({{ '/cli/' | relative_url }}#auto) for the full command list, or the
15
- [source on GitHub](https://github.com/israelmarques1024-dotcom/karnel-termux/tree/main/karnel/modules/auto.sh).
15
+ [source on GitHub](https://github.com/karnel-termuxOFC/karnel-termux/tree/main/karnel/modules/auto.sh).
16
16
 
17
17
  [← Back to docs]({{ '/' | relative_url }}) · [CLI reference]({{ '/cli/' | relative_url }})
@@ -12,6 +12,6 @@ Databases such as PostgreSQL, MongoDB, Redis and companions.
12
12
  | `db` | `--postgresql`, `--mariadb`, `--sqlite`, `--mongodb`, `--redis` |
13
13
 
14
14
  See the [CLI reference]({{ '/cli/' | relative_url }}#db) for the full command list, or the
15
- [source on GitHub](https://github.com/israelmarques1024-dotcom/karnel-termux/tree/main/karnel/modules/db.sh).
15
+ [source on GitHub](https://github.com/karnel-termuxOFC/karnel-termux/tree/main/karnel/modules/db.sh).
16
16
 
17
17
  [← Back to docs]({{ '/' | relative_url }}) · [CLI reference]({{ '/cli/' | relative_url }})
@@ -12,6 +12,6 @@ Deploy CLIs (Railway, Netlify, Vercel, Supabase).
12
12
  | `deploy` | `--vercel`, `--railway`, `--netlify`, `--supabase` |
13
13
 
14
14
  See the [CLI reference]({{ '/cli/' | relative_url }}#deploy) for the full command list, or the
15
- [source on GitHub](https://github.com/israelmarques1024-dotcom/karnel-termux/tree/main/karnel/modules/deploy.sh).
15
+ [source on GitHub](https://github.com/karnel-termuxOFC/karnel-termux/tree/main/karnel/modules/deploy.sh).
16
16
 
17
17
  [← Back to docs]({{ '/' | relative_url }}) · [CLI reference]({{ '/cli/' | relative_url }})
@@ -12,6 +12,6 @@ General development utilities (fzf, bat, make, proot, tmux, and more).
12
12
  | `dev` | `--gh`, `--wget`, `--curl`, `--lsd`, `--bat`, `--proot`, `--ncurses`, `--tmate`, `--openssh`, `--tmux`, `--cloudflared`, `--translate`, `--html2text`, `--jq`, `--bc`, `--tree`, `--fzf`, `--imagemagick`, `--shfmt`, `--make`, `--udocker`, `--snyk` |
13
13
 
14
14
  See the [CLI reference]({{ '/cli/' | relative_url }}#dev) for the full command list, or the
15
- [source on GitHub](https://github.com/israelmarques1024-dotcom/karnel-termux/tree/main/karnel/modules/dev.sh).
15
+ [source on GitHub](https://github.com/karnel-termuxOFC/karnel-termux/tree/main/karnel/modules/dev.sh).
16
16
 
17
17
  [← Back to docs]({{ '/' | relative_url }}) · [CLI reference]({{ '/cli/' | relative_url }})
@@ -12,6 +12,6 @@ Terminal and browser-based editors (code-server, Neovim, and more).
12
12
  | `editor` | `--code-server`, `--neovim`, `--nvchad` |
13
13
 
14
14
  See the [CLI reference]({{ '/cli/' | relative_url }}#editor) for the full command list, or the
15
- [source on GitHub](https://github.com/israelmarques1024-dotcom/karnel-termux/tree/main/karnel/modules/editor.sh).
15
+ [source on GitHub](https://github.com/karnel-termuxOFC/karnel-termux/tree/main/karnel/modules/editor.sh).
16
16
 
17
17
  [← Back to docs]({{ '/' | relative_url }}) · [CLI reference]({{ '/cli/' | relative_url }})
@@ -12,6 +12,6 @@ Terminal games to relax between sessions.
12
12
  | `games` | `--buzz`, `--ctfgod`, `--detective`, `--pet-friends`, `--tamagotchi`, `--arcade` |
13
13
 
14
14
  See the [CLI reference]({{ '/cli/' | relative_url }}#games) for the full command list, or the
15
- [source on GitHub](https://github.com/israelmarques1024-dotcom/karnel-termux/tree/main/karnel/modules/games.sh).
15
+ [source on GitHub](https://github.com/karnel-termuxOFC/karnel-termux/tree/main/karnel/modules/games.sh).
16
16
 
17
17
  [← Back to docs]({{ '/' | relative_url }}) · [CLI reference]({{ '/cli/' | relative_url }})
@@ -12,6 +12,6 @@ Programming-language runtimes (Python, Node.js, Rust, Go, and more).
12
12
  | `lang` | `--bun`, `--nodejs`, `--python`, `--perl`, `--php`, `--rust`, `--clang`, `--golang` |
13
13
 
14
14
  See the [CLI reference]({{ '/cli/' | relative_url }}#lang) for the full command list, or the
15
- [source on GitHub](https://github.com/israelmarques1024-dotcom/karnel-termux/tree/main/karnel/modules/lang.sh).
15
+ [source on GitHub](https://github.com/karnel-termuxOFC/karnel-termux/tree/main/karnel/modules/lang.sh).
16
16
 
17
17
  [← Back to docs]({{ '/' | relative_url }}) · [CLI reference]({{ '/cli/' | relative_url }})
@@ -12,6 +12,6 @@ Network utilities (dark, dedsec-network).
12
12
  | `network` | `--dark`, `--dedsec-network` |
13
13
 
14
14
  See the [CLI reference]({{ '/cli/' | relative_url }}#network) for the full command list, or the
15
- [source on GitHub](https://github.com/israelmarques1024-dotcom/karnel-termux/tree/main/karnel/modules/network.sh).
15
+ [source on GitHub](https://github.com/karnel-termuxOFC/karnel-termux/tree/main/karnel/modules/network.sh).
16
16
 
17
17
  [← Back to docs]({{ '/' | relative_url }}) · [CLI reference]({{ '/cli/' | relative_url }})
@@ -12,6 +12,6 @@ Node.js packages and JavaScript tooling.
12
12
  | `npm` | `--typescript`, `--nestjs`, `--prettier`, `--live-server`, `--localtunnel`, `--vercel`, `--markserv`, `--psqlformat`, `--ncu`, `--ngrok`, `--turbopack` |
13
13
 
14
14
  See the [CLI reference]({{ '/cli/' | relative_url }}#npm) for the full command list, or the
15
- [source on GitHub](https://github.com/israelmarques1024-dotcom/karnel-termux/tree/main/karnel/modules/npm.sh).
15
+ [source on GitHub](https://github.com/karnel-termuxOFC/karnel-termux/tree/main/karnel/modules/npm.sh).
16
16
 
17
17
  [← Back to docs]({{ '/' | relative_url }}) · [CLI reference]({{ '/cli/' | relative_url }})
@@ -12,6 +12,6 @@ OSINT tooling, centered on Robin.
12
12
  | `osint` | Robin OSINT |
13
13
 
14
14
  See the [CLI reference]({{ '/cli/' | relative_url }}#osint) for the full command list, or the
15
- [source on GitHub](https://github.com/israelmarques1024-dotcom/karnel-termux/tree/main/karnel/modules/osint.sh).
15
+ [source on GitHub](https://github.com/karnel-termuxOFC/karnel-termux/tree/main/karnel/modules/osint.sh).
16
16
 
17
17
  [← Back to docs]({{ '/' | relative_url }}) · [CLI reference]({{ '/cli/' | relative_url }})
@@ -12,6 +12,6 @@ The plugin system and manager.
12
12
  | `plugin` | Plugin system |
13
13
 
14
14
  See the [CLI reference]({{ '/cli/' | relative_url }}#plugin) for the full command list, or the
15
- [source on GitHub](https://github.com/israelmarques1024-dotcom/karnel-termux/tree/main/karnel/modules/plugin.sh).
15
+ [source on GitHub](https://github.com/karnel-termuxOFC/karnel-termux/tree/main/karnel/modules/plugin.sh).
16
16
 
17
17
  [← Back to docs]({{ '/' | relative_url }}) · [CLI reference]({{ '/cli/' | relative_url }})
@@ -12,6 +12,6 @@ Security and pentest tooling (30 tools).
12
12
  | `security` | Security tools |
13
13
 
14
14
  See the [CLI reference]({{ '/cli/' | relative_url }}#security) for the full command list, or the
15
- [source on GitHub](https://github.com/israelmarques1024-dotcom/karnel-termux/tree/main/karnel/modules/security.sh).
15
+ [source on GitHub](https://github.com/karnel-termuxOFC/karnel-termux/tree/main/karnel/modules/security.sh).
16
16
 
17
17
  [← Back to docs]({{ '/' | relative_url }}) · [CLI reference]({{ '/cli/' | relative_url }})
@@ -12,6 +12,6 @@ Shell enhancements (ZSH, Oh My Zsh, zoxide).
12
12
  | `shell` | `--powerlevel10k`, `--zsh-defer`, `--zsh-autosuggestions`, `--zsh-syntax-highlighting`, `--history-substring`, `--zsh-completions`, `--fzf-tab`, `--you-should-use`, `--zsh-autopair`, `--better-npm` |
13
13
 
14
14
  See the [CLI reference]({{ '/cli/' | relative_url }}#shell) for the full command list, or the
15
- [source on GitHub](https://github.com/israelmarques1024-dotcom/karnel-termux/tree/main/karnel/modules/shell.sh).
15
+ [source on GitHub](https://github.com/karnel-termuxOFC/karnel-termux/tree/main/karnel/modules/shell.sh).
16
16
 
17
17
  [← Back to docs]({{ '/' | relative_url }}) · [CLI reference]({{ '/cli/' | relative_url }})
@@ -12,6 +12,6 @@ Termux UI components.
12
12
  | `ui` | `--font`, `--extra-keys`, `--cursor`, `--banner` |
13
13
 
14
14
  See the [CLI reference]({{ '/cli/' | relative_url }}#ui) for the full command list, or the
15
- [source on GitHub](https://github.com/israelmarques1024-dotcom/karnel-termux/tree/main/karnel/modules/ui.sh).
15
+ [source on GitHub](https://github.com/karnel-termuxOFC/karnel-termux/tree/main/karnel/modules/ui.sh).
16
16
 
17
17
  [← Back to docs]({{ '/' | relative_url }}) · [CLI reference]({{ '/cli/' | relative_url }})
@@ -16,6 +16,6 @@ and tracked with Karnel ownership markers so `karnel uninstall utils --herdr` is
16
16
  | `utils` | `--fconv`, `--filecheck`, `--websites`, `--notes`, `--treex`, `--passman`, `--applaunch`, `--splash`, `--httptmux`, `--zork`, `--qrcode`, `--superfile`, `--herdr` |
17
17
 
18
18
  See the [CLI reference]({{ '/cli/' | relative_url }}#utils) for the full command list, or the
19
- [source on GitHub](https://github.com/israelmarques1024-dotcom/karnel-termux/tree/main/karnel/modules/utils.sh).
19
+ [source on GitHub](https://github.com/karnel-termuxOFC/karnel-termux/tree/main/karnel/modules/utils.sh).
20
20
 
21
21
  [← Back to docs]({{ '/' | relative_url }}) · [CLI reference]({{ '/cli/' | relative_url }})
@@ -12,6 +12,6 @@ Voice commands for AI agents.
12
12
  | `voice` | Voice command |
13
13
 
14
14
  See the [CLI reference]({{ '/cli/' | relative_url }}#voice) for the full command list, or the
15
- [source on GitHub](https://github.com/israelmarques1024-dotcom/karnel-termux/tree/main/karnel/modules/voice.sh).
15
+ [source on GitHub](https://github.com/karnel-termuxOFC/karnel-termux/tree/main/karnel/modules/voice.sh).
16
16
 
17
17
  [← Back to docs]({{ '/' | relative_url }}) · [CLI reference]({{ '/cli/' | relative_url }})
@@ -40,7 +40,7 @@ Create an npm **granular access token** with:
40
40
  - **Permissions**: Automation (Bypass 2FA)
41
41
 
42
42
  Save it as the `NPM_TOKEN` Actions secret in the
43
- `israelmarques1024-dotcom/karnel-termux` repository. Never paste a token into
43
+ `karnel-termuxOFC/karnel-termux` repository. Never paste a token into
44
44
  issues, chat, shell history, or screenshots. If a token is ever exposed,
45
45
  revoke it immediately at https://www.npmjs.com/settings/<user>/tokens.
46
46
 
@@ -58,7 +58,7 @@ the Vercel production site, `https://karneltermux.vercel.app`. The `Publish Docs
58
58
  workflow (`.github/workflows/docs.yml`) runs `actions/jekyll-build-pages` on
59
59
  every push to `main` that changes `docs/**`, uploads the result as a Pages
60
60
  artifact and deploys it to the `github-pages` environment; that mirror,
61
- `https://israelmarques1024-dotcom.github.io/karnel-termux/`, is served only
61
+ `https://karnel-termuxOFC.github.io/karnel-termux/`, is served only
62
62
  while GitHub Pages is enabled for the repository.
63
63
 
64
64
  If a build fails, open the Actions run for the failing job and read the Jekyll
package/install.sh CHANGED
@@ -11,7 +11,7 @@ readonly P_FAIL='\e[1;31m'
11
11
  readonly P_HL='\e[38;5;213m'
12
12
  readonly P_NC='\e[0m'
13
13
 
14
- REPO="https://github.com/israelmarques1024-dotcom/karnel-termux"
14
+ REPO="https://github.com/karnel-termuxOFC/karnel-termux"
15
15
  BRANCH="main"
16
16
  RELEASE_REF=""
17
17
  INSTALL_SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
@@ -1 +1 @@
1
- 993646aa095b290adc04835c38c98a56ff05c212
1
+ 29fb2632bc7558b002e10d68272418bcb4450cb1
package/karnel/bin/karnel CHANGED
@@ -90,7 +90,7 @@ check_for_updates() {
90
90
  fi
91
91
  if ! _valid_semver "$remote_version"; then
92
92
  remote_version=""
93
- if remote_output=$(curl -fsSL --max-time 5 "https://raw.githubusercontent.com/israelmarques1024-dotcom/karnel-termux/main/package.json" 2>/dev/null); then
93
+ if remote_output=$(curl -fsSL --max-time 5 "https://raw.githubusercontent.com/karnel-termuxOFC/karnel-termux/main/package.json" 2>/dev/null); then
94
94
  remote_version=$(printf '%s\n' "$remote_output" | sed -nE 's/^[[:space:]]*"version":[[:space:]]*"([^"]+)".*/\1/p' | head -1)
95
95
  fi
96
96
  fi
@@ -1,5 +1,6 @@
1
1
  #!/usr/bin/env bash
2
2
 
3
+ import "@/utils/npm"
3
4
  import "@/utils/log"
4
5
  import "@/utils/colors"
5
6
 
@@ -169,8 +170,8 @@ EOF
169
170
  }
170
171
 
171
172
  _install_next_deps() {
172
- npm install axios lucide-react framer-motion sonner zod react-hook-form @hookform/resolvers @tanstack/react-query zustand tailwindcss &>"$LOG_FILE"
173
- npm install -D prettier prettier-plugin-tailwindcss &>>"$LOG_FILE"
173
+ karnel_npm install axios lucide-react framer-motion sonner zod react-hook-form @hookform/resolvers @tanstack/react-query zustand tailwindcss &>"$LOG_FILE"
174
+ karnel_npm install -D prettier prettier-plugin-tailwindcss &>>"$LOG_FILE"
174
175
  }
175
176
 
176
177
  # ===== REACT + VITE =====
@@ -295,8 +296,8 @@ EOF
295
296
  }
296
297
 
297
298
  _install_react_deps() {
298
- npm install axios lucide-react framer-motion sonner zod react-hook-form @hookform/resolvers @tanstack/react-query zustand tailwindcss clsx tailwind-merge &>"$LOG_FILE"
299
- npm install -D prettier prettier-plugin-tailwindcss &>>"$LOG_FILE"
299
+ karnel_npm install axios lucide-react framer-motion sonner zod react-hook-form @hookform/resolvers @tanstack/react-query zustand tailwindcss clsx tailwind-merge &>"$LOG_FILE"
300
+ karnel_npm install -D prettier prettier-plugin-tailwindcss &>>"$LOG_FILE"
300
301
  }
301
302
 
302
303
  # ===== EXPRESS.JS =====
@@ -355,11 +356,11 @@ configure_express() {
355
356
  }
356
357
 
357
358
  _install_express_deps() {
358
- npm install express pg typeorm reflect-metadata jsonwebtoken cookie-parser morgan cors bcryptjs helmet cloudinary multer express-rate-limit tsconfig-paths zod &>"$LOG_FILE"
359
+ karnel_npm install express pg typeorm reflect-metadata jsonwebtoken cookie-parser morgan cors bcryptjs helmet cloudinary multer express-rate-limit tsconfig-paths zod &>"$LOG_FILE"
359
360
  }
360
361
 
361
362
  _install_express_dev() {
362
- npm install -D typescript ts-node-dev tsconfig-paths tsc-alias @types/node @types/multer @types/morgan @types/jsonwebtoken @types/helmet @types/express @types/cors @types/cookie-parser @types/bcryptjs &>>"$LOG_FILE"
363
+ karnel_npm install -D typescript ts-node-dev tsconfig-paths tsc-alias @types/node @types/multer @types/morgan @types/jsonwebtoken @types/helmet @types/express @types/cors @types/cookie-parser @types/bcryptjs &>>"$LOG_FILE"
363
364
  }
364
365
 
365
366
  _setup_express_structure() {
@@ -578,8 +579,8 @@ configure_nest() {
578
579
  }
579
580
 
580
581
  _install_nest_deps() {
581
- npm install @nestjs/typeorm typeorm pg @nestjs/jwt @nestjs/passport passport passport-jwt passport-local class-validator class-transformer bcryptjs helmet cloudinary &>>"$LOG_FILE"
582
- npm install -D @types/passport-jwt @types/passport-local @types/bcryptjs &>>"$LOG_FILE"
582
+ karnel_npm install @nestjs/typeorm typeorm pg @nestjs/jwt @nestjs/passport passport passport-jwt passport-local class-validator class-transformer bcryptjs helmet cloudinary &>>"$LOG_FILE"
583
+ karnel_npm install -D @types/passport-jwt @types/passport-local @types/bcryptjs &>>"$LOG_FILE"
583
584
  }
584
585
 
585
586
  configure_python() {
@@ -235,14 +235,11 @@ _install_specific_tools() {
235
235
  IFS=',' read -ra _bin_list <<< "$bins"
236
236
  for _bin in "${_bin_list[@]}"; do
237
237
  if command -v "$_bin" &>/dev/null; then
238
- # Check if it is a stub
239
238
  local _bin_path
240
239
  _bin_path=$(command -v "$_bin")
241
- if [ -f "$_bin_path" ] && [ -x "$_bin_path" ]; then
242
- if ! grep -qiE "offline|unreachable|not.available|stub|indisponivel|inacessivel" "$_bin_path" 2>/dev/null || [ "$(head -c 2 "$_bin_path")" != "#!" ]; then
243
- found_bin="$_bin"
244
- break
245
- fi
240
+ if [ -f "$_bin_path" ] && [ -x "$_bin_path" ] && ! karnel_is_stub_binary "$_bin_path"; then
241
+ found_bin="$_bin"
242
+ break
246
243
  fi
247
244
  fi
248
245
  done
@@ -1,5 +1,6 @@
1
1
  #!/usr/bin/env bash
2
2
 
3
+ import "@/utils/npm"
3
4
  import "@/utils/log"
4
5
  import "@/utils/colors"
5
6
  import "@/utils/tools"
@@ -213,10 +214,10 @@ _update_cleanup() {
213
214
  _update_release_commit() {
214
215
  local tag="$1" commit=""
215
216
  if command -v git &>/dev/null 2>&1; then
216
- commit=$(git ls-remote "https://github.com/israelmarques1024-dotcom/karnel-termux.git" "refs/tags/${tag}^{}" 2>/dev/null | awk '{print $1}')
217
+ commit=$(git ls-remote "https://github.com/karnel-termuxOFC/karnel-termux.git" "refs/tags/${tag}^{}" 2>/dev/null | awk '{print $1}')
217
218
  fi
218
219
  if [[ -z "$commit" ]] && command -v curl &>/dev/null 2>&1; then
219
- commit=$(curl -fsS -m 10 "https://api.github.com/repos/israelmarques1024-dotcom/karnel-termux/commits/${tag}" 2>/dev/null \
220
+ commit=$(curl -fsS -m 10 "https://api.github.com/repos/karnel-termuxOFC/karnel-termux/commits/${tag}" 2>/dev/null \
220
221
  | grep -m1 '"sha"' | sed -E 's/.*"sha":[[:space:]]*"([0-9a-f]{40})".*/\1/')
221
222
  fi
222
223
  [[ "$commit" =~ ^[0-9a-f]{40}$ ]] && echo "$commit"
@@ -233,7 +234,7 @@ _update_try_curl() {
233
234
  log_info "Trying the official curl installer..."
234
235
 
235
236
  if ! curl --fail --silent --show-error --location --proto '=https' --proto-redir '=https' \
236
- "https://api.github.com/repos/israelmarques1024-dotcom/karnel-termux/releases/latest" \
237
+ "https://api.github.com/repos/karnel-termuxOFC/karnel-termux/releases/latest" \
237
238
  -o "$meta"; then
238
239
  rm -f "$meta" "$installer" "$sumfile"
239
240
  return 1
@@ -247,10 +248,10 @@ _update_try_curl() {
247
248
  fi
248
249
 
249
250
  if ! curl --fail --silent --show-error --location --proto '=https' --proto-redir '=https' \
250
- "https://github.com/israelmarques1024-dotcom/karnel-termux/releases/download/$tag/karnel-termux-install.sh.sha256" \
251
+ "https://github.com/karnel-termuxOFC/karnel-termux/releases/download/$tag/karnel-termux-install.sh.sha256" \
251
252
  -o "$sumfile" ||
252
253
  ! curl --fail --silent --show-error --location --proto '=https' --proto-redir '=https' \
253
- "https://github.com/israelmarques1024-dotcom/karnel-termux/releases/download/$tag/karnel-termux-install.sh" \
254
+ "https://github.com/karnel-termuxOFC/karnel-termux/releases/download/$tag/karnel-termux-install.sh" \
254
255
  -o "$installer"; then
255
256
  rm -f "$meta" "$installer" "$sumfile"
256
257
  return 1
@@ -366,7 +367,7 @@ _update_try_npm() {
366
367
  return 1
367
368
  fi
368
369
  log_info "Trying npm update..."
369
- if npm update -g karnel-termux --ignore-scripts 2>/dev/null; then
370
+ if karnel_npm update -g karnel-termux --ignore-scripts 2>/dev/null; then
370
371
  local new_ver
371
372
  new_ver=$(_npm_installed_version)
372
373
  log_success "Updated to v$new_ver via npm"
@@ -383,7 +384,7 @@ _update_try_npm_install() {
383
384
  return 1
384
385
  fi
385
386
  log_info "Trying npm install..."
386
- if npm install -g karnel-termux@latest --ignore-scripts 2>/dev/null; then
387
+ if karnel_npm install -g karnel-termux@latest --ignore-scripts 2>/dev/null; then
387
388
  local new_ver
388
389
  new_ver=$(_npm_installed_version)
389
390
  log_success "Updated to v$new_ver via npm install"
@@ -421,7 +422,7 @@ _update_karnel_repo() {
421
422
 
422
423
  origin=$(git -C "$repo_dir" remote get-url origin 2>/dev/null) || return 1
423
424
  case "${origin%.git}" in
424
- https://github.com/israelmarques1024-dotcom/karnel-termux|git@github.com:israelmarques1024-dotcom/karnel-termux) ;;
425
+ https://github.com/karnel-termuxOFC/karnel-termux|https://github.com/israelmarques1024-dotcom/karnel-termux|git@github.com:karnel-termuxOFC/karnel-termux|git@github.com:israelmarques1024-dotcom/karnel-termux) ;;
425
426
  *) log_error "Refusing git update from an untrusted origin: $origin"; return 1 ;;
426
427
  esac
427
428
  if [[ -n "$(git -C "$repo_dir" status --porcelain --untracked-files=all 2>/dev/null)" ]]; then
@@ -1,5 +1,6 @@
1
1
  #!/usr/bin/env bash
2
2
 
3
+ import "@/utils/npm"
3
4
  import "@/utils/log"
4
5
  import "@/utils/version"
5
6
  import "@/utils/npm-shebang"
@@ -15,7 +16,7 @@ _10router_dependencies() {
15
16
  }
16
17
 
17
18
  _install_10router_impl() {
18
- if ! npm install -g "$TENROUTER_PACKAGE" &>>"$LOG_FILE"; then
19
+ if ! karnel_npm install -g "$TENROUTER_PACKAGE" &>>"$LOG_FILE"; then
19
20
  log_error "Failed to install 10Router"
20
21
  return 1
21
22
  fi
@@ -36,7 +37,7 @@ install_10router() {
36
37
  }
37
38
 
38
39
  _uninstall_10router_impl() {
39
- npm uninstall -g "$TENROUTER_PACKAGE" &>>"$LOG_FILE"
40
+ karnel_npm uninstall -g "$TENROUTER_PACKAGE" &>>"$LOG_FILE"
40
41
  }
41
42
 
42
43
  uninstall_10router() {
@@ -49,7 +50,7 @@ uninstall_10router() {
49
50
  }
50
51
 
51
52
  _update_10router_impl() {
52
- if ! npm update -g "$TENROUTER_PACKAGE" &>>"$LOG_FILE"; then
53
+ if ! karnel_npm update -g "$TENROUTER_PACKAGE" &>>"$LOG_FILE"; then
53
54
  log_error "Failed to update 10Router"
54
55
  return 1
55
56
  fi
@@ -9,6 +9,7 @@
9
9
 
10
10
  import "@/utils/log"
11
11
  import "@/utils/colors"
12
+ import "@/utils/tools"
12
13
 
13
14
  # KARNEL_CACHE e PREFIX são definidos via env.sh
14
15
  # Exportados aqui apenas como fallback para scripts que carregam all.sh diretamente
@@ -114,16 +115,9 @@ _validate_tool_installed() {
114
115
  # Verificação extra: se for um stub (shell script que só mostra erro), considera falha
115
116
  local bin_path
116
117
  bin_path=$(command -v "$bin")
117
- if [[ -f "$bin_path" ]]; then
118
- local first_line
119
- first_line=$(head -1 "$bin_path" 2>/dev/null)
120
- # Stubs geralmente começam com #! e contêm "offline" ou "unreachable"
121
- if [[ "$first_line" == "#!"* ]]; then
122
- if grep -qiE "offline|unreachable|not.available|stub|indisponivel|inacessivel" "$bin_path" 2>/dev/null; then
123
- log_warn "$tool_name: instalado como stub offline (instalação real indisponível)"
124
- return 2
125
- fi
126
- fi
118
+ if karnel_is_stub_binary "$bin_path"; then
119
+ log_warn "$tool_name: instalado como stub offline (instalação real indisponível)"
120
+ return 2
127
121
  fi
128
122
  local probe="${AI_TOOL_PROBES[$tool_id]:-}"
129
123
  if [[ -n "$probe" ]]; then
@@ -4,7 +4,7 @@ Lightweight, terminal-first surface for Antigravity agents
4
4
 
5
5
  **Package:** antigravity-cli
6
6
  **Author:** israel marques
7
- **Repository:** https://github.com/israelmarques1024-dotcom/karnel-termux
7
+ **Repository:** https://github.com/karnel-termuxOFC/karnel-termux
8
8
  **Official:** https://antigravity.google
9
9
  **Type:** AI workflow assistant (Binary + glibc bootstrapper)
10
10
  **License:** MIT
@@ -4,7 +4,7 @@ An open 45M-parameter model for tool calling, device use and structured extracti
4
4
 
5
5
  **Package:** cactus-needle
6
6
  **Author:** israel marques
7
- **Repository:** https://github.com/israelmarques1024-dotcom/karnel-termux
7
+ **Repository:** https://github.com/karnel-termuxOFC/karnel-termux
8
8
  **Official:** https://github.com/cactus-compute/needle
9
9
  **Type:** Python tool-calling model CLI (glibc/JAX adaptation)
10
10
  **License:** See official repository (MIT)
@@ -4,7 +4,7 @@ Anthropic's CLI tool with Claude AI
4
4
 
5
5
  **Package:** claude-code
6
6
  **Author:** israel marques
7
- **Repository:** https://github.com/israelmarques1024-dotcom/karnel-termux
7
+ **Repository:** https://github.com/karnel-termuxOFC/karnel-termux
8
8
  **Official:** https://github.com/anthropics/claude-code
9
9
  **Type:** AI coding assistant (Binary + glibc bootstrapper)
10
10
  **License:** MIT