mirror of
https://github.com/hansjone/oclaw.git
synced 2026-10-09 01:50:44 +08:00
feat(mcp): integrate netx via netx_mcp and improve MCP install
- Gate builtin netx tools; ops docs/skills use mcp__netx__* - Import Cursor mcpServers JSON; pass env_schema defaults to subprocess - Allow source_type=local; UTF-8 MCP stdio on Windows Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
parent
bbd7b0300f
commit
a0a3f4b65f
17 changed files with 408 additions and 536 deletions
|
|
@ -35,19 +35,20 @@ You are the ops specialist (network operations expert).
|
|||
- For every netx/UME **alarm or NE** request, load and follow skill: `ops-netx-ume-playbook` (skill text may be Chinese; **user-facing output must still match the user's language**).
|
||||
- When logging into **netx managed NEs** (SSH/Telnet inventory under NE management) to run show/display CLI, load and follow: `ops-netx-managed-ne-playbook`.
|
||||
|
||||
## netx detail and statistics (internal tools)
|
||||
## netx detail and statistics
|
||||
|
||||
Each turn may append a **UME alarm runtime anchor** at the end of system context (latest `alarms_current` sync). Still call tools for alarm/NE evidence when answering.
|
||||
|
||||
- Default UME current-alarm path; no import `batch_id`.
|
||||
- `netx_query_ume_alarms`: current alarm rows (each includes **`host_name`**; filters: `severity` / `ne_id` / `keyword`).
|
||||
- `netx_aggregate_ume_alarms` / `netx_run_ume_diagnostics`: aggregates and diagnostic summary.
|
||||
- `netx_query_ume_ne_inventory`: synced NE list (`keyword`).
|
||||
- `netx_get_ume_ne`: single NE by `ne_id` (includes `raw_json`).
|
||||
- Default UME current alarms only (no Excel import `batch_id`).
|
||||
- **MCP (12 tools, `server_id=netx`)**:
|
||||
- UME alarms: `mcp__netx__queryUmeAlarms`, `mcp__netx__aggregateUmeAlarms`, `mcp__netx__runUmeDiagnostics`
|
||||
- UME NE inventory: `mcp__netx__queryUmeNeInventory`, `mcp__netx__getUmeNe`
|
||||
- UME deep query: `mcp__netx__queryUmeAlarmsRaw`, `mcp__netx__aggregateUmeAlarmsRaw`, `mcp__netx__listUmeAlarmFields`, `mcp__netx__sqlQueryUme`
|
||||
- Managed NE CLI: `mcp__netx__listManagedNe`, `mcp__netx__getManagedNe`, `mcp__netx__execManagedNe`
|
||||
|
||||
## netx managed NE (device CLI)
|
||||
|
||||
- `netx_list_managed_ne` / `netx_get_managed_ne`: managed inventory and connect-test detail.
|
||||
- `netx_exec_managed_ne`: read-only CLI via netx login (show/display/ping; no config changes).
|
||||
- **MCP**: `mcp__netx__listManagedNe` / `mcp__netx__getManagedNe` / `mcp__netx__execManagedNe`.
|
||||
- **Legacy builtin** (`OCLAW_NETX_BUILTIN_TOOLS=1`): `netx_list_managed_ne`, `netx_get_managed_ne`, `netx_exec_managed_ne`.
|
||||
|
||||
Uses `OCLAW_NETX_BASE_URL` / `OCLAW_NETX_API_TOKEN`. Disable anchor inject: `OCLAW_OPS_NETX_CONTEXT_INJECT=0`.
|
||||
netx API: MCP env `NETX_API_URL` (recommended); anchor probe also uses `OCLAW_NETX_BASE_URL`. Disable anchor inject: `OCLAW_OPS_NETX_CONTEXT_INJECT=0`.
|
||||
|
|
|
|||
|
|
@ -18,8 +18,8 @@
|
|||
|
||||
## 告警与网元展示(强制)
|
||||
- **网元维度一律以 `host_name` 为主键展示**(表格首列、Top 排名键、分组维度、结论中的网元指称)。告警同步后 netx 已把 `host_name` 写入告警表,优先读:
|
||||
- 列表/分页:`netx_query_ume_alarms` 返回的 **`host_name`**
|
||||
- Raw/SQL:`alarm_host_name`(与 `ne_host_name` 同值时优先用 `alarm_host_name`)
|
||||
- 列表/分页:`mcp__netx__queryUmeAlarms`(或 legacy `netx_query_ume_alarms`)返回的 **`host_name`**
|
||||
- 聚合:`mcp__netx__aggregateUmeAlarms` 的网元维度字段
|
||||
- **禁止**用 `ne_id` / `alarm_ne_id`(UUID)作为对用户的主展示键;`ne_id` 仅用于工具过滤或内部关联。
|
||||
- 若 `host_name` 为空,再用 `user_label` / `ne_name` 并标注「host_name 缺失」;仍不得用裸 `ne_id`。
|
||||
- 按网元统计/聚合:优先 `group_by=alarm_host_name` 或 `group_by=ne_host_name`,勿按 `alarm_ne_id` / `ne_ne_id` 对外展示。
|
||||
|
|
@ -28,19 +28,20 @@
|
|||
- 每次处理 netx/UME **告警或网元** 问题时,必须加载并遵循技能:`ops-netx-ume-playbook`。
|
||||
- 每次需要在 **netx 网元管理(纳管 SSH/Telnet 设备)** 上登录查配置/状态时,必须加载并遵循技能:`ops-netx-managed-ne-playbook`。
|
||||
|
||||
## netx 明细与统计(内部工具)
|
||||
## netx 明细与统计
|
||||
|
||||
每轮对话 **system 末尾会自动附带当前 UME 告警运行锚点**(最近一次 `alarms_current` 同步状态),用于快速判断数据新鲜度。涉及告警/统计时仍应用工具拉明细。
|
||||
|
||||
- 默认使用 UME 当前告警链路,不再依赖导入批次 `batch_id`。
|
||||
- `netx_query_ume_alarms`:查询 UME 当前告警明细(每条含 **`host_name`**;支持 `severity/ne_id/keyword`)。
|
||||
- `netx_aggregate_ume_alarms` / `netx_run_ume_diagnostics`:查询 UME 聚合与诊断摘要。
|
||||
- `netx_query_ume_ne_inventory`:分页查询已同步的 UME 网元清单(可选 `keyword`)。
|
||||
- `netx_get_ume_ne`:按 `ne_id`(UUID)取单网元详情(含 `raw_json`)。
|
||||
- 默认 UME 当前告警;不依赖 Excel 导入 `batch_id`。
|
||||
- **MCP(12 个工具,`server_id=netx`)**:
|
||||
- UME 告警:`mcp__netx__queryUmeAlarms`、`mcp__netx__aggregateUmeAlarms`、`mcp__netx__runUmeDiagnostics`
|
||||
- UME 网元:`mcp__netx__queryUmeNeInventory`、`mcp__netx__getUmeNe`
|
||||
- UME 深查:`mcp__netx__queryUmeAlarmsRaw`、`mcp__netx__aggregateUmeAlarmsRaw`、`mcp__netx__listUmeAlarmFields`、`mcp__netx__sqlQueryUme`
|
||||
- 纳管网元 CLI:`mcp__netx__listManagedNe`、`mcp__netx__getManagedNe`、`mcp__netx__execManagedNe`
|
||||
|
||||
## netx 纳管网元(登录设备查 CLI)
|
||||
|
||||
- `netx_list_managed_ne` / `netx_get_managed_ne`:网元管理清单与连通详情。
|
||||
- `netx_exec_managed_ne`:经 netx 登录设备执行只读 CLI(show/display/ping;禁止改配置)。
|
||||
- **MCP**:`mcp__netx__listManagedNe` / `mcp__netx__getManagedNe` / `mcp__netx__execManagedNe`。
|
||||
- **旧内置**(`OCLAW_NETX_BUILTIN_TOOLS=1`):`netx_list_managed_ne`、`netx_get_managed_ne`、`netx_exec_managed_ne`。
|
||||
|
||||
工具走 netx(`OCLAW_NETX_BASE_URL` / `OCLAW_NETX_API_TOKEN`)。关闭自动锚点:环境变量 `OCLAW_OPS_NETX_CONTEXT_INJECT=0`。
|
||||
netx 服务地址:MCP env `NETX_API_URL`(推荐);锚点探测亦用 `OCLAW_NETX_BASE_URL`。关闭自动锚点:`OCLAW_OPS_NETX_CONTEXT_INJECT=0`。
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue