Install
openclaw skills install @huaweicloudskill/huawei-cloud-icp-preapproval-checkopenclaw skills install @huaweicloudskill/huawei-cloud-icp-preapproval-check本 Skill 用于核对单位名称和经营范围是否命中华为云 ICP 备案规则中的前置审批关键词。根据匹配结果,自动输出需提交的前置审批材料清单(含审批类型、审批文件、批复单位、"不涉及"承诺书模板及操作提示)。
与 huawei-cloud-icp-rule-consult 的区别:icp-rule-consult 是通用的 ICP 备案规则咨询 Skill(流程、材料、变更、接入、注销等 130+ 问答),而本 Skill 专注于前置审批关键词的精准匹配和材料清单生成,不处理备案流程等其他咨询问题。两者职责互不重叠。
python 指向真实解释器rapidocr_onnxruntime,详见"营业执照 OCR 兜底"章节CLI 说明:本 Skill 不提供 KooCLI 命令,全部功能通过 Python 脚本实现,因此不涉及
--cli-region参数。
仅依据用户提供的单位名称、完整经营范围和备案省份,使用本 skill 内的华为云备案规则做关键词初筛。不得写成行政许可、法律结论或备案通过保证。全国行业规则决定审批类型、证件和批复单位;省级规则决定属地关键词和“不涉及”模板。名称明确为通用“不涉及前置审批”模板时,可供全国明确词和复核词命中的任一类别在同省使用;带教育、文化、金融、新闻等类别限定的模板仍只用于原类别。禁止跨省套用模板。
必须同时具备单位名称、完整经营范围和备案省份。三项齐全后进入下一步;缺失时向用户索取,不猜测。
用户提供了营业执照图片但未提供文本字段时,优先使用智能体原生 OCR 识别三项内容;不支持或识别失败时,运行 Python OCR 脚本作为兜底。
python <技能目录>/scripts/ocr_license.py --image <营业执照图片路径> --pretty
OCR 输出 province_candidates 需人工确认;地址省份不一定等于备案省份。
使用校验后的文本输入运行随附检查脚本,执行全局和行业关键词比对。
python <技能目录>/scripts/check_preapproval.py --company-name <单位名称> --province <备案省份> --province-source <省份来源> -- <经营范围原文>
完整原样返回脚本标准输出,包含基本信息表、前置审批材料表和免责声明。命中时逐行列出审批类型、命中文档、材料、审批文件、批复单位、承诺书模板和提示信息;未命中时保留表头并提示"未命中当前华为云备案规则中的关键词"。
结果异常情况:
--diagnose 诊断用户提供 或 执照识别。不含、不包括、不涉及、不提供 控制的后续片段、xxx除外 以及句首/括号内用于排除主体类型的 非……广播电台/电视台/出版单位/新闻单位/媒体 短语不参与经营范围匹配;只排除该表达控制的内容。普通业务修饰语如 非营利性网络出版服务 不因出现 非 而排除。药、药品、医疗器械、互联网药品信息服务 和 药品信息服务 均不生成该类别结果。图书管理服务 在全国范围内不参与前置审批关键词匹配;只屏蔽这一完整短语,独立出现的 图书、互联网图书、网络出版服务 等出版业务词仍按规则判断。道路货物运输 作为 道路运输 的省级匹配别名;该别名不用于其他省份。所有环境只使用已安装的 Python 3.8+,并要求字面命令 python 指向真实解释器。不要搜索其他解释器、安装软件或派生第二个 Python 进程。
运行时只读取随包的 references/huawei-rules.json,不会联网、不会自动刷新规则,也不会写入 references/。官网来源清单和最近一次人工官网核验记录见 references/official-sources.md。
分析命令:
python <技能目录>/scripts/check_preapproval.py --company-name <单位名称> --province <备案省份> --province-source <省份来源> -- <经营范围原文>
尖括号是说明占位符,动态值必须作为独立参数安全传递。命令失败时只转述标准错误,不把规则错误当成未命中。
正常分析输出“未提供…对应模板”但同一输入在其他安装中存在模板,或用户要求排查跨机器结果不一致时,必须先运行:
python <技能目录>/scripts/check_preapproval.py --diagnose
完整转述该命令的标准输出或标准错误后才能判断根因。规则 JSON 的全国类别主键固定为 categories[].id;加载后的 Python 字段为 Category.category_id,加载器负责将前者映射为后者。不得修改规则 schema 来对齐 dataclass 字段,不得在未运行诊断时声称字段不一致,不得在命令失败后自行推测模板状态。
python <技能目录>/scripts/ocr_license.py --image <营业执照图片路径> --pretty
rapidocr_onnxruntime,输出 JSON,包括 company_name、scope、province_candidates、warnings 和 raw_text。它只做文字识别和候选字段提取,不做规则判断,也不联网上传图片。python -m pip install -r <技能目录>/requirements-ocr.txt
OCR 输出确认后,仍必须把字段传给现有 check_preapproval.py,并完整原样返回该脚本标准输出;OCR JSON 不是 ICP 分析结果。
成功时完整原样返回脚本标准输出,始终保留:
# ICP 备案前置审批关键词核对结果
## 1. 基本信息
## 2. 前置审批材料
基本信息表头:
| 单位名称 | 经营范围 | 备案省份 | 规则版本 | 核对日期 |
材料表头固定为六列:
| 前置审批类型 | 命中关键词 | 审批文件 | 批复单位 | 不涉及承诺书 | 提示 |
单位名称和经营范围中的命中词使用 Markdown 行内代码 `命中词`。一种前置审批类型只显示一行;第二列显示该材料行的全部实际命中关键词,按稳定顺序去重,不得混入排除片段。同一 filing type 合并时仍保留 category ownership,分别保留材料、批复单位、模板和关键词归属。一条官网规则的多个模板按官网顺序全部展示。
模板选择顺序为:同省同类别专用模板优先;没有专用模板且没有官网排除规则时,回退到同省通用模板。通用模板名称仅识别 不涉及前置审批承诺书、不涉及前置审批项承诺书 和 不涉及相关审批的承诺书 这三类明确命名,稳定去重,不根据相同 URL 猜测通用性。仍无可用模板时精确显示 未提供{province}{categoryLabel}对应模板;无备案省份时显示 未提供备案省份,无法匹配同省对应模板。省级独立规则不编造全国许可证或机关。
未命中时保留表头并显示 未命中当前华为云备案规则中的关键词,不得改写为“无需前置审批”。免责声明固定为:
本结果仅依据单位名称、经营范围和华为云备案规则进行关键词初筛,不构成行政许可或法律结论,不保证备案通过。
免责声明作为无标题普通段落。
分析成功时,必须严格使用上述固定输出格式,并将脚本标准输出完整原样回复。不得以任何理由改用摘要、说明性段落、项目列表或其他格式,也不得省略、重排、合并或改写任何标题、表头、材料行及免责声明;命中和未命中均不可例外。只有命令失败时才使用规定的错误输出格式。
本发行包包含已人工核验的静态规则和官方来源记录,不包含开发测试目录和维护索引。用户可运行以下命令校验随包规则的结构和引用:
python <技能目录>/scripts/check_preapproval.py --validate-only
官网规则变更应在开发项目中完成来源复核、全量测试和发行打包;不应直接在已安装的发行包中手工替换单个文件。运行时不会下载页面、替换规则、创建备份或回滚文件。