@mmmbuto/masix 0.2.5 → 0.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,13 +1,13 @@
1
1
  # @mmmbuto/masix
2
2
 
3
- Scoped Termux package for MasiX.
3
+ Official Termux package for MasiX (MIT).
4
4
 
5
- MasiX is a Rust-first messaging automation runtime inspired by OpenClaw, focused on stable mobile execution.
5
+ MasiX is an AI-friendly modular assistant runtime in Rust, optimized for smartphone (Termux/Android) and compatible with Linux/macOS.
6
6
 
7
7
  ## Function Summary
8
8
 
9
9
  - Telegram bot automation with interactive inline menus
10
- - Real MCP tool-calling flow through OpenAI-compatible providers
10
+ - Real MCP tool-calling flow through API-compatible endpoints
11
11
  - Natural-language reminder scheduling (cron persistence)
12
12
  - Cron scope isolation per bot/account (`account_tag`)
13
13
  - Workdir isolation per Telegram account
@@ -15,8 +15,8 @@ MasiX is a Rust-first messaging automation runtime inspired by OpenClaw, focused
15
15
  - Termux wake lock control (`masix termux wake on|off|status`)
16
16
  - Guarded command execution (`/exec`, `/termux`) with allowlists
17
17
  - Termux boot automation (`masix termux boot enable|disable|status`)
18
- - Optional WhatsApp and SMS integrations
19
18
  - Optional local STT via whisper.cpp (`masix config stt`)
19
+ - Optional modules can be installed from server catalog or local `.pkg`
20
20
  - SOUL.md startup memory context
21
21
  - Startup auto-update check/apply with configurable toggle in `config.toml` (`[updates]`)
22
22
 
@@ -33,8 +33,9 @@ masix --help
33
33
 
34
34
  ```bash
35
35
  masix config init
36
- # edit ~/.config/masix/config.toml
36
+ masix config validate
37
37
  masix start
38
+ masix status
38
39
  ```
39
40
 
40
41
  ## Useful Commands
@@ -56,7 +57,7 @@ masix stats
56
57
 
57
58
  - `/cron ...`, `/cron list`, `/cron cancel <id>`
58
59
  - `/exec <allowlisted-command>`
59
- - `/termux info|battery|cmd <termux-command>|boot on|off|status`
60
+ - `/termux ...`
60
61
 
61
62
  ## Notes
62
63
 
@@ -66,9 +67,18 @@ masix stats
66
67
 
67
68
  ## Full Documentation
68
69
 
69
- - Repository README: https://github.com/DioNanos/masix
70
- - Detailed guide: https://github.com/DioNanos/masix/blob/main/docs/USER_GUIDE.md
71
- - Local llama.cpp endpoint guide: https://github.com/DioNanos/masix/blob/main/docs/TERMUX_LLAMA_CPP_LOCAL_ENDPOINT.md
70
+ - Repository README: https://github.com/DioNanos/MasiX
71
+ - Detailed guide: https://github.com/DioNanos/MasiX/blob/main/docs/USER_GUIDE.md
72
+ - Commands reference: https://github.com/DioNanos/MasiX/blob/main/docs/COMMANDS_REFERENCE.md
73
+ - Homebrew tap (Linux/macOS formula): https://github.com/DioNanos/homebrew-masix
74
+ - Local llama.cpp endpoint guide: https://github.com/DioNanos/MasiX/blob/main/docs/TERMUX_LLAMA_CPP_LOCAL_ENDPOINT.md
75
+
76
+ ## Branding
77
+
78
+ <p>
79
+ Copyright (c) 2026 WellaNet.Dev<br>
80
+ Made in Italy 🇮🇹
81
+ </p>
72
82
 
73
83
  ## License
74
84
 
package/install.js CHANGED
@@ -4,6 +4,7 @@ const { execSync } = require('child_process');
4
4
 
5
5
  const BINARY_NAME = 'masix';
