Commit graph

42 commits

Author SHA1 Message Date
30d4df23fa Sync dsh-netxops 0.1.41 with NetX async exec jobs and capability hints.
Add netx__getNeExecJob, route execManagedNe async to /exec-jobs, and document getManagedNe.capability for agents.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-06 18:32:17 +08:00
4dd628b7cc Fix bizMonitor tool results failing DSH lossless JSON (strip undefined holes).
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-20 15:35:08 +08:00
b235957c34 Add listBizMonitorBatches so agents can discover cutover/collect batch and run ids.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-20 15:26:46 +08:00
c1d07f7509 Add listBizMonitors catalog tool so agents can discover projects/tasks without an id.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-20 15:04:14 +08:00
5a2ab85d14 Track biz-monitor host tool bundle artifact.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-19 22:49:03 +08:00
0934e10409 Add bizMonitor host tools for cutover analysis via netx REST (0.1.40).
Expose getBizMonitor* / getBizCollect* on the Ops preset with skill netx-biz-monitor; keep tooling in netxops instead of netx-mcp.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-19 22:48:42 +08:00
f7801db296 Mount /netxops RPC on webServer for DSH 0.1.5 (0.1.39).
connection.rpc.handle no longer registers custom channels when webServer is not on the connection ctx, which left the KB settings badge stuck on unconfigured.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-16 14:39:55 +08:00
1b4c402723 Fix KB settings badge stuck on unconfigured after bind (0.1.38).
Reload Host kbRoot after browse/save so the status badge tracks the live package instead of a stale snapshot.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-16 12:50:04 +08:00
0f31a6648a Add refs product KB and dual-plane local evolution (0.1.37).
Site writes device profiles/inventory via kbWriteRef; persona and kb-context require read-then-write refs plus memories for reusable experience.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-16 06:42:22 +08:00
62d3f565ce Fix KB local tool schemas so Netx Ops preset can mount.
DSH defineTool expects a flat parameter map; full JSON Schema objects broke hosts with KB configured (0.1.35).

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-16 00:39:40 +08:00
da08c38949 Fix key-alarm IM delivery blocked by DSH session sink.
Run session and WhatsApp/IM sinks in parallel so a failing or slow sticky session no longer skips proactive IM delivery (0.1.34).

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 22:37:18 +08:00
3a731389f0 Add KB local write tools and align Netx Ops with standard preset.
Host-side netx__kb* tools jail create/update/delete under paths.local memories/drafts/suggestions; Netx Ops agent.cordis.yml now includes full standard capability rows plus ops tools.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 21:43:41 +08:00
8360c2e4fc Forbid bilingual glosses in forced reply language.
Stop English replies from keeping Chinese parentheticals like failure (失联).

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 20:52:03 +08:00
91f2e9a5c8 Fix reply language ignored when user writes Chinese.
Strengthen Host prompt injection with a per-step reply reminder, read live settings, and stop persona from forcing follow-user language.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 20:38:51 +08:00
d52c05e774 Add Host-global thinking and reply language controls.
Inject systemPrompt sections from Netx Ops settings so every preset can switch CoT and final-reply language without changing API/alarm lang.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 20:15:54 +08:00
53c47fbc6a Register MANIFEST paths.localSkills alongside pack _skills.
Parse packaging-generated paths and load each local_skills/*/SKILL.md with the same hasSkills toggles and provider as shared packs.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 08:23:05 +08:00
2caa3c98d7 Register KB pack skills from operator-subset _skills (P2).
Load hasSkills packs onto preset/public planes with groupKb toggles; unify content has* keys and keep netx-ops pure.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-13 11:46:31 +08:00
fcdd11ac59 Fix kbRoot browse ignoring Typert Result from directoryPicker.pick.
Unwrap { ok, value } so the chosen folder path lands in the field and auto-saves.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-13 11:22:58 +08:00
f64f1279e7 Fix knowledge-base browse feedback and accept MANIFEST.json paths.
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>
2026-09-13 11:13:29 +08:00
de7c6a0c4b Add operator-subset knowledge base wiring for Netx Ops P1.
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>
2026-09-13 10:39:28 +08:00
e6f9d062ed Identify alarm-push clients to NetX with hostname labels.
Send client=netxops@host on hub auth so NetX can distinguish multiple DSH subscribers.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 16:57:42 +08:00
a4993b2407 Add Netx Ops i18n and promote settings to a dedicated section.
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>
2026-09-09 22:09:47 +08:00
5598b3661c Harden alarm push auth and session export ZIP paths.
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>
2026-09-06 14:45:35 +08:00
92279c1220 Add session bulk export and multi-target IM alarm delivery.
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>
2026-09-06 14:11:54 +08:00
63f88bdf6c Merge nms+common into ops so login questions load execManagedNe.
One capability group now ships netx-ops (alarms + managed CLI + paths); keep tools-nms/common as aliases.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-06 02:11:02 +08:00
6e591be2b5 Fix Netx Ops tool schemas for DSH additionalProperties requirement.
positions[] items and layout params objects now declare additionalProperties explicitly.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-06 01:52:51 +08:00
3c9a383071 Ship capability groups (nms/common/topology) with shared netx skills.
One group maps to one skill and tools-*; rename NMS tools to *Nms*; sync playbooks from netx/skills.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-06 01:46:07 +08:00
83c3796fbb Add optional IM sink for key alarms (0.1.17).
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>
2026-09-05 21:36:50 +08:00
e8b7d7331f Show key-alarm WSS status on the Netx Ops Plugins card (0.1.16).
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>
2026-09-05 21:08:14 +08:00
12f7018103 Add key-alarm push: reuse URL/token, dial netx hub, sticky DSH session (0.1.15).
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>
2026-09-05 20:50:51 +08:00
027f83dd00 Fix empty Bearer on netx__* by waiting for credentials.
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>
2026-09-05 02:11:20 +08:00
02cc68bee3 Ship lib/agent-tools.js for Ops-scoped tool mounts.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-05 00:11:36 +08:00
0f30d92302 Scope netx__* tools to the Netx Ops preset only.
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>
2026-09-05 00:11:15 +08:00
ed219842d3 Call netx REST from native netx__* tools.
Drop the local python -m netx_mcp / mcp-client path so terminal users only need API URL + token.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-04 23:38:24 +08:00
5179eb74b1 Auto-install the Netx Ops agent preset on plugin activate.
Copy presets into ~/.dsh/.agent-presets (not a Windows junction — DSH discovery skips those) so dsh plugin add alone surfaces Custom → Netx Ops with skills.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-04 23:09:58 +08:00
4854101afd Support both dsh settings APIs for the netxops namespace.
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>
2026-09-04 22:54:33 +08:00
ca91031fd0 Register settings via installSettingsSection for shipped dsh.
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>
2026-09-04 22:51:50 +08:00
99ded2fe2d Do not hard-inject remote.credentials on shipped dsh.
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>
2026-09-04 22:43:46 +08:00
69a4820369 Stop requiring dsh-client-store in the Plugins card bundle.
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>
2026-09-04 22:38:52 +08:00
e45657b1ee Fix client bundle to use react/jsx-runtime for DSH ModuleLoader.
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>
2026-09-04 22:36:01 +08:00
0040de078c Ship prebuilt lib/index.js so GitHub installs load under node_modules.
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>
2026-09-04 22:32:01 +08:00
fd1a86ec2f Add Netx Ops Plugins settings card for URL and token.
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>
2026-09-04 22:16:14 +08:00