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.
- package/LICENSE +21 -0
- package/README.md +1137 -0
- package/core/bin/core +85 -0
- package/core/bin/omni +21 -0
- package/core/cli/commands/--version.sh +8 -0
- package/core/cli/commands/brain.sh +1549 -0
- package/core/cli/commands/doctor.sh +834 -0
- package/core/cli/commands/env.sh +226 -0
- package/core/cli/commands/init.sh +1266 -0
- package/core/cli/commands/install.sh +759 -0
- package/core/cli/commands/list.sh +397 -0
- package/core/cli/commands/open.sh +71 -0
- package/core/cli/commands/pg.sh +761 -0
- package/core/cli/commands/reinstall.sh +694 -0
- package/core/cli/commands/show.sh +90 -0
- package/core/cli/commands/uninstall.sh +700 -0
- package/core/cli/commands/update.sh +754 -0
- package/core/cli/commands/voice.sh +170 -0
- package/core/cli/core.sh +82 -0
- package/core/cli/omni.sh +634 -0
- package/core/modules/ai.sh +152 -0
- package/core/modules/auto.sh +90 -0
- package/core/modules/db.sh +94 -0
- package/core/modules/deploy.sh +50 -0
- package/core/modules/dev.sh +126 -0
- package/core/modules/editor.sh +101 -0
- package/core/modules/lang.sh +100 -0
- package/core/modules/npm.sh +122 -0
- package/core/modules/shell.sh +312 -0
- package/core/modules/ui.sh +115 -0
- package/core/tools/ai/all.sh +63 -0
- package/core/tools/ai/antigravity-cli/README.md +45 -0
- package/core/tools/ai/antigravity-cli/bin/agy +28 -0
- package/core/tools/ai/antigravity-cli/helper/agy_helper.c +39 -0
- package/core/tools/ai/antigravity-cli/install.sh +469 -0
- package/core/tools/ai/claude-code/README.md +45 -0
- package/core/tools/ai/claude-code/bin/claude +29 -0
- package/core/tools/ai/claude-code/helper/claude_helper.c +42 -0
- package/core/tools/ai/claude-code/install.sh +278 -0
- package/core/tools/ai/codegraph/README.md +43 -0
- package/core/tools/ai/codegraph/bin/codegraph +3 -0
- package/core/tools/ai/codegraph/install.sh +149 -0
- package/core/tools/ai/codex/README.md +44 -0
- package/core/tools/ai/codex/install.sh +104 -0
- package/core/tools/ai/command-code/README.md +62 -0
- package/core/tools/ai/command-code/install.sh +136 -0
- package/core/tools/ai/engram/README.md +44 -0
- package/core/tools/ai/engram/install.sh +127 -0
- package/core/tools/ai/freebuff/README.md +52 -0
- package/core/tools/ai/freebuff/bin/freebuff +28 -0
- package/core/tools/ai/freebuff/helper/freebuff_helper.c +47 -0
- package/core/tools/ai/freebuff/install.sh +301 -0
- package/core/tools/ai/gemini-cli/README.md +46 -0
- package/core/tools/ai/gemini-cli/install.sh +111 -0
- package/core/tools/ai/gentle-ai/README.md +42 -0
- package/core/tools/ai/gentle-ai/install.sh +253 -0
- package/core/tools/ai/gentle-ai/termux-patches.go +256 -0
- package/core/tools/ai/gga/README.md +49 -0
- package/core/tools/ai/gga/install.sh +134 -0
- package/core/tools/ai/hermes-agent/README.md +50 -0
- package/core/tools/ai/hermes-agent/install.sh +80 -0
- package/core/tools/ai/heygen/README.md +24 -0
- package/core/tools/ai/heygen/install.sh +126 -0
- package/core/tools/ai/kilocode-cli/README.md +45 -0
- package/core/tools/ai/kilocode-cli/bin/kilocode +21 -0
- package/core/tools/ai/kilocode-cli/helper/kilocode_helper.c +47 -0
- package/core/tools/ai/kilocode-cli/install.sh +179 -0
- package/core/tools/ai/kimchi-code/README.md +8 -0
- package/core/tools/ai/kimchi-code/install.sh +120 -0
- package/core/tools/ai/kimi-code/README.md +45 -0
- package/core/tools/ai/kimi-code/install.sh +111 -0
- package/core/tools/ai/kiro-cli/README.md +23 -0
- package/core/tools/ai/kiro-cli/install.sh +127 -0
- package/core/tools/ai/mimocode/README.md +43 -0
- package/core/tools/ai/mimocode/bin/mimo +28 -0
- package/core/tools/ai/mimocode/helper/mimocode_helper.c +47 -0
- package/core/tools/ai/mimocode/install.sh +287 -0
- package/core/tools/ai/minimax-cli/README.md +45 -0
- package/core/tools/ai/minimax-cli/install.sh +111 -0
- package/core/tools/ai/mistral-vibe/README.md +46 -0
- package/core/tools/ai/mistral-vibe/install.sh +119 -0
- package/core/tools/ai/odysseus/README.md +35 -0
- package/core/tools/ai/odysseus/install.sh +163 -0
- package/core/tools/ai/ollama/README.md +44 -0
- package/core/tools/ai/ollama/install.sh +78 -0
- package/core/tools/ai/openclaude/README.md +46 -0
- package/core/tools/ai/openclaude/install.sh +110 -0
- package/core/tools/ai/openclaw/README.md +47 -0
- package/core/tools/ai/openclaw/install.sh +112 -0
- package/core/tools/ai/opencode/README.md +51 -0
- package/core/tools/ai/opencode/bin/opencode +28 -0
- package/core/tools/ai/opencode/helper/opencode_helper.c +57 -0
- package/core/tools/ai/opencode/install.sh +290 -0
- package/core/tools/ai/pi/README.md +46 -0
- package/core/tools/ai/pi/install.sh +104 -0
- package/core/tools/ai/qwen-code/README.md +45 -0
- package/core/tools/ai/qwen-code/install.sh +111 -0
- package/core/tools/ai/seedance/README.md +22 -0
- package/core/tools/ai/seedance/install.sh +134 -0
- package/core/tools/ai/veo3/README.md +36 -0
- package/core/tools/ai/veo3/install.sh +151 -0
- package/core/tools/auto/all.sh +57 -0
- package/core/tools/auto/n8n/README.md +47 -0
- package/core/tools/auto/n8n/install.sh +102 -0
- package/core/tools/db/all.sh +60 -0
- package/core/tools/db/mariadb/README.md +43 -0
- package/core/tools/db/mariadb/install.sh +65 -0
- package/core/tools/db/mongodb/README.md +42 -0
- package/core/tools/db/mongodb/install.sh +73 -0
- package/core/tools/db/postgresql/README.md +45 -0
- package/core/tools/db/postgresql/install.sh +65 -0
- package/core/tools/db/sqlite/README.md +44 -0
- package/core/tools/db/sqlite/install.sh +65 -0
- package/core/tools/deploy/all.sh +39 -0
- package/core/tools/deploy/netlify/install.sh +41 -0
- package/core/tools/deploy/railway/install.sh +47 -0
- package/core/tools/deploy/vercel/install.sh +43 -0
- package/core/tools/dev/all.sh +75 -0
- package/core/tools/dev/bat/README.md +44 -0
- package/core/tools/dev/bat/install.sh +82 -0
- package/core/tools/dev/bc/README.md +44 -0
- package/core/tools/dev/bc/install.sh +82 -0
- package/core/tools/dev/cloudflared/README.md +43 -0
- package/core/tools/dev/cloudflared/install.sh +82 -0
- package/core/tools/dev/curl/README.md +43 -0
- package/core/tools/dev/curl/install.sh +82 -0
- package/core/tools/dev/fzf/README.md +44 -0
- package/core/tools/dev/fzf/install.sh +82 -0
- package/core/tools/dev/gh/README.md +43 -0
- package/core/tools/dev/gh/install.sh +82 -0
- package/core/tools/dev/html2text/README.md +44 -0
- package/core/tools/dev/html2text/install.sh +82 -0
- package/core/tools/dev/imagemagick/README.md +44 -0
- package/core/tools/dev/imagemagick/install.sh +82 -0
- package/core/tools/dev/jq/README.md +44 -0
- package/core/tools/dev/jq/install.sh +82 -0
- package/core/tools/dev/lsd/README.md +44 -0
- package/core/tools/dev/lsd/install.sh +82 -0
- package/core/tools/dev/make/README.md +44 -0
- package/core/tools/dev/make/install.sh +82 -0
- package/core/tools/dev/ncurses/README.md +42 -0
- package/core/tools/dev/ncurses/install.sh +82 -0
- package/core/tools/dev/proot/README.md +43 -0
- package/core/tools/dev/proot/install.sh +82 -0
- package/core/tools/dev/shfmt/README.md +44 -0
- package/core/tools/dev/shfmt/install.sh +82 -0
- package/core/tools/dev/tmate/README.md +44 -0
- package/core/tools/dev/tmate/install.sh +82 -0
- package/core/tools/dev/translate/README.md +44 -0
- package/core/tools/dev/translate/install.sh +82 -0
- package/core/tools/dev/tree/README.md +44 -0
- package/core/tools/dev/tree/install.sh +82 -0
- package/core/tools/dev/udocker/README.md +44 -0
- package/core/tools/dev/udocker/install.sh +82 -0
- package/core/tools/dev/wget/README.md +44 -0
- package/core/tools/dev/wget/install.sh +82 -0
- package/core/tools/editor/all.sh +58 -0
- package/core/tools/editor/neovim/README.md +43 -0
- package/core/tools/editor/neovim/install.sh +66 -0
- package/core/tools/editor/nvchad/README.md +45 -0
- package/core/tools/editor/nvchad/install.sh +110 -0
- package/core/tools/lang/all.sh +63 -0
- package/core/tools/lang/clang/README.md +43 -0
- package/core/tools/lang/clang/install.sh +79 -0
- package/core/tools/lang/golang/README.md +43 -0
- package/core/tools/lang/golang/install.sh +79 -0
- package/core/tools/lang/nodejs/README.md +43 -0
- package/core/tools/lang/nodejs/install.sh +79 -0
- package/core/tools/lang/perl/README.md +43 -0
- package/core/tools/lang/perl/install.sh +79 -0
- package/core/tools/lang/php/README.md +43 -0
- package/core/tools/lang/php/install.sh +79 -0
- package/core/tools/lang/python/README.md +43 -0
- package/core/tools/lang/python/install.sh +79 -0
- package/core/tools/lang/rust/README.md +43 -0
- package/core/tools/lang/rust/install.sh +79 -0
- package/core/tools/npm/all.sh +67 -0
- package/core/tools/npm/live-server/README.md +43 -0
- package/core/tools/npm/live-server/install.sh +95 -0
- package/core/tools/npm/localtunnel/README.md +43 -0
- package/core/tools/npm/localtunnel/install.sh +111 -0
- package/core/tools/npm/markserv/README.md +43 -0
- package/core/tools/npm/markserv/install.sh +94 -0
- package/core/tools/npm/ncu/README.md +43 -0
- package/core/tools/npm/ncu/install.sh +94 -0
- package/core/tools/npm/nestjs/README.md +43 -0
- package/core/tools/npm/nestjs/install.sh +94 -0
- package/core/tools/npm/ngrok/README.md +44 -0
- package/core/tools/npm/ngrok/install.sh +94 -0
- package/core/tools/npm/prettier/README.md +43 -0
- package/core/tools/npm/prettier/install.sh +94 -0
- package/core/tools/npm/psqlformat/README.md +43 -0
- package/core/tools/npm/psqlformat/install.sh +94 -0
- package/core/tools/npm/turbopack/README.md +8 -0
- package/core/tools/npm/turbopack/install.sh +41 -0
- package/core/tools/npm/typescript/README.md +43 -0
- package/core/tools/npm/typescript/install.sh +94 -0
- package/core/tools/npm/vercel/README.md +43 -0
- package/core/tools/npm/vercel/install.sh +94 -0
- package/core/tools/shell/all.sh +67 -0
- package/core/tools/shell/better-npm/README.md +43 -0
- package/core/tools/shell/better-npm/install.sh +85 -0
- package/core/tools/shell/fzf-tab/README.md +44 -0
- package/core/tools/shell/fzf-tab/install.sh +85 -0
- package/core/tools/shell/history-substring/README.md +43 -0
- package/core/tools/shell/history-substring/install.sh +85 -0
- package/core/tools/shell/powerlevel10k/README.md +43 -0
- package/core/tools/shell/powerlevel10k/install.sh +85 -0
- package/core/tools/shell/you-should-use/README.md +43 -0
- package/core/tools/shell/you-should-use/install.sh +85 -0
- package/core/tools/shell/zsh-autopair/README.md +44 -0
- package/core/tools/shell/zsh-autopair/install.sh +85 -0
- package/core/tools/shell/zsh-autosuggestions/README.md +43 -0
- package/core/tools/shell/zsh-autosuggestions/install.sh +85 -0
- package/core/tools/shell/zsh-completions/README.md +43 -0
- package/core/tools/shell/zsh-completions/install.sh +85 -0
- package/core/tools/shell/zsh-defer/README.md +43 -0
- package/core/tools/shell/zsh-defer/install.sh +85 -0
- package/core/tools/shell/zsh-syntax-highlighting/README.md +43 -0
- package/core/tools/shell/zsh-syntax-highlighting/install.sh +72 -0
- package/core/tools/ui/all.sh +61 -0
- package/core/tools/ui/banner/README.md +42 -0
- package/core/tools/ui/banner/install.sh +151 -0
- package/core/tools/ui/cursor/README.md +42 -0
- package/core/tools/ui/cursor/install.sh +58 -0
- package/core/tools/ui/extra-keys/README.md +43 -0
- package/core/tools/ui/extra-keys/install.sh +62 -0
- package/core/tools/ui/font/README.md +43 -0
- package/core/tools/ui/font/install.sh +63 -0
- package/core/utils/banner.sh +519 -0
- package/core/utils/bootstrap.sh +25 -0
- package/core/utils/colors.sh +31 -0
- package/core/utils/dialogrc +30 -0
- package/core/utils/env.sh +53 -0
- package/core/utils/log.sh +598 -0
- package/install.sh +272 -0
- 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
|