One capability group now ships netx-ops (alarms + managed CLI + paths); keep tools-nms/common as aliases.
Co-authored-by: Cursor <cursoragent@cursor.com>
Settings choose DSH session and/or WhatsApp via botId+targetId; onAlarm soft-calls ctx.dshIm.send when im is installed.
Co-authored-by: Cursor <cursoragent@cursor.com>
Host publishes connection phases over Connection RPC; the card polls and badges Connected / Reconnecting / Auth failed so operators need not curl logs.
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>
Inject credentials before publish, read the live token per HTTP request, and surface netx_token_missing instead of a silent 401.
Co-authored-by: Cursor <cursoragent@cursor.com>
Register tools from the preset standing mount so standard and other agents no longer see them without Ops skills.
Co-authored-by: Cursor <cursoragent@cursor.com>
0.1.1-rc.2 uses installSettingsSection; 0.1.2+ uses settings.installSection — detect at runtime so global and source dsh both boot.
Co-authored-by: Cursor <cursoragent@cursor.com>
SettingsProvider.installSection is not on 0.1.1-rc.2; without the standalone helper the netxops namespace never appears on the Plugins tab.
Co-authored-by: Cursor <cursoragent@cursor.com>
0.1.1-rc.2 remotes never mounts credentials; soft-inject unlocks the token field when available, otherwise point users at set-netx-token.
Co-authored-by: Cursor <cursoragent@cursor.com>
Shipped dsh web seed has no client-store entry; use a private snapshot store and only externalize platform seed modules.
Co-authored-by: Cursor <cursoragent@cursor.com>
The web shell only seeds jsx-runtime; Bun's default JSX emit left jsx-dev-runtime as an external and failed Plugins load.
Co-authored-by: Cursor <cursoragent@cursor.com>
Node refuses TypeScript stripping inside node_modules; point package main at the host bundle and document GitHub as the default install.
Co-authored-by: Cursor <cursoragent@cursor.com>
Path installs junction the checkout outside ~/.dsh/profiles/*/node_modules, so Node cannot see DSH peers; add link-dsh-peers scripts and document the one-time setup.
Co-authored-by: Cursor <cursoragent@cursor.com>
Ship the browser half so Settings → Plugins can configure apiUrl/lang/python and NETX_API_TOKEN without OS env vars.
Co-authored-by: Cursor <cursoragent@cursor.com>