aboutsummaryrefslogtreecommitdiff
path: root/modules/core
diff options
context:
space:
mode:
Diffstat (limited to 'modules/core')
-rw-r--r--modules/core/module-loader.js3
-rw-r--r--modules/core/module-neural-vfs.js6
-rw-r--r--modules/core/terminal.js2
3 files changed, 7 insertions, 4 deletions
diff --git a/modules/core/module-loader.js b/modules/core/module-loader.js
index 9b8d892..f0d3f4c 100644
--- a/modules/core/module-loader.js
+++ b/modules/core/module-loader.js
@@ -15,6 +15,7 @@
'module-fs.js',
'module-ollama.js',
'module-my.js',
+ 'module-modmgr.js',
'module-searxng.js',
'module-servermon.js',
'module-config.js',
@@ -104,7 +105,7 @@
window.__moduleLoaderReload = reloadWithSelection;
- const LATEST_VER = '2026-06-08-v4.5.25';
+ const LATEST_VER = '2026-06-09-v4.5.27';
const CACHE = '?v=' + LATEST_VER;
const stored = localStorage.getItem('webx11_cache_ver');
if (stored !== LATEST_VER) {
diff --git a/modules/core/module-neural-vfs.js b/modules/core/module-neural-vfs.js
index 59618c8..bdf1ffb 100644
--- a/modules/core/module-neural-vfs.js
+++ b/modules/core/module-neural-vfs.js
@@ -2,8 +2,10 @@ class NeuralVFSModule {
constructor() {
this.commands = {};
this.commandsMeta = {
- 'nvfs-index': { argType: 'file' }, 'nvfs-resolve': { argType: 'file' },
- 'nvfs-tree': { argType: 'file' }, 'nvfs-alias': { argType: 'file' },
+ 'nvfs-index': { argType: 'file' }, 'nvfs-status': { argType: 'none' },
+ 'nvfs-resolve': { argType: 'file' },
+ 'nvfs-tree': { argType: 'file' }, 'nvfs-config': { argType: 'file' },
+ 'nvfs-alias': { argType: 'file' },
'nvfs-sync': { argType: 'file' },
};
this.terminal = null;
diff --git a/modules/core/terminal.js b/modules/core/terminal.js
index 3651713..87636d6 100644
--- a/modules/core/terminal.js
+++ b/modules/core/terminal.js
@@ -10,7 +10,7 @@
this.destructiveCmds = new Set(['delete','del','write','save','overwrite','format','kill','stop','shutdown','reboot']);
this.systemCmds = new Set(['reboot','shutdown','format','kill','halt','poweroff']);
this.suspiciousFlags = new Set(['--dump','--execute','--eval','--exec','--shell','--script']);
- this.whitelist = new Set(['help','clear','ls','cat','pwd','whoami','df','free','top','ps','echo','date','env','history','find','grep','tree','head','tail','wc','sort','du','diff','which','hostname','cal','basename','dirname','yes','seq','cut','uniq','expand','printf','base64','sleep','ll','h','mem','status','health-check','system-health','alias','unalias','modules','listmods','modules-list']);
+ this.whitelist = new Set(['help','clear','ls','cat','pwd','whoami','df','free','top','ps','echo','date','env','history','find','grep','tree','head','tail','wc','sort','du','diff','which','hostname','cal','basename','dirname','yes','seq','cut','uniq','expand','printf','base64','sleep','ll','h','mem','status','health-check','system-health','alias','unalias','modules','listmods','modules-list','nvfs-index','nvfs-status','nvfs-resolve','nvfs-tree','nvfs-config','nvfs-alias','nvfs-sync','floating-add','floating-remove','floating-list','floating-pos','floating-clear','floating-toggle']);
// Load persisted overrides from localStorage
try { const d = localStorage.getItem('webx11_security_destructive'); if(d){JSON.parse(d).forEach(c=>this.destructiveCmds.add(c));} }catch(e){}
try { const s = localStorage.getItem('webx11_security_system'); if(s){JSON.parse(s).forEach(c=>this.systemCmds.add(c));} }catch(e){}