omnish 2.1.8 → 2.1.9

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/CHANGELOG.md CHANGED
@@ -7,6 +7,17 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [2.1.9] - 2026-07-11
11
+
12
+ ### Added
13
+
14
+ - **Platform install script:** `https://platform.omnish.dev/action/install-omnish.sh` served from tunnel-relay; `platform.omnish.dev` in Caddy site block with `tunnel.omnish.dev`.
15
+
16
+ ### Changed
17
+
18
+ - **Install UX:** README, preinstall, and docs lead with platform installer one-liner; unpkg fallback retained. Installer shows banner, steps, and quick-start path to first `!` command.
19
+ - **`scripts/install-script-url.cjs`:** canonical public installer URL.
20
+
10
21
  ## [2.1.8] - 2026-07-11
11
22
 
12
23
  ### Changed
@@ -101,6 +112,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
101
112
 
102
113
  - Documentation and formatting updates across chat components and feature docs.
103
114
 
115
+ [2.1.9]: https://github.com/labKnowledge/omnish/compare/v2.1.8...v2.1.9
104
116
  [2.1.8]: https://github.com/labKnowledge/omnish/compare/v2.1.7...v2.1.8
105
117
  [2.1.7]: https://github.com/labKnowledge/omnish/compare/v2.1.6...v2.1.7
106
118
  [2.1.6]: https://github.com/labKnowledge/omnish/compare/v2.1.5...v2.1.6
package/README.md CHANGED
@@ -109,7 +109,13 @@ Names are alphanumeric plus `_`/`-`, max 32 characters; several names are reserv
109
109
 
110
110
  ## Install from npm
111
111
 
112
- **Requires Node.js 22.13+** (`node -v`).
112
+ **Recommended one command (works on old Node, VPS, macOS, Linux):**
113
+
114
+ ```bash
115
+ curl -fsSL https://platform.omnish.dev/action/install-omnish.sh | bash
116
+ ```
117
+
118
+ The installer upgrades Node when needed, installs build tools on Debian/Ubuntu, runs `npm install -g omnish`, and prints your next steps (`link` → `allow` → `start` → first `!` command).
113
119
 
114
120
  ### Already on Node 22.13+
115
121
 
@@ -120,15 +126,7 @@ omnish allow +YOUR_E164
120
126
  omnish run
