Browse no longer fails silently, falls back to Host directoryPicker RPC, and resolve treats a MANIFEST.json file path as its parent package root.
Co-authored-by: Cursor <cursoragent@cursor.com>
Locate and validate MANIFEST under kbRoot, show anti-mixup status in settings, and inject KB_* env plus kb-context so sessions degrade to pure netx when unset.
Co-authored-by: Cursor <cursoragent@cursor.com>
Localize alarm prompts and UI reason codes for zh/en, and restyle the settings page like uds-auth as its own settings.section.
Co-authored-by: Cursor <cursoragent@cursor.com>
Ignore hub alarms before auth-ok, stop reconnecting after auth-fail, serialize sticky delivery with dispose on reset, and sanitize ZIP entry names against path traversal.
Co-authored-by: Cursor <cursoragent@cursor.com>
Ops can download every Host session as a ZIP for HQ analysis, fan key alarms to multiple WhatsApp targets, and the Plugins card copy stays short.
Co-authored-by: Cursor <cursoragent@cursor.com>
One capability group now ships netx-ops (alarms + managed CLI + paths); keep tools-nms/common as aliases.
Co-authored-by: Cursor <cursoragent@cursor.com>
Plugins card gains an alarm-push toggle; when enabled, netxops subscribes outbound and followups a Netx Ops session without requiring im/WhatsApp.
Co-authored-by: Cursor <cursoragent@cursor.com>