omni-catalyst 1.0.0

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 (237) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +1137 -0
  3. package/core/bin/core +85 -0
  4. package/core/bin/omni +21 -0
  5. package/core/cli/commands/--version.sh +8 -0
  6. package/core/cli/commands/brain.sh +1549 -0
  7. package/core/cli/commands/doctor.sh +834 -0
  8. package/core/cli/commands/env.sh +226 -0
  9. package/core/cli/commands/init.sh +1266 -0
  10. package/core/cli/commands/install.sh +759 -0
  11. package/core/cli/commands/list.sh +397 -0
  12. package/core/cli/commands/open.sh +71 -0
  13. package/core/cli/commands/pg.sh +761 -0
  14. package/core/cli/commands/reinstall.sh +694 -0
  15. package/core/cli/commands/show.sh +90 -0
  16. package/core/cli/commands/uninstall.sh +700 -0
  17. package/core/cli/commands/update.sh +754 -0
  18. package/core/cli/commands/voice.sh +170 -0
  19. package/core/cli/core.sh +82 -0
  20. package/core/cli/omni.sh +634 -0
  21. package/core/modules/ai.sh +152 -0
  22. package/core/modules/auto.sh +90 -0
  23. package/core/modules/db.sh +94 -0
  24. package/core/modules/deploy.sh +50 -0
  25. package/core/modules/dev.sh +126 -0
  26. package/core/modules/editor.sh +101 -0
  27. package/core/modules/lang.sh +100 -0
  28. package/core/modules/npm.sh +122 -0
  29. package/core/modules/shell.sh +312 -0
  30. package/core/modules/ui.sh +115 -0
  31. package/core/tools/ai/all.sh +63 -0
  32. package/core/tools/ai/antigravity-cli/README.md +45 -0
  33. package/core/tools/ai/antigravity-cli/bin/agy +28 -0
  34. package/core/tools/ai/antigravity-cli/helper/agy_helper.c +39 -0
  35. package/core/tools/ai/antigravity-cli/install.sh +469 -0
  36. package/core/tools/ai/claude-code/README.md +45 -0
  37. package/core/tools/ai/claude-code/bin/claude +29 -0
  38. package/core/tools/ai/claude-code/helper/claude_helper.c +42 -0
  39. package/core/tools/ai/claude-code/install.sh +278 -0
  40. package/core/tools/ai/codegraph/README.md +43 -0
  41. package/core/tools/ai/codegraph/bin/codegraph +3 -0
  42. package/core/tools/ai/codegraph/install.sh +149 -0
  43. package/core/tools/ai/codex/README.md +44 -0
  44. package/core/tools/ai/codex/install.sh +104 -0
  45. package/core/tools/ai/command-code/README.md +62 -0
  46. package/core/tools/ai/command-code/install.sh +136 -0
  47. package/core/tools/ai/engram/README.md +44 -0
  48. package/core/tools/ai/engram/install.sh +127 -0
  49. package/core/tools/ai/freebuff/README.md +52 -0
  50. package/core/tools/ai/freebuff/bin/freebuff +28 -0
  51. package/core/tools/ai/freebuff/helper/freebuff_helper.c +47 -0
  52. package/core/tools/ai/freebuff/install.sh +301 -0
  53. package/core/tools/ai/gemini-cli/README.md +46 -0
  54. package/core/tools/ai/gemini-cli/install.sh +111 -0
  55. package/core/tools/ai/gentle-ai/README.md +42 -0
  56. package/core/tools/ai/gentle-ai/install.sh +253 -0
  57. package/core/tools/ai/gentle-ai/termux-patches.go +256 -0
  58. package/core/tools/ai/gga/README.md +49 -0
  59. package/core/tools/ai/gga/install.sh +134 -0
  60. package/core/tools/ai/hermes-agent/README.md +50 -0
  61. package/core/tools/ai/hermes-agent/install.sh +80 -0
  62. package/core/tools/ai/heygen/README.md +24 -0
  63. package/core/tools/ai/heygen/install.sh +126 -0
  64. package/core/tools/ai/kilocode-cli/README.md +45 -0
  65. package/core/tools/ai/kilocode-cli/bin/kilocode +21 -0
  66. package/core/tools/ai/kilocode-cli/helper/kilocode_helper.c +47 -0
  67. package/core/tools/ai/kilocode-cli/install.sh +179 -0
  68. package/core/tools/ai/kimchi-code/README.md +8 -0
  69. package/core/tools/ai/kimchi-code/install.sh +120 -0
  70. package/core/tools/ai/kimi-code/README.md +45 -0
  71. package/core/tools/ai/kimi-code/install.sh +111 -0
  72. package/core/tools/ai/kiro-cli/README.md +23 -0
  73. package/core/tools/ai/kiro-cli/install.sh +127 -0
  74. package/core/tools/ai/mimocode/README.md +43 -0
  75. package/core/tools/ai/mimocode/bin/mimo +28 -0
  76. package/core/tools/ai/mimocode/helper/mimocode_helper.c +47 -0
  77. package/core/tools/ai/mimocode/install.sh +287 -0
  78. package/core/tools/ai/minimax-cli/README.md +45 -0
  79. package/core/tools/ai/minimax-cli/install.sh +111 -0
  80. package/core/tools/ai/mistral-vibe/README.md +46 -0
  81. package/core/tools/ai/mistral-vibe/install.sh +119 -0
  82. package/core/tools/ai/odysseus/README.md +35 -0
  83. package/core/tools/ai/odysseus/install.sh +163 -0
  84. package/core/tools/ai/ollama/README.md +44 -0
  85. package/core/tools/ai/ollama/install.sh +78 -0
  86. package/core/tools/ai/openclaude/README.md +46 -0
  87. package/core/tools/ai/openclaude/install.sh +110 -0
  88. package/core/tools/ai/openclaw/README.md +47 -0
  89. package/core/tools/ai/openclaw/install.sh +112 -0
  90. package/core/tools/ai/opencode/README.md +51 -0
  91. package/core/tools/ai/opencode/bin/opencode +28 -0
  92. package/core/tools/ai/opencode/helper/opencode_helper.c +57 -0
  93. package/core/tools/ai/opencode/install.sh +290 -0
  94. package/core/tools/ai/pi/README.md +46 -0
  95. package/core/tools/ai/pi/install.sh +104 -0
  96. package/core/tools/ai/qwen-code/README.md +45 -0
  97. package/core/tools/ai/qwen-code/install.sh +111 -0
  98. package/core/tools/ai/seedance/README.md +22 -0
  99. package/core/tools/ai/seedance/install.sh +134 -0
  100. package/core/tools/ai/veo3/README.md +36 -0
  101. package/core/tools/ai/veo3/install.sh +151 -0
  102. package/core/tools/auto/all.sh +57 -0
  103. package/core/tools/auto/n8n/README.md +47 -0
  104. package/core/tools/auto/n8n/install.sh +102 -0
  105. package/core/tools/db/all.sh +60 -0
  106. package/core/tools/db/mariadb/README.md +43 -0
  107. package/core/tools/db/mariadb/install.sh +65 -0
  108. package/core/tools/db/mongodb/README.md +42 -0
  109. package/core/tools/db/mongodb/install.sh +73 -0
  110. package/core/tools/db/postgresql/README.md +45 -0
  111. package/core/tools/db/postgresql/install.sh +65 -0
  112. package/core/tools/db/sqlite/README.md +44 -0
  113. package/core/tools/db/sqlite/install.sh +65 -0
  114. package/core/tools/deploy/all.sh +39 -0
  115. package/core/tools/deploy/netlify/install.sh +41 -0
  116. package/core/tools/deploy/railway/install.sh +47 -0
  117. package/core/tools/deploy/vercel/install.sh +43 -0
  118. package/core/tools/dev/all.sh +75 -0
  119. package/core/tools/dev/bat/README.md +44 -0
  120. package/core/tools/dev/bat/install.sh +82 -0
  121. package/core/tools/dev/bc/README.md +44 -0
  122. package/core/tools/dev/bc/install.sh +82 -0
  123. package/core/tools/dev/cloudflared/README.md +43 -0
  124. package/core/tools/dev/cloudflared/install.sh +82 -0
  125. package/core/tools/dev/curl/README.md +43 -0
  126. package/core/tools/dev/curl/install.sh +82 -0
  127. package/core/tools/dev/fzf/README.md +44 -0
  128. package/core/tools/dev/fzf/install.sh +82 -0
  129. package/core/tools/dev/gh/README.md +43 -0
  130. package/core/tools/dev/gh/install.sh +82 -0
  131. package/core/tools/dev/html2text/README.md +44 -0
  132. package/core/tools/dev/html2text/install.sh +82 -0
  133. package/core/tools/dev/imagemagick/README.md +44 -0
  134. package/core/tools/dev/imagemagick/install.sh +82 -0
  135. package/core/tools/dev/jq/README.md +44 -0
  136. package/core/tools/dev/jq/install.sh +82 -0
  137. package/core/tools/dev/lsd/README.md +44 -0
  138. package/core/tools/dev/lsd/install.sh +82 -0
  139. package/core/tools/dev/make/README.md +44 -0
  140. package/core/tools/dev/make/install.sh +82 -0
  141. package/core/tools/dev/ncurses/README.md +42 -0
  142. package/core/tools/dev/ncurses/install.sh +82 -0
  143. package/core/tools/dev/proot/README.md +43 -0
  144. package/core/tools/dev/proot/install.sh +82 -0
  145. package/core/tools/dev/shfmt/README.md +44 -0
  146. package/core/tools/dev/shfmt/install.sh +82 -0
  147. package/core/tools/dev/tmate/README.md +44 -0
  148. package/core/tools/dev/tmate/install.sh +82 -0
  149. package/core/tools/dev/translate/README.md +44 -0
  150. package/core/tools/dev/translate/install.sh +82 -0
  151. package/core/tools/dev/tree/README.md +44 -0
  152. package/core/tools/dev/tree/install.sh +82 -0
  153. package/core/tools/dev/udocker/README.md +44 -0
  154. package/core/tools/dev/udocker/install.sh +82 -0
  155. package/core/tools/dev/wget/README.md +44 -0
  156. package/core/tools/dev/wget/install.sh +82 -0
  157. package/core/tools/editor/all.sh +58 -0
  158. package/core/tools/editor/neovim/README.md +43 -0
  159. package/core/tools/editor/neovim/install.sh +66 -0
  160. package/core/tools/editor/nvchad/README.md +45 -0
  161. package/core/tools/editor/nvchad/install.sh +110 -0
  162. package/core/tools/lang/all.sh +63 -0
  163. package/core/tools/lang/clang/README.md +43 -0
  164. package/core/tools/lang/clang/install.sh +79 -0
  165. package/core/tools/lang/golang/README.md +43 -0
  166. package/core/tools/lang/golang/install.sh +79 -0
  167. package/core/tools/lang/nodejs/README.md +43 -0
  168. package/core/tools/lang/nodejs/install.sh +79 -0
  169. package/core/tools/lang/perl/README.md +43 -0
  170. package/core/tools/lang/perl/install.sh +79 -0
  171. package/core/tools/lang/php/README.md +43 -0
  172. package/core/tools/lang/php/install.sh +79 -0
  173. package/core/tools/lang/python/README.md +43 -0
  174. package/core/tools/lang/python/install.sh +79 -0
  175. package/core/tools/lang/rust/README.md +43 -0
  176. package/core/tools/lang/rust/install.sh +79 -0
  177. package/core/tools/npm/all.sh +67 -0
  178. package/core/tools/npm/live-server/README.md +43 -0
  179. package/core/tools/npm/live-server/install.sh +95 -0
  180. package/core/tools/npm/localtunnel/README.md +43 -0
  181. package/core/tools/npm/localtunnel/install.sh +111 -0
  182. package/core/tools/npm/markserv/README.md +43 -0
  183. package/core/tools/npm/markserv/install.sh +94 -0
  184. package/core/tools/npm/ncu/README.md +43 -0
  185. package/core/tools/npm/ncu/install.sh +94 -0
  186. package/core/tools/npm/nestjs/README.md +43 -0
  187. package/core/tools/npm/nestjs/install.sh +94 -0
  188. package/core/tools/npm/ngrok/README.md +44 -0
  189. package/core/tools/npm/ngrok/install.sh +94 -0
  190. package/core/tools/npm/prettier/README.md +43 -0
  191. package/core/tools/npm/prettier/install.sh +94 -0
  192. package/core/tools/npm/psqlformat/README.md +43 -0
  193. package/core/tools/npm/psqlformat/install.sh +94 -0
  194. package/core/tools/npm/turbopack/README.md +8 -0
  195. package/core/tools/npm/turbopack/install.sh +41 -0
  196. package/core/tools/npm/typescript/README.md +43 -0
  197. package/core/tools/npm/typescript/install.sh +94 -0
  198. package/core/tools/npm/vercel/README.md +43 -0
  199. package/core/tools/npm/vercel/install.sh +94 -0
  200. package/core/tools/shell/all.sh +67 -0
  201. package/core/tools/shell/better-npm/README.md +43 -0
  202. package/core/tools/shell/better-npm/install.sh +85 -0
  203. package/core/tools/shell/fzf-tab/README.md +44 -0
  204. package/core/tools/shell/fzf-tab/install.sh +85 -0
  205. package/core/tools/shell/history-substring/README.md +43 -0
  206. package/core/tools/shell/history-substring/install.sh +85 -0
  207. package/core/tools/shell/powerlevel10k/README.md +43 -0
  208. package/core/tools/shell/powerlevel10k/install.sh +85 -0
  209. package/core/tools/shell/you-should-use/README.md +43 -0
  210. package/core/tools/shell/you-should-use/install.sh +85 -0
  211. package/core/tools/shell/zsh-autopair/README.md +44 -0
  212. package/core/tools/shell/zsh-autopair/install.sh +85 -0
  213. package/core/tools/shell/zsh-autosuggestions/README.md +43 -0
  214. package/core/tools/shell/zsh-autosuggestions/install.sh +85 -0
  215. package/core/tools/shell/zsh-completions/README.md +43 -0
  216. package/core/tools/shell/zsh-completions/install.sh +85 -0
  217. package/core/tools/shell/zsh-defer/README.md +43 -0
  218. package/core/tools/shell/zsh-defer/install.sh +85 -0
  219. package/core/tools/shell/zsh-syntax-highlighting/README.md +43 -0
  220. package/core/tools/shell/zsh-syntax-highlighting/install.sh +72 -0
  221. package/core/tools/ui/all.sh +61 -0
  222. package/core/tools/ui/banner/README.md +42 -0
  223. package/core/tools/ui/banner/install.sh +151 -0
  224. package/core/tools/ui/cursor/README.md +42 -0
  225. package/core/tools/ui/cursor/install.sh +58 -0
  226. package/core/tools/ui/extra-keys/README.md +43 -0
  227. package/core/tools/ui/extra-keys/install.sh +62 -0
  228. package/core/tools/ui/font/README.md +43 -0
  229. package/core/tools/ui/font/install.sh +63 -0
  230. package/core/utils/banner.sh +519 -0
  231. package/core/utils/bootstrap.sh +25 -0
  232. package/core/utils/colors.sh +31 -0
  233. package/core/utils/dialogrc +30 -0
  234. package/core/utils/env.sh +53 -0
  235. package/core/utils/log.sh +598 -0
  236. package/install.sh +272 -0
  237. package/package.json +43 -0