121
127
  ```
122
128
 
123
- ### Old Node (VPS with apt Node 12, etc.)
124
-
125
- `npm install -g omnish` will fail on Node below 22.13 — that is expected. **Run the bootstrap installer instead** (upgrades Node, installs build tools on Debian/Ubuntu, then `npm install -g omnish`):
126
-
127
- ```bash
128
- curl -fsSL https://unpkg.com/omnish/contrib/install-omnish.sh | bash
129
- ```
130
-
131
- The script is published in the npm package (no GitHub clone required). If `npm install -g omnish` failed, the error message prints the same one-liner with your package version.
129
+ `npm install -g omnish` on Node below 22.13 will fail by design — use the installer above instead (do not fight `EBADENGINE` warnings on distro Node 12).
132
130
 
133
131
  **Single phone:** omnish runs on a PC or server; you link it like WhatsApp Web (one QR scan on your phone). See [Quick start — One phone with WhatsApp](docs/guides/quick-start.md#one-phone-with-whatsapp).
134
132
 
@@ -1,12 +1,28 @@
1
1
  #!/usr/bin/env bash
2
- # Bootstrap omnish install: ensure Node 22.13+, then npm install -g omnish.
3
- # Served from npm (unpkg) — see scripts/node-version.cjs readBootstrapInstallScriptUrl().
2
+ # omnish bootstrap installer — upgrades Node 22.13+ when needed, then npm install -g omnish.
3
+ # Canonical URL: https://platform.omnish.dev/action/install-omnish.sh
4
4
  set -euo pipefail
5
5
 
6
6
  OMNISH_NPM_SPEC="${OMNISH_NPM_SPEC:-omnish}"
7
7
  NODE_MAJOR="${OMNISH_NODE_MAJOR:-22}"
8
8
  NVM_INSTALL_URL="${NVM_INSTALL_URL:-https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh}"
9
9
 
10
+ banner() {
11
+ cat <<'EOF'
12
+
13
+ omnish — allowlisted inbox → your real shell
14
+ ────────────────────────────────────────────
15
+ WhatsApp / Telegram / 20+ channels. No AI layer.
16
+ Commands run on YOUR machine. You control the allowlist.
17
+
18
+ EOF
19
+ }
20
+
21
+ step() {
22
+ echo ""
23
+ echo "▸ $1"
24
+ }
25
+
10
26
  need() {
11
27
  command -v "$1" >/dev/null 2>&1 || {
12
28
  echo "error: required command not found: $1" >&2
@@ -36,22 +52,33 @@ current_node() {
36
52
 
37
53
  install_omnish() {
38
54
  need npm
39
- echo ""
40
- echo "Installing ${OMNISH_NPM_SPEC} with Node $(node -v) …"
55
+ step "Installing omnish CLI (npm install -g ${OMNISH_NPM_SPEC}) …"
41
56
  npm install -g "${OMNISH_NPM_SPEC}"
42
57
  echo ""
43
- echo "Done. Next steps:"
44
- echo " omnish --version"
45
- echo " omnish link # WhatsApp QR or --tg for Telegram"
46
- echo " omnish allow +E164 # your phone number"
47
- echo " omnish start"
58
+ if command -v omnish >/dev/null 2>&1; then
59
+ echo "omnish $(omnish --version 2>/dev/null || echo 'installed')"
60
+ else
61
+ echo "omnish installed (reopen shell if omnish not found)"
62
+ fi
63
+ echo ""
64
+ cat <<'EOF'
65
+ You're ready. Run these next (≈2 minutes to first command):
66
+
67
+ omnish link Link WhatsApp (QR) or Telegram (--tg <token>)
68
+ omnish allow +E164 Allow your phone number (shell access = password)
69
+ omnish start Run the gateway in the background
70
+
71
+ Then message yourself: !pwd or !ls
72
+
73
+ Docs: https://omnish.dev · Help: omnish --help
74
+ EOF
48
75
  }
49
76
 
50
77
  ensure_build_deps() {
51
78
  if ! is_debian_ubuntu; then
52
79
  return 0
53
80
  fi
54
- echo "Installing build tools for native modules (better-sqlite3, node-pty) …"
81
+ step "Installing build tools (better-sqlite3, node-pty native modules) …"
55
82
  export DEBIAN_FRONTEND=noninteractive
56
83
  apt-get update -qq
57
84
  apt-get install -y build-essential python3 curl ca-certificates
@@ -68,7 +95,7 @@ load_nvm() {
68
95
 
69
96
  try_nvm() {
70
97
  if load_nvm; then
71
- echo "Using nvm to install Node ${NODE_MAJOR} and set default …"
98
+ step "Upgrading Node via nvm (${NODE_MAJOR}, set as default) …"
72
99
  nvm install "${NODE_MAJOR}"
73
100
  nvm alias default "${NODE_MAJOR}"
74
101
  nvm use default
@@ -79,7 +106,7 @@ try_nvm() {
79
106
 
80
107
  try_fnm() {
81
108
  if command -v fnm >/dev/null 2>&1; then
82
- echo "Using fnm to install Node ${NODE_MAJOR} and set default …"
109
+ step "Upgrading Node via fnm (${NODE_MAJOR}) …"
83
110
  fnm install "${NODE_MAJOR}"
84
111
  fnm default "${NODE_MAJOR}"
85
112
  eval "$(fnm env)"
@@ -93,7 +120,7 @@ try_nodesource() {
93
120
  return 1
94
121
  fi
95
122
  need curl
96
- echo "Using NodeSource to install Node ${NODE_MAJOR}.x (replaces old apt node) …"
123
+ step "Upgrading Node via NodeSource ${NODE_MAJOR}.x (replaces old apt node) …"
97
124
  curl -fsSL "https://deb.nodesource.com/setup_${NODE_MAJOR}.x" | bash -
98
125
  apt-get install -y nodejs
99
126
  hash -r 2>/dev/null || true
@@ -102,10 +129,11 @@ try_nodesource() {
102
129
 
103
130
  install_nvm() {
104
131
  need curl
105
- echo "nvm not found installing nvm …"
132
+ step "Installing nvm, then Node ${NODE_MAJOR} …"
106
133
  curl -fsSL "${NVM_INSTALL_URL}" | bash
107
134
  load_nvm || {
108
- echo "error: nvm install finished but nvm.sh is missing. Open a new shell and re-run this script." >&2
135
+ echo "error: nvm install finished but nvm.sh is missing. Open a new shell and re-run:" >&2
136
+ echo " curl -fsSL https://platform.omnish.dev/action/install-omnish.sh | bash" >&2
109
137
  exit 1
110
138
  }
111
139
  nvm install "${NODE_MAJOR}"
@@ -137,11 +165,22 @@ Automatic upgrade failed. Pick one path:
137
165
  Official installers:
138
166
  https://nodejs.org/en/download
139
167
 
168
+ Re-run the guided installer anytime:
169
+ curl -fsSL https://platform.omnish.dev/action/install-omnish.sh | bash
170
+
140
171
  EOF
141
172
  }
142
173
 
143
174
  main() {
144
- echo "omnish installer — Node $(current_node) (need 22.13+)"
175
+ banner
176
+ step "Checking Node.js (need 22.13+, you have $(current_node))"
177
+
178
+ if command -v omnish >/dev/null 2>&1 && command -v node >/dev/null 2>&1 && node_version_ok; then
179
+ echo "omnish is already installed."
180
+ omnish --version 2>/dev/null || true
181
+ echo "To upgrade: npm install -g omnish@latest"
182
+ exit 0
183
+ fi
145
184
 
146
185
  if command -v node >/dev/null 2>&1 && node_version_ok; then
147
186
  install_omnish
Binary file
Binary file