{"id":"2eff26e4-510f-481c-96e3-79f47c1b2d2f","entityType":"agent","slug":"clawhub-liuwei120-5gc-automation","name":"5GC Automation","canonicalUrl":"https://www.xpersona.co/agent/clawhub-liuwei120-5gc-automation","canonicalPath":"/agent/clawhub-liuwei120-5gc-automation","generatedAt":"2026-10-11T10:52:22.698Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-10-11T06:52:24.292Z","emptyReason":null},"description":"5GC Web仪表自动化技能，支持AMF/UDM/AUSF/SMF/PGW-C/UPF/PGW-U/GNB/UE/PCF/NRF/QoS/TC/PCC/smpolicy的批量添加与编辑及PCF默认规则一键配置 Skill: 5GC Automation Owner: liuwei120 Summary: 5GC Web仪表自动化技能，支持AMF/UDM/AUSF/SMF/PGW-C/UPF/PGW-U/GNB/UE/PCF/NRF/QoS/TC/PCC/smpolicy的批量添加与编辑及PCF默认规则一键配置 Tags: latest:1.0.0 Version history: v1.0.0 | 2026-04-27T08:28:16.152Z | user Initial: 5GC AMF/PCF/SMF/UPF/NRF/AUSF/UDM automation via Flex仪表 Web UI Archive index: Archive v1.0.0: 13 files, 45767 bytes Files: scripts/5gc.js (10993b), scripts/amf-add-skill.js (10648b),","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 1.1K downloads reported by the source. Last updated 10/11/2026.","installCommand":"clawhub skill install s175cct37w2xddkhpg3rgv55en83gx73:5gc-automation","sourceUrl":"https://clawhub.ai/liuwei120/5gc-automation","homepage":"https://clawhub.ai/liuwei120/skills/5gc-automation","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/liuwei120/5gc-automation","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/liuwei120/skills/5gc-automation","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":61,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"5GC Web仪表自动化技能，支持AMF/UDM/AUSF/SMF/PGW-C/UPF/PGW-U/GNB/UE/PCF/NRF/QoS/TC/PCC/smpolicy的批量添加与编辑及PCF默认规则一键配置 Skill: 5GC Automation Owner: liuwei120 Summary: 5GC Web"},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-11T06:52:24.292Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-11T06:52:24.292Z","emptyReason":null},"stars":null,"forks":null,"downloads":1130,"packageName":null,"latestVersion":"1.0.0","tractionLabel":"1.1K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-11T06:52:24.223Z","emptyReason":null},"lastUpdatedAt":"2026-10-11T06:52:24.292Z","lastCrawledAt":"2026-10-11T06:52:24.223Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-12T06:52:24.223Z","lastVerifiedAt":null,"highlights":[{"version":"1.0.0","createdAt":"2026-04-27T08:28:16.152Z","changelog":"Initial: 5GC AMF/PCF/SMF/UPF/NRF/AUSF/UDM automation via Flex仪表 Web UI","fileCount":13,"zipByteSize":45767}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s175cct37w2xddkhpg3rgv55en83gx73:5gc-automation","setupComplexity":"low","setupSteps":["Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-liuwei120-5gc-automation/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-liuwei120-5gc-automation/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-liuwei120-5gc-automation/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-liuwei120-5gc-automation/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-liuwei120-5gc-automation/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-liuwei120-5gc-automation/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-11T10:52:22.698Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-liuwei120-5gc-automation/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-liuwei120-5gc-automation/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-liuwei120-5gc-automation/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-liuwei120-5gc-automation/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"high","updatedAt":"2026-10-11T06:52:24.292Z","emptyReason":null},"readme":"Skill: 5GC Automation\n\nOwner: liuwei120\n\nSummary: 5GC Web仪表自动化技能，支持AMF/UDM/AUSF/SMF/PGW-C/UPF/PGW-U/GNB/UE/PCF/NRF/QoS/TC/PCC/smpolicy的批量添加与编辑及PCF默认规则一键配置\n\nTags: latest:1.0.0\n\nVersion history:\n\nv1.0.0 | 2026-04-27T08:28:16.152Z | user\n\nInitial: 5GC AMF/PCF/SMF/UPF/NRF/AUSF/UDM automation via Flex仪表 Web UI\n\nArchive index:\n\nArchive v1.0.0: 13 files, 45767 bytes\n\nFiles: scripts/5gc.js (10993b), scripts/amf-add-skill.js (10648b), scripts/default-rule-add-skill.js (29546b), scripts/nrf-add-skill.js (7052b), scripts/pcc-add-skill.js (9930b), scripts/pcf-add-skill.js (7282b), scripts/qos-add-skill.js (8556b), scripts/smpolicy_add_pcc.js (6503b), scripts/smpolicy-ue-add-skill.js (10386b), scripts/tc-add-skill.js (5896b), skill-card.md (2394b), SKILL.md (42718b), _meta.json (133b)\n\nFile v1.0.0:SKILL.md\n\n---\nname: 5gc-web-dotouch\nversion: 1.0.0\ndescription: 5GC Web仪表自动化技能，支持AMF/UDM/AUSF/SMF/PGW-C/UPF/PGW-U/GNB/UE/PCF/NRF/QoS/TC/PCC/smpolicy的批量添加与编辑及PCF默认规则一键配置\nauthor: liuwei120\ntags: [5gc, automation, playwright, network]\n---\n\n# 5GC Web 仪表自动化技能\n\n> 统一管理 AMF、UDM/AUSF、SMF/PGW-C、UPF/PGW-U、GNB、UE、PCF、NRF 八类网元的添加与编辑操作，以及 PCC 规则、QoS 模板、Traffic Control、SMPolicy 和 PCF 默认规则一键配置。\n\n---\n\n## 目录\n\n- [快速开始](#快速开始)\n- [统一 CLI 入口](#统一-cli-入口)\n- [技能详细文档](#技能详细文档)\n  - [AMF](#amf)\n  - [UDM/AUSF](#udmausf)\n  - [SMF/PGW-C](#smfpgw-c)\n  - [UPF/PGW-U](#upfpgw-u)\n  - [GNB](#gnb)\n  - [UE](#ue)\n  - [PCF/PCRF](#pcfpcrf)\n  - [PCC 规则](#pcc-规则)\n  - [QoS 模板](#qos-模板)\n  - [Traffic Control](#traffic-control)\n  - [SMPolicy](#smpolicy)\n    - [UE Smpolicy](#smpolicy-ue-add-skilljs)\n  - [DNN Smpolicy](#smpolicy-dnn)\n    - [DNN Smpolicy](#smpolicy-dnn)\n    - [TAC Smpolicy](#smpolicy-tac)\n    - [Cell Smpolicy](#smpolicy-cell)\n    - [Cell Forbidden Smpolicy](#smpolicy-cell-forbidden)\n  - [NRF](#nrf)\n- [全局参数参考](#全局参数参考)\n- [字段参考](#字段参考)\n\n---\n\n## 快速开始\n\n### 安装方法\n\n技能目录位于 `skills/5gc/`，由统一入口 `5gc.js` 统一调度，无需额外安装：\n\n```bash\n# 克隆或复制到本机\ngit clone <repo> ~/.openclaw/workspace/skills/5gc\n\n# 直接使用统一入口（推荐）\nnode skills/5gc/scripts/5gc.js <entity> <action> [options]\n\n# 或直接调用各脚本\nnode skills/5gc/scripts/amf-add-skill.js <参数>\n```\n\n### 前置要求\n\n- Node.js ≥ 14\n- Playwright（`npm i playwright && npx playwright install chromium`）\n- 5GC 仪表地址：`https://192.168.3.89`（默认）\n- 登录凭证：`dotouch@dotouch.com.cn` / `dotouch`\n- 仪表上已创建对应工程（如 `XW_S5GC_1`）\n\n### 会话缓存\n\n所有脚本自动复用 Playwright 会话缓存（`.sessions/` 目录），首次登录后再次运行无需重复登录。\n\n---\n\n## 统一 CLI 入口\n\n### 路径\n\n```\nnode skills/5gc/scripts/5gc.js <entity> <action> [options]\n```\n\n### 支持的网元与操作\n\n| entity | add | edit | 特殊操作 |\n|--------|-----|------|---------|\n| `amf`  | ✅ | ✅ | |\n| `udm`  | ✅ | ✅ | |\n| `smf`  | ✅ | ✅ | |\n| `upf`  | ✅ | ✅ | |\n| `gnb`  | ✅ | ✅ | |\n| `ue`   | ✅ | ✅ | |\n| `pcf`  | ✅ | ✅ | `default-rule-add` |\n| `pcc`  | ✅ | ✅ | |\n| `qos`  | ✅ | | |\n| `tc`   | ✅ | | |\n| `smpolicy` | | | `add-pcc`, `ue-add`, `ue-edit`, `dnn-add`, `dnn-edit` |\n| `nrf`  | ✅ | ✅ | |\n\n### 全局选项\n\n| 选项 | 说明 |\n|------|------|\n| `--url <地址>` | 5GC 仪表地址，默认 `https://192.168.3.89` |\n| `--headed` | 打开可见浏览器窗口（调试用） |\n\n### 三种使用模式\n\n```bash\n# 1. 添加网元\nnode 5gc.js amf add <名称> [参数...]\n\n# 2. 批量编辑（当前工程下所有该类网元）\nnode 5gc.js amf edit --project <工程> --set-<字段> <值>\n\n# 3. 单个编辑（按名称精确匹配）\nnode 5gc.js amf edit --name <名称> --project <工程> --set-<字段> <值>\n```\n\n---\n\n## 技能详细文档\n\n---\n\n### AMF\n\n#### amf-add-skill.js\n\n**功能**：在指定工程下添加一个 AMF 实例。\n\n**使用方式**：\n```bash\nnode 5gc.js amf add <名称> [选项...]\n# 或直接调用\nnode skills/5gc/scripts/amf-add-skill.js <名称> [选项...]\n```\n\n**参数**：\n\n| 参数 | 说明 | 默认值 |\n|------|------|--------|\n| `<名称>` | AMF 实例名称（位置参数） | **必填** |\n| `--project <工程>` / `-p <工程>` | 目标工程名称 | `5G_basic_process` |\n| `--url <地址>` | 5GC 仪表地址 | `https://192.168.3.89` |\n| `--mcc <值>` | MCC（移动国家码） | `460` |\n| `--mnc <值>` | MNC（移动网络码） | `01` |\n| `--ngap_sip <IP>` | NGAP 信令面 IP | `200.20.20.1` |\n| `--ngap_port <端口>` | NGAP 端口 | `38412` |\n| `--http2_sip <IP>` | HTTP2 服务 IP | `200.20.20.5` |\n| `--http2_port <端口>` | HTTP2 端口 | `8080` |\n| `--stac <值>` | 起始 TAC | `101` |\n| `--etac <值>` | 结束 TAC | `102` |\n| `--region_id <值>` | 区域 ID | `1` |\n| `--set_id <值>` | Set ID | `1` |\n| `--pointer <值>` | 指针 | `1` |\n| `--headed` | 打开可见浏览器 | false |\n\n**示例**：\n```bash\n# 基本添加\nnode 5gc.js amf add AMF_TEST --project XW_S5GC_1\n\n# 指定 NGAP IP 和端口\nnode 5gc.js amf add AMF_PROD --project XW_S5GC_1 --ngap_sip 10.200.1.50 --ngap_port 38412\n\n# 使用不同 MCC/MNC\nnode 5gc.js amf add AMF_CMCC --project XW_S5GC_1 --mcc 460 --mnc 00\n```\n\n---\n\n#### amf-edit-skill.js\n\n**功能**：修改 AMF 配置参数。支持单个修改或批量修改工程下所有 AMF。\n\n**使用方式**：\n```bash\nnode 5gc.js amf edit [选项...]\n```\n\n**参数**：\n\n| 参数 | 说明 |\n|------|------|\n| `--project <工程>` / `-p <工程>` | 目标工程，不带 `--name` 时批量修改该工程下所有 AMF |\n| `--name <名称>` | 精确匹配要修改的 AMF 名称 |\n| `--id <ID>` | 按 AMF ID 修改 |\n| `--set-<字段> <值>` | 修改指定字段的值，支持多组 |\n| `--url <地址>` | 5GC 仪表地址 |\n| `--headed` | 打开可见浏览器 |\n\n**可编辑字段**：`name`, `mcc`, `mnc`, `ngap_sip`, `ngap_port`, `http2_sip`, `http2_port`, `stac`, `etac`, `region_id`, `set_id`, `pointer`, `ea[NEA0]`, `ea[128-NEA1]`, `ea[128-NEA2]`, `ea[128-NEA3]`, `ia[NIA0]`, `ia[128-NIA1]`, `ia[128-NIA2]`, `ia[128-NIA3]`\n\n> ⚠️ `ea[NEA0]` 等算法字段：实际向表单填入字段名 `ea[NEA0]`（input[name=\"ea[NEA0]\"]），layui checkbox 点击基于索引而非字段名，详情见 SKILL.md 算法配置章节。\n\n**示例**：\n```bash\n# 批量修改工程下所有 AMF 的 NGAP IP\nnode 5gc.js amf edit --project XW_S5GC_1 --set-ngap_sip 10.200.1.99\n\n# 修改指定 AMF\nnode 5gc.js amf edit --name AMF_TEST --project XW_S5GC_1 --set-ngap_sip 10.200.1.50 --set-http2_sip 10.200.1.51\n\n# 按 ID 修改\nnode 5gc.js amf edit --id 6633 --set-ngap_port 38413\n```\n\n---\n\n### UDM/AUSF\n\n#### ausf-udm-add-skill.js\n\n**功能**：在指定工程下添加一个 UDM/AUSF 实例。\n\n**使用方式**：\n```bash\nnode 5gc.js udm add <名称> [选项...]\n```\n\n**参数**：\n\n| 参数 | 说明 | 默认值 |\n|------|------|--------|\n| `<名称>` | UDM 实例名称（位置参数） | **必填** |\n| `--project <工程>` / `-p <工程>` | 目标工程名称 | `5G_basic_process` |\n| `--url <地址>` | 5GC 仪表地址 | `https://192.168.3.89` |\n| `--count <数量>` | 实例数量 | `1` |\n| `--sip <IP>` | SIP 服务 IP | `192.168.20.30` |\n| `--port <端口>` | SIP 端口 | `80` |\n| `--auth_method <方法>` | 认证方法 | `5G_AKA` |\n| `--scheme <协议>` | 协议类型 | `HTTP` |\n| `--priority <优先级>` | 优先级 | `8` |\n| `--headed` | 打开可见浏览器 | false |\n\n**示例**：\n```bash\n# 基本添加\nnode 5gc.js udm add UDM_TEST --project XW_S5GC_1\n\n# 指定 SIP IP 和端口\nnode 5gc.js udm add UDM_PROD --project XW_S5GC_1 --sip 10.0.0.100 --port 8080\n\n# 批量添加 3 个实例\nnode 5gc.js udm add UDM_CLUSTER --project XW_S5GC_1 --count 3 --sip 10.0.0.50\n```\n\n---\n\n#### ausf-udm-edit-skill.js\n\n**功能**：修改 UDM/AUSF 配置参数。支持批量和单个修改。\n\n**使用方式**：\n```bash\nnode 5gc.js udm edit [选项...]\n```\n\n**参数**：\n\n| 参数 | 说明 |\n|------|------|\n| `--project <工程>` | 目标工程，不带 `--name` 时批量修改 |\n| `--name <名称>` | 精确匹配要修改的 UDM 名称 |\n| `--set-sip <IP>` | 修改 SIP IP |\n| `--set-port <端口>` | 修改端口 |\n| `--set-auth_method <方法>` | 修改认证方法 |\n| `--set-scheme <协议>` | 修改协议 |\n| `--set-count <数量>` | 修改实例数量 |\n| `--url <地址>` | 5GC 仪表地址 |\n| `--headed` | 打开可见浏览器 |\n\n**示例**：\n```bash\n# 批量修改工程下所有 UDM 的 SIP IP\nnode 5gc.js udm edit --project XW_S5GC_1 --set-sip 10.0.0.99\n\n# 修改指定 UDM\nnode 5gc.js udm edit --name UDM_TEST --project XW_S5GC_1 --set-sip 10.0.0.88 --set-port 8080\n```\n\n---\n\n### SMF/PGW-C\n\n#### smf-pgwc-add-skill.js\n\n**功能**：在指定工程下添加一个 SMF/PGW-C 实例。\n\n**使用方式**：\n```bash\nnode 5gc.js smf add --name <名称> [选项...]\n```\n\n> ⚠️ 通过 5gc.js 统一调度时必须使用 `--name <名称>` 形式（不是位置参数）。\n\n**参数**：\n\n| 参数 | 说明 | 默认值 |\n|------|------|--------|\n| `--name <名称>` | SMF 实例名称 | **必填** |\n| `--project <工程>` / `-p <工程>` | 目标工程名称 | `XW_S5GC_1` |\n| `--url <地址>` | 5GC 仪表地址 | `https://192.168.3.89` |\n| `--pfcp_sip <IP>` | PFCP 信令面 IP | `200.20.20.25` |\n| `--http2_sip <IP>` | HTTP2 服务 IP | `200.20.20.25` |\n| `--mcc <值>` | MCC | `460` |\n| `--mnc <值>` | MNC | `01` |\n| `--pdu_capacity <数量>` | PDU 会话容量 | `200000` |\n| `--ue_min <IP>` | UE IP 池起始 | `30.30.30.20` |\n| `--ue_max <IP>` | UE IP 池结束 | `30.31.30.20` |\n| `--interest_tac <TAC列表>` | 关注 TAC 列表（逗号分隔） | `101,102` |\n| `--headed` | 打开可见浏览器 | false |\n\n> ✅ **NSSAI 自动配置**：脚本在 SMF 创建后会自动打开 NSSAI 配置弹窗，添加一条默认 NSSAI（SST=1, SD=000001, DNN Group=cscn2net）。如需自定义 NSSAI 参数，请直接修改脚本中的硬编码值。\n> \n> ⚠️ ue_sip6 / ue_eip6 为硬编码值，不支持 CLI 参数覆盖。\n\n**示例**：\n```bash\n# 基本添加\nnode 5gc.js smf add --name SMF_TEST --project XW_S5GC_1\n\n# 指定工程和 IP/MCC\nnode 5gc.js smf add --name SMF_PROD --project XW_S5GC_1 --pfcp_sip 10.10.10.50 --http2_sip 10.10.10.51 --mcc 460 --mnc 01\n```\n\n---\n\n#### smf-pgwc-edit-skill.js\n\n**功能**：修改 SMF/PGW-C 配置参数。支持批量和单个修改。\n\n**使用方式**：\n```bash\nnode 5gc.js smf edit [选项...]\n```\n\n**参数**：\n\n| 参数 | 说明 |\n|------|------|\n| `--project <工程>` | 目标工程，不带 `--name` 时批量修改 |\n| `--name <名称>` | 精确匹配要修改的 SMF 名称 |\n| `--set-pfcp_sip <IP>` | 修改 PFCP 信令面 IP |\n| `--set-http2_sip <IP>` | 修改 HTTP2 服务 IP |\n| `--set-mcc <值>` | 修改 MCC |\n| `--set-mnc <值>` | 修改 MNC |\n| `--set-pdu_capacity <数量>` | 修改 PDU 会话容量 |\n| `--set-ue_min <IP>` | 修改 UE IP 池起始 |\n| `--set-ue_max <IP>` | 修改 UE IP 池结束 |\n| `--set-interest_tac <TAC列表>` | 修改关注 TAC 列表（逗号分隔） |\n\n> ⚠️ 以下字段不支持 `--set-` 修改：dnn、n3_ip、n6_ip、snssai_sst、snssai_sd。如需修改，请通过仪表 UI 手动完成。NSSAI 配置请在添加时自动完成（见上文）。\n\n**示例**：\n```bash\n# 批量修改工程下所有 SMF 的 HTTP2 IP\nnode 5gc.js smf edit --project XW_S5GC_1 --set-http2_sip 10.10.10.99\n\n# 修改指定 SMF 的 pfcp_sip 和 MCC/MNC\nnode 5gc.js smf edit --name SMF_TEST --project XW_S5GC_1 --set-pfcp_sip 10.10.10.88 --set-mcc 460 --set-mnc 01\n```\n\n---\n\n### UPF/PGW-U\n\n#### upf-add-skill.js\n\n**功能**：在指定工程下添加一个 UPF/PGW-U 实例。\n\n**使用方式**：\n```bash\nnode 5gc.js upf add <名称> [选项...]\n```\n\n**参数**：\n\n| 参数 | 说明 | 默认值 |\n|------|------|--------|\n| `<名称>` | UPF 实例名称（位置参数） | **必填** |\n| `--project <工程>` / `-p <工程>` | 目标工程名称 | `XW_S5GC_1` |\n| `--url <地址>` | 5GC 仪表地址 | `https://192.168.3.89` |\n| `--n4_ip <IP>` | N4 接口 IP | `192.168.20.30` |\n| `--n3_ip <IP>` | N3 接口 IP | `192.168.20.30` |\n| `--n6_ip <IP>` | N6 接口 IP | `192.168.20.31` |\n| `--n4_port <端口>` | N4 端口 | `8805` |\n| `--MCC <值>` | MCC（注意大写） | `460` |\n| `--MNC <值>` | MNC（注意大写） | `01` |\n| `--pdu_capacity <数量>` | PDU 会话容量 | `20000` |\n| `--ue_min <IP>` | UE IP 池起始 | `20.20.20.20` |\n| `--ue_max <IP>` | UE IP 池结束 | `20.20.60.20` |\n| `--headed` | 打开可见浏览器 | false |\n\n> ⚠️ DNN、TAC、NSSAI 在添加脚本中为硬编码默认值，不支持命令行覆盖。如需修改，请使用 `upf edit` 脚本。\n\n**示例**：\n```bash\n# 基本添加\nnode 5gc.js upf add UPF_TEST --project XW_S5GC_1\n\n# 指定 N4/N3/N6 IP 和 MCC/MNC\nnode 5gc.js upf add UPF_PROD --project XW_S5GC_1 --n4_ip 10.0.0.50 --n6_ip 10.0.0.51 --MCC 460 --MNC 01\n```\n\n---\n\n#### upf-edit-skill.js\n\n**功能**：修改 UPF/PGW-U 配置参数。支持批量和单个修改。\n\n**使用方式**：\n```bash\nnode 5gc.js upf edit [选项...]\n```\n\n**参数**：\n\n| 参数 | 说明 |\n|------|------|\n| `--project <工程>` | 目标工程，不带 `--name` 时批量修改 |\n| `--name <名称>` | 精确匹配要修改的 UPF 名称 |\n| `--set-n3_ip <IP>` | 修改 N3 接口 IP |\n| `--set-n4_ip <IP>` | 修改 N4 接口 IP |\n| `--set-n4_port <端口>` | 修改 N4 端口 |\n| `--set-n6_ip <IP>` | 修改 N6 接口 IP |\n| `--set-MCC <值>` | 修改 MCC（注意大写） |\n| `--set-MNC <值>` | 修改 MNC（注意大写） |\n| `--set-pdu_capacity <数量>` | 修改 PDU 会话容量 |\n| `--set-ue_min <IP>` | 修改 UE IP 池起始 |\n| `--set-ue_max <IP>` | 修改 UE IP 池结束 |\n| `--url <地址>` | 5GC 仪表地址 |\n| `--headed` | 打开可见浏览器 |\n\n> ⚠️ `dnn`（DNN）和 TAC/NSSAI 在 UPF 表单中存储在 jsgrid 配置行内，不支持简单的 `--set-` 修改。\n\n**示例**：\n```bash\n# 批量修改工程下所有 UPF 的 N4 IP\nnode 5gc.js upf edit --project XW_S5GC_1 --set-n4_ip 99.99.99.99\n\n# 修改指定 UPF 的 N4/N6 IP 和 MCC/MNC\nnode 5gc.js upf edit --name UPF_TEST --project XW_S5GC_1 --set-n4_ip 88.88.88.88 --set-n6_ip 88.88.88.89 --set-MCC 460 --set-MNC 01\n```\n\n---\n\n### GNB\n\n#### gnb-add-skill.js\n\n**功能**：在指定工程下添加一个 GNB 实例。\n\n**使用方式**：\n```bash\nnode 5gc.js gnb add <名称> [选项...]\n```\n\n**参数**：\n\n| 参数 | 说明 | 默认值 |\n|------|------|--------|\n| `<名称>` | GNB 实例名称（位置参数） | **必填** |\n| `--project <工程>` / `-p <工程>` | 目标工程名称 | `XW_S5GC_1` |\n| `--url <地址>` | 5GC 仪表地址 | `https://192.168.3.89` |\n| `--ngap_sip <IP>` | NGAP 信令面 IP | `200.20.20.50` |\n| `--user_sip_ip_v4 <IP>` | 用户面 IPv4 | `2.2.2.2` |\n| `--mcc <值>` | MCC | `460` |\n| `--mnc <值>` | MNC | `60` |\n| `--stac <值>` | 起始 TAC | `0` |\n| `--etac <值>` | 结束 TAC | `0` |\n| `--node_id <ID>` | 节点 ID | `70` |\n| `--cell_count <数量>` | 小区数量 | `1` |\n| `--headed` | 打开可见浏览器 | false |\n\n> ⚠️ `stac`/`etac`/`node_id` 非默认值时可能触发表单验证失败，建议先使用默认值添加后再用 `gnb edit` 修改。\n\n**示例**：\n```bash\n# 基本添加\nnode 5gc.js gnb add GNB_TEST --project XW_S5GC_1\n\n# 指定 NGAP IP、用户面 IP 和 TAC\nnode 5gc.js gnb add GNB_PROD --project XW_S5GC_1 --ngap_sip 200.20.20.100 --user_sip_ip_v4 3.3.3.3 --mcc 460 --mnc 60 --stac 1 --etac 10\n```\n\n---\n\n#### gnb-edit-skill.js\n\n**功能**：修改 GNB 配置参数。支持批量和单个修改。\n\n**使用方式**：\n```bash\nnode 5gc.js gnb edit [选项...]\n```\n\n**参数**：\n\n| 参数 | 说明 |\n|------|------|\n| `--project <工程>` | 目标工程，不带 `--name` 时批量修改 |\n| `--name <名称>` | 精确匹配要修改的 GNB 名称 |\n| `--set-ngap_sip <IP>` | 修改 NGAP 信令面 IP |\n| `--set-user_sip_ip_v4 <IP>` | 修改用户面 IPv4 |\n| `--set-user_sip_ip_v6 <IP>` | 修改用户面 IPv6 |\n| `--set-mcc <值>` | 修改 MCC |\n| `--set-mnc <值>` | 修改 MNC |\n| `--set-stac <值>` | 修改起始 TAC |\n| `--set-etac <值>` | 修改结束 TAC |\n| `--set-node_id <ID>` | 修改节点 ID |\n| `--set-cell_count <数量>` | 修改小区数量 |\n| `--set-replay_ip <IP>` | 修改回放 IP |\n| `--set-replay_port <端口>` | 修改回放端口 |\n| `--url <地址>` | 5GC 仪表地址 |\n| `--headed` | 打开可见浏览器 |\n\n**示例**：\n```bash\n# 批量修改工程下所有 GNB 的用户面 IP\nnode 5gc.js gnb edit --project XW_S5GC_1 --set-user_sip_ip_v4 99.99.99.99\n\n# 修改指定 GNB 的 NGAP IP 和 MCC/MNC\nnode 5gc.js gnb edit --name GNB_TEST --project XW_S5GC_1 --set-ngap_sip 200.20.20.88 --set-mcc 461 --set-mnc 22\n```\n\n---\n\n### UE\n\n#### ue-add-skill.js\n\n**功能**：在指定工程下添加一个或多个 UE 实例。\n\n**使用方式**：\n```bash\nnode 5gc.js ue add --name <名称> [选项...]\n```\n\n**参数**：\n\n| 参数 | 短名 | 说明 | 默认值 |\n|------|------|------|--------|\n| `--name <名称>` | `-n <名称>` | UE 名称（只支持字母/数字/下划线） | **必填** |\n| `--project <工程>` | `-p <工程>` | 目标工程名称 | `XW_S5GC_1` |\n| `--url <地址>` | `-u <地址>` | 5GC 仪表地址 | `https://192.168.3.89` |\n| `--imsi <值>` | | 起始 IMSI（15位） | `460001234567890` |\n| `--msisdn <值>` | | MSISDN（13-15位，以 86 开头） | `8611111111111` |\n| `--mcc <值>` | | MCC | `460` |\n| `--mnc <值>` | | MNC | `01` |\n| `--key <值>` | | KI 密钥（32位 hex） | `1111...`（32个1） |\n| `--opc <值>` | | OPc 密钥（32位 hex） | `1111...`（32个1） |\n| `--imeisv <值>` | | IMEISV（偶数位） | `8611111111111111` |\n| `--sst <值>` | | NSSAI SST | `1` |\n| `--sd <值>` | | NSSAI SD | `111111` |\n| `--count <数量>` | `-c <数量>` | 连续添加数量 | `1` |\n| `--headed` | | 打开可见浏览器 | false |\n\n> **命名约束**：UE 名称只能包含字母、数字、下划线（`_`），不能使用连字符（`-`）或其他特殊字符。\n\n**示例**：\n```bash\n# 基本添加\nnode 5gc.js ue add --name UE_001 --project XW_S5GC_1\n\n# 指定 IMSI 和 MSISDN\nnode 5gc.js ue add --name UE_TEST --imsi 460000000000001 --msisdn 8613888888888 --project XW_S5GC_1\n\n# 批量添加 10 个连续 UE\nnode 5gc.js ue add --name UE_BATCH --count 10 --project XW_S5GC_1 --msisdn 8613900000000\n\n# 指定认证密钥\nnode 5gc.js ue add --name UE_AUTH --project XW_S5GC_1 --key 00112233445566778899aabbccddeeff --opc 11223344556677889900aabbccddeeff\n```\n\n---\n\n#### ue-edit-skill.js\n\n**功能**：修改 UE 配置参数。支持批量和单个修改。\n\n**使用方式**：\n```bash\nnode 5gc.js ue edit [选项...]\n```\n\n**参数**：\n\n| 参数 | 说明 |\n|------|------|\n| `--project <工程>` | 目标工程，不带 `--name` 时批量修改该工程下所有 UE |\n| `--name <名称>` | 精确匹配要修改的 UE 名称（不支持批量时按名称过滤） |\n| `--id <ID>` | 按 UE ID 修改 |\n| `--set-msisdn <值>` | 修改 MSISDN |\n| `--set-s_imsi <值>` | 修改 IMSI |\n| `--set-mcc <值>` | 修改 MCC |\n| `--set-mnc <值>` | 修改 MNC |\n| `--set-key <值>` | 修改 KI 密钥 |\n| `--set-opc <值>` | 修改 OPc 密钥 |\n| `--set-imeisv <值>` | 修改 IMEISV |\n| `--set-sst <值>` | 修改 NSSAI SST |\n| `--set-sd <值>` | 修改 NSSAI SD |\n| `--set-replay_ip <IP>` | 修改回放 IP |\n| `--set-replay_port <端口>` | 修改回放端口 |\n| `--set-count <数量>` | 修改数量 |\n| `--url <地址>` | 5GC 仪表地址 |\n| `--headed` | 打开可见浏览器 |\n\n> ⚠️ `user_sip_ip_v4`、`user_sip_ip_v6` 在 UE 编辑表单中不存在此字段名，无需修改。\n\n**示例**：\n```bash\n# 批量修改工程下所有 UE 的 MSISDN\nnode 5gc.js ue edit --project XW_S5GC_1 --set-msisdn 8613911111111\n\n# 修改指定 UE\nnode 5gc.js ue edit --name UE_001 --project XW_S5GC_1 --set-msisdn 8613988888888 --set-sst 1 --set-sd 222222\n\n# 按 ID 修改\nnode 5gc.js ue edit --id 10337 --set-opc aabbccddeeff00112233445566778899 --set-imeisv 8611111111111112\n```\n\n---\n\n\n### PCF/PCRF\n\n#### pcf-add-skill.js\n\n**功能**：在指定工程下添加一个 PCF/PCRF 实例。\n\n**使用方式**：\n```bash\nnode 5gc.js pcf add <名称> [选项...]\nnode skills/5gc/scripts/pcf-add-skill.js <名称> [选项...]\n```\n\n**参数**：\n\n| 参数 | 说明 | 默认值 |\n|------|------|--------|\n| `<名称>` | PCF 实例名称（位置参数） | **必填** |\n| `--project <工程>` / `-p <工程>` | 目标工程名称 | `XW_S5GC_1` |\n| `--url <地址>` | 5GC 仪表地址 | `https://192.168.3.89` |\n| `--http2_sip <IP>` | HTTP2 服务 IP | `192.168.20.90` |\n| `--http2_port <端口>` | HTTP2 端口 | `80` |\n| `--MCC <值>` | MCC（注意大写） | `460` |\n| `--MNC <值>` | MNC（注意大写） | `01` |\n| `--headed` | 打开可见浏览器 | false |\n\n**示例**：\n```bash\nnode 5gc.js pcf add PCF-TEST --project XW_S5GC_1\nnode 5gc.js pcf add PCF-PROD --project XW_S5GC_1 --http2_sip 10.0.0.50 --MCC 460 --MNC 01\n```\n\n#### pcf-edit-skill.js\n\n**功能**：编辑指定工程下的 PCF/PCRF 实例（支持单条和批量）。\n\n**使用方式**：\n```bash\n# 批量编辑：修改工程下所有 PCF 的字段\nnode 5gc.js pcf edit --project <工程> --set-<字段> <值>\n\n# 单条编辑：修改指定名称的 PCF\nnode 5gc.js pcf edit --name <名称> --project <工程> --set-<字段> <值>\n```\n\n**可编辑字段**：\n\n| 参数 | 说明 |\n|------|------|\n| `--set-http2_sip <IP>` | 修改 HTTP2 服务 IP |\n| `--set-http2_port <端口>` | 修改 HTTP2 端口 |\n| `--set-MCC <值>` | 修改 MCC（注意大写） |\n| `--set-MNC <值>` | 修改 MNC（注意大写） |\n\n**示例**：\n```bash\n# 批量修改工程下所有 PCF 的 HTTP2 IP\nnode 5gc.js pcf edit --project XW_S5GC_1 --set-http2_sip 10.10.10.99\n\n# 修改指定 PCF 的 HTTP2 IP 和 MNC\nnode 5gc.js pcf edit --name pcc --project XW_S5GC_1 --set-http2_sip 10.10.10.88 --set-MNC 01\n```\n\n#### default-rule-add-skill.js（PCF 默认规则一键配置）\n\n**功能**：为指定工程一键配置完整的 PCF 默认规则链路，包含 QoS 模板 → Traffic Control → PCC 规则 → sm_policy_default → PCF default_smpolicy 全五步。\n\n**使用方式**：\n```bash\nnode 5gc.js pcf default-rule-add --project <工程> [选项...]\nnode skills/5gc/scripts/default-rule-add-skill.js --project <工程> [选项...]\n```\n\n**参数**（全部可选，有默认值）：\n\n| 参数 | 说明 | 默认值 |\n|------|------|--------|\n| `--project` | 工程名 | `XW_S5GC_1` |\n| `--qos-id` | QoS 模板 ID | `qos_default_{时间戳}` |\n| `--5qi` | 5QI 值（不指定则自动选择未使用的值） | 自动（优先 8/9/6/5...） |\n| `--maxbr-ul` | 上行最大比特率 | `10000000` |\n| `--maxbr-dl` | 下行最大比特率 | `20000000` |\n| `--gbr-ul` | 上行保证比特率 | `5000000` |\n| `--gbr-dl` | 下行保证比特率 | `5000000` |\n| `--tc-id` | TC 规则 ID | `tc_default_{时间戳}` |\n| `--flow-status` | TC 流状态 | `ENABLED` |\n| `--pcc-id` | PCC 规则 ID | `pcc_default` |\n| `--precedence` | PCC 优先级 | `63` |\n| `--headed` | 显示浏览器窗口（调试用） | off |\n\n**示例**：\n```bash\n# 最简用法（自动生成所有 ID）\nnode 5gc.js pcf default-rule-add --project XW_SUPF_5_1_2_4\n\n# 指定 QoS 参数（高速率）\nnode 5gc.js pcf default-rule-add --project XW_SUPF_5_1_2_4 \\\n  --qos-id qos_high_rate --5qi 8 \\\n  --maxbr-ul 50000000 --maxbr-dl 100000000 \\\n  --gbr-ul 20000000 --gbr-dl 40000000\n\n# 指定 PCC 优先级\nnode 5gc.js pcf default-rule-add --project XW_SUPF_5_1_2_4 --pcc-id pcc_new --precedence 50\n\n# 调试模式\nnode 5gc.js pcf default-rule-add --project XW_SUPF_5_1_2_4 --headed\n```\n\n> **注意**：同一工程多次运行会自动删除旧的同名资源并重建，不会污染配置。\n\n\n\n\n### PCC 规则\n\n#### pcc-add-skill.js\n\n**功能**：在指定工程下添加一条 PCC 规则（PCC 规则用于绑定 QoS 模板和 Traffic Control）。\n\n**使用方式**：\n```bash\nnode 5gc.js pcc add --project <工程> --pcc-id <ID> --qos <QoS名称> --tc <TC名称> [选项...]\nnode skills/5gc/scripts/pcc-add-skill.js --project <工程> --pcc-id <ID> --qos <QoS名称> --tc <TC名称> [选项...]\n```\n\n**参数**：\n\n| 参数 | 说明 | 默认值 |\n|------|------|--------|\n| `--project` | 工程名 | `XW_S5GC_1` |\n| `--pcc-id` | PCC 规则 ID（字母/数字/下划线） | **必填** |\n| `--qos` | 引用的 QoS 模板名称 | **必填** |\n| `--tc` | 引用的 Traffic Control 名称 | **必填** |\n| `--precedence` | 优先级（0-255） | `63` |\n| `--flow-desc` | 流描述（可选） | |\n| `--headed` | 显示浏览器窗口 | off |\n\n**示例**：\n```bash\n# 基本添加\nnode 5gc.js pcc add --project XW_SUPF_5_1_2_4 --pcc-id pcc_new --qos qos1 --tc tc1\n\n# 指定优先级\nnode 5gc.js pcc add --project XW_SUPF_5_1_2_4 --pcc-id pcc_high --qos qos2 --tc tc1 --precedence 50\n```\n\n#### pcc-edit-skill.js\n\n**功能**：编辑已有 PCC 规则的 QoS/TC 绑定（切换 PCC 引用的 QoS 模板或 Traffic Control）。\n\n**使用方式**：\n```bash\nnode 5gc.js pcc edit --project <工程> --name <PCC名称> --set-qos <新QoS> [--set-tc <新TC>]\n```\n\n**参数**：\n\n| 参数 | 说明 |\n|------|------|\n| `--project` | 工程名 |\n| `--name` | 要修改的 PCC 规则名称（精确匹配） |\n| `--set-qos <名称>` | 切换到新的 QoS 模板 |\n| `--set-tc <名称>` | 切换到新的 Traffic Control |\n| `--headed` | 显示浏览器窗口 |\n\n**示例**：\n```bash\n# 修改 PCC 引用的 QoS（用于修改上下行速率）\nnode 5gc.js pcc edit --project XW_SUPF_5_1_2_4 --name pcc_default --set-qos qos_high_rate\n\n# 同时修改 QoS 和 TC\nnode 5gc.js pcc edit --project XW_SUPF_5_1_2_4 --name pcc_default --set-qos qos1 --set-tc tc2\n```\n\n> ⚠️ **重要**：PCC 的 `refQosData` 和 `refTcData` 存储在 xm-select 多选组件中。编辑时会自动切换选择，无需手动取消旧选项。\n\n### NRF（网络存储功能）\n\n#### nrf-add-skill.js\n\n**功能**：在指定工程下添加一个 NRF 实例。\n\n**使用方式**：\n```bash\nnode 5gc.js nrf add <名称> [选项...]\nnode skills/5gc/scripts/nrf-add-skill.js <名称> [选项...]\n```\n\n**参数**：\n\n| 参数 | 说明 | 默认值 |\n|------|------|--------|\n| `<名称>` | NRF 实例名称（位置参数） | **必填** |\n| `--project <工程>` / `-p <工程>` | 目标工程名称 | `XW_S5GC_1` |\n| `--url <地址>` | 5GC 仪表地址 | `https://192.168.3.89` |\n| `--http2_sip <IP>` | HTTP2 服务 IP | `192.168.20.100` |\n| `--http2_port <端口>` | HTTP2 端口 | `80` |\n| `--MCC <值>` | MCC（注意大写） | `460` |\n| `--MNC <值>` | MNC（注意大写） | `01` |\n| `--headed` | 打开可见浏览器 | false |\n\n**示例**：\n```bash\nnode 5gc.js nrf add NRF-TEST --project XW_S5GC_1\nnode 5gc.js nrf add NRF-PROD --project XW_S5GC_1 --http2_sip 10.0.0.50 --MCC 460 --MNC 01\n```\n\n#### nrf-edit-skill.js\n\n**功能**：编辑指定工程下的 NRF 实例（支持单条和批量）。\n\n**使用方式**：\n```bash\n# 批量编辑：修改工程下所有 NRF 的字段\nnode 5gc.js nrf edit --project <工程> --set-<字段> <值>\n\n# 单条编辑：修改指定名称的 NRF\nnode 5gc.js nrf edit --name <名称> --project <工程> --set-<字段> <值>\n```\n\n**可编辑字段**：\n\n| 参数 | 说明 |\n|------|------|\n| `--set-http2_sip <IP>` | 修改 HTTP2 服务 IP |\n| `--set-http2_port <端口>` | 修改 HTTP2 端口 |\n| `--set-MCC <值>` | 修改 MCC（注意大写） |\n| `--set-MNC <值>` | 修改 MNC（注意大写） |\n\n**示例**：\n```bash\n# 批量修改工程下所有 NRF 的 HTTP2 IP\nnode 5gc.js nrf edit --project XW_S5GC_1 --set-http2_sip 10.10.10.99\n\n# 修改指定 NRF 的 HTTP2 IP 和 MNC\nnode 5gc.js nrf edit --name nrf1 --project XW_S5GC_1 --set-http2_sip 10.10.10.88 --set-MNC 01\n```\n\n\n### QoS 模板\n\n#### qos-add-skill.js\n\n**功能**：在指定工程下添加一个 QoS（服务质量）模板，定义 5QI、上下行最大比特率、保证比特率等参数。\n\n**使用方式**：\n```bash\nnode 5gc.js qos add --project <工程> --qos-id <ID> [选项...]\nnode skills/5gc/scripts/qos-add-skill.js --project <工程> --qos-id <ID> [选项...]\n```\n\n**参数**：\n\n| 参数 | 说明 | 默认值 |\n|------|------|--------|\n| `--project` | 工程名 | `XW_S5GC_1` |\n| `--qos-id` | QoS 模板 ID（字母/数字/下划线） | **必填** |\n| `--5qi` | 5QI 值（不指定则自动选择） | 自动选择未使用的值（优先 8/9/6/5...） |\n| `--maxbr-ul` | 上行最大比特率（bps） | `10000000` |\n| `--maxbr-dl` | 下行最大比特率（bps） | `20000000` |\n| `--gbr-ul` | 上行保证比特率（bps） | `5000000` |\n| `--gbr-dl` | 下行保证比特率（bps） | `5000000` |\n| `--priority` | 优先级 | 空 |\n| `--headed` | 显示浏览器窗口 | off |\n\n**示例**：\n```bash\n# 基本添加\nnode 5gc.js qos add --project XW_SUPF_5_1_2_4 --qos-id qos1\n\n# 高速率 QoS\nnode 5gc.js qos add --project XW_SUPF_5_1_2_4 --qos-id qos_high \\\n  --5qi 8 --maxbr-ul 50000000 --maxbr-dl 100000000 \\\n  --gbr-ul 20000000 --gbr-dl 40000000\n\n# 批量创建不同 5qi 的 QoS 模板\nnode 5gc.js qos add --project XW_SUPF_5_1_2_4 --qos-id qos_6 --5qi 6\nnode 5gc.js qos add --project XW_SUPF_5_1_2_4 --qos-id qos_9 --5qi 9\n```\n\n---\n\n### Traffic Control\n\n#### tc-add-skill.js\n\n**功能**：在指定工程下添加一条 Traffic Control 流量控制规则，控制 UE 流量的启用/禁用状态。\n\n**使用方式**：\n```bash\nnode 5gc.js tc add --project <工程> --tc-id <ID> [选项...]\nnode skills/5gc/scripts/tc-add-skill.js --project <工程> --tc-id <ID> [选项...]\n```\n\n**参数**：\n\n| 参数 | 说明 | 默认值 |\n|------|------|--------|\n| `--project` | 工程名 | `XW_S5GC_1` |\n| `--tc-id` | TC 规则 ID（字母/数字/下划线） | **必填** |\n| `--flow-status` | 流状态 | `ENABLED` |\n| `--flow-desc` | 流描述（可选） | |\n| `--headed` | 显示浏览器窗口 | off |\n\n> **flow-status 选项**：`ENABLED`（启用）、`DISABLED`（禁用）、`ENABLED-UPLINK`（仅上行）等。\n\n**示例**：\n```bash\n# 基本添加\nnode 5gc.js tc add --project XW_SUPF_5_1_2_4 --tc-id tc1\n\n# 指定流状态\nnode 5gc.js tc add --project XW_SUPF_5_1_2_4 --tc-id tc_uplink --flow-status ENABLED-UPLINK\n```\n\n---\n\n### SMPolicy\n\n#### smpolicy_add_pcc.js {#smpolicy-default}\n\n**功能**：将已有 PCC 规则添加到工程默认的 `sm_policy_default` 会话策略中（追加到 pccRules 列表）。\n\n**使用方式**：\n```bash\nnode 5gc.js smpolicy add-pcc --project <工程> --pcc-id <PCC名称>\nnode skills/5gc/scripts/smpolicy_add_pcc.js --project <工程> --pcc-id <PCC名称>\n```\n\n**参数**：\n\n| 参数 | 说明 | 默认值 |\n|------|------|--------|\n| `--project` | 工程名 | `XW_SUPF_5_1_2_4` |\n| `--pcc-id` | 已存在的 PCC 规则 ID | **必填** |\n| `--headed` | 显示浏览器窗口 | off |\n\n> **链路**：`smpolicy/default/index` → 编辑 `sm_policy_default` 弹窗 → pccRules xm-select 中追加指定 PCC。\n\n**示例**：\n```bash\n# 将 PCC 添加到 sm_policy_default\nnode 5gc.js smpolicy add-pcc --project XW_SUPF_5_1_2_4 --pcc-id pcc_high_rate\n\n# 添加多个 PCC 规则\nnode 5gc.js smpolicy add-pcc --project XW_SUPF_5_1_2_4 --pcc-id pcc_default\nnode 5gc.js smpolicy add-pcc --project XW_SUPF_5_1_2_4 --pcc-id pcc_video\n```\n\n---\n\n#### smpolicy-ue-add-skill.js {#smpolicy-ue-add-skilljs}\n\n**功能**：在指定工程下添加一条 UE Smpolicy 规则，按 IMSI/DNN/sNssai 匹配 UE 并关联 PCC 规则。\n\n**使用方式**：\n```bash\nnode 5gc.js smpolicy ue-add --project <工程> --name <名称> --dnn <DNN> [选项...]\nnode skills/5gc/scripts/smpolicy-ue-add-skill.js --project <工程> --name <名称> --dnn <DNN> [选项...]\n```\n\n**参数**：\n\n| 参数 | 说明 | 默认值 |\n|------|------|--------|\n| `--project` | 工程名 | `XW_S5GC_1` |\n| `--name` | UE策略名称（字母/数字/下划线） | **必填** |\n| `--dnn` | DNN | **必填** |\n| `--imsi` | IMSI 起始值（不填则自动生成） | 自动 |\n| `--imsi-num` | IMSI 数量 | `1` |\n| `--sst` | sNssai SST | `1` |\n| `--sd` | sNssai SD | `111111` |\n| `--sess-rules` | 会话规则（xm-select，多个逗号分隔） | |\n| `--pcc-rules` | PCC规则（xm-select，多个逗号分隔） | |\n| `--pra-rules` | PRA规则（xm-select，可选） | |\n| `--ref-qos-timer` | reflectiveQoSTimer 值（秒） | |\n| `--headed` | 显示浏览器窗口 | off |\n\n**示例**：\n```bash\n# 基本添加\nnode 5gc.js smpolicy ue-add --project XW_SUPF_5_1_2_4 --name ue_policy1 --dnn internet\n\n# 指定 IMSI 和 sNssai\nnode 5gc.js smpolicy ue-add --project XW_SUPF_5_1_2_4 --name ue_policy1 --dnn internet \\\n  --imsi 460001234567890 --sst 1 --sd 111111\n\n# 绑定 PCC 规则（多个逗号分隔）\nnode 5gc.js smpolicy ue-add --project XW_SUPF_5_1_2_4 --name ue_policy2 --dnn internet \\\n  --pcc-rules \"pcc2,pcc_default\"\n\n# 指定反射 QoS 定时器\nnode 5gc.js smpolicy ue-add --project XW_SUPF_5_1_2_4 --name ue_policy3 --dnn internet \\\n  --pcc-rules pcc2 --ref-qos-timer 60\n```\n\n#### smpolicy-ue-edit-skill.js\n\n**功能**：编辑已有 UE Smpolicy 规则的字段（DNN、sNssai、PCC 绑定等）。\n\n**使用方式**：\n```bash\nnode 5gc.js smpolicy ue-edit --project <工程> --name <名称> [--dnn <新DNN>] [--pcc-rules <规则>] [选项...]\n```\n\n**参数**：\n\n| 参数 | 说明 |\n|------|------|\n| `--project` | 工程名 |\n| `--name` | 要编辑的 UE 策略名称（精确匹配） |\n| `--dnn` | 新 DNN |\n| `--imsi` | 新 IMSI 起始值 |\n| `--sst` | 新 sNssai SST |\n| `--sd` | 新 sNssai SD |\n| `--sess-rules` | 会话规则（xm-select，多个逗号分隔） |\n| `--pcc-rules` | PCC规则（xm-select，多个逗号分隔） |\n| `--pra-rules` | PRA规则（xm-select） |\n| `--ref-qos-timer` | reflectiveQoSTimer |\n| `--headed` | 显示浏览器窗口 |\n\n> ⚠️ xm-select 为多选模式。指定 `--pcc-rules` 时会叠加选中已有规则；编辑时需注意 toggle 行为。\n\n**示例**：\n```bash\n# 修改 DNN\nnode 5gc.js smpolicy ue-edit --project XW_SUPF_5_1_2_4 --name ue_policy1 --dnn internet_new\n\n# 修改 PCC 绑定\nnode 5gc.js smpolicy ue-edit --project XW_SUPF_5_1_2_4 --name ue_policy1 --pcc-rules pcc2,pcc_reg_test\n\n# 修改 sNssai\nnode 5gc.js smpolicy ue-edit --project XW_SUPF_5_1_2_4 --name ue_policy1 --sst 1 --sd 222222\n```\n\n#### smpolicy-dnn-add-skill.js {#smpolicy-dnn}\n\n**功能**：在指定工程下添加一条 DNN Smpolicy 规则，按 DNN/sNssai 匹配会话并关联 PCC 规则。\n\n**使用方式**：\n```bash\nnode 5gc.js smpolicy dnn-add --project <工程> --name <名称> --dnn <DNN> [选项...]\n```\n\n**参数**：\n\n| 参数 | 说明 | 默认值 |\n|------|------|--------|\n| `--project` | 工程名 | `XW_S5GC_1` |\n| `--name` | DNN策略名称（必填） | **必填** |\n| `--dnn` | DNN值（必填） | **必填** |\n| `--sst` | sNssai SST | `1` |\n| `--sd` | sNssai SD | `111111` |\n| `--sess-rules` | 会话规则（xm-select，多个逗号分隔） | |\n| `--pcc-rules` | PCC规则（xm-select，多个逗号分隔） | |\n| `--pra-rules` | PRA规则（xm-select，可选） | |\n| `--ref-qos-timer` | reflectiveQoSTimer（秒） | |\n| `--headed` | 显示浏览器窗口 | off |\n\n**示例**：\n```bash\n# 基本添加\nnode 5gc.js smpolicy dnn-add --project XW_SUPF_5_1_2_4 --name dnn_policy1 --dnn internet\n\n# 绑定 PCC 规则\nnode 5gc.js smpolicy dnn-add --project XW_SUPF_5_1_2_4 --name dnn_policy1 --dnn internet --pcc-rules pcc2\n\n# 多个 PCC 规则\nnode 5gc.js smpolicy dnn-add --project XW_SUPF_5_1_2_4 --name dnn_policy2 --dnn internet --pcc-rules \"pcc2,pcc_default\"\n```\n\n#### smpolicy-dnn-edit-skill.js\n\n**功能**：编辑已有 DNN Smpolicy 规则的字段（DNN、sNssai、PCC 绑定等）。\n\n**使用方式**：\n```bash\nnode 5gc.js smpolicy dnn-edit --project <工程> --name <名称> [--dnn <新DNN>] [--pcc-rules <规则>] [选项...]\n```\n\n**参数**：\n\n| 参数 | 说明 |\n|------|------|\n| `--project` | 工程名 |\n| `--name` | 要编辑的 DNN 策略名称（精确匹配） |\n| `--dnn` | 新 DNN 值 |\n| `--sst` | 新 sNssai SST |\n| `--sd` | 新 sNssai SD |\n| `--sess-rules` | 会话规则（xm-select，多个逗号分隔） |\n| `--pcc-rules` | PCC规则（xm-select，多个逗号分隔） |\n| `--pra-rules` | PRA规则（xm-select） |\n| `--ref-qos-timer` | reflectiveQoSTimer |\n| `--headed` | 显示浏览器窗口 |\n\n> ⚠️ xm-select 为多选模式。指定 `--pcc-rules` 时会叠加选中已有规则；编辑时需注意 toggle 行为。\n\n**示例**：\n```bash\n# 修改 DNN\nnode 5gc.js smpolicy dnn-edit --project XW_SUPF_5_1_2_4 --name dnn_policy1 --dnn internet_new\n\n# 修改 PCC 绑定\nnode 5gc.js smpolicy dnn-edit --project XW_SUPF_5_1_2_4 --name dnn_policy1 --pcc-rules pcc2,pcc_default\n```\n\n---\n\n## 全局参数参考\n\n以下参数所有脚本均支持：\n\n| 参数 | 说明 | 适用范围 |\n|------|------|---------|\n| `--url <地址>` | 5GC 仪表 URL | 所有脚本 |\n| `--project <工程>` / `-p <工程>` | 目标工程名称 | 所有脚本 |\n| `--headed` | 打开可见 Chromium 窗口（调试用） | 所有脚本 |\n| `--set-<字段> <值>` | 修改指定字段值 | 所有 edit 脚本 |\n| `--name <名称>` | 按名称精确匹配 | 所有 edit 脚本 |\n| `--id <ID>` | 按 ID 直接定位 | 所有 edit 脚本 |\n\n---\n\n## 字段参考\n\n### AMF 字段\n\n| 字段名 | 说明 | 示例值 |\n|--------|------|--------|\n| `mcc` | 移动国家码 | `460` |\n| `mnc` | 移动网络码 | `01` |\n| `ngap_sip` | NGAP 信令面 IP | `10.200.1.50` |\n| `ngap_port` | NGAP 端口 | `38412` |\n| `http2_sip` | HTTP2 服务 IP | `10.200.1.51` |\n| `http2_port` | HTTP2 端口 | `8080` |\n| `stac` | 起始 TAC | `101` |\n| `etac` | 结束 TAC | `102` |\n| `region_id` | 区域 ID | `1` |\n| `set_id` | Set ID | `1` |\n| `pointer` | 指针 | `1` |\n| `ea[NEA0]` ~ `ea[128-NEA3]` | 加密算法（默认全选） | `1` |\n| `ia[NIA0]` ~ `ia[128-NIA3]` | 完整性保护算法（默认全选） | `1` |\n\n### UDM/AUSF 字段\n\n| 字段名 | 说明 | 示例值 |\n|--------|------|--------|\n| `count` | 实例数量 | `3` |\n| `sip` | SIP 服务 IP | `10.0.0.100` |\n| `port` | 端口 | `80` |\n| `auth_method` | 认证方法 | `5G_AKA` |\n| `scheme` | 协议类型 | `HTTP` |\n| `priority` | 优先级 | `8` |\n\n### SMF/PGW-C 字段\n\n| 字段名 | 说明 | 示例值 |\n|--------|------|--------|\n| `pfcp_sip` | PFCP 信令面 IP | `10.10.10.50` |\n| `n3_ip` | N3 接口 IP | `10.10.10.50` |\n| `n6_ip` | N6 接口 IP | `10.10.10.51` |\n| `http2_sip` | HTTP2 服务 IP | `10.10.10.50` |\n| `dnn` | DNN（数据网络名） | `internet` |\n| `snssai_sst` | NSSAI SST | `1` |\n| `snssai_sd` | NSSAI SD | `ffffff` |\n| `mcc` | MCC | `460` |\n| `mnc` | MNC | `01` |\n| `pdu_capacity` | PDU 会话容量 | `200000` |\n\n### UPF/PGW-U 字段\n\n| 字段名 | 说明 | 示例值 |\n|--------|------|--------|\n| `n3_ip` | N3 接口 IP | `192.168.20.30` |\n| `n4_ip` | N4 接口 IP（PFCP） | `192.168.20.30` |\n| `n6_ip` | N6 接口 IP | `192.168.20.31` |\n| `n6_gw` | N6 网关 IP | `192.168.20.1` |\n| `dnn` | DNN | `internet` |\n| `static_arp` | 静态 ARP | `192.168.20.254` |\n| `sst` | NSSAI SST | `1` |\n| `sd` | NSSAI SD | `ffffff` |\n| `stac` | 起始 TAC | `101` |\n| `etac` | 结束 TAC | `102` |\n\n### GNB 字段\n\n| 字段名 | 说明 | 示例值 |\n|--------|------|--------|\n| `ngap_sip` | NGAP 信令面 IP | `200.20.20.50` |\n| `user_sip_ip_v4` | 用户面 IPv4 | `2.2.2.2` |\n| `user_sip_ip_v6` | 用户面 IPv6 | `::1` |\n| `mcc` | MCC | `460` |\n| `mnc` | MNC | `60` |\n| `stac` | 起始 TAC | `0` |\n| `etac` | 结束 TAC | `0` |\n| `node_id` | 节点 ID | `70` |\n| `cell_count` | 小区数量 | `1` |\n| `replay_ip` | 回放 IP | `0.0.0.0` |\n| `replay_port` | 回放端口 | `0` |\n\n### UE 字段\n\n| 字段名 | 说明 | 示例值 |\n|--------|------|--------|\n| `s_imsi` | 起始 IMSI（15位） | `460001234567890` |\n| `msisdn` | MSISDN（13-15位，86开头） | `8613888888888` |\n| `mcc` | MCC | `460` |\n| `mnc` | MNC | `01` |\n| `key` | KI 密钥（32位 hex） | `001122...` |\n| `op_opc` | OPc 密钥（32位 hex） | `aabbcc...` |\n| `imeisv` | IMEISV（15位，偶数） | `8611111111111111` |\n| `nssai_sst` | NSSAI SST | `1` |\n| `nssai_sd` | NSSAI SD | `111111` |\n| `user_sip_ip_v4` | 用户面 IPv4 | `自动分配` |\n| `user_sip_ip_v6` | 用户面 IPv6 | `自动分配` |\n| `replay_ip` | 回放 IP | `0.0.0.0` |\n| `replay_port` | 回放端口 | `0` |\n\n\n\n#### default-rule-add-skill.js（PCF 默认规则一键配置）\n\n**功能**：为指定工程一键配置完整的 PCF 默认规则链路，包含 QoS 模板 → Traffic Control → PCC 规则 → sm_policy_default → PCF default_smpolicy 全五步。\n\n**使用方式**：\n```bash\nnode 5gc.js pcf default-rule-add --project <工程> [选项...]\nnode skills/5gc/scripts/default-rule-add-skill.js --project <工程> [选项...]\n```\n\n**参数**（全部可选，有默认值）：\n\n| 参数 | 说明 | 默认值 |\n|------|------|--------|\n| `--project` | 工程名 | `XW_S5GC_1` |\n| `--pcf-name` | **PCF 实例名称**（必填，指定要为哪个 PCF 配置默认规则） | 无 |\n| `--qos-id` | QoS 模板 ID | `qos_default_{时间戳}` |\n| `--5qi` | 5QI 值（不指定则自动选择未使用的值） | 自动（优先 8/9/6/5...） |\n| `--maxbr-ul` | 上行最大比特率 | `10000000` |\n| `--maxbr-dl` | 下行最大比特率 | `20000000` |\n| `--gbr-ul` | 上行保证比特率 | `5000000` |\n| `--gbr-dl` | 下行保证比特率 | `5000000` |\n| `--tc-id` | TC 规则 ID | `tc_default_{时间戳}` |\n| `--flow-status` | TC 流状态 | `ENABLED` |\n| `--pcc-id` | PCC 规则 ID | `pcc_default` |\n| `--precedence` | PCC 优先级 | `63` |\n| `--headed` | 显示浏览器窗口（调试用） | off |\n\n**示例**：\n```bash\n# 最简用法（自动生成所有 ID）\nnode 5gc.js pcf default-rule-add --project XW_SUPF_5_1_2_4 --pcf-name pcc\n\n# 指定 QoS 参数（高速率）\nnode 5gc.js pcf default-rule-add --project XW_SUPF_5_1_2_4 --pcf-name pcc \\\n  --qos-id qos_high_rate --5qi 8 \\\n  --maxbr-ul 50000000 --maxbr-dl 100000000 \\\n  --gbr-ul 20000000 --gbr-dl 40000000\n\n# 指定 PCC 优先级\nnode 5gc.js pcf default-rule-add --project XW_SUPF_5_1_2_4 --pcf-name pcc --pcc-id pcc_new --precedence 50\n\n# 调试模式\nnode 5gc.js pcf default-rule-add --project XW_SUPF_5_1_2_4 --pcf-name pcc --headed\n```\n\n**完整链路**：\n1. ✅ **QoS 模板创建**：自动选择未使用的 5QI，创建 QoS 模板\n2. ✅ **Traffic Control 创建**：创建 ENABLED 状态的 TC 规则\n3. ✅ **PCC 规则创建**：创建 PCC 规则，绑定 QoS 和 TC\n4. ✅ **sm_policy_default 创建/更新**：创建或更新默认会话策略，绑定 PCC 规则\n5. ✅ **PCF default_smpolicy 设置**：为指定 PCF 实例设置 default_smpolicy 为 sm_policy_default\n\n**注意事项**：\n- 同一工程多次运行会自动删除旧的同名资源并重建，不会污染配置\n- 必须指定 `--pcf-name` 参数，明确要为哪个 PCF 实例配置默认规则\n- 脚本会自动处理弹窗（iframe）和 CSRF token，无需手动操作\n- 所有步骤都有验证检查，确保配置成功\n\n**已测试工程**：\n- ✅ XW_SUPF_5_1_11_2（PCF \"qqq\"）\n- ✅ XW_SUPF_5_1_8_1（PCF \"pcc\"）\n- ✅ XW_SUPF_5_1_4_1（PCF \"pcc\"）\n\n### PCF/PCRF 字段\n\n| 字段名 | 说明 | 示例值 |\n|--------|------|--------|\n| `http2_sip` | HTTP2 服务 IP | `192.168.20.90` |\n| `http2_port` | HTTP2 端口 | `80` |\n| `MCC` | MCC（大写） | `460` |\n| `MNC` | MNC（大写） | `01` |\n| `count` | 实例数量 | `1` |\n\nFile v1.0.0:_meta.json\n\n{\n  \"ownerId\": \"kn71dq1r35df20eb9d39wsr1ps8281km\",\n  \"slug\": \"5gc-automation\",\n  \"version\": \"1.0.0\",\n  \"publishedAt\": 1777278496152\n}\n\nFile v1.0.0:skill-card.md\n\n## Description:\n\nAutomates bulk creation, editing, and default policy setup for 5GC network functions and policy objects through a Flex web dashboard.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[liuwei120](https://clawhub.ai/user/liuwei120)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nNetwork developers and lab engineers use this skill to run CLI-driven browser automation for AMF, UDM/AUSF, SMF/PGW-C, UPF/PGW-U, GNB, UE, PCF, NRF, QoS, Traffic Control, PCC, and SMPolicy configuration in an authorized 5GC management dashboard.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill automates sensitive 5GC console changes.\n\nMitigation: Run it only in an isolated lab or explicitly authorized 5GC management environment and review changes before execution.\n\nRisk: The security evidence reports shared credentials in the release.\n\nMitigation: Rotate exposed credentials, avoid shared accounts, and use environment-specific secrets before installation or use.\n\nRisk: The security evidence reports disabled TLS checks.\n\nMitigation: Require valid TLS certificates and remove or tightly control TLS verification bypasses before use.\n\nRisk: The security evidence reports session caching.\n\nMitigation: Disable or protect cached browser sessions and clear session state after authorized automation runs.\n\nRisk: The security evidence reports policy mutations without strong safeguards.\n\nMitigation: Add confirmation, dry-run, backup, or change-approval controls before policy replacement or bulk edits.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/liuwei120/skills/5gc-automation)\n- [ClawHub publisher profile](https://clawhub.ai/user/liuwei120)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown with inline shell commands and CLI options]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May invoke Playwright-driven browser automation against a 5GC web dashboard.]\n\n## Skill Version(s):\n\n1.0.0 (source: frontmatter and server release metadata)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.","readmeExcerpt":"Skill: 5GC Automation Owner: liuwei120 Summary: 5GC Web仪表自动化技能，支持AMF/UDM/AUSF/SMF/PGW-C/UPF/PGW-U/GNB/UE/PCF/NRF/QoS/TC/PCC/smpolicy的批量添加与编辑及PCF默认规则一键配置 Tags: latest:1.0.0 Version history: v1.0.0 | 2026-04-27T08:28:16.152Z | user Initial: 5GC AMF/PCF/SMF/UPF/NRF/AUSF/UDM automation via Flex仪表 Web UI Archive index: Archive v1.0.0: 13 files, 45767 bytes Files: scripts/5gc.js (10993b), scripts/amf-add-skill.js (10648b),","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"# 克隆或复制到本机\ngit clone <repo> ~/.openclaw/workspace/skills/5gc\n\n# 直接使用统一入口（推荐）\nnode skills/5gc/scripts/5gc.js <entity> <action> [options]\n\n# 或直接调用各脚本\nnode skills/5gc/scripts/amf-add-skill.js <参数>"},{"language":"text","snippet":"node skills/5gc/scripts/5gc.js <entity> <action> [options]"},{"language":"bash","snippet":"# 1. 添加网元\nnode 5gc.js amf add <名称> [参数...]\n\n# 2. 批量编辑（当前工程下所有该类网元）\nnode 5gc.js amf edit --project <工程> --set-<字段> <值>\n\n# 3. 单个编辑（按名称精确匹配）\nnode 5gc.js amf edit --name <名称> --project <工程> --set-<字段> <值>"},{"language":"bash","snippet":"node 5gc.js amf add <名称> [选项...]\n# 或直接调用\nnode skills/5gc/scripts/amf-add-skill.js <名称> [选项...]"},{"language":"bash","snippet":"# 基本添加\nnode 5gc.js amf add AMF_TEST --project XW_S5GC_1\n\n# 指定 NGAP IP 和端口\nnode 5gc.js amf add AMF_PROD --project XW_S5GC_1 --ngap_sip 10.200.1.50 --ngap_port 38412\n\n# 使用不同 MCC/MNC\nnode 5gc.js amf add AMF_CMCC --project XW_S5GC_1 --mcc 460 --mnc 00"},{"language":"bash","snippet":"node 5gc.js amf edit [选项...]"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: 5gc-web-dotouch\nversion: 1.0.0\ndescription: 5GC Web仪表自动化技能，支持AMF/UDM/AUSF/SMF/PGW-C/UPF/PGW-U/GNB/UE/PCF/NRF/QoS/TC/PCC/smpolicy的批量添加与编辑及PCF默认规则一键配置\nauthor: liuwei120\ntags: [5gc, automation, playwright, network]\n---\n\n# 5GC Web 仪表自动化技能\n\n> 统一管理 AMF、UDM/AUSF、SMF/PGW-C、UPF/PGW-U、GNB、UE、PCF、NRF 八类网元的添加与编辑操作，以及 PCC 规则、QoS 模板、Traffic Control、SMPolicy 和 PCF 默认规则一键配置。\n\n---\n\n## 目录\n\n- [快速开始](#快速开始)\n- [统一 CLI 入口](#统一-cli-入口)\n- [技能详细文档](#技能详细文档)\n  - [AMF](#amf)\n  - [UDM/AUSF](#udmausf)\n  - [SMF/PGW-C](#smfpgw-c)\n  - [UPF/PGW-U](#upfpgw-u)\n  - [GNB](#gnb)\n  - [UE](#ue)\n  - [PCF/PCRF](#pcfpcrf)\n  - [PCC 规则](#pcc-规则)\n  - [QoS 模板](#qos-模板)\n  - [Traffic Control](#traffic-control)\n  - [SMPolicy](#smpolicy)\n    - [UE Smpolicy](#smpolicy-ue-add-skilljs)\n  - [DNN Smpolicy](#smpolicy-dnn)\n    - [DNN Smpolicy](#smpolicy-dnn)\n    - [TAC Smpolicy](#smpolicy-tac)\n    - [Cell Smpolicy](#smpolicy-cell)\n    - [Cell Forbidden Smpolicy](#smpolicy-cell-forbidden)\n  - [NRF](#nrf)\n- [全局参数参考](#全局参数参考)\n- [字段参考](#字段参考)\n\n---\n\n## 快速开始\n\n### 安装方法\n\n技能目录位于 `skills/5gc/`，由统一入口 `5gc.js` 统一调度，无需额外安装：\n\n```bash\n# 克隆或复制到本机\ngit clone <repo> ~/.openclaw/workspace/skills/5gc\n\n# 直接使用统一入口（推荐）\nnode skills/5gc/scripts/5gc.js <entity> <action> [options]\n\n# 或直接调用各脚本\nnode skills/5gc/scripts/amf-add-skill.js <参数>\n```\n\n### 前置要求\n\n- Node.js ≥ 14\n- Playwright（`npm i playwright && npx playwright install chromium`）\n- 5GC 仪表地址：`https://192.168.3.89`（默认）\n- 登录凭证：`dotouch@dotouch.com.cn` / `dotouch`\n- 仪表上已创建对应工程（如 `XW_S5GC_1`）\n\n### 会话缓存\n\n所有脚本自动复用 Playwright 会话缓存（`.sessions/` 目录），首次登录后再次运行无需重复登录。\n\n---\n\n## 统一 CLI 入口\n\n### 路径\n\n```\nnode skills/5gc/scripts/5gc.js <entity> <action> [options]\n```\n\n### 支持的网元与操作\n\n| entity | add | edit | 特殊操作 |\n|--------|-----|------|---------|\n| `amf`  | ✅ | ✅ | |\n| `udm`  | ✅ | ✅ | |\n| `smf`  | ✅ | ✅ | |\n| `upf`  | ✅ | ✅ | |\n| `gnb`  | ✅ | ✅ | |\n| `ue`   | ✅ | ✅ | |\n| `pcf`  | ✅ | ✅ | `default-rule-add` |\n| `pcc`  | ✅ | ✅ | |\n| `qos`  | ✅ | | |\n| `tc`   | ✅ | | |\n| `smpolicy` | | | `add-pcc`, `ue-add`, `ue-edit`, `dnn-add`, `dnn-edit` |\n| `nrf`  | ✅ | ✅ | |\n\n### 全局选项\n\n| 选项 | 说明 |\n|------|------|\n| `--url <地址>` | 5GC 仪表地址，默认 `https://192.168.3.89` |\n| `--headed` | 打开可见浏览器窗口（调试用） |\n\n### 三种使用模式\n\n```bash\n# 1. 添加网元\nnode 5gc.js amf add <名称> [参数...]\n\n# 2. 批量编辑（当前工程下所有该类网元）\nnode 5gc.js amf edit --project <工程> --set-<字段> <值>\n\n# 3. 单个编辑（按名称精确匹配）\nnode 5gc.js amf edit --name <名称> --project <工程> --set-<字段> <值>\n```\n\n---\n\n## 技能详细文档\n\n---\n\n### AMF\n\n#### amf-add-skill.js\n\n**功能**：在指定工程下添加一个 AMF 实例。\n\n**使用方式**：\n```bash\nnode 5gc.js amf add <名称> [选项...]\n# 或直接调用\nnode skills/5gc/scripts/amf-add-skill.js <名称> [选项...]\n```\n\n**参数**：\n\n| 参数 | 说明 | 默认值 |\n|------|------|--------|\n| `<名称>` | AMF 实例名称（位置参数） | **必填** |\n| `--project <工程>` / `-p <工程>` | 目标工程名称 | `5G_basic_process` |\n| `--url <地址>` | 5GC 仪表地址 | `https://192.168.3.89` |\n| `--mcc <值>` | MCC（移动国家码） | `460` |\n| `--mnc <值>` | MNC（移动网络码） | `01` |\n| `--ngap_sip <IP>` | NGAP 信令面 IP | `200.20.20.1` |\n| `--ngap_port <端口>` | NGAP 端口 | `38412` |\n| `--http2_sip <IP>"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn71dq1r35df20eb9d39wsr1ps8281km\",\n  \"slug\": \"5gc-automation\",\n  \"version\": \"1.0.0\",\n  \"publishedAt\": 1777278496152\n}"},{"path":"skill-card.md","content":"## Description:\n\nAutomates bulk creation, editing, and default policy setup for 5GC network functions and policy objects through a Flex web dashboard.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[liuwei120](https://clawhub.ai/user/liuwei120)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nNetwork developers and lab engineers use this skill to run CLI-driven browser automation for AMF, UDM/AUSF, SMF/PGW-C, UPF/PGW-U, GNB, UE, PCF, NRF, QoS, Traffic Control, PCC, and SMPolicy configuration in an authorized 5GC management dashboard.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill automates sensitive 5GC console changes.\n\nMitigation: Run it only in an isolated lab or explicitly authorized 5GC management environment and review changes before execution.\n\nRisk: The security evidence reports shared credentials in the release.\n\nMitigation: Rotate exposed credentials, avoid shared accounts, and use environment-specific secrets before installation or use.\n\nRisk: The security evidence reports disabled TLS checks.\n\nMitigation: Require valid TLS certificates and remove or tightly control TLS verification bypasses before use.\n\nRisk: The security evidence reports session caching.\n\nMitigation: Disable or protect cached browser sessions and clear session state after authorized automation runs.\n\nRisk: The security evidence reports policy mutations without strong safeguards.\n\nMitigation: Add confirmation, dry-run, backup, or change-approval controls before policy replacement or bulk edits.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/liuwei120/skills/5gc-automation)\n- [ClawHub publisher profile](https://clawhub.ai/user/liuwei120)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown with inline shell commands and CLI options]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May invoke Playwright-driven browser automation against a 5GC web dashboard.]\n\n## Skill Version(s):\n\n1.0.0 (source: frontmatter and server release metadata)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment."}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":"5GC Web仪表自动化技能，支持AMF/UDM/AUSF/SMF/PGW-C/UPF/PGW-U/GNB/UE/PCF/NRF/QoS/TC/PCC/smpolicy的批量添加与编辑及PCF默认规则一键配置 Skill: 5GC Automation Owner: liuwei120 Summary: 5GC Web仪表自动化技能，支持AMF/UDM/AUSF/SMF/PGW-C/UPF/PGW-U/GNB/UE/PCF/NRF/QoS/TC/PCC/smpolicy的批量添加与编辑及PCF默认规则一键配置 Tags: latest:1.0.0 Version history: v1.0.0 | 2026-04-27T08:28:16.152Z | user Initial: 5GC AMF/PCF/SMF/UPF/NRF/AUSF/UDM automation via Flex仪表 Web UI Archive index: Archive v1.0.0: 13 files, 45767 bytes Files: scripts/5gc.js (10993b), scripts/amf-add-skill.js (10648b),","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":893,"uniquenessScore":53,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-11T06:52:24.292Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-11T06:52:24.292Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-11T10:52:22.698Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}