6
6
  const PACKAGE_BIN_PATH = path.join(__dirname, 'prebuilt', BINARY_NAME);
7
+ const PREBUILT_DIR = path.join(__dirname, 'prebuilt');
7
8
 
8
9
  // Check if running in Termux
9
10
  const isTermux = process.env.TERMUX_VERSION !== undefined ||
@@ -14,12 +15,22 @@ if (!isTermux) {
14
15
  console.warn(' Installation may fail on other platforms.');
15
16
  }
16
17
 
17
- // Check if prebuilt binary exists
18
- const prebuiltPath = path.join(__dirname, 'prebuilt', BINARY_NAME);
18
+ function hasValidElfPrebuilt(binaryPath) {
19
+ if (!fs.existsSync(binaryPath)) return false;
20
+ try {
21
+ const fd = fs.openSync(binaryPath, 'r');
22
+ const buf = Buffer.alloc(4);
23
+ fs.readSync(fd, buf, 0, 4, 0);
24
+ fs.closeSync(fd);
25
+ return buf[0] === 0x7f && buf[1] === 0x45 && buf[2] === 0x4c && buf[3] === 0x46; // ELF
26
+ } catch {
27
+ return false;
28
+ }
29
+ }
19
30
 
20
- if (fs.existsSync(prebuiltPath)) {
21
- fs.chmodSync(prebuiltPath, 0o755);
22
- console.log(`✅ Using packaged prebuilt binary: ${prebuiltPath}`);
31
+ if (hasValidElfPrebuilt(PACKAGE_BIN_PATH)) {
32
+ fs.chmodSync(PACKAGE_BIN_PATH, 0o755);
33
+ console.log(`✅ Using packaged prebuilt binary: ${PACKAGE_BIN_PATH}`);
23
34
  } else {
24
35
  console.log('🔨 No prebuilt binary found. Building from source...');
25
36
  console.log(' This requires Rust to be installed in Termux.');
@@ -37,6 +48,7 @@ if (fs.existsSync(prebuiltPath)) {
37
48
  }
38
49
 
39
50
  if (fs.existsSync(sourceBinary)) {
51
+ fs.mkdirSync(PREBUILT_DIR, { recursive: true });
40
52
  fs.copyFileSync(sourceBinary, PACKAGE_BIN_PATH);
41
53
  fs.chmodSync(PACKAGE_BIN_PATH, 0o755);
42
54
  console.log(`✅ Binary built and installed at: ${PACKAGE_BIN_PATH}`);
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mmmbuto/masix",
3
- "version": "0.2.5",
4
- "description": "MIT Messaging Agent for Termux - Telegram, WhatsApp, SMS with MCP + Cron",
3
+ "version": "0.3.2",
4
+ "description": "Termux-first MIT automation runtime (Telegram, MCP, Cron) with optional in-core STT",
5
5
  "main": "check-update.js",
6
6
  "files": [
7
7
  "README.md",
@@ -21,21 +21,20 @@
21
21
  "keywords": [
22
22
  "termux",
23
23
  "telegram",
24
- "whatsapp",
25
- "sms",
26
24
  "mcp",
27
25
  "cron",
28
26
  "ai",
29
27
  "messaging",
30
- "android"
28
+ "android",
29
+ "stt"
31
30
  ],
32
31
  "author": "Davide A. Guglielmi <dev@mmmbuto.com>",
33
32
  "license": "MIT",
34
33
  "repository": {
35
34
  "type": "git",
36
- "url": "git+https://github.com/DioNanos/masix.git"
35
+ "url": "git+https://github.com/DioNanos/MasiX.git"
37
36
  },
38
- "homepage": "https://github.com/DioNanos/masix#readme",
37
+ "homepage": "https://github.com/DioNanos/MasiX#readme",
39
38
  "publishConfig": {
40
39
  "access": "public"
41
40
  },
package/prebuilt/masix CHANGED
Binary file