karnel-termux 4.17.13 → 4.17.20
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.
- package/README.md +22 -21
- package/docs/ARCHITECTURE/index.md +12 -4
- package/docs/CHANGELOG.md +117 -1
- package/docs/_config.yml +1 -0
- package/docs/_layouts/base.html +1 -7
- package/docs/_layouts/default.html +43 -0
- package/docs/assets/css/style.scss +15 -49
- package/docs/cli/index.md +67 -8
- package/docs/index.md +10 -6
- package/docs/karnel/ai/index.md +2 -2
- package/docs/karnel/auto/index.md +2 -2
- package/docs/karnel/db/index.md +2 -2
- package/docs/karnel/deploy/index.md +2 -2
- package/docs/karnel/dev/index.md +3 -3
- package/docs/karnel/editor/index.md +2 -2
- package/docs/karnel/games/index.md +2 -2
- package/docs/karnel/lang/index.md +2 -2
- package/docs/karnel/network/index.md +2 -2
- package/docs/karnel/npm/index.md +2 -2
- package/docs/karnel/osint/index.md +2 -2
- package/docs/karnel/plugin/index.md +2 -2
- package/docs/karnel/security/index.md +3 -3
- package/docs/karnel/shell/index.md +2 -2
- package/docs/karnel/ui/index.md +2 -2
- package/docs/karnel/utils/index.md +2 -2
- package/docs/karnel/voice/index.md +2 -2
- package/docs/troubleshooting/index.md +4 -2
- package/karnel/RELEASE_COMMIT +1 -1
- package/karnel/cli/commands/backup.sh +2 -2
- package/karnel/cli/commands/brain.sh +4 -4
- package/karnel/cli/commands/doctor/code_exec.sh +5 -0
- package/karnel/cli/commands/env.sh +6 -0
- package/karnel/cli/commands/ia.sh +6 -2
- package/karnel/cli/commands/init.sh +47 -34
- package/karnel/cli/commands/list.sh +1 -0
- package/karnel/cli/commands/open.sh +4 -0
- package/karnel/cli/commands/pg.sh +7 -4
- package/karnel/cli/commands/restore.sh +3 -3
- package/karnel/cli/commands/search.sh +2 -2
- package/karnel/cli/commands/supabase.sh +4 -1
- package/karnel/cli/commands/voice.sh +3 -3
- package/karnel/modules/shell.sh +3 -1
- package/karnel/tools/ai/cactus/install.sh +1 -1
- package/karnel/tools/ai/cline/install.sh +54 -6
- package/karnel/tools/ai/crush/install.sh +1 -1
- package/karnel/tools/ai/droid/install.sh +10 -10
- package/karnel/tools/ai/keelcode/install.sh +54 -6
- package/karnel/tools/ai/kilocode-cli/install.sh +54 -6
- package/karnel/tools/ai/kimchi-code/install.sh +16 -14
- package/karnel/tools/ai/kiro/install.sh +54 -6
- package/karnel/tools/ai/oh-my-pi/install.sh +14 -14
- package/karnel/tools/deploy/supabase/install.sh +54 -6
- package/karnel/tools/lang/bun/install.sh +6 -6
- package/karnel/tools/utils/applaunch/applaunch.py +18 -14
- package/karnel/tools/utils/passman/passman.py +20 -1
- package/karnel/tools/utils/splash/splash.py +10 -2
- package/karnel/tools/utils/treex/treex.py +4 -0
- package/karnel/tools/utils/zork/install.sh +2 -7
- package/karnel/tools/utils/zork/zork.sh +29 -5
- package/karnel/utils/agent_actions.sh +40 -16
- package/karnel/utils/agent_llm.sh +9 -9
- package/karnel/utils/tools.sh +6 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
<p align="center">
|
|
10
10
|
<a href="https://github.com/israelmarques1024-dotcom/karnel-termux">
|
|
11
|
-
<img src="https://img.shields.io/badge/version-4.17.
|
|
11
|
+
<img src="https://img.shields.io/badge/version-4.17.20-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">
|
|
@@ -23,17 +23,17 @@
|
|
|
23
23
|
<img src="https://img.shields.io/badge/platform-Termux%20%7C%20Android-0078D4?style=for-the-badge" alt="Platform">
|
|
24
24
|
</a>
|
|
25
25
|
<a href="https://israelmarques1024-dotcom.github.io/karnel-termux">
|
|
26
|
-
<img src="https://img.shields.io/badge/Site-
|
|
26
|
+
<img src="https://img.shields.io/badge/Site-israelmarques1024--dotcom.github.io%2Fkarnel--termux-0078D4?style=for-the-badge" alt="Website">
|
|
27
27
|
</a>
|
|
28
28
|
</p>
|
|
29
29
|
|
|
30
30
|
---
|
|
31
31
|
|
|
32
|
-
**Karnel Termux** is a modular development environment that transforms Termux into a complete workstation.
|
|
32
|
+
**Karnel Termux** is a modular development environment that transforms Termux into a complete workstation.
|
|
33
33
|
|
|
34
|
-
Created by **Israel Marques**.
|
|
34
|
+
Created by **Israel Marques**. Core agent contributions by **devcorex**.
|
|
35
35
|
|
|
36
|
-
|
|
36
|
+
With a single CLI (`karnel`), install and manage:
|
|
37
37
|
|
|
38
38
|
- **45 AI tools** — Claude, Gemini, OpenCode, Cactus, Hugging Face, Ollama, KeelCode, Goose, Factory Droid and more
|
|
39
39
|
- **8 languages** — Node.js, Python, Go, Rust, C/C++, PHP, Perl, Bun
|
|
@@ -67,7 +67,7 @@ karnel install utils --herdr
|
|
|
67
67
|
Why it's great:
|
|
68
68
|
- **Checksum-verified** download from the official Herdr release manifest (`https://herdr.dev/latest.json`).
|
|
69
69
|
- **Atomic, safe install** into `$PREFIX/bin/herdr` with a Karnel ownership marker — so `karnel uninstall utils --herdr` is clean and never touches files it didn't manage.
|
|
70
|
-
- Pairs perfectly with the 45
|
|
70
|
+
- Pairs perfectly with the 45 AI agents Karnel manages.
|
|
71
71
|
|
|
72
72
|
> Open its docs anytime with `karnel open herdr`.
|
|
73
73
|
|
|
@@ -78,7 +78,7 @@ Why it's great:
|
|
|
78
78
|
### Via checksummed GitHub release (recommended)
|
|
79
79
|
|
|
80
80
|
```bash
|
|
81
|
-
version=4.17.
|
|
81
|
+
version=4.17.20
|
|
82
82
|
tmpdir=$(mktemp -d) && trap 'rm -rf "$tmpdir"' EXIT
|
|
83
83
|
base="https://github.com/israelmarques1024-dotcom/karnel-termux/releases/download/v$version"
|
|
84
84
|
curl -fsSL "$base/karnel-termux-install.sh" -o "$tmpdir/karnel-termux-install.sh"
|
|
@@ -375,7 +375,7 @@ definitions across 68 distinct tool labels. It detects subprojects, executes
|
|
|
375
375
|
checks in the matching project or subproject directory, preserves command exit status, and writes
|
|
376
376
|
timestamped text reports under `$KARNEL_DATA/doctor_code_reports/`.
|
|
377
377
|
|
|
378
|
-
Read the **[complete Doctor reference](docs/doctor/index.md)** for modes,
|
|
378
|
+
Read the **[complete Doctor reference](https://github.com/israelmarques1024-dotcom/karnel-termux/blob/main/docs/doctor/index.md)** for modes,
|
|
379
379
|
supported ecosystems, tool coverage, JSON schema, reports, and auto-fix safety.
|
|
380
380
|
|
|
381
381
|
---
|
|
@@ -406,7 +406,7 @@ karnel voice claude-code --lang en # Speak in English -> claude -p
|
|
|
406
406
|
karnel voice "!" # Shortcut for "text"
|
|
407
407
|
```
|
|
408
408
|
|
|
409
|
-
### Supported Agents (
|
|
409
|
+
### Supported Agents (14)
|
|
410
410
|
|
|
411
411
|
| Agent | Command executed |
|
|
412
412
|
|-------|-----------------|
|
|
@@ -425,6 +425,7 @@ karnel voice "!" # Shortcut for "text"
|
|
|
425
425
|
| `crush` | `crush "..."` |
|
|
426
426
|
| `kiro` | `kiro-cli "..."` |
|
|
427
427
|
| `text` | Prints prompt to terminal |
|
|
428
|
+
| `!` | Alias for `text` |
|
|
428
429
|
|
|
429
430
|
### Options
|
|
430
431
|
|
|
@@ -448,7 +449,7 @@ Microphone -> termux-speech-to-text -> editor (edit) -> clipboard -> AI agent
|
|
|
448
449
|
### Requirements
|
|
449
450
|
|
|
450
451
|
- Termux:API: `pkg install termux-api`
|
|
451
|
-
- App Termux:API: https://
|
|
452
|
+
- App Termux:API: https://github.com/termux/termux-api
|
|
452
453
|
- Editor (optional): `karnel install editor`; otherwise use `--raw` or the automatic raw fallback
|
|
453
454
|
|
|
454
455
|
---
|
|
@@ -531,12 +532,12 @@ Documentation loads from https://israelmarques1024-dotcom.github.io/karnel-termu
|
|
|
531
532
|
|
|
532
533
|
## Documentation
|
|
533
534
|
|
|
534
|
-
- [Documentation index](docs/index.md)
|
|
535
|
-
- [CLI reference](docs/cli/index.md)
|
|
536
|
-
- [Doctor reference](docs/doctor/index.md)
|
|
537
|
-
- [Troubleshooting](docs/troubleshooting/index.md)
|
|
538
|
-
- [Architecture](docs/ARCHITECTURE/index.md)
|
|
539
|
-
- [Documentation changelog](docs/CHANGELOG.md)
|
|
535
|
+
- [Documentation index](https://github.com/israelmarques1024-dotcom/karnel-termux/blob/main/docs/index.md)
|
|
536
|
+
- [CLI reference](https://github.com/israelmarques1024-dotcom/karnel-termux/blob/main/docs/cli/index.md)
|
|
537
|
+
- [Doctor reference](https://github.com/israelmarques1024-dotcom/karnel-termux/blob/main/docs/doctor/index.md)
|
|
538
|
+
- [Troubleshooting](https://github.com/israelmarques1024-dotcom/karnel-termux/blob/main/docs/troubleshooting/index.md)
|
|
539
|
+
- [Architecture](https://github.com/israelmarques1024-dotcom/karnel-termux/blob/main/docs/ARCHITECTURE/index.md)
|
|
540
|
+
- [Documentation changelog](https://github.com/israelmarques1024-dotcom/karnel-termux/blob/main/docs/CHANGELOG.md)
|
|
540
541
|
- [Official website](https://israelmarques1024-dotcom.github.io/karnel-termux)
|
|
541
542
|
|
|
542
543
|
---
|
|
@@ -595,6 +596,9 @@ karnel/
|
|
|
595
596
|
│ │ ├── utils/ # 13 utility tools
|
|
596
597
|
│ │ ├── games/ # 6 games
|
|
597
598
|
│ │ ├── security/ # 30 security tools
|
|
599
|
+
│ │ ├── osint/ # Robin OSINT (Tor + LLM)
|
|
600
|
+
│ │ ├── voice/ # Speech-to-agent via Termux:API
|
|
601
|
+
│ │ ├── plugins/ # Plugin manager
|
|
598
602
|
│ │ └── deploy/ # 4 deploy CLIs
|
|
599
603
|
│ └── utils/ # Utilities (banner, log, env, etc.)
|
|
600
604
|
├── install.sh # Installation script
|
|
@@ -644,8 +648,8 @@ once every 24 hours; the check can use npm or GitHub and writes state under
|
|
|
644
648
|
|
|
645
649
|
The repository CI validates Bash/Zsh syntax, ShellCheck errors, CLI smoke tests,
|
|
646
650
|
version behavior, Robin contracts, plugin lifecycle contracts, and npm package
|
|
647
|
-
contents. The
|
|
648
|
-
|
|
651
|
+
contents. The documentation site is built by the `Publish Docs` workflow with
|
|
652
|
+
`actions/jekyll-build-pages`, so a broken Jekyll page fails that build.
|
|
649
653
|
|
|
650
654
|
These checks do not install every external tool or prove behavior on every Android
|
|
651
655
|
device. Before relying on a new installer, test it in native Termux aarch64 with
|
|
@@ -672,7 +676,4 @@ MIT © Israel Marques
|
|
|
672
676
|
<a href="https://israelmarques1024-dotcom.github.io/karnel-termux">
|
|
673
677
|
<img src="https://img.shields.io/badge/Full%20Documentation-0078D4?style=for-the-badge" alt="Documentation">
|
|
674
678
|
</a>
|
|
675
|
-
<a href="https://www.youtube.com/@capideb">
|
|
676
|
-
<img src="https://img.shields.io/badge/YouTube-Capi.deb-FF0000?style=for-the-badge&logo=youtube&logoColor=white" alt="YouTube — Capi.deb">
|
|
677
|
-
</a>
|
|
678
679
|
</p>
|
|
@@ -25,7 +25,7 @@ karnel-termux/
|
|
|
25
25
|
│ │ ├── voice.sh
|
|
26
26
|
│ │ ├── init.sh
|
|
27
27
|
│ │ ├── deploy.sh
|
|
28
|
-
│ │ ├── ... (
|
|
28
|
+
│ │ ├── ... (28 .sh files + doctor/ subdir)
|
|
29
29
|
│ ├── modules/ # Module orchestrators
|
|
30
30
|
│ │ ├── ai.sh # AI agent installer
|
|
31
31
|
│ │ ├── lang.sh # Language installer
|
|
@@ -137,12 +137,20 @@ installation. Uninstall does not delete persistent data.
|
|
|
137
137
|
|
|
138
138
|
### Tool Installer Pattern
|
|
139
139
|
|
|
140
|
+
Each tool lives in `karnel/tools/<module>/<tool>/install.sh` and exposes
|
|
141
|
+
lifecycle entry points named after the tool:
|
|
142
|
+
|
|
140
143
|
```bash
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
+
install_<tool>() # Install the tool; 0 = installed, 2 = already installed
|
|
145
|
+
uninstall_<tool>() # Remove the tool; 0 = removed, 2 = was not installed
|
|
146
|
+
update_<tool>() # Update the tool
|
|
147
|
+
reinstall_<tool>() # Uninstall + install
|
|
144
148
|
```
|
|
145
149
|
|
|
150
|
+
The module orchestrator (`karnel/modules/<module>.sh`) discovers these
|
|
151
|
+
functions, checks ownership markers before touching files, and treats exit
|
|
152
|
+
code `2` as a no-op rather than a failure.
|
|
153
|
+
|
|
146
154
|
## Doctor Subsystem Architecture
|
|
147
155
|
|
|
148
156
|
See [Doctor System](../doctor/) for the complete breakdown of the doctor code analysis engine.
|
package/docs/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,122 @@ layout: base
|
|
|
6
6
|
|
|
7
7
|
# Documentation Changelog
|
|
8
8
|
|
|
9
|
+
## 4.17.20
|
|
10
|
+
|
|
11
|
+
- **PostgreSQL and Supabase (3):**
|
|
12
|
+
- `pg stop` now returns failure when `pg_ctl stop` fails; `pg restart` now stops immediately on either stop or start failure instead of printing a false success.
|
|
13
|
+
- `pg schedule` now returns failure if `crontab` rejects the generated entry instead of returning success after temporary-file cleanup.
|
|
14
|
+
- `supabase remote-status` now preserves a failed Supabase CLI status instead of logging a warning and exiting 0.
|
|
15
|
+
- **Search (1):** `karnel search` now treats user input as literal text in tool and brain searches. Regex metacharacters such as `[` no longer cause grep errors, and option-like input cannot change grep behavior.
|
|
16
|
+
- **Project initializer (7):**
|
|
17
|
+
- `karnel init` now requires explicit confirmation before templates that may overwrite existing files.
|
|
18
|
+
- Next landing pages no longer import a Button component that the initializer never creates.
|
|
19
|
+
- React's generated Button now has its `clsx` and `tailwind-merge` runtime dependencies installed.
|
|
20
|
+
- Express templates no longer import ungenerated entities/routes, and production PostgreSQL TLS now verifies certificates.
|
|
21
|
+
- Go templates derive imports from the actual `go.mod` module name rather than hard-coding `project`.
|
|
22
|
+
- Rust Dockerfiles derive the release binary from `Cargo.toml` instead of assuming `project`.
|
|
23
|
+
- **Regression coverage:** added PostgreSQL/Supabase contracts (5) and init/search contracts (10); the isolated full suite passes.
|
|
24
|
+
- Version references bumped to `4.17.20`.
|
|
25
|
+
|
|
26
|
+
## 4.17.19
|
|
27
|
+
|
|
28
|
+
- **Release gate:** `tests/bun-installer.sh` did not mock the integrity helpers required by the hardened Bun native installer (`github_release_asset_sha256`, `verify_sha256`, `safe_extract_zip`). The test exited 1 before printing its result, causing `tests/run-isolated.sh`, CI, npm publishing, and GitHub release creation to fail from 4.17.14 through 4.17.18 despite the preceding suites passing. The test now supplies contract-faithful stubs; the full isolated suite exits 0.
|
|
29
|
+
- Version references bumped to `4.17.19`.
|
|
30
|
+
|
|
31
|
+
## 4.17.18
|
|
32
|
+
|
|
33
|
+
- **Core fixes (2):**
|
|
34
|
+
- `karnel/cli/commands/ia.sh`: `karnel ia sessions --all` was a silent no-op — the flag was bound and never used, and agent names were always displayed anyway. Removed from the help text; the parser still accepts `--all` for back-compat.
|
|
35
|
+
- `karnel/cli/commands/open.sh`: `karnel open` help did not list the `robin` target even though the dispatcher handled it (`osint / robin`).
|
|
36
|
+
- **npm/GitHub readme audit + site fixes (10):**
|
|
37
|
+
- `README.md`: documentation links were repo-relative (`docs/doctor/index.md`, `docs/index.md`, …), which 404 on npmjs.com — the README is also the npm package readme. All seven links now use absolute GitHub URLs.
|
|
38
|
+
- `README.md`: "Supported Agents (15)" → 14 (the count included `text`, which the same docs describe as "no agent"), and the `!` alias row was missing from the table; added.
|
|
39
|
+
- `docs/ARCHITECTURE/index.md`: the commands tree said "27 .sh files" — the directory has 28.
|
|
40
|
+
- `docs/ARCHITECTURE/index.md`: the "Tool Installer Pattern" documented `_tool_dependencies()`/`_tool_install()`/`_tool_postinstall()`, which exist nowhere in the repo; replaced with the real `install_<tool>`/`uninstall_<tool>`/`update_<tool>`/`reinstall_<tool>` contract and the 0/2 exit-code semantics.
|
|
41
|
+
- `docs/karnel/dev/index.md`: listed `proot-distro` as a dev tool; the module installs `proot` (a different package).
|
|
42
|
+
- `docs/_layouts/default.html`: Google Fonts was only `rel="preload"` — no stylesheet link existed anywhere, so Open Sans never loaded; replaced with a normal stylesheet link.
|
|
43
|
+
- `docs/_layouts/base.html`: the "Live Site" nav item linked to the site itself; now points to the GitHub repository.
|
|
44
|
+
- `docs/assets/css/style.scss`: the dark palette was set unconditionally on `:root`, making every light-mode fallback in the stylesheet unreachable; added a `prefers-color-scheme: light` override so OS theme is respected.
|
|
45
|
+
- `docs/CHANGELOG.md`: the permanent "## Unreleased - 2026-07-16" heading (for long-shipped features) retitled honestly as historical.
|
|
46
|
+
- `docs/cli/index.md`: removed the `karnel ia sessions --all` example (flag removed).
|
|
47
|
+
- Version references bumped to `4.17.18`.
|
|
48
|
+
|
|
49
|
+
## 4.17.17
|
|
50
|
+
|
|
51
|
+
- **Core fixes (8, incl. one broken tool and a 4.17.16 regression):**
|
|
52
|
+
- `karnel/tools/utils/treex/treex.py`: **the entire tool was broken** — an `IndentationError` (a lost `while True:`/`try:`/`os.scandir` block in `explorer_mode`) made every invocation crash. Reconstructed the block; all bundled Python tools now compile.
|
|
53
|
+
- `karnel/tools/utils/applaunch/applaunch.py`: launched a nonexistent `Settings.py` after every action, printing a Python "can't open file" error on every run; removed.
|
|
54
|
+
- `karnel/tools/utils/applaunch/applaunch.py`: replaced `os.system` f-string interpolation and `shell=True` (3× `am start`, `mkdir -p`, `aapt dump badging`) with argv-list `subprocess.run` / `os.makedirs` — removes shell-injection surface from package-manager-derived values.
|
|
55
|
+
- `karnel/cli/commands/doctor/code_exec.sh`: **reverted the 4.17.16 fix-command guard** — it refused the legitimate multi-statement `Go:gofmt` fix (and would refuse `Java:javac`/`bandit` checks), silently disabling Go auto-fix. Check/fix commands come exclusively from the in-repo `LANG_TOOLS` registry, so the guard was a functional regression, not security. A comment now documents this so it is not re-added.
|
|
56
|
+
- `karnel/cli/commands/brain.sh`: `_brain_update_related` appended the raw `$slug` in its `sed` branch while the escaped `$escaped` value was computed but unused — a slug containing `/` or `&` corrupted memory files. Now uses `$escaped` on both branches.
|
|
57
|
+
- `karnel/cli/commands/list.sh`: `karnel list utils` showed 12 tools while docs (and the module) promise 13 — the Herdr row was missing from `_list_utils`.
|
|
58
|
+
- `karnel/tools/utils/splash/splash.py`: `update_delay` rewrote *any* line containing "sleep" inside the loading-screen block, including the embedded `python3 -c "... sed /sleep 12;..."` cleanup line, corrupting the `bash.bashrc` self-cleanup; now only `sleep`-prefixed lines are rewritten.
|
|
59
|
+
- `karnel/tools/utils/splash/splash.py`: delay prompt crashed with an unhandled `ValueError` on non-numeric input; input is now validated (non-negative integer).
|
|
60
|
+
- **Docs / site fixes (10):**
|
|
61
|
+
- `docs/cli/index.md`: removed five duplicated rows at the end of the `list` module table (network/utils/osint/voice/security appeared twice).
|
|
62
|
+
- `docs/index.md`: the Supabase anchor was "fixed" in the wrong direction — kramdown generates `supabase--remote-project-helpers` (double dash) from `## supabase — Remote-project helpers`; restored the double-dash link and corrected the 4.17.16 changelog note.
|
|
63
|
+
- `docs/troubleshooting/index.md`: corrected the claim that `karnel update karnel` logs to `install_dev.log`/`install_npm.log` — the updater prints to the terminal only; those files belong to the dev/npm module installers.
|
|
64
|
+
- `README.md`: the Site badge displayed a nonexistent domain (`karneltermux.github.io`); now shows the real `israelmarques1024-dotcom.github.io/karnel-termux`.
|
|
65
|
+
- `README.md`: removed the false CI claim that the docs site validates "catalog contracts, TypeScript, formatting, tests, and production build" (no TypeScript exists in the repo; `docs.yml` only runs `jekyll-build-pages`).
|
|
66
|
+
- `README.md`: the "Project Structure" tree omitted `osint/`, `voice/`, and `plugins/` under `karnel/tools/`; added.
|
|
67
|
+
- `README.md`: fixed the broken intro sentence (the "install and manage:" colon was followed by the credits instead of the feature list).
|
|
68
|
+
- `docs/karnel/security/index.md`: "30+ tools" → "30 tools" (the module has exactly 30).
|
|
69
|
+
- `docs/assets/css/style.scss`: removed the dead `.karnel-note` admonition CSS (referenced nowhere, same class of orphaned selector as the removed `.karnel-nav`).
|
|
70
|
+
- Version references bumped to `4.17.17`.
|
|
71
|
+
|
|
72
|
+
## 4.17.16
|
|
73
|
+
|
|
74
|
+
- **Core hardening (10 critical bug fixes):**
|
|
75
|
+
- `karnel/tools/lang/bun/install.sh`: the proot install/update paths now reject Bun archives containing path-traversal or absolute-path members before `unzip -o` runs (defense-in-depth alongside the SHA-256 check).
|
|
76
|
+
- `karnel/tools/utils/passman/passman.py`: **fixed a critical defect** — the module referenced `os.*` without importing `os`, which broke the entire password manager. Added `import os`.
|
|
77
|
+
- `karnel/tools/utils/passman/passman.py`: the encrypted vault is now written with `0600` permissions (was world-readable), and `import_vault` now backs up the existing vault to `<vault>.bak` before overwriting (prevents silent data loss).
|
|
78
|
+
- `karnel/cli/commands/backup.sh` and `restore.sh`: temporary directories now use a safe `mktemp` template under `TMPDIR`/`KARNEL_CACHE` instead of a bare `mktemp -d` (avoids an insecure `/tmp` fallback).
|
|
79
|
+
- `karnel/cli/commands/doctor/code_exec.sh`: `_exec_apply_fix` now validates the fix command with `_exec_fix_cmd_is_safe`, rejecting shell operators, stray braces, and destructive leading commands such as `rm`/`sudo`/`mv` — closing a command-injection path via a malicious project doctor config.
|
|
80
|
+
- `karnel/cli/commands/env.sh`: when a variable name looks like a secret (`SECRET`/`TOKEN`/`KEY`/`PASSWORD`/…), the shell rc file is tightened to `0600` so other local users cannot read stored secrets.
|
|
81
|
+
- **Docs / site fixes:**
|
|
82
|
+
- Removed the duplicate logo on the documentation homepage (it was rendered both in the header and in the page body).
|
|
83
|
+
- Fixed two `karnel voice` help URLs that pointed at a custom redirector (`karneltermux.vercel.app/termux/api`); they now point to the official `https://github.com/termux/termux-api`.
|
|
84
|
+
- `README.md`: "45 other AI agents" → "45 AI agents" (Herdr is a utility, not one of the 45).
|
|
85
|
+
- `docs/cli/index.md`: the `list` table was missing `network`, `osint`, `voice`, `security`, `utils`, and `plugin`; all six rows were added.
|
|
86
|
+
- `docs/cli/index.md`: added the `osint --robin` install flag to the per-module flags table.
|
|
87
|
+
- `docs/index.md`: removed a broken `./ARCHITECTURE/` link (that page does not exist) and corrected the Supabase anchor direction (`#supabase--remote-project-helpers`, double dash as generated by kramdown from `## supabase — Remote-project helpers`).
|
|
88
|
+
- Bumped version references to `4.17.16` (README badge, install snippet, `package.json`).
|
|
89
|
+
|
|
90
|
+
## 4.17.15
|
|
91
|
+
|
|
92
|
+
- **Core hardening (10+ bug fixes):**
|
|
93
|
+
- `karnel/utils/tools.sh`: `_register_safe_reinstall_handlers` now rejects any tool/module name containing shell metacharacters before `eval`-ing the generated reinstall handler (prevents code injection via a crafted tool directory name).
|
|
94
|
+
- `karnel/tools/ai/droid/install.sh`: dropped the predictable `/tmp/droid-install` / `/tmp/droid-update` paths inside the proot container in favor of `mktemp -d`.
|
|
95
|
+
- `karnel/tools/ai/kimchi-code/install.sh`: replaced predictable `/tmp/kimchi-install` with `mktemp -d` and added an archive-member path-traversal check before extraction.
|
|
96
|
+
- `karnel/tools/ai/oh-my-pi/install.sh`: replaced predictable `/tmp/omp-install` / `/tmp/omp-update` with `mktemp -d`.
|
|
97
|
+
- `karnel/tools/ai/crush/install.sh`: `mktemp -d` now uses a safe template (no bare `/tmp` fallback).
|
|
98
|
+
- `karnel/cli/commands/{init,voice,brain,ia}.sh`: bare `mktemp` calls now use a safe `$KARNEL_CACHE`/`$TMPDIR` template instead of falling back to `/tmp`.
|
|
99
|
+
- **Full site overhaul (10+ fixes):**
|
|
100
|
+
- Removed the YouTube `capi.deb` channel references from the README.
|
|
101
|
+
- Fixed the README install snippet (stale `4.17.11` → `4.17.15`) and the `45+` AI-agents count (→ `45`).
|
|
102
|
+
- Fixed a dead `/termux/api` link (now points to the official termux-api repo).
|
|
103
|
+
- `docs/cli/index.md`: corrected the misleading "resolves the `/cli/#<module>` anchors" note, renamed the duplicate `Modules` heading to `Module documentation pages`, and fixed the `network` module description (no longer misattributes OSINT).
|
|
104
|
+
- `docs/index.md`: module names are now clickable links to their per-module pages.
|
|
105
|
+
- All 17 module pages gained a `CLI reference` cross-link in their footer.
|
|
106
|
+
- Removed dead `.karnel-nav` CSS and added the branding logo site-wide via the `default.html` page header.
|
|
107
|
+
- Verified the existing GitHub Pages deploy already honors `docs/_config.yml` (baseurl/theme load correctly) — no deploy change needed.
|
|
108
|
+
|
|
109
|
+
## 4.17.14
|
|
110
|
+
|
|
111
|
+
- **Core security audit — fixed 12 critical bugs:**
|
|
112
|
+
- `agent_llm.sh`: config save now uses `%q` instead of `%s`, closing a command-injection/RCE vector when `source`ing saved agent config.
|
|
113
|
+
- `agent_actions.sh`: PLAN (read-only) mode now enforces a strict allowlist (`_agent_cmd_is_readonly`) so non-inspection commands (ruby, php, lua, etc.) can no longer bypass the guard.
|
|
114
|
+
- `zork/zork.sh`: rewritten with a self-contained safe extractor that rejects `..`/absolute paths and symlink escapes before moving files into `ZORK_DIR`.
|
|
115
|
+
- `zork/install.sh` / `bun/install.sh`: removed unsafe `unzip -o` / tar fallbacks; extraction now uses the hardened `safe_extract_zip` / `safe_extract_tar` helpers.
|
|
116
|
+
- `supabase`, `kiro`, `cline`, `kilocode-cli`, `keelcode` installers: replaced the local `safe_extract_tar` (which fell back to an unsafe `tar -xzf` on missing integrity helpers) with a self-contained, safe implementation that has no unsafe fallback.
|
|
117
|
+
- `restore.sh` / `pg.sh`: database restore no longer silences `tar` / `pg_restore` errors with `2>/dev/null`; failures are surfaced to the user.
|
|
118
|
+
- `shell.sh`: `OH_MY_ZSH_REF` is now escaped before being substituted into `sed` patterns, preventing delimiter injection.
|
|
119
|
+
- **Site overhaul:**
|
|
120
|
+
- Fixed single-brace Liquid (`{{ }}`) on all 17 per-module pages (34 broken links resolved).
|
|
121
|
+
- `karnel open` gained a `robin` target (opens the OSINT module page) and a `herdr` target row in the CLI reference.
|
|
122
|
+
- Added a `## Modules` anchor section to the CLI reference so `/cli/#<module>` links resolve.
|
|
123
|
+
- Moved favicon + SEO meta into `<head>` via a `docs/_layouts/default.html` override of the cayman theme (previously dead `<body>`-level meta); set `logo:` for rich-link previews.
|
|
124
|
+
|
|
9
125
|
## 4.17.13
|
|
10
126
|
|
|
11
127
|
- Fixed the shell completion catalog (`scripts/completion.bash` / `completion.zsh`) to include the `herdr` utils tool, satisfying the `completion-catalog` CI gate.
|
|
@@ -307,7 +423,7 @@ layout: base
|
|
|
307
423
|
error gating, npm package inspection, CI, and release automation.
|
|
308
424
|
- Corrected competing stderr redirections in three installers.
|
|
309
425
|
|
|
310
|
-
##
|
|
426
|
+
## 2026-07-16 — Doctor command surface (shipped before 4.8.0)
|
|
311
427
|
|
|
312
428
|
### Doctor command surface
|
|
313
429
|
|
package/docs/_config.yml
CHANGED
package/docs/_layouts/base.html
CHANGED
|
@@ -2,12 +2,6 @@
|
|
|
2
2
|
layout: default
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
<link rel="icon" href="{{ '/assets/images/karnel-logo.png' | relative_url }}">
|
|
6
|
-
<meta name="description" content="Modular Dev Environment for Termux — install languages, databases, AI agents, editors, and more with one command.">
|
|
7
|
-
<meta property="og:title" content="Karnel Termux">
|
|
8
|
-
<meta property="og:description" content="Modular Dev Environment for Termux.">
|
|
9
|
-
<meta property="og:type" content="website">
|
|
10
|
-
|
|
11
5
|
<nav class="site-nav" aria-label="Documentation">
|
|
12
6
|
<a href="{{ '/' | relative_url }}">Docs</a>
|
|
13
7
|
<a href="{{ '/cli/' | relative_url }}">CLI</a>
|
|
@@ -15,7 +9,7 @@ layout: default
|
|
|
15
9
|
<a href="{{ '/troubleshooting/' | relative_url }}">Troubleshooting</a>
|
|
16
10
|
<a href="{{ '/ARCHITECTURE/' | relative_url }}">Architecture</a>
|
|
17
11
|
<a href="{{ '/CHANGELOG/' | relative_url }}">Changelog</a>
|
|
18
|
-
<a href="https://israelmarques1024-dotcom
|
|
12
|
+
<a href="https://github.com/israelmarques1024-dotcom/karnel-termux">GitHub</a>
|
|
19
13
|
</nav>
|
|
20
14
|
|
|
21
15
|
{{ content }}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="{{ site.lang | default: "en-US" }}">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8">
|
|
5
|
+
<link rel="icon" href="{{ '/assets/images/karnel-logo.png' | relative_url }}">
|
|
6
|
+
<link rel="apple-touch-icon" href="{{ '/assets/images/karnel-logo.png' | relative_url }}">
|
|
7
|
+
{% seo %}
|
|
8
|
+
<link rel="preconnect" href="https://fonts.gstatic.com">
|
|
9
|
+
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Open+Sans:400,700&display=swap" crossorigin>
|
|
10
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
11
|
+
<meta name="theme-color" content="#157878">
|
|
12
|
+
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
|
|
13
|
+
<link rel="stylesheet" href="{{ '/assets/css/style.css?v=' | append: site.github.build_revision | relative_url }}">
|
|
14
|
+
{% include head-custom.html %}
|
|
15
|
+
</head>
|
|
16
|
+
<body>
|
|
17
|
+
<a id="skip-to-content" href="#content">Skip to the content.</a>
|
|
18
|
+
|
|
19
|
+
<header class="page-header" role="banner">
|
|
20
|
+
<img class="karnel-logo" src="{{ '/assets/images/karnel-logo.png' | relative_url }}" alt="Karnel Termux" width="120" height="120">
|
|
21
|
+
<h1 class="project-name">{{ page.title | default: site.title | default: site.github.repository_name }}</h1>
|
|
22
|
+
<h2 class="project-tagline">{{ page.description | default: site.description | default: site.github.project_tagline }}</h2>
|
|
23
|
+
{% if site.github.is_project_page %}
|
|
24
|
+
<a href="{{ site.github.repository_url }}" class="btn">View on GitHub</a>
|
|
25
|
+
{% endif %}
|
|
26
|
+
{% if site.show_downloads %}
|
|
27
|
+
<a href="{{ site.github.zip_url }}" class="btn">Download .zip</a>
|
|
28
|
+
<a href="{{ site.github.tar_url }}" class="btn">Download .tar.gz</a>
|
|
29
|
+
{% endif %}
|
|
30
|
+
</header>
|
|
31
|
+
|
|
32
|
+
<main id="content" class="main-content" role="main">
|
|
33
|
+
{{ content }}
|
|
34
|
+
|
|
35
|
+
<footer class="site-footer">
|
|
36
|
+
{% if site.github.is_project_page %}
|
|
37
|
+
<span class="site-footer-owner"><a href="{{ site.github.repository_url }}">{{ site.github.repository_name }}</a> is maintained by <a href="{{ site.github.owner_url }}">{{ site.github.owner_name }}</a>.</span>
|
|
38
|
+
{% endif %}
|
|
39
|
+
<span class="site-footer-credits">This page was generated by <a href="https://pages.github.com">GitHub Pages</a>.</span>
|
|
40
|
+
</footer>
|
|
41
|
+
</main>
|
|
42
|
+
</body>
|
|
43
|
+
</html>
|
|
@@ -17,6 +17,21 @@
|
|
|
17
17
|
color-scheme: dark light;
|
|
18
18
|
}
|
|
19
19
|
|
|
20
|
+
/* Respect the OS theme: without this the dark palette above is unconditional
|
|
21
|
+
and the light fallbacks used across the stylesheet are unreachable. */
|
|
22
|
+
@media (prefers-color-scheme: light) {
|
|
23
|
+
:root {
|
|
24
|
+
--karnel-bg: #ffffff;
|
|
25
|
+
--karnel-panel: #f6f8fa;
|
|
26
|
+
--karnel-border: #d0d7de;
|
|
27
|
+
--karnel-accent: #0969da;
|
|
28
|
+
--karnel-accent-2: #0078d4;
|
|
29
|
+
--karnel-text: #24292f;
|
|
30
|
+
--karnel-muted: #57606a;
|
|
31
|
+
--karnel-code-bg: #f6f8fa;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
|
|
20
35
|
html {
|
|
21
36
|
scroll-behavior: smooth;
|
|
22
37
|
}
|
|
@@ -79,45 +94,6 @@ body {
|
|
|
79
94
|
font-size: 1.1rem;
|
|
80
95
|
}
|
|
81
96
|
|
|
82
|
-
/* Landing navigation */
|
|
83
|
-
.karnel-nav {
|
|
84
|
-
display: flex;
|
|
85
|
-
flex-wrap: wrap;
|
|
86
|
-
gap: 0.6rem;
|
|
87
|
-
margin: 1.5rem 0 2rem;
|
|
88
|
-
padding: 0;
|
|
89
|
-
list-style: none;
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
.karnel-nav li {
|
|
93
|
-
margin: 0;
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
.karnel-nav a {
|
|
97
|
-
display: inline-block;
|
|
98
|
-
padding: 0.5rem 1rem;
|
|
99
|
-
border: 1px solid var(--karnel-accent-2, #0078d4);
|
|
100
|
-
border-radius: 999px;
|
|
101
|
-
text-decoration: none;
|
|
102
|
-
font-weight: 600;
|
|
103
|
-
font-size: 0.92rem;
|
|
104
|
-
color: #fff;
|
|
105
|
-
background: rgba(0, 120, 212, 0.12);
|
|
106
|
-
transition: background 0.15s ease, transform 0.15s ease;
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
.karnel-nav a:hover {
|
|
110
|
-
background: rgba(0, 120, 212, 0.28);
|
|
111
|
-
transform: translateY(-1px);
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
@media (prefers-color-scheme: dark) {
|
|
115
|
-
.karnel-nav a {
|
|
116
|
-
color: #c9d1d9;
|
|
117
|
-
border-color: var(--karnel-border);
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
|
|
121
97
|
/* Tables */
|
|
122
98
|
.main-content table {
|
|
123
99
|
display: table;
|
|
@@ -184,16 +160,6 @@ body {
|
|
|
184
160
|
border-radius: 0 6px 6px 0;
|
|
185
161
|
}
|
|
186
162
|
|
|
187
|
-
/* Admonition callouts */
|
|
188
|
-
.karnel-note {
|
|
189
|
-
border: 1px solid var(--karnel-accent-2, #0078d4);
|
|
190
|
-
border-left-width: 4px;
|
|
191
|
-
border-radius: 8px;
|
|
192
|
-
padding: 0.75rem 1rem;
|
|
193
|
-
margin: 1.25rem 0;
|
|
194
|
-
background: rgba(0, 120, 212, 0.06);
|
|
195
|
-
}
|
|
196
|
-
|
|
197
163
|
/* Section spacing */
|
|
198
164
|
.main-content h2 {
|
|
199
165
|
margin-top: 2.5rem;
|
package/docs/cli/index.md
CHANGED
|
@@ -23,7 +23,7 @@ karnel install <module> # Install all tools in a module
|
|
|
23
23
|
karnel install <module> --tool1 --tool2 # Install specific tools only
|
|
24
24
|
```
|
|
25
25
|
|
|
26
|
-
###
|
|
26
|
+
### Available modules
|
|
27
27
|
|
|
28
28
|
| Module | Description |
|
|
29
29
|
|-----------|-------------|
|
|
@@ -38,7 +38,7 @@ karnel install <module> --tool1 --tool2 # Install specific tools only
|
|
|
38
38
|
| `auto` | n8n automation |
|
|
39
39
|
| `deploy` | Vercel, Railway, Netlify, Supabase CLIs |
|
|
40
40
|
| `games` | Buzz, CTF God, Detective, Tamagotchi, Arcade, Pet Friends |
|
|
41
|
-
| `network` | Dark
|
|
41
|
+
| `network` | Dark-web and anonymity tooling, plus the DedSec Network Toolkit |
|
|
42
42
|
| `utils` | fconv, filecheck, websites, notes, treex, passman, applaunch, splash, httptmux, zork, qrcode, superfile, herdr (13 scripts) |
|
|
43
43
|
| `osint` | Robin v2.8 — dark web OSINT via Tor + LLM |
|
|
44
44
|
| `voice` | Speech-to-agent via Termux:API |
|
|
@@ -59,6 +59,7 @@ karnel install <module> --tool1 --tool2 # Install specific tools only
|
|
|
59
59
|
| `ui` | `--font`, `--extra-keys`, `--cursor`, `--banner` |
|
|
60
60
|
| `auto` | `--n8n` |
|
|
61
61
|
| `deploy` | `--vercel`, `--railway`, `--netlify`, `--supabase` |
|
|
62
|
+
| `osint` | `--robin` |
|
|
62
63
|
| `games` | `--buzz`, `--ctfgod`, `--detective`, `--pet-friends`, `--tamagotchi`, `--arcade` |
|
|
63
64
|
| `network` | `--dark`, `--dedsec-network` |
|
|
64
65
|
| `utils` | `--fconv`, `--filecheck`, `--websites`, `--notes`, `--treex`, `--passman`, `--applaunch`, `--splash`, `--httptmux`, `--zork`, `--qrcode`, `--superfile`, `--herdr` |
|
|
@@ -152,10 +153,11 @@ binary/command name, and current install status.
|
|
|
152
153
|
| `deploy` | 4 deploy CLIs |
|
|
153
154
|
| `games` | 6 games |
|
|
154
155
|
| `network` | 2 network tools |
|
|
155
|
-
| `
|
|
156
|
-
| `
|
|
157
|
-
| `voice` | Voice commands |
|
|
156
|
+
| `osint` | Robin OSINT (Tor + LLM) |
|
|
157
|
+
| `voice` | Voice command |
|
|
158
158
|
| `security`| 30 security tools |
|
|
159
|
+
| `utils` | 13 utility scripts |
|
|
160
|
+
| `plugin` | Installed plugins |
|
|
159
161
|
|
|
160
162
|
```bash
|
|
161
163
|
karnel list ai
|
|
@@ -216,9 +218,10 @@ Opens the official documentation page for a module using
|
|
|
216
218
|
| `cleanup` | Cache cleanup |
|
|
217
219
|
| `network` | Network tools |
|
|
218
220
|
| `utils` | Utility tools |
|
|
221
|
+
| `herdr` | Herdr terminal AI assistant |
|
|
219
222
|
| `voice` | Voice command |
|
|
220
|
-
| `plugin`
|
|
221
|
-
| `security`
|
|
223
|
+
| `plugin` | Plugin system |
|
|
224
|
+
| `security` | Security tools |
|
|
222
225
|
| `osint` / `robin` | OSINT tools |
|
|
223
226
|
|
|
224
227
|
```bash
|
|
@@ -511,7 +514,6 @@ karnel ia <command> [options]
|
|
|
511
514
|
|
|
512
515
|
```bash
|
|
513
516
|
karnel ia sessions
|
|
514
|
-
karnel ia sessions --all
|
|
515
517
|
karnel ia install omni-route
|
|
516
518
|
karnel ia routes
|
|
517
519
|
```
|
|
@@ -889,3 +891,60 @@ The main tool modules work with `install`, `uninstall`, `reinstall`, `update`,
|
|
|
889
891
|
|
|
890
892
|
`plugin` works with `install`, `uninstall`, `reinstall`, `update`, `list`, and
|
|
891
893
|
`open`, but does not expose tool documentation through `show`.
|
|
894
|
+
|
|
895
|
+
---
|
|
896
|
+
|
|
897
|
+
## Module documentation pages
|
|
898
|
+
|
|
899
|
+
Per-module documentation pages:
|
|
900
|
+
|
|
901
|
+
### ai
|
|
902
|
+
Documentation page: [ai module]({{ '/karnel/ai/' | relative_url }}).
|
|
903
|
+
|
|
904
|
+
### auto
|
|
905
|
+
Documentation page: [auto module]({{ '/karnel/auto/' | relative_url }}).
|
|
906
|
+
|
|
907
|
+
### db
|
|
908
|
+
Documentation page: [db module]({{ '/karnel/db/' | relative_url }}).
|
|
909
|
+
|
|
910
|
+
### deploy
|
|
911
|
+
Documentation page: [deploy module]({{ '/karnel/deploy/' | relative_url }}).
|
|
912
|
+
|
|
913
|
+
### dev
|
|
914
|
+
Documentation page: [dev module]({{ '/karnel/dev/' | relative_url }}).
|
|
915
|
+
|
|
916
|
+
### editor
|
|
917
|
+
Documentation page: [editor module]({{ '/karnel/editor/' | relative_url }}).
|
|
918
|
+
|
|
919
|
+
### games
|
|
920
|
+
Documentation page: [games module]({{ '/karnel/games/' | relative_url }}).
|
|
921
|
+
|
|
922
|
+
### lang
|
|
923
|
+
Documentation page: [lang module]({{ '/karnel/lang/' | relative_url }}).
|
|
924
|
+
|
|
925
|
+
### network
|
|
926
|
+
Documentation page: [network module]({{ '/karnel/network/' | relative_url }}).
|
|
927
|
+
|
|
928
|
+
### npm
|
|
929
|
+
Documentation page: [npm module]({{ '/karnel/npm/' | relative_url }}).
|
|
930
|
+
|
|
931
|
+
### osint
|
|
932
|
+
Documentation page: [osint module]({{ '/karnel/osint/' | relative_url }}).
|
|
933
|
+
|
|
934
|
+
### plugin
|
|
935
|
+
Documentation page: [plugin module]({{ '/karnel/plugin/' | relative_url }}).
|
|
936
|
+
|
|
937
|
+
### security
|
|
938
|
+
Documentation page: [security module]({{ '/karnel/security/' | relative_url }}).
|
|
939
|
+
|
|
940
|
+
### shell
|
|
941
|
+
Documentation page: [shell module]({{ '/karnel/shell/' | relative_url }}).
|
|
942
|
+
|
|
943
|
+
### ui
|
|
944
|
+
Documentation page: [ui module]({{ '/karnel/ui/' | relative_url }}).
|
|
945
|
+
|
|
946
|
+
### utils
|
|
947
|
+
Documentation page: [utils module]({{ '/karnel/utils/' | relative_url }}), including the [Herdr](https://herdr.dev) terminal AI assistant (`karnel install utils --herdr`).
|
|
948
|
+
|
|
949
|
+
### voice
|
|
950
|
+
Documentation page: [voice module]({{ '/karnel/voice/' | relative_url }}).
|
package/docs/index.md
CHANGED
|
@@ -4,8 +4,6 @@ permalink: /
|
|
|
4
4
|
layout: base
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
<img class="karnel-logo" src="{{ '/assets/images/karnel-logo.png' | relative_url }}" alt="Karnel Termux">
|
|
8
|
-
|
|
9
7
|
> Modular Dev Environment for Termux — install languages, databases, AI agents, editors, and more with one command
|
|
10
8
|
|
|
11
9
|
## What is Karnel?
|
|
@@ -15,9 +13,16 @@ With a single CLI (`karnel`), you can install and manage 45 AI tools, 3 editors,
|
|
|
15
13
|
8 languages, 5 databases, 22 dev tools, 11 npm packages, 10 shell plugins,
|
|
16
14
|
4 UI components, 4 deploy CLIs, 6 games, 2 network tools, 13 utility tools,
|
|
17
15
|
30 security tools, 1 automation tool, responsible OSINT, a second brain,
|
|
18
|
-
voice commands, and reviewed plugins — all from modules:
|
|
19
|
-
|
|
20
|
-
|
|
16
|
+
voice commands, and reviewed plugins — all from modules:
|
|
17
|
+
[ai]({{ '/karnel/ai/' | relative_url }}), [auto]({{ '/karnel/auto/' | relative_url }}),
|
|
18
|
+
[db]({{ '/karnel/db/' | relative_url }}), [deploy]({{ '/karnel/deploy/' | relative_url }}),
|
|
19
|
+
[dev]({{ '/karnel/dev/' | relative_url }}), [editor]({{ '/karnel/editor/' | relative_url }}),
|
|
20
|
+
[games]({{ '/karnel/games/' | relative_url }}), [lang]({{ '/karnel/lang/' | relative_url }}),
|
|
21
|
+
[network]({{ '/karnel/network/' | relative_url }}), [npm]({{ '/karnel/npm/' | relative_url }}),
|
|
22
|
+
[osint]({{ '/karnel/osint/' | relative_url }}), [security]({{ '/karnel/security/' | relative_url }}),
|
|
23
|
+
[shell]({{ '/karnel/shell/' | relative_url }}), [ui]({{ '/karnel/ui/' | relative_url }}),
|
|
24
|
+
[utils]({{ '/karnel/utils/' | relative_url }}), [voice]({{ '/karnel/voice/' | relative_url }}),
|
|
25
|
+
[plugin]({{ '/karnel/plugin/' | relative_url }}).
|
|
21
26
|
|
|
22
27
|
## 🌟 Featured: Herdr
|
|
23
28
|
|
|
@@ -38,7 +43,6 @@ Open its docs with `karnel open herdr`.
|
|
|
38
43
|
<a href="https://github.com/israelmarques1024-dotcom/karnel-termux/blob/main/karnel/tools/utils/superfile/README.md">SuperFile — terminal file manager</a>
|
|
39
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
45
|
<a href="./cli/#supabase--remote-project-helpers">Supabase CLI — remote-project helpers</a>
|
|
41
|
-
<a href="./ARCHITECTURE/">Architecture — project structure and module system</a>
|
|
42
46
|
<a href="./CHANGELOG/">Changelog — version history and fixes</a>
|
|
43
47
|
</div>
|
|
44
48
|
|
package/docs/karnel/ai/index.md
CHANGED
|
@@ -11,7 +11,7 @@ AI coding agents and assistants (Claude Code, Codex, Cline, Goose, and many more
|
|
|
11
11
|
|
|
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
|
-
See the [CLI reference]({ '/cli/' | relative_url }#ai) for the full command list, or the
|
|
14
|
+
See the [CLI reference]({{ '/cli/' | relative_url }}#ai) for the full command list, or the
|
|
15
15
|
[source on GitHub](https://github.com/israelmarques1024-dotcom/karnel-termux/tree/main/karnel/modules/ai.sh).
|
|
16
16
|
|
|
17
|
-
[← Back to docs]({ '/' | relative_url })
|
|
17
|
+
[← Back to docs]({{ '/' | relative_url }}) · [CLI reference]({{ '/cli/' | relative_url }})
|
|
@@ -11,7 +11,7 @@ Automation and workflow tooling (n8n).
|
|
|
11
11
|
|
|
12
12
|
| `auto` | `--n8n` |
|
|
13
13
|
|
|
14
|
-
See the [CLI reference]({ '/cli/' | relative_url }#auto) for the full command list, or the
|
|
14
|
+
See the [CLI reference]({{ '/cli/' | relative_url }}#auto) for the full command list, or the
|
|
15
15
|
[source on GitHub](https://github.com/israelmarques1024-dotcom/karnel-termux/tree/main/karnel/modules/auto.sh).
|
|
16
16
|
|
|
17
|
-
[← Back to docs]({ '/' | relative_url })
|
|
17
|
+
[← Back to docs]({{ '/' | relative_url }}) · [CLI reference]({{ '/cli/' | relative_url }})
|