package/README.md ADDED
@@ -0,0 +1,1137 @@
1
+ # Omni Catalyst — Modular Dev Environment
2
+
3
+ <p align="center">
4
+ <img src="https://raw.githubusercontent.com/israel676767/omni/main/assets/images/logo.svg" alt="Omni Catalyst Logo" width="600">
5
+ </p>
6
+
7
+ <p align="center">
8
+ <strong>BUILD. CODE. AUTOMATE.</strong>
9
+ </p>
10
+
11
+ <p align="center">
12
+ <a href="https://github.com/israel676767/omni">
13
+ <img src="https://img.shields.io/badge/version-4.4.0-0078D4?style=for-the-badge&logo=appveyor" alt="Version">
14
+ </a>
15
+ <a href="https://github.com/israel676767/omni/blob/main/LICENSE">
16
+ <img src="https://img.shields.io/badge/license-MIT-0078D4?style=for-the-badge&logo=bookstack" alt="License">
17
+ </a>
18
+ <a href="https://termux.dev/">
19
+ <img src="https://img.shields.io/badge/platform-Termux%20%7C%20Android-0078D4?style=for-the-badge&logo=android" alt="Platform">
20
+ </a>
21
+ </p>
22
+
23
+ <p align="center">
24
+ <a href="https://github.com/israel676767/omni/stargazers">
25
+ <img src="https://img.shields.io/github/stars/israel676767/omni?style=for-the-badge&logo=github&color=f5c542" alt="Stars">
26
+ </a>
27
+ <a href="https://github.com/israel676767/omni/network/members">
28
+ <img src="https://img.shields.io/github/forks/israel676767/omni?style=for-the-badge&logo=github&color=94a3b8" alt="Forks">
29
+ </a>
30
+ <a href="https://github.com/israel676767/omni/issues">
31
+ <img src="https://img.shields.io/github/issues/israel676767/omni?style=for-the-badge&logo=github&color=ef4444" alt="Issues">
32
+ </a>
33
+ <a href="https://github.com/israel676767/omni/pulls">
34
+ <img src="https://img.shields.io/github/issues-pr/israel676767/omni?style=for-the-badge&logo=github&color=22c55e" alt="Pull Requests">
35
+ </a>
36
+ </p>
37
+
38
+ <p align="center">
39
+ <a href="https://omni-catalyst.vercel.app">
40
+ <img src="https://img.shields.io/badge/%F0%9F%9A%80_Get%20Started-0078D4?style=for-the-badge" alt="Get Started">
41
+ </a>
42
+ </p>
43
+
44
+ <br>
45
+
46
+ **OMNI CATALYST** is a _modular dev environment_ that turns Termux into a complete development workstation. Through a single omni CLI, it provides a modular system that covers the full developer stack: programming languages, databases, AI agents, code editors, shell configuration, and automation — all manageable with simple, consistent commands like `omni install`, `omni update`, and `omni uninstall`.
47
+
48
+ > [!IMPORTANT]
49
+ > This project is designed exclusively for **Termux on Android** and is not supported on other platforms.
50
+
51
+ ---
52
+
53
+ ## Quick Installation
54
+
55
+ ```bash
56
+ curl -fsSL https://raw.githubusercontent.com/israel676767/omni/main/install.sh | bash
57
+ ```
58
+
59
+ Then run:
60
+
61
+ ```bash
62
+ omni
63
+ ```
64
+
65
+ ---
66
+
67
+ ## Main Commands
68
+
69
+ | Command | Description |
70
+ |---------|-------------|
71
+ | [`omni --version`](#omni---version) | Show current version |
72
+ | [`omni brain`](#omni-brain) | Second brain — save and search memories |
73
+ | [`omni env`](#omni-env) | Manage environment variables |
74
+ | [`omni install`](#omni-install) | Install specific modules |
75
+ | [`omni show`](#omni-show) | Show tool documentation |
76
+ | [`omni update`](#omni-update) | Update modules or framework |
77
+ | [`omni uninstall`](#omni-uninstall) | Remove installed modules |
78
+ | [`omni reinstall`](#omni-reinstall) | Uninstall + reinstall modules |
79
+ | [`omni voice`](#omni-voice) | Speech-to-agent via microphone |
80
+ | [`omni open`](#omni-open) | Open documentation in browser |
81
+ | [`omni list`](#omni-list) | List available tools in modules |
82
+ | [`omni pg`](#omni-pg) | PostgreSQL database manager |
83
+ | [`omni init`](#omni-init) | Configure existing projects |
84
+
85
+ ---
86
+
87
+ ## Common Modules
88
+
89
+ These modules are available across most commands (`omni list`, `omni install`, `omni update`, `omni reinstall`, `omni uninstall`, `omni show`, and `omni open`):
90
+
91
+ | Module | Description |
92
+ |--------|-------------|
93
+ | `lang` | Language packages (Node.js, Python, Perl, PHP, Rust, C/C++, Go) |
94
+ | `db` | Databases (PostgreSQL, MariaDB, SQLite, MongoDB) |
95
+ | `ai` | AI agents and coding assistants — see [AI Agents](#ai-agents) |
96
+ | `editor` | Code editor components (Neovim, NvChad) |
97
+ | `dev` | Development tools (gh, wget, curl, fzf, lsd, bat, etc.) |
98
+ | `npm` | Node.js global npm packages |
99
+ | `shell` | ZSH plugins |
100
+ | `ui` | Termux UI components |
101
+ | `auto` | Automation tools (n8n) |
102
+
103
+ ---
104
+
105
+ ## AI Agents
106
+
107
+ The `ai` module installs AI-powered coding agents and assistants. Install all agents or pick specific ones with `--flag`:
108
+
109
+ ```bash
110
+ omni install ai # Install all agents
111
+ omni install ai --opencode --ollama # Install only OpenCode and Ollama
112
+ ```
113
+
114
+ | Agent | Flag | Description |
115
+ |-------|------|-------------|
116
+ | **Qwen Code** | `--qwen-code` | Alibaba's AI coding assistant |
117
+ | **Gemini CLI** | `--gemini-cli` | Google's AI assistant with Gemini |
118
+ | **Claude Code** | `--claude-code` | Anthropic's CLI tool with Claude AI |
119
+ | **Mistral Vibe** | `--mistral-vibe` | Command-line coding assistant powered by Mistral's models |
120
+ | **OpenClaude** | `--openclaude` | Open source Claude Code alternative |
121
+ | **OpenClaw** | `--openclaw` | Personal AI Assistant |
122
+ | **Ollama** | `--ollama` | Run open-source LLMs locally on Termux |
123
+ | **Codex CLI** | `--codex` | Coding agent from OpenAI that runs locally on your computer |
124
+ | **OpenCode** | `--opencode` | Open-source agent that helps you write code in your terminal |
125
+ | **MiMoCode** | `--mimocode` | Xiaomi's AI coding agent — fast, local, and open-source |
126
+ | **Engram** | `--engram` | Persistent memory system for coding agents |
127
+ | **CodeGraph** | `--codegraph` | Analyzes your codebase structure and dependencies |
128
+ | **Pi** | `--pi` | Minimal terminal coding harness — adapt Pi to your workflows |
129
+ | **Antigravity CLI** | `--antigravity-cli` | Lightweight, terminal-first surface for Antigravity agents |
130
+ | **MiniMax CLI** | `--minimax-cli` | Generate text, images, video, speech, and music from the terminal |
131
+ | **Gentle AI** | `--gentle-ai` | Ecosystem, Frameworks, Workflows for AI coding agents |
132
+ | **GGA** | `--gga` | Provider-agnostic AI code review for every commit |
133
+ | **Hermes Agent** | `--hermes-agent` | The self-improving AI agent built by Nous Research |
134
+ | **Kimi Code** | `--kimi-code` | Kimi Code CLI — The Starting Point for Next-Gen Agents |
135
+ | **Command Code** | `--command-code` | The coding agent that learns your coding taste |
136
+ | **Freebuff** | `--freebuff` | Free community coding agent (glibc/proot) |
137
+
138
+ ---
139
+
140
+ ## Detailed Commands
141
+
142
+ ### `omni --version`
143
+
144
+ Display the installed version of Omni Catalyst.
145
+
146
+ ```bash
147
+ omni --version
148
+ ```
149
+
150
+ **Output:**
151
+ ```
152
+ 4.4.0
153
+ ```
154
+
155
+ ---
156
+
157
+ ### `omni env`
158
+
159
+ Manage environment variables in your shell rc file (`.zshrc` or `.bashrc`). All operations are interactive.
160
+
161
+ ```bash
162
+ omni env # Show help
163
+ omni env set # Add or update a variable (value is hidden while typing)
164
+ omni env unset # Remove a variable (shows list to choose from)
165
+ omni env ls # List all user-defined variables
166
+ ```
167
+
168
+ **Features:**
169
+
170
+ - Values are hidden with ● when typing (safe for API keys and tokens)
171
+ - Detects existing variables and warns before replacing
172
+ - Removes all definitions of the same variable name
173
+ - Writes to `.zshrc` if it exists, otherwise `.bashrc`
174
+
175
+ **Example session:**
176
+
177
+ ```bash
178
+ $ omni env set
179
+
180
+ ┌─────────────────────────────────────────┐
181
+ │ Set Environment Variable │
182
+ └─────────────────────────────────────────┘
183
+
184
+ ┌─ Variable name
185
+ └─▶ OPENAI_API_KEY
186
+
187
+ ┌─ Value for OPENAI_API_KEY
188
+ │ (input will be hidden)
189
+ └─▶ ●●●●●●●●●●●●●●
190
+
191
+ ✔ Variable OPENAI_API_KEY set in .zshrc
192
+ • Run: source .zshrc to apply
193
+
194
+ $ omni env ls
195
+
196
+ ─────── Environment Variables ───────
197
+
198
+ File: .zshrc
199
+
200
+ OPENAI_API_KEY = sk-...
201
+ DATABASE_URL = postgresql://...
202
+
203
+ ──────────────────────────────────────
204
+ 2 variable(s) in .zshrc
205
+ ```
206
+
207
+ ---
208
+
209
+ ### `omni brain`
210
+
211
+ Save and search personal learnings and memories — your second brain in markdown files. All operations are local, synced optionally to a private GitHub repo.
212
+
213
+ ```bash
214
+ omni brain # Dashboard with stats
215
+ omni brain init # Initialize brain directory and GitHub repo
216
+ omni brain save # Interactive: save a new memory
217
+ omni brain search <query> # Search memories by keywords or tags
218
+ omni brain ls [category] # List memories by category
219
+ omni brain edit # Edit a memory in your $EDITOR
220
+ omni brain edit <slug> # Edit a memory by slug name
221
+ omni brain delete # Delete a memory permanently
222
+ omni brain show <slug> # View a memory with its relations
223
+ omni brain reset # Destroy the entire brain
224
+ omni brain graph # Visual map of all connections
225
+ omni brain skill # Create an AI skill from memories
226
+ omni brain relate # Link two memories interactively
227
+ omni brain sync # Push/pull to GitHub private repo
228
+ ```
229
+
230
+ **Memory format (AI-consumable markdown):**
231
+
232
+ ```markdown
233
+ ---
234
+ title: React Hook Form + Zod validation
235
+ tags: [react, forms, typescript, zod]
236
+ created: 2026-06-23
237
+ category: frontend
238
+ related: [nextjs-server-actions]
239
+ ---
240
+
241
+ # React Hook Form + Zod validation
242
+
243
+ After hours of testing, the combination that worked...
244
+ ```
245
+
246
+ **Features:**
247
+
248
+ - Categorized folders (`frontend/`, `devops/`, `linux/`, etc.) with tags for cross-relations
249
+ - Auto-suggests relations based on shared tags when saving
250
+ - Values hidden with ● when typing for API keys and tokens
251
+ - Syncs to a private GitHub repo via `gh` for backup across devices
252
+ - Markdown frontmatter consumable by AI agents
253
+
254
+ **Example session:**
255
+
256
+ ```bash
257
+ $ omni brain save
258
+
259
+ ┌─────────────────────────────────────────┐
260
+ │ Save a New Memory │
261
+ └─────────────────────────────────────────┘
262
+
263
+ ┌─ Title
264
+ └─▶ React Hook Form + Zod patterns
265
+
266
+ Existing categories:
267
+ • frontend
268
+ • devops
269
+
270
+ ┌─ Category
271
+ └─▶ frontend
272
+
273
+ ┌─ Tags (comma separated)
274
+ └─▶ react, forms, zod, typescript
275
+
276
+ Write your content below (Ctrl+D to finish, Ctrl+C to cancel):
277
+
278
+ After hours testing, la combinación definitiva...
279
+ [Ctrl+D]
280
+
281
+ ✔ Memory saved to frontend/2026-06-23_react-hook-form-zod-patterns.md
282
+ ```
283
+
284
+ ---
285
+
286
+ ### `omni voice`
287
+
288
+ Capture voice from the microphone, review it in nvim, and launch an AI agent.
289
+
290
+ ```bash
291
+ omni voice # Show help
292
+ omni voice <agent> # Capture → nvim → launch agent
293
+ omni voice text # Capture → nvim → print to stdout
294
+ omni voice ! # Alias for 'text'
295
+ ```
296
+
297
+ **Requirements:**
298
+ - Termux:API package: `pkg install termux-api`
299
+ - Neovim for editing: `omni install editor`
300
+ - Termux:API app: https://omni-catalyst.vercel.app/termux/api
301
+
302
+ > **Note:** `omni voice` automatically runs `termux-api-start` before capturing audio to ensure the Termux:API service is running.
303
+
304
+ **Supported agents:**
305
+
306
+ | Agent | Command |
307
+ |-------|---------|
308
+ | `opencode` | `opencode run "prompt"` |
309
+ | `claude-code` | `claude -p "prompt"` |
310
+ | `codex` | `codex "prompt"` |
311
+ | `gemini-cli` | `gemini -p "prompt"` |
312
+ | `hermes-agent` | `hermes chat -q "prompt"` |
313
+ | `kimi-code` | `kimi -p "prompt"` |
314
+ | `mimocode` | `mimo run "prompt"` |
315
+ | `mistral-vibe` | `vibe --prompt "prompt"` |
316
+ | `openclaude` | `openclaude --bg "prompt"` |
317
+ | `pi` | `pi -p "prompt"` |
318
+ | `qwen-code` | `qwen -p "prompt"` |
319
+ | `text` | Print prompt to stdout |
320
+
321
+ **Example session:**
322
+
323
+ ```bash
324
+ $ omni voice opencode
325
+
326
+ ➜ Listening through the microphone...
327
+ ➜ Review the prompt in nvim, fix mistakes, then save and quit
328
+ ➜ Launching opencode with prompt…
329
+
330
+ # opencode opens with the voice-transcribed prompt
331
+ ```
332
+
333
+ ---
334
+
335
+ ### `omni show`
336
+
337
+ Display help documentation for any installed tool. Documentation is loaded from the tool's `README.md` file in its module directory.
338
+
339
+ ```bash
340
+ omni show # Show help
341
+ omni show <module> # List all tools in a module
342
+ omni show <module> --<tool> # Show specific tool documentation
343
+ ```
344
+
345
+ **Examples:**
346
+
347
+ ```bash
348
+ omni show ai --opencode # Show OpenCode documentation
349
+ omni show db --postgresql # Show PostgreSQL documentation
350
+ omni show npm --typescript # Show TypeScript documentation
351
+ ```
352
+
353
+ **Colorized output:** If `bat` is installed, documentation is displayed with syntax highlighting. Otherwise, plain text is shown.
354
+
355
+ ---
356
+
357
+ ### `omni list`
358
+
359
+ List available tools in a module and their installation status.
360
+
361
+ ```bash
362
+ omni list # Show help
363
+ omni list <module> # List tools in specific module
364
+ ```
365
+
366
+ All modules from [Common Modules](#common-modules) are valid targets.
367
+
368
+ ---
369
+
370
+ ### `omni install`
371
+
372
+ Install individual modules or specific tools within modules.
373
+
374
+ ```bash
375
+ omni install # Show help
376
+ omni install <module> # Install entire module
377
+ omni install <module> --tool1 --tool2 # Install specific tools
378
+ ```
379
+
380
+ All modules from [Common Modules](#common-modules) are valid targets.
381
+
382
+ **Install entire module:**
383
+
384
+ ```bash
385
+ omni install ai # Install all AI tools
386
+ omni install db # Install all databases
387
+ omni install dev # Install all development tools
388
+ ```
389
+
390
+ **Install specific tools:**
391
+
392
+ ```bash
393
+ omni install ai --qwen-code --ollama # Install only Qwen Code and Ollama
394
+ omni install db --postgresql --sqlite # Install only PostgreSQL and SQLite
395
+ omni install dev --gh --fzf --jq # Install only gh, fzf, and jq
396
+ omni install npm --typescript --prettier # Install only TypeScript and Prettier
397
+ ```
398
+
399
+ > **Tip:** Run `omni list <module>` to see all available tools and their flags.
400
+
401
+ ---
402
+
403
+ ### `omni update`
404
+
405
+ Update modules or the complete framework.
406
+
407
+ ```bash
408
+ omni update # Show help
409
+ omni update <target> # Update specific target
410
+ omni update <target> --tool1 --tool2 # Update specific tools
411
+ omni update core # Update framework only
412
+ ```
413
+
414
+ In addition to all [Common Modules](#common-modules), `omni update` also supports:
415
+
416
+ | Target | Description |
417
+ |--------|-------------|
418
+ | `core` | Omni Catalyst framework only |
419
+
420
+ **Update entire module:**
421
+
422
+ ```bash
423
+ omni update ai # Update all AI tools
424
+ omni update db # Update all databases
425
+ ```
426
+
427
+ **Update specific tools:**
428
+
429
+ ```bash
430
+ omni update ai --qwen-code --ollama # Update only Qwen Code and Ollama
431
+ omni update db --postgresql --sqlite # Update only PostgreSQL and SQLite
432
+ omni update dev --gh --fzf --jq # Update only gh, fzf, and jq
433
+ ```
434
+
435
+ ---
436
+
437
+ ### `omni uninstall`
438
+
439
+ Remove installed modules or specific tools.
440
+
441
+ ```bash
442
+ omni uninstall # Show help
443
+ omni uninstall <target> # Uninstall specific target
444
+ omni uninstall <target> --tool1 --tool2 # Uninstall specific tools
445
+ ```
446
+
447
+ In addition to all [Common Modules](#common-modules), `omni uninstall` supports per-module and per-tool removal. No "uninstall all" — desinstalá solo lo que necesitás.
448
+
449
+ **Uninstall specific tools:**
450
+
451
+ ```bash
452
+ omni uninstall ai --qwen-code --ollama # Uninstall only Qwen Code and Ollama
453
+ omni uninstall db --postgresql --sqlite # Uninstall only PostgreSQL and SQLite
454
+ omni uninstall dev --gh --fzf # Uninstall only gh and fzf
455
+ ```
456
+
457
+ ---
458
+
459
+ ### `omni reinstall`
460
+
461
+ Reinstall modules or specific tools — uninstalls then installs from scratch.
462
+
463
+ ```bash
464
+ omni reinstall # Show help
465
+ omni reinstall <target> # Reinstall specific target
466
+ omni reinstall <target> --tool1 --tool2 # Reinstall specific tools
467
+ ```
468
+
469
+ In addition to all [Common Modules](#common-modules), `omni reinstall` supports per-module and per-tool reinstallation. No "reinstall all".
470
+
471
+ **Reinstall specific tools:**
472
+
473
+ ```bash
474
+ omni reinstall ai --opencode --ollama # Reinstall only OpenCode and Ollama
475
+ omni reinstall db --postgresql --sqlite # Reinstall only PostgreSQL and SQLite
476
+ omni reinstall dev --gh --fzf # Reinstall only gh and fzf
477
+ ```
478
+
479
+ ---
480
+
481
+ ### `omni open`
482
+
483
+ Open official documentation in browser
484
+
485
+ ```bash
486
+ omni open # Show help
487
+ omni open <target> # Open official documentation in browser
488
+ ```
489
+
490
+ All [Common Modules](#common-modules) are valid targets, plus:
491
+
492
+ | Target | Description |
493
+ |--------|-------------|
494
+ | `core` | Omni Catalyst documentation |
495
+ | `omni` | Omni Catalyst official website |
496
+
497
+ ---
498
+
499
+ ### `omni pg`
500
+
501
+ PostgreSQL database manager.
502
+
503
+ ```bash
504
+ omni pg # Show help
505
+ omni pg start # Start server
506
+ omni pg stop # Stop server
507
+ omni pg restart # Restart server
508
+ omni pg status # Check status
509
+ omni pg init # Initialize database
510
+ omni pg create <name> # Create database
511
+ omni pg drop <name> # Drop database
512
+ omni pg list # List databases
513
+ omni pg shell # Open psql console
514
+ ```
515
+
516
+ **Features:**
517
+ - Automatic data directory detection
518
+ - Support for existing installations
519
+ - Logs in `~/.cache/omni/postgresql.log`
520
+
521
+ ---
522
+
523
+ ### `omni init`
524
+
525
+ Configure existing projects with predefined dependencies and structure.
526
+
527
+ ```bash
528
+ omni init # Show help
529
+ omni init <template> # Configure with specific template
530
+ ```
531
+
532
+ **Available templates:**
533
+
534
+ | Template | Description |
535
+ |----------|-------------|
536
+ | `next` | Next.js with preconfigured dependencies |
537
+ | `react` | React + Vite with modern structure |
538
+ | `nest` | NestJS with additional configuration |
539
+ | `express` | Express API with TypeScript + TypeORM |
540
+
541
+ **Usage:**
542
+
543
+ ```bash
544
+ cd my-next-app && omni init next
545
+ cd my-react-app && omni init react
546
+ cd api && omni init express
547
+ cd backend && omni init nest
548
+ ```
549
+
550
+ ---
551
+
552
+ ## Template Details
553
+
554
+ ### Next.js (`omni init next`)
555
+
556
+ **Installed dependencies:**
557
+ ```json
558
+ {
559
+ "dependencies": {
560
+ "axios": "latest",
561
+ "lucide-react": "latest",
562
+ "framer-motion": "latest",
563
+ "sonner": "latest",
564
+ "zod": "latest",
565
+ "react-hook-form": "latest",
566
+ "@hookform/resolvers": "latest",
567
+ "@tanstack/react-query": "latest",
568
+ "zustand": "latest",
569
+ "tailwindcss": "latest"
570
+ },
571
+ "devDependencies": {
572
+ "prettier": "latest",
573
+ "prettier-plugin-tailwindcss": "latest"
574
+ }
575
+ }
576
+ ```
577
+
578
+ **Configuration:**
579
+ - `.prettierrc` with Tailwind CSS plugin
580
+ - Scripts with `--webpack` flag
581
+ - israel676767 landing page included
582
+ - Structure: `components/`, `lib/`, `hooks/`, `types/`, `config/`, `store/`
583
+
584
+ ---
585
+
586
+ ### React + Vite (`omni init react`)
587
+
588
+ **Same dependencies as Next.js** (except Next.js-specific configs)
589
+
590
+ **Configuration:**
591
+ - `.prettierrc` with Tailwind CSS plugin
592
+ - Custom Button component
593
+ - israel676767 landing page in `src/App.tsx`
594
+ - Structure: `components/`, `lib/`, `hooks/`, `types/`, `config/`, `store/`, `pages/`
595
+
596
+ ---
597
+
598
+ ### Express.js (`omni init express`)
599
+
600
+ **Dependencies:**
601
+ ```
602
+ express, pg, typeorm, reflect-metadata
603
+ jsonwebtoken, cookie-parser, morgan, cors
604
+ bcryptjs, helmet, cloudinary, multer
605
+ express-rate-limit, tsconfig-paths, zod
606
+ ```
607
+
608
+ **devDependencies:**
609
+ ```
610
+ typescript, ts-node-dev, tsconfig-paths, tsc-alias
611
+ @types/node, @types/multer, @types/morgan
612
+ @types/jsonwebtoken, @types/helmet
613
+ @types/express, @types/cors
614
+ @types/cookie-parser, @types/bcryptjs
615
+ ```
616
+
617
+ **Scripts added:**
618
+ ```json
619
+ {
620
+ "dev": "ts-node-dev --require tsconfig-paths/register --env-file=.env --respawn src/index.ts",
621
+ "build": "tsc && tsc-alias -p tsconfig.json",
622
+ "start": "node dist/index.js",
623
+ "typeorm": "ts-node-dev --require tsconfig-paths/register --env-file=.env ./node_modules/typeorm/cli.js",
624
+ "mg:gen": "npm run typeorm -- migration:generate -d src/database/data-source.ts",
625
+ "mg:create": "npm run typeorm -- migration:create",
626
+ "mg:run": "npm run typeorm -- migration:run -d src/database/data-source.ts",
627
+ "mg:revert": "npm run typeorm -- migration:revert -d src/database/data-source.ts",
628
+ "mg:show": "npm run typeorm -- migration:show -d src/database/data-source.ts"
629
+ }
630
+ ```
631
+
632
+ **Structure created:**
633
+ ```
634
+ src/
635
+ ├── app.ts # Express configuration
636
+ ├── index.ts # Entry point
637
+ ├── config/
638
+ │ └── env.ts # Environment variables
639
+ ├── database/
640
+ │ ├── data-source.ts # TypeORM DataSource
641
+ │ ├── migrations/
642
+ │ └── seeds/
643
+ ├── entities/
644
+ ├── controllers/
645
+ ├── repositories/
646
+ ├── services/
647
+ ├── routes/
648
+ ├── schemas/ # Zod schemas
649
+ ├── middlewares/
650
+ ├── types/
651
+ └── utils/
652
+ ```
653
+
654
+ **Configured files:**
655
+ - `tsconfig.json` with paths (`@/*`)
656
+ - `.env.example`
657
+ - `src/config/env.ts`
658
+ - `src/database/data-source.ts` (TypeORM)
659
+ - `src/app.ts` (Express with CORS, helmet, rate-limit)
660
+ - `src/index.ts`
661
+
662
+ ---
663
+
664
+ ### NestJS (`omni init nest`)
665
+
666
+ **Dependencies:**
667
+ ```
668
+ @nestjs/typeorm, typeorm, pg
669
+ @nestjs/jwt, @nestjs/passport
670
+ class-validator, class-transformer
671
+ bcryptjs, helmet, cloudinary
672
+ ```
673
+
674
+ ---
675
+
676
+ ## Language Packages
677
+
678
+ The `lang` module installs the following programming languages and runtimes via `pkg`:
679
+
680
+ ```bash
681
+ omni install lang
682
+ ```
683
+
684
+ | Language/Runtime | Package | Description |
685
+ |------------------|---------|-------------|
686
+ | **Node.js LTS** | `nodejs-lts` | Long-term support release of Node.js |
687
+ | **Python** | `python` | Python 3 interpreter |
688
+ | **Perl** | `perl` | Perl scripting language |
689
+ | **PHP** | `php` | PHP interpreter |
690
+ | **Rust** | `rust` | Rust compiler and Cargo |
691
+ | **C/C++** | `clang` | LLVM C/C++ compiler |
692
+ | **Go** | `golang` | Go programming language |
693
+
694
+ ---
695
+
696
+ ## Development Tools
697
+
698
+ The `dev` module installs the following development utilities via `pkg`:
699
+
700
+ ```bash
701
+ omni install dev
702
+ ```
703
+
704
+ | Tool | Package | Description |
705
+ |------|---------|-------------|
706
+ | **GitHub CLI** | `gh` | Official GitHub command-line tool |
707
+ | **Wget** | `wget` | File downloader |
708
+ | **Curl** | `curl` | HTTP client and transfer tool |
709
+ | **LSD** | `lsd` | Modern `ls` replacement with icons and colors |
710
+ | **Bat** | `bat` | Modern `cat` replacement with syntax highlighting |
711
+ | **Proot** | `proot` | Chroot alternative for user-space |
712
+ | **Ncurses Utils** | `ncurses-utils` | Terminal UI manipulation tools |
713
+ | **Tmate** | `tmate` | Instant terminal sharing |
714
+ | **Cloudflared** | `cloudflared` | Cloudflare Tunnel client |
715
+ | **Translate Shell** | `translate-shell` | Command-line translator |
716
+ | **html2text** | `html2text` | HTML to plain text converter |
717
+ | **jq** | `jq` | Lightweight JSON processor |
718
+ | **bc** | `bc` | Arbitrary precision calculator |
719
+ | **Tree** | `tree` | Recursive directory listing |
720
+ | **Fzf** | `fzf` | Command-line fuzzy finder |
721
+ | **ImageMagick** | `imagemagick` | Image manipulation suite |
722
+ | **Shfmt** | `shfmt` | Shell script formatter |
723
+ | **Make** | `make` | Build automation tool |
724
+ | **Udocker** | `udocker` | Run Docker containers without root |
725
+
726
+ ---
727
+
728
+ ## Node.js Global Modules
729
+
730
+ The `npm` module installs the following global npm packages:
731
+
732
+ ```bash
733
+ omni install npm
734
+ ```
735
+
736
+ | Package | Command | Description |
737
+ |---------|---------|-------------|
738
+ | **TypeScript** | `tsc` | TypeScript compiler |
739
+ | **NestJS CLI** | `nest` | NestJS framework CLI |
740
+ | **Prettier** | `prettier` | Code formatter |
741
+ | **Live Server** | `live-server` | Development server with live reload |
742
+ | **Localtunnel** | `lt` | Expose localhost to the internet |
743
+ | **Vercel CLI** | `vercel` | Vercel deployment CLI |
744
+ | **Markserv** | `markserv` | Markdown live-preview server |
745
+ | **PSQL Format** | `psqlformat` | PostgreSQL query formatter |
746
+ | **NPM Check Updates** | `ncu` | Find outdated dependencies |
747
+ | **Ngrok** | `ngrok` | Secure tunnel to localhost |
748
+
749
+ ---
750
+
751
+ ## Code Editor
752
+
753
+ The `editor` module installs **Neovim** with a custom configuration based on [NvChad](https://github.com/israel676767/nvchad-termux).
754
+
755
+ **Installation:**
756
+ ```bash
757
+ omni install editor
758
+ ```
759
+
760
+ **Features:**
761
+ - **Neovim** - Fast, extensible code editor
762
+ - **NvChad** - Modern Neovim configuration
763
+ - **GitHub Copilot** - AI-powered code completion
764
+ - **CodeCompanion** - AI chat assistant for code
765
+ - **Preconfigured plugins** - LSP, autocomplete, syntax highlighting, file explorer, etc.
766
+
767
+ **Included languages:**
768
+ - TypeScript/JavaScript
769
+ - Python
770
+ - PHP
771
+ - Perl
772
+ - Rust
773
+ - Lua
774
+ - And more...
775
+
776
+ **For detailed information about the editor configuration, plugins, and usage:**
777
+ → Visit: [https://github.com/israel676767/nvchad-termux](https://github.com/israel676767/nvchad-termux)
778
+
779
+ ---
780
+
781
+ ## UI and Logs
782
+
783
+ The framework includes a professional logging system with colors, icons, and animations, plus a startup banner with random tips.
784
+
785
+ ### Log Functions
786
+
787
+ ```bash
788
+ log_info "Info message"
789
+ log_success "Success message"
790
+ log_warn "Warning message"
791
+ log_error "Error message"
792
+ log_debug "Debug message (requires OMNI_DEBUG=1)"
793
+ ```
794
+
795
+ ### Loading Spinner
796
+
797
+ Hides shell output while running commands:
798
+
799
+ ```bash
800
+ LOG_FILE="$OMNI_CACHE/install.log"
801
+
802
+ loading "Installing packages" _install_function
803
+
804
+ _install_function() {
805
+ pkg install packages -y &>"$LOG_FILE"
806
+ }
807
+ ```
808
+
809
+ ### Separators
810
+
811
+ ```bash
812
+ separator # Single line
813
+ separator_double # Double line
814
+ separator_section "Title" # Centered title with line
815
+ ```
816
+
817
+ ### Boxes
818
+
819
+ ```bash
820
+ box "Title"
821
+ box_large "Large title"
822
+ box_with_subtitle "Title" "Subtitle"
823
+ ```
824
+
825
+ ### Interactive Inputs
826
+
827
+ ```bash
828
+ # Text input
829
+ read_input "Name" VAR_NAME
830
+
831
+ # Confirmation (y/n)
832
+ read_confirm "Continue?" VAR_NAME
833
+
834
+ # Selection with arrow keys ↑↓
835
+ read_select "Environment" VAR_NAME "Dev" "Staging" "Production"
836
+
837
+ # Hidden input (API keys, tokens, passwords) ●●●
838
+ read_secret "Value" VAR_NAME
839
+
840
+ # Multi-line input (no editor needed)
841
+ file=$(read_multiline "# Title")
842
+ content=$(cat "$file")
843
+ rm -f "$file"
844
+ ```
845
+
846
+ ### Tables
847
+
848
+ ```bash
849
+ table_start "Col1" "Col2" "Col3"
850
+ table_row "value1" "value2" "value3"
851
+ table_end
852
+ ```
853
+
854
+ ---
855
+
856
+ ## Banner Tips
857
+
858
+ Every time you open a new Termux session (or run the banner), Omni Catalyst shows a random tip to help you discover features you might not know about. Tips cover all modules: installing tools, using `omni brain`, managing databases, voice commands, project initialization, and more.
859
+
860
+ The tip system:
861
+ - Picks a random tip from a pool of 65+ tips on each session
862
+ - Never shows the same tip twice in a row
863
+ - Covers every module and command in the framework
864
+
865
+ To refresh the tips pool or customize them, edit `core/utils/banner.sh`.
866
+
867
+ ---
868
+
869
+ ## Project Structure
870
+
871
+ ```
872
+ omni/
873
+ ├── LICENSE
874
+ ├── README.md
875
+ ├── assets
876
+ │ ├── fonts
877
+ │ │ └── font.ttf
878
+ │ └── images
879
+ │ └── logo.svg
880
+ ├── core
881
+ │ ├── bin
882
+ │ │ └── core
883
+ │ ├── cli
884
+ │ │ ├── commands
885
+ │ │ │ ├── --version.sh
886
+ │ │ │ ├── brain.sh
887
+ │ │ │ ├── env.sh
888
+ │ │ │ ├── init.sh
889
+ │ │ │ ├── install.sh
890
+ │ │ │ ├── list.sh
891
+ │ │ │ ├── pg.sh
892
+ │ │ │ ├── reinstall.sh
893
+ │ │ │ ├── show.sh
894
+ │ │ │ ├── uninstall.sh
895
+ │ │ │ ├── update.sh
896
+ │ │ │ └── voice.sh
897
+ │ │ └── core.sh
898
+ │ ├── modules
899
+ │ │ ├── ai.sh
900
+ │ │ ├── auto.sh
901
+ │ │ ├── db.sh
902
+ │ │ ├── dev.sh
903
+ │ │ ├── editor.sh
904
+ │ │ ├── lang.sh
905
+ │ │ ├── npm.sh
906
+ │ │ ├── shell.sh
907
+ │ │ └── ui.sh
908
+ │ ├── tools
909
+ │ │ ├── ai/
910
+ │ │ │ ├── all.sh
911
+ │ │ │ ├── qwen-code/
912
+ │ │ │ │ ├── install.sh
913
+ │ │ │ │ └── README.md
914
+ │ │ │ ├── claude-code/
915
+ │ │ │ │ ├── install.sh
916
+ │ │ │ │ ├── bin/claude
917
+ │ │ │ │ └── README.md
918
+ │ │ │ ├── opencode/
919
+ │ │ │ │ ├── install.sh
920
+ │ │ │ │ ├── bin/opencode
921
+ │ │ │ │ └── README.md
922
+ │ │ │ ├── freebuff/
923
+ │ │ │ │ ├── install.sh
924
+ │ │ │ │ ├── bin/freebuff
925
+ │ │ │ │ ├── helper/freebuff_helper.c
926
+ │ │ │ │ └── README.md
927
+ │ │ │ └── ... (13 tools, each with own directory)
928
+ │ │ ├── npm/
929
+ │ │ ├── lang/
930
+ │ │ ├── db/
931
+ │ │ ├── editor/
932
+ │ │ ├── dev/
933
+ │ │ ├── shell/
934
+ │ │ ├── ui/
935
+ │ │ └── auto/
936
+ │ └── utils
937
+ │ ├── bootstrap.sh
938
+ │ ├── banner.sh
939
+ │ ├── colors.sh
940
+ │ ├── env.sh
941
+ │ └── log.sh
942
+ └── install.sh
943
+ ```
944
+
945
+ ---
946
+
947
+ ## Configuration
948
+
949
+ ### Environment Variables
950
+
951
+ ```bash
952
+ export OMNI_DEBUG=1 # Enable debug logs
953
+ ```
954
+
955
+ ### Directories
956
+
957
+ | Directory | Description |
958
+ |-----------|-------------|
959
+ | `~/.local/share/omni-data` | Persistent tool data (codegraph, engram, nvchad) |
960
+ | `~/.cache/omni` | Logs and cache |
961
+ | `~/.config/omni` | User configuration |
962
+
963
+ ### Log Files
964
+
965
+ All processes save logs to:
966
+
967
+ ```
968
+ ~/.cache/omni/
969
+ ├── install_lang.log
970
+ ├── install_db.log
971
+ ├── install_ai.log
972
+ ├── install_editor.log
973
+ ├── install_dev.log
974
+ ├── install_npm.log
975
+ ├── install_shell.log
976
+ ├── install_ui.log
977
+ ├── install_auto.log
978
+ ├── postgresql.log
979
+ ├── last_version_check # Last update check timestamp
980
+ └── new_version # New version available (if exists)
981
+ ```
982
+
983
+ ---
984
+
985
+ ## Automatic Updates
986
+
987
+ The framework checks for updates automatically:
988
+
989
+ - **Frequency:** Once every 24 hours
990
+ - **Impact:** None (runs in background)
991
+ - **Notification:** Shown when running `omni` if new version exists
992
+
993
+ ```bash
994
+ $ omni
995
+
996
+ ── Update Available ─────────────────────────────────
997
+
998
+ ⚠ New version available: 4.4.1 (current: 4.4.0)
999
+
1000
+ ➜ Run: omni update core to update
1001
+ ```
1002
+
1003
+ To update:
1004
+
1005
+ ```bash
1006
+ omni update core
1007
+ ```
1008
+
1009
+ ---
1010
+
1011
+ ## ZSH Shell
1012
+
1013
+ When installing the `shell` module:
1014
+
1015
+ ### Installed Plugins
1016
+
1017
+ | Plugin | Description |
1018
+ |--------|-------------|
1019
+ | powerlevel10k | Modern and fast theme |
1020
+ | zsh-defer | Deferred plugin loading |
1021
+ | zsh-autosuggestions | Smart autocompletion |
1022
+ | zsh-syntax-highlighting | Syntax highlighting |
1023
+ | zsh-history-substring-search | History search |
1024
+ | zsh-completions | Additional completions |
1025
+ | fzf-tab | Fuzzy navigation in completions |
1026
+ | zsh-you-should-use | Command suggestions |
1027
+ | zsh-autopair | Auto-close parentheses |
1028
+ | zsh-better-npm-completion | Better npm completion |
1029
+
1030
+ ### Persistent Session
1031
+
1032
+ The shell saves the current directory and restores it when opening a new session:
1033
+
1034
+ ```bash
1035
+ # Session 1
1036
+ $ cd projects/my-app
1037
+ $ exit
1038
+
1039
+ # Session 2
1040
+ $ pwd
1041
+ /data/data/com.termux/files/home/projects/my-app ← Same directory
1042
+ ```
1043
+
1044
+ **Configuration:**
1045
+ - Saves path to `~/.cache/omni/last_dir`
1046
+ - Automatically restored on startup
1047
+ - Falls back to `$HOME` if directory doesn't exist
1048
+
1049
+ ## Usage Examples
1050
+
1051
+ ### Install specific modules
1052
+
1053
+ ```bash
1054
+ omni install db
1055
+ omni install shell
1056
+ omni install npm
1057
+ ```
1058
+
1059
+ ### Install specific tools within a module
1060
+
1061
+ ```bash
1062
+ omni list ai # See available AI tools
1063
+ omni install ai --qwen-code --ollama # Install only Qwen Code and Ollama
1064
+ omni install dev --gh --fzf --jq # Install only gh, fzf, and jq
1065
+ omni install npm --typescript --prettier # Install only TypeScript and Prettier
1066
+ ```
1067
+
1068
+ ### Reinstall
1069
+
1070
+ ```bash
1071
+ omni reinstall ai # Reinstall all AI agents
1072
+ omni reinstall shell # Reinstall ZSH + plugins
1073
+ omni reinstall ai --opencode --ollama # Reinstall specific tools
1074
+ ```
1075
+
1076
+ ### Configure Next.js project
1077
+
1078
+ ```bash
1079
+ npx create-next-app@latest my-app
1080
+ cd my-app
1081
+ omni init next
1082
+ ```
1083
+
1084
+ ### Manage PostgreSQL
1085
+
1086
+ ```bash
1087
+ omni pg init # First time
1088
+ omni pg start # Start
1089
+ omni pg create mydb # Create database
1090
+ omni pg shell # Open psql
1091
+ omni pg stop # Stop
1092
+ ```
1093
+
1094
+ ### Update
1095
+
1096
+ ```bash
1097
+ omni update core # Framework only
1098
+ omni update shell # ZSH plugins only
1099
+ omni update ai --qwen # Specific AI tool only
1100
+ ```
1101
+
1102
+ ### Uninstall
1103
+
1104
+ ```bash
1105
+ omni uninstall npm # Remove Node.js modules
1106
+ omni uninstall ai --ollama # Remove only Ollama
1107
+ ```
1108
+
1109
+ ### List available tools
1110
+
1111
+ ```bash
1112
+ omni list ai # List all AI tools and their status
1113
+ omni list dev # List all development tools
1114
+ omni list db # List all databases
1115
+ ```
1116
+
1117
+ ---
1118
+
1119
+ ## Important Notes
1120
+
1121
+ 1. **Restart Termux:** After installing `shell` or `ui`, restart Termux to apply changes
1122
+ 2. **Permissions:** Ensure you have write permissions in the installation directory
1123
+ 3. **Connection:** Some installations require internet connection
1124
+ 4. **Logs:** Check `~/.cache/omni/` if something fails
1125
+
1126
+ ---
1127
+
1128
+ ## Design Reference
1129
+
1130
+ The Omni banner and visual identity were designed with reference to this ChatGPT conversation:
1131
+ [View Design Reference →](https://chatgpt.com/s/m_6a4808ae06e08191b35f3a0eb6f490cb)
1132
+
1133
+ ---
1134
+
1135
+ ## License
1136
+
1137
+ MIT License