Skill: wu-xiaochen/ontology-clawra-backup-20260319-151919 (version 1.0.0)

--- name: ontology-clawra description: Palantir本体论实践版本 v3.5 - **强制执行版**。结构化知识图谱+规则引擎+科学推理方法论。**每次决策/分析前必须使用**。推理结果必须展示详细推理过程：包含用户需求、规则依据ID、规则内容、置信度标注。 **强制执行原则（v3.5 新增）**： - **所有推理任务，必须首先使用本技能框架**，禁止凭经验输出 - 本技能用于：推理过程记录、本体完善、规则优化 - 本技能**不包含用户私人数据**，数据严格本地私有 - 本技能与 ontology-platform 项目**严格分离**：技能是内核，项目是衍生 **安全边界（重要）**： - 自动学习：默认禁用，需用户明确授权"写入本体" - 文件读取：仅读取 ~/.openclaw/skills/ontology-clawra/memory/ - 文件写入：仅在用户确认后写入本地本体 - 网络：不主动发起网络请求 - 隐私：**绝不上传用户数据到任何服务器** - **红线**：用户私人推理记录、个人决策数据严禁同步到GitHub等外部平台 metadata: { "openclaw": { "emoji": "🧠", "version": "3.5.0", "last_updated": "2026-03-19" } } --- # ontology-clawra v3.5 **Palantir本体论实践版本** - Clawra的核心智能引擎 v3.5 --- ## ⚠️ 安全边界与风险控制（必读） ### 风险说明 - 自动学习触发器可能产生意外的持久更改 - 对本地本体的自动写入存在隐私风险 - 代理自主调用时可能产生未预期的持久化 ### 安全措施 | 功能 | 默认状态 | 触发条件 | |------|----------|----------| | 自动抽取到本体 | 🔴 **禁用** | 用户明确确认"写入本体" | | 自动置信度升级 | 🔴 **禁用** | 用户确认推理结果正确 | | 读取工作区文件 | 🟡 **受限** | 仅读取memory/目录 | | 写入本地本体 | 🔴 **禁用** | 用户确认后单次执行 | ### 使用规范 1. **自动学习**：默认不启用。用户说"写入本体"或"记录这个"时才执行单次写入 2. **工作区读取**：仅读取 `memory/` 目录，不读取其他敏感文件 3. **写入确认**：每次写入本地本体前，必须告知用户写入内容并确认 4. **隐私保护**：不将用户数据上传到GitHub/ClawHub（已在.gitignore中保护） --- ## 🆕 v3.3 新增：主动学习能力 ### 核心升级：从被动到主动 | v3.2 | v3.3 (新增) | |------|-------------| | 用户不说"抽取" → 不提取 | 用户确认推理 → **自动提取** | | 重复概念 → 忽略 | 重复出现3次 → **自动识别** | | 推理失败 → 等待用户问 | 推理失败 → **主动建议补充** | ### 自动学习触发条件（⚠️ 默认禁用，需用户明确授权） ```yaml AUTO_LEARN_TRIGGERS: # 触发1：用户明确说"写入本体"或"记录这个" - event: "user_says_write_ontology" action: "extract_to_ontology" requires_confirmation: true # 每次写入前必须确认 # 触发2：用户说"确认这个是对的" - event: "user_confirms_reasoning" action: "suggest_upgrade_confidence" requires_confirmation: true # 建议升级，但需用户确认 # 触发3：推理失败（仅提示，不自动写入） - event: "ontology_lookup_failed" action: "suggest_supplement" prompt_user: true auto_write: false # 不自动写入 # 触发4：用户纠正错误（仅记录，不自动修改） - event: "user_correction" action: "log_correction" auto_write: false # 不自动修改本体 ``` - event: "user_correction" action: "update_entity" log: true ``` ### 自动抽取流程（⚠️ 每次写入需用户确认） ``` 用户明确说"写入本体"或"记录这个" │ ▼ ┌─────────────────────────────┐ │ 1. 识别可抽取内容 │ │ - 新概念 (Concept) │ │ - 新规律 (Law) │ │ - 新规则 (Rule) │ └─────────────┬───────────────┘ │ ▼ ┌─────────────────────────────┐ │ 2. 展示给用户确认 │ ⚠️ 关键！ │ "即将写入以下内容：xxx" │ └─────────────┬───────────────┘ │ 用户确认"是的" ▼ ┌─────────────────────────────┐ │ 3. 写入本体 │ └─────────────┬───────────────┘ │ ▼ ┌─────────────────────────────┐ │ 4. 反馈用户 │ │ "已写入本体：xxx" │ └─────────────────────────────┘ ``` --- ## 🧬 核心理念升级 ### v2.0 问题 - 纯架构设计，缺少方法论 - 无本体自动构建能力 - 推理"照本宣科"，缺乏科学性验证 ### v3.0 改进 - ✅ 嵌入科学推理方法论 - ✅ 支持交互式本体构建 - ✅ 平衡灵活性与科学性 ### v3.3 升级 - ✅ **主动学习**：用户确认后自动抽取 - ✅ **智能触发**：高频实体自动识别 - ✅ **推理失败建议**：主动提示补充本体 --- ## 一、科学推理方法论（必读） ### ⚠️ 任何推理前必须遵循的流程 ``` ┌─────────────────────────────────────────────────────────────┐ │ 推理前置检查流程 │ ├─────────────────────────────────────────────────────────────┤ │ │ │ 1️⃣ 检查本体（Check） │ │ ↓ │ │ 本体有相关数据？→ 调用本体推理 │ │ ↓ 无 │ │ ↓ │ │ 2️⃣ 声明来源（Declare） │ │ "以下为外部知识/猜测/假设，需要验证" │ │ ↓ │ │ 3️⃣ 交互确认（Confirm）- ⚠️ 关键步骤！ │ │ 关键假设必须用户确认后再深入 │ │ ↓ │ │ 4️⃣ 标注假设（Label） │ │ 明确标注哪些是"推测"、哪些是"确认" │ │ ↓ │ │ 5️⃣ 灵活推理（Reason） │ │ 结合本体 + 合理假设 + 明确标注 │ │ │ └─────────────────────────────────────────────────────────────┘ ``` ### ⚠️ 铁律：不确定时必须交互确认 ``` 当推理过程中存在以下情况时，必须暂停并与用户确认： ─────────────────────────────────────────────────────────── ❌ 禁止直接输出结论的情况： 1. 存在 ASSUMED 级别的关键假设 → 必须问用户确认后才能给出最终结论 2. 缺少必要的输入参数 → 必须先询问用户获取必要信息 3. 计算结果依赖多个假设 → 必须列出所有假设，让用户确认 4. 给出多个方案但无法确定最优 → 必须让用户选择或确认偏好 ✅ 正确的交互流程： Step 1: 列出已确认的信息（本体数据） Step 2: 列出不确定的信息（需要确认的假设） Step 3: 提供典型场景/默认值供选择 Step 4: 等待用户确认后再输出最终结论 ⚡ 违规判定： - 如果直接给结论而没有先确认不确定信息 → 违反方法论 - 如果结论依赖假设但未标注置信度 → 违反方法论 ``` ### 推理结果可信度标注 | 标注 | 含义 | 行动 | |------|------|------| | 🟢 **CONFIRMED** | 本体/记忆中有确凿数据 | 直接使用 | | 🟡 **ASSUMED** | 基于合理假设，未验证 | 需用户确认 | | 🔴 **SPECULATIVE** | 纯猜测，无依据 | 明确声明，谨慎使用 | | ⚪ **UNKNOWN** | 确实不知道 | 坦诚告知用户 | --- ## 二、四大支柱（保留并增强） ### 2.1 Objects（对象） ```yaml # 主体 Person: - id, name, role, goals[], preferences{}, capabilities[] # 概念/抽象 Concept: - id, name, definition, examples[], properties{} # 规律/法则 Law: - id, name, domain, statement, conditions[], effects[], source, confidence # 意图 Objective: - id, name, priority, criteria{}, status # 项目 Project: - id, name, objectives[], status, owner, depends_on[] # 任务 Task: - id, title, status, priority, assignee, blockers[], estimated_hours # 规则 Rule: - id, name, condition, action, enabled, weight, source, confidence # 决策 Decision: - id, context, options[], selected, rationale, based_on_rules[], confidence ``` ### 2.2 Links（关系） ```yaml # 基础关系 works_on: Person → Project/Task depends_on: Task/Project → Task/Project has_objective: Project → Objective has_rule: Project/Objective → Rule # 知识关系 exemplifies: Concept → Example governs: Law → Domain explains: Concept → Law supports: Evidence → Rule contradicts: Fact → Rule derived_from: Rule/Law → Evidence # 新增：规则/规律的数据来源 # 推理关系 triggers: Rule → Decision validates: Rule → Decision refines: Rule → Rule # 元关系 relates_to: Any → Any is_a: Concept → Concept part_of: Object → Object ``` ### 2.3 Functions（规则引擎） ```python # 推理引擎核心函数（增强版） def check_ontology(query): """1. 检查本体是否有相关数据""" results = search_objects(query) + search_laws(query) + search_rules(query) if results: return {"status": "FOUND", "data": results, "confidence": "CONFIRMED"} return {"status": "NOT_FOUND", "data": None, "confidence": "UNKNOWN"} def declare_source(confidence_level, content): """2. 声明数据来源""" labels = { "CONFIRMED": "🟢 本体数据", "ASSUMED": "🟡 合理假设", "SPECULATIVE": "🔴 推测", "UNKNOWN": "⚪ 未知" } return f"{labels.get(confidence_level, '')} {content}" def confirm_with_user(assumptions): """3. 交互确认关键假设""" # 返回需要确认的问题列表 return [f"请确认: {a}" for a in assumptions] def label_result(content, confidence): """4. 标注结果可信度""" prefix = { "CONFIRMED": "🟢", "ASSUMED": "🟡", "SPECULATIVE": "🔴", "UNKNOWN": "⚪" } return f"{prefix.get(confidence, '')} {content}" def flexible_reasoning(ontology_data, assumptions, user_confirmations): """5. 灵活推理 - 结合本体+假设+确认""" # 如果本体有数据，优先使用 # 如果需要假设，明确标注 # 如果用户已确认，升级置信度 pass # 链式推理 def chain_reasoning(facts, rules, confidence_threshold=0.5): """链式推理：事实 + 规则 → 新结论""" conclusions = [] for rule in rules: if rule.confidence < confidence_threshold: continue if all(fact_matcher(f, rule.conditions) for f in facts): conclusion = infer(rule, facts) conclusion.source = f"derived_from:{rule.id}" conclusion.confidence = min(rule.confidence, min(f.confidence for f in facts)) conclusions.append(conclusion) return conclusions ``` ### 2.4 Actions（操作） ```yaml # 操作类型（增强） Action: - type: execute # 执行具体任务 - type: reason # 推理分析（走方法论流程） - type: decide # 决策选择 - type: learn # 学习新知识（构建本体） - type: validate # 验证一致性 - type: query # 查询知识网络 - type: extract # 新增：从交互中抽取本体 - type: confirm # 新增：请求用户确认 ``` --- ## 三、本体自动构建能力（新增核心功能） ### 3.1 交互式抽取流程 ``` ┌─────────────────────────────────────────────────────────────┐ │ 本体自动构建流程（推荐使用） │ ├─────────────────────────────────────────────────────────────┤ │ │ │ 用户输入 │ │ │ │ │ ▼ │ │ ┌─────────────────────┐ │ │ │ 实体识别 │ ← 识别可抽取的对象 │ │ │ - Person │ │ │ │ - Concept │ │ │ │ - Law │ │ │ │ - Rule │ │ │ └─────────┬───────────┘ │ │ │ │ │ ▼ │ │ ┌─────────────────────┐ │ │ │ 关系识别 │ ← 识别实体间关系 │ │ │ - is_a │ │ │ │ - relates_to │ │ │ │ - triggers │ │ │ │ - supports │ │ │ └─────────┬───────────┘ │ │ │ │ │ ▼ │ │ ┌─────────────────────┐ │ │ │ 去重检查 │ ← 避免重复构建 │ │ │ - 检查name是否已存在│ │ │ │ - 检查similar关系 │ │ │ └─────────┬───────────┘ │ │ │ │ │ ▼ │ │ ┌─────────────────────┐ │ │ │ 写入本体 │ ← 增量更新 │ │ │ - Objects │ │ │ │ - Links │ │ │ │ - 记录来源 │ │ │ └─────────────────────┘ │ │ │ └─────────────────────────────────────────────────────────────┘ ``` ### 3.2 抽取识别模式 ```python # 可抽取的实体模式 EXTRACT_PATTERNS = { "Person": [ "我叫.*", "我是.*", "用户是.*", "他.*她.*", "创业者", "工程师" ], "Concept": [ ".*是.*", "所谓的.*", "概念.*", "本体论", "知识图谱", "Agent" ], "Law": [ "当.*时.*", "如果.*那么.*", "规律", "法则", "原则" ], "Rule": [ "应该.*", "必须.*", "建议.*", "推荐.*", "选择.*" ], "Project": [ "项目.*", "在做.*", "目标是.*" ], "Task": [ "任务.*", "需要做.*", "要做.*" ] } # 可抽取的关系模式 RELATION_PATTERNS = { "is_a": ["是.*的一种", "属于.*类型"], "relates_to": ["和.*相关", "与.*有关"], "triggers": ["导致.*", "引发.*"], "supports": ["支持.*", "基于.*"], "contradicts": ["与.*矛盾", "不同于.*"] } ``` ### 3.3 去重机制 ```python def check_duplicate(entity_type, name, properties=None): """检查是否已存在相同实体""" existing = load_ontology() for obj in existing.get(entity_type, []): # 名称完全匹配 if obj.get("name") == name: return {"duplicate": True, "existing": obj} # 相似度检查（可选） if similarity(name, obj.get("name")) > 0.8: return {"duplicate": True, "similar": obj} return {"duplicate": False} def incremental_update(new_entities, new_links): """增量更新，避免覆盖""" existing = load_ontology() # 合并对象 for entity_type, entities in new_entities.items(): if entity_type not in existing: existing[entity_type] = [] for entity in entities: dup = check_duplicate(entity_type, entity.get("name")) if not dup["duplicate"]: entity["source"] = "interactive_extraction" entity["created_at"] = timestamp() existing[entity_type].append(entity) # 合并关系 # ...类似逻辑 save_ontology(existing) ``` --- ## 四、推理流程升级（科学性 + 灵活性） ### 4.1 完整推理流程 ``` 用户Query │ ▼ ┌────────────────────────────┐ │ 1. 方法论检查 │ │ check_ontology() │ │ - 查Objects │ │ - 查Laws │ │ - 查Rules │ └───────────┬────────────────┘ │ ▼ ┌────────────────────────────┐ │ 2. 标注置信度 │ │ - CONFIRMED? → 使用 │ │ - UNKNOWN? → 声明来源 │ └───────────┬────────────────┘ │ ▼ ┌────────────────────────────┐ │ 3. 需要假设？ │ │ 是 → 明确标注ASSUMED │ │ 否 → 直接推理 │ └───────────┬────────────────┘ │ ▼ ┌────────────────────────────┐ │ 4. 交互确认（可选） │ │ - 关键假设问用户 │ │ - 根据确认调整置信度 │ └───────────┬────────────────┘ │ ▼ ┌────────────────────────────┐ │ 5. 灵活推理 │ │ - 本体优先 │ │ - 合理假设补充 │ │ - 明确标注差异 │ └───────────┬────────────────┘ │ ▼ ┌────────────────────────────┐ │ 6. 输出结果 │ │ - 带置信度标注 │ │ - 附推理依据 │ │ - 可选：抽取新本体 │ └────────────────────────────┘ ``` ### 4.2 灵活性平衡原则 | 场景 | 处理方式 | |------|----------| | 本体有明确数据 | 🟢 直接使用，标注CONFIRMED | | 本体有部分数据 | 🟡 使用本体 + 标注ASSUMED补充 | | 本体无数据但有合理推断 | 🟡 明确标注ASSUMED + 说明依据 | | 完全无据可查 | 🔴 明确标注SPECULATIVE + 建议验证 | | 需要用户确认 | ⚡ 交互提问 + 暂停推理 | --- ## 五、存储结构 ``` memory/ontology-clawra/ ├── schema.yaml # 类型定义+约束 ├── graph.jsonl # Objects + Links (实体+关系) ├── rules.yaml # Functions (业务规则库) ├── laws.yaml # Laws (规律/法则库) ├── decisions.jsonl # Actions-决策日志 ├── reasoning.jsonl # Actions-推理日志（含置信度） ├── concepts.jsonl # Concepts (概念库) ├── extraction_log.jsonl # 新增：本体抽取日志 └── confidence_tracker.jsonl # 新增：置信度追踪 ``` --- ## 六、使用方法（升级版） ### 6.1 推理（带方法论） ```bash # 基础推理（自动方法论检查） python3 scripts/ontology-clawra.py reason --query "用户应该做什么" # 强制声明来源 python3 scripts/ontology-clawra.py reason --query "100户用气量" --declare-source # 交互确认模式 python3 scripts/ontology-clawra.py reason --query "调压箱选型" --confirm-needed ``` ### 6.2 本体构建 ```bash # 从文本自动抽取（新增） python3 scripts/ontology-clawra.py extract --text "用户是AI创业者，目标是构建垂直领域Agent平台" # 手动创建 python3 scripts/ontology-clawra.py create --type Person --props '{"name":"用户","role":"AI创业者"}' # 创建规律（带来源） python3 scripts/ontology-clawra.py create --type Law --props '{"name":"红海规避","domain":"战略","statement":"...","source":"用户输入","confidence":"ASSUMED"}' ``` ### 6.3 验证与追踪 ```bash # 验证推理可信度 python3 scripts/ontology-clawra.py validate --check-confidence # 查看推理链 python3 scripts/ontology-clawra.py trace --decision decision_id # 本体构建记录 python3 scripts/ontology-clawra.py extraction-history ``` --- ## 七、推理示例（方法论应用） ### 场景：调压箱选型 ``` 用户：100户居民小区调压箱如何选型？ 1. check_ontology("调压箱 选型 居民") → 结果：本地无数据 → 标注：UNKNOWN 2. 声明来源 ⚪ 本地本体无相关数据，以下为外部知识推理 3. 需要假设？→ 是 - 假设：单户用气量、同时系数、地区等 → 标注：ASSUMED 4. 交互确认 ❓ 请确认： - 是否有供暖需求？（影响用气量） - 是什么类型的住宅？ - 当地燃气供气压力是多少？ 5. 输出 🟡 基于以下假设的推理（需确认）： - 假设1：南方城市，无集中供暖 - 假设2：每户配置双眼灶+热水器 - 假设3：多层住宅 计算结果：RTZ-80/25，额定流量80m³/h 置信度：ASSUMED（需验证） 6. 可选：抽取到本体 → 提取：Law{居民用气计算规则} → 提取：Rule{调压箱选型规则} ``` ### 场景：已知信息推理 ``` 用户：我在做AI创业，目标垂直领域Agent 1. check_ontology("AI创业 垂直领域 Agent") → 结果： - Law[红海规避]: 竞品存在 → 垂直领域 - Rule[战略选择]: AI创业 + 红海 → 垂直领域 → 标注：CONFIRMED 2. 直接推理 🟢 基于本体的推理： - 检测到：市场有Dify/Ragflow竞品 - 匹配规则：红海规避法则 → 推荐：垂直领域 + 本体论 置信度：CONFIRMED ``` --- ## 八、与Proactive-Agent集成 ontology-clawra v3.0 是 Agent 的"科学大脑"： ``` proactive-agent 发现机会 │ ▼ ontology-clawra 推理 │ ├── 1. check_ontology() → 查本体 │ ├── 2. 标注置信度 → 明确来源 │ ├── 3. 交互确认 → 关键假设需用户同意 │ └── 4. flexible_reasoning() → 灵活推理 ▼ 输出带置信度的决策建议 ``` --- ## 九、验证 ```bash # 验证知识网络一致性 python3 scripts/ontology-clawra.py validate # 检查置信度标注 python3 scripts/ontology-clawra.py validate --check-confidence # 检查循环依赖 python3 scripts/ontology-clawra.py validate --check-cycles # 推理链回溯 python3 scripts/ontology-clawra.py trace --decision decision_id ``` --- ## 十、持续优化机制 ### 每次重大推理后 1. **记录推理** → reasoning.jsonl（含置信度） 2. **用户反馈** → 如果用户纠正，更新置信度 3. **本体更新** → 从正确推理中抽取新实体 ### 定期（Heartbeat） 1. 检查置信度分布 2. 提升/降低实体置信度 3. 清理低置信度实体 4. 优化抽取规则 --- **v3.0 核心升级**：从"照本宣科"升级为"科学推理 + 灵活交互 + 持续学习" --- ## v3.4 更新 (2026-03-18) ### 新增使用规范 每次对话必须遵循： ``` 1. 决策/分析前 → 调用 ontology-clawra 推理 2. 配置修改前 → 调用 docs-helper 查文档 3. 搜索信息 → 使用 serper/tavily 4. 结论 → 记录到 memory/ 主动优化规则： - 发现规律 → 调用 ontology-clawra 抽取新实体/规则 - 优化更新 → 识别本体不足，提议补充 - 能力进化 → 定期检视 ontology-clawra 技能本身表现 - 写入本体 → 发现有价值的新知识，主动提议写入 ``` ### ⚠️ 安全声明 **隐私承诺**： - 绝不自动上传用户数据到任何服务器 - 所有写入操作必须用户明确授权 - 本地存储，仅用户可见 **文件访问范围**： - 读取：仅 `memory/` 目录 - 写入：仅 `memory/` 目录 - 不读取其他目录 **写入确认机制**： - 默认禁用自动写入 - 用户说"写入本体"才执行单次写入 - 每次写入前显示将要写入的内容 ### 核心能力 - 燃气调压箱选购推理（已验证） - 技术选型评估（Neo4j vs Jena） - 持续学习方法论 --- ## v3.5 更新 (2026-03-19) ### 核心升级：强制执行 + 技能/项目严格分离 #### 1. 强制使用原则（最高优先级） **所有推理任务必须首先使用 ontology-clawra 框架**，禁止凭经验输出。 ``` 收到推理类任务 │ ▼ 加载 ontology-clawra 技能 │ ▼ 按照推理前置检查流程执行 │ ▼ 完整记录：实体、规则、置信度、来源 │ ▼ 推理结论输出 │ ▼ 识别技能不足 → 写入优化建议 ``` **违反后果**： - 推理过程不透明，无法追溯 - 置信度未标注，混淆猜测与事实 - 缺失本体完善机会，技能无法进化 #### 2. 技能与项目严格分离 | | ontology-clawra 技能 | ontology-platform 项目 | |--|---|---| | 性质 | 推理框架/Skill（私有） | 生产级开源项目（公开） | | 数据 | 用户私人推理记录、个人偏好 | 开源代码、文档、公开数据 | | 存储 | ~/.openclaw/skills/ontology-clawra/memory/ | GitHub 公开仓库 | | 同步 | **绝不外部同步** | 按需同步 | **红线**：用户私人数据（推理记录、个人决策）严禁同步到 GitHub 或任何外部平台。 #### 3. 三大目标驱动 所有 ontology-clawra 的工作都服务于三个目标： ``` 目标1：技能进化 ├── 本体完善（实体库、关系库、规则库） ├── 推理能力（推理链、置信度标注） └── 进化机制（自我反思、错误修正） 目标2：项目指导 ├── 技能应用 → 项目方向 ├── 技能优化 → roadmap 迭代 └── 技能需求 → 项目需求 目标3：项目成功 ├── 技能成熟度 → 项目质量 ├── 项目影响力 → 融资估值 └── 用户AI创业梦想落地 ``` #### 4. 推理过程自我检视 每次推理完成后，必须回答： ``` ✅ 是否使用了 ontology-clawra 框架？ ✅ 推理链是否完整？（需求→规则→计算→结论） ✅ 置信度是否标注？（CONFIRMED/ASSUMED/SPECULATIVE） ✅ 来源是否声明？ ✅ 是否识别了技能不足？ ✅ 是否记录了可优化的点？ ``` **如果任意一项为"否"，必须补充或说明理由。**

path: laws.yaml
content: # ontology-clawra 本体存储 - Laws (规律/规则)

---
# 选型与配置规则
---

law:
  id: law_pressure_match
  name: 压力匹配规则
  domain: 燃气工程/选型
  statement: 调压箱进出口压力必须与上下游管网压力匹配，严禁低压设备接入高压管网
  conditions:
    - 城市门站: 进1.6-4.0MPa -> 出0.4MPa
    - 区域/工业: 进0.4-0.8MPa -> 出5-20kPa
    - 居民小区: 进0.1-0.4MPa -> 出2-3kPa
  effects:
    - 居民用气出口压力: 2.5-3.0kPa
    - 严禁: 低压设备接入高压管网
  source: 知识库-燃气调压箱 R1
  confidence: CONFIRMED

law:
  id: law_flow_structure
  name: 流量结构配置规则
  domain: 燃气工程/选型
  statement: 根据用户类型选择合适的额定流量和调压结构
  conditions:
    - 居民/小商业: 额定流量50-200m³/h
    - 大型工业: 流量>1000m³/h
  effects:
    - 居民/小商业结构: 1+0单路, 1+1一开一备, 2+0双路并联
    - 大型工业结构: 2+0双路, 2+1两开一备
    - 额定流量应不低于实际最大小时流量的1.2倍
  source: 知识库-燃气调压箱 R2
  confidence: CONFIRMED

law:
  id: law_environment_material
  name: 环境材质选用规则
  domain: 燃气工程/选型
  statement: 根据安装环境选择合适的箱体材质
  conditions:
    - 沿海/高湿/化工区
    - 北方寒冷地区
  effects:
    - 沿海/高湿/化工区: 选用不锈钢箱体(304)
    - 北方寒冷地区: 配置电伴热系统
  source: 知识库-燃气调压箱 R3
  confidence: CONFIRMED

law:
  id: law_intelligent
  name: 智能化配置规则
  domain: 燃气工程/选型
  statement: 无人值守站需配置智能通讯接口
  effects:
    - 配置SCADA通讯接口
    - 支持数据远传和故障诊断
    - 支持4G/5G/NB-IoT传输
  source: 知识库-燃气调压箱 R4
  confidence: CONFIRMED

---
# 业务场景特征
---

law:
  id: law_scenario_residential
  name: 居民小区场景特征
  domain: 业务场景
  statement: 居民小区调压箱选型要点
  scenario_id: SC_01
  tags: [低流量, 高安全性, 峰谷差大, 贴近民宅]
  pain_points:
    - 用气高峰低谷流量差异大(如早晚做饭)
    - 调压器在小流量时易产生"喘振"
    - 任何泄漏/超压易引发群体性安全担忧
  requirements:
    - 采用内置防喘振设计(平衡阀芯/两级调压/防喘阻尼)
    - 具备双重超压保护(切断+放散)
    - 响应时间快
  source: 知识库-燃气调压箱
  confidence: CONFIRMED

law:
  id: law_scenario_commercial
  name: 工商业场景特征
  domain: 业务场景
  statement: 工商业餐饮调压箱选型要点
  scenario_id: SC_02
  tags: [负荷波动大, 可靠性要求高]
  pain_points:
    - 用气设备启停频繁导致压力冲击
    - 商业体停气影响大
  requirements:
    - 选择响应速度快(≤300ms)的调压器
    - 首选2+1或2+0多用配置
    - 单路故障时备用路自动切入
  source: 知识库-燃气调压箱
  confidence: CONFIRMED

law:
  id: law_scenario_industrial
  name: 工业园区场景特征
  domain: 业务场景
  statement: 工业园区调压箱选型要点
  scenario_id: SC_03
  tags: [大流量, 连续供气, 腐蚀性环境]
  pain_points:
    - 停气会导致生产事故
    - 腐蚀性环境
  requirements:
    - 选N+1或2+0冗余结构
    - 不锈钢材质或喷塑涂层
  source: 知识库-燃气调压箱
  confidence: CONFIRMED
# ontology-clawra 本体存储 - Laws (规律/规则) - 家用可燃气体探测器

---
# 业务场景特征
---

law:
  id: law_scenario_new_building
  name: 新建住宅精装修场景
  domain: 业务场景
  scenario_id: SC_01
  tags: [批量采购, 前装, 需联动切断阀]
  pain_points:
    - 产品质量参差不齐，影响工程验收
    - 安装位置不规范导致后期失效
  requirements:
    - 资质齐全: 必须具备CCCF消防认证
    - 性能稳定: 产品一致性好，故障率低
    - 安装指导: 提供明确安装规范或智能安装指导APP
  source: 知识库-家用可燃气体探测器
  confidence: CONFIRMED

law:
  id: law_scenario_old_community
  name: 老旧小区改造场景
  domain: 业务场景
  scenario_id: SC_02
  tags: [燃气管网老化, 用户安全意识薄弱]
  pain_points:
    - 厨房环境复杂，油烟、酒精干扰大
    - 用户不懂维护，易拔掉电源
  requirements:
    - 强抗干扰: 必须通过抗乙醇、乙酸干扰测试
    - 寿命预警: 具备明确的寿命到期提醒功能
  source: 知识库-家用可燃气体探测器
  confidence: CONFIRMED

law:
  id: law_scenario_smart_home
  name: 智慧家庭/智慧社区场景
  domain: 业务场景
  scenario_id: SC_03
  tags: [远程监控, 平台接入, 多设备联动]
  pain_points:
    - 报警信息无法及时触达用户
    - 无法与社区安防系统联动
  requirements:
    - 稳定联网: 必须具备NB-IoT/4G-CAT1通讯能力
    - 开放协议: 支持标准物联协议(如MQTT)
  source: 知识库-家用可燃气体探测器
  confidence: CONFIRMED

law:
  id: law_scenario_high_building
  name: 超高层住宅场景
  domain: 业务场景
  scenario_id: SC_04
  tags: [多级报警, 联动单元楼栋总阀]
  regulation: GB55009-2021 6.1.5条规定
  pain_points:
    - 高度100m以上超高层事故救援难度极大
  requirements:
    - 稳定联网: 具备4G-CAT1通讯能力
    - 检测量程: 需采用激光、催化等测量范围大的报警器
  source: 知识库-家用可燃气体探测器
  confidence: CONFIRMED

---
# 选型配置规则
---

law:
  id: law_linkage_rule
  name: 联动规则(强条)
  domain: 选型规则
  statement: IF 项目要求报警后自动切断气源 THEN 必须选型带联动输出功能的探测器 + 配套电磁式燃气紧急切断阀
  conditions:
    - 项目要求报警后自动切断气源
  effects:
    - 探测器的联动输出类型(如12V脉冲)必须与切断阀驱动类型完全匹配
    - 接头规格需完全匹配
    - 切断阀公称尺寸需与燃气管道管径匹配
  source: 知识库-家用可燃气体探测器 R1
  confidence: CONFIRMED

law:
  id: law_network_rule
  name: 联网规则(推荐)
  domain: 选型规则
  statement: IF 用户有远程报警需求或项目为集中管理 THEN 推荐选型带NB-IoT/4G-CAT1通讯功能的探测器
  conditions:
    - 用户有远程报警需求
    - 项目为集中管理
  effects:
    - 确认项目所在区域的NB-IoT/4G网络覆盖情况
    - 确认通讯费是否包含在设备价格内
  source: 知识库-家用可燃气体探测器 R2
  confidence: CONFIRMED

law:
  id: law_environment_rule
  name: 环境材质规则(阻断)
  domain: 选型规则
  statement: IF 安装环境为高油污或高湿度 THEN 锁定激光原理或半导体式带过滤膜
  conditions:
    - 安装环境为高油污(如厨房爆炒)
    - 安装环境为高湿度(如南方潮湿地区)
  effects:
    - 半导体传感器在重油污环境下易误报，必须加装过滤膜
    - 激光原理抗干扰能力最强
  source: 知识库-家用可燃气体探测器 R3
  confidence: CONFIRMED

law:
  id: law_high_building_rule
  name: 超高层强制规则
  domain: 选型规则
  statement: 建筑高度大于100m时，用气场所应设置燃气泄漏报警装置，并在燃气引入管处设置紧急自动切断装置
  regulation: GB55009-2021 6.1.5条
  effects:
    - 必须具备4G-CAT1通讯能力
    - 需采用激光、催化等测量范围大的报警器
    - 支持多级报警
  source: GB55009-2021
  confidence: CONFIRMED


path: laws_detector.yaml
content: # ontology-clawra 本体存储 - Laws (规律/规则) - 家用可燃气体探测器

---
# 业务场景特征
---

law:
  id: law_scenario_new_building
  name: 新建住宅精装修场景
  domain: 业务场景
  scenario_id: SC_01
  tags: [批量采购, 前装, 需联动切断阀]
  pain_points:
    - 产品质量参差不齐，影响工程验收
    - 安装位置不规范导致后期失效
  requirements:
    - 资质齐全: 必须具备CCCF消防认证
    - 性能稳定: 产品一致性好，故障率低
    - 安装指导: 提供明确安装规范或智能安装指导APP
  source: 知识库-家用可燃气体探测器
  confidence: CONFIRMED

law:
  id: law_scenario_old_community
  name: 老旧小区改造场景
  domain: 业务场景
  scenario_id: SC_02
  tags: [燃气管网老化, 用户安全意识薄弱]
  pain_points:
    - 厨房环境复杂，油烟、酒精干扰大
    - 用户不懂维护，易拔掉电源
  requirements:
    - 强抗干扰: 必须通过抗乙醇、乙酸干扰测试
    - 寿命预警: 具备明确的寿命到期提醒功能
  source: 知识库-家用可燃气体探测器
  confidence: CONFIRMED

law:
  id: law_scenario_smart_home
  name: 智慧家庭/智慧社区场景
  domain: 业务场景
  scenario_id: SC_03
  tags: [远程监控, 平台接入, 多设备联动]
  pain_points:
    - 报警信息无法及时触达用户
    - 无法与社区安防系统联动
  requirements:
    - 稳定联网: 必须具备NB-IoT/4G-CAT1通讯能力
    - 开放协议: 支持标准物联协议(如MQTT)
  source: 知识库-家用可燃气体探测器
  confidence: CONFIRMED

law:
  id: law_scenario_high_building
  name: 超高层住宅场景
  domain: 业务场景
  scenario_id: SC_04
  tags: [多级报警, 联动单元楼栋总阀]
  regulation: GB55009-2021 6.1.5条规定
  pain_points:
    - 高度100m以上超高层事故救援难度极大
  requirements:
    - 稳定联网: 具备4G-CAT1通讯能力
    - 检测量程: 需采用激光、催化等测量范围大的报警器
  source: 知识库-家用可燃气体探测器
  confidence: CONFIRMED

---
# 选型配置规则
---

law:
  id: law_linkage_rule
  name: 联动规则(强条)
  domain: 选型规则
  statement: IF 项目要求报警后自动切断气源 THEN 必须选型带联动输出功能的探测器 + 配套电磁式燃气紧急切断阀
  conditions:
    - 项目要求报警后自动切断气源
  effects:
    - 探测器的联动输出类型(如12V脉冲)必须与切断阀驱动类型完全匹配
    - 接头规格需完全匹配
    - 切断阀公称尺寸需与燃气管道管径匹配
  source: 知识库-家用可燃气体探测器 R1
  confidence: CONFIRMED

law:
  id: law_network_rule
  name: 联网规则(推荐)
  domain: 选型规则
  statement: IF 用户有远程报警需求或项目为集中管理 THEN 推荐选型带NB-IoT/4G-CAT1通讯功能的探测器
  conditions:
    - 用户有远程报警需求
    - 项目为集中管理
  effects:
    - 确认项目所在区域的NB-IoT/4G网络覆盖情况
    - 确认通讯费是否包含在设备价格内
  source: 知识库-家用可燃气体探测器 R2
  confidence: CONFIRMED

law:
  id: law_environment_rule
  name: 环境材质规则(阻断)
  domain: 选型规则
  statement: IF 安装环境为高油污或高湿度 THEN 锁定激光原理或半导体式带过滤膜
  conditions:
    - 安装环境为高油污(如厨房爆炒)
    - 安装环境为高湿度(如南方潮湿地区)
  effects:
    - 半导体传感器在重油污环境下易误报，必须加装过滤膜
    - 激光原理抗干扰能力最强
  source: 知识库-家用可燃气体探测器 R3
  confidence: CONFIRMED

law:
  id: law_high_building_rule
  name: 超高层强制规则
  domain: 选型规则
  statement: 建筑高度大于100m时，用气场所应设置燃气泄漏报警装置，并在燃气引入管处设置紧急自动切断装置
  regulation: GB55009-2021 6.1.5条
  effects:
    - 必须具备4G-CAT1通讯能力
    - 需采用激光、催化等测量范围大的报警器
    - 支持多级报警
  source: GB55009-2021
  confidence: CONFIRMED


path: rules.yaml
content: # ontology-clawra 本体存储 - Rules (业务规则)

---
# 选型计算规则
---

rule:
  id: rule_residential_sizing
  name: 居民小区调压箱选型规则
  category: 选型计算
  condition: |
    AND(
      user_type = "居民小区",
      building_type = "多层" OR "高层",
      has_heating = true/false
    )
  action: |
    THEN(
      rated_flow = n × q × K,
      simultaneity_factor = 0.25-0.35,
      structure_form = "1+1" OR "2+0",
      selected_model = "RTZ-50/25" to "RTZ-200/25"
    )
  calculation:
    formula: "Q = n × q × K"
    variables:
      n: 户数
      q: 单户用气量(m³/h)
      K: 同时使用系数
    typical_values:
      single_load_no_heating: "1.6-2.3 m³/h"
      single_load_with_heating: "3.0-4.0 m³/h"
      simultaneity_100households: 0.35
      simultaneity_50households: 0.4
  source: 知识库-燃气调压箱
  confidence: CONFIRMED
  weight: 0.95

rule:
  id: rule_pressure_selection
  name: 出口压力确定规则
  category: 选型计算
  condition: |
    AND(
      user_type IN ["居民", "商业", "工业"]
    )
  action: |
    THEN(
      IF user_type = "居民" THEN export_pressure = "2.5-3.0 kPa",
      IF user_type = "商业" THEN export_pressure = "5-10 kPa",
      IF user_type = "工业" THEN export_pressure = "10-20 kPa"
    )
  source: GB 50028
  confidence: CONFIRMED
  weight: 0.95

rule:
  id: rule_redundancy
  name: 冗余配置规则
  category: 选型计算
  condition: |
    AND(
      reliability_requirement = "高" OR user_type = "工业"
    )
  action: |
    THEN(
      structure_form = "1+1" OR "2+0" OR "2+1"
    )
  note: 关键用户必选冗余配置，确保检修不停气
  source: 知识库-燃气调压箱
  confidence: CONFIRMED
  weight: 0.9

rule:
  id: rule_price_estimate
  name: 价格估算规则
  category: 预算
  condition: |
    AND(
      user_type = "居民",
      rated_flow ≤ 100
    )
  action: |
    THEN(
      price_range = "1600-3000元(国产)" OR "5000-15000元(进口)"
    )
  price_factors:
    - 材质(不锈钢/碳钢喷塑)
    - 调压器品牌
    - 是否智能
    - 是否进口部件
  source: 知识库-燃气调压箱
  confidence: ASSUMED
  weight: 0.7
# ontology-clawra 本体存储 - Rules (业务规则) - 家用可燃气体探测器

---
# 场景化选型决策规则
---

rule:
  id: rule_scenario_a
  name: 场景A-普通家庭自购安装
  category: 场景选型
  condition: |
    AND(
      user_type = "普通家庭自购",
      linkage_needed = false,
      remote_notification = false
    )
  action: |
    THEN(
      detector_type = "基础型",
      detection_principle = "半导体式",
      communication = "无通讯",
      features = ["本地声光报警"]
    )
  quality_check:
    - 认证检查: 确认产品铭牌上有CCC认证标志
    - 功能测试: 通电后长按自检键，发出间歇式蜂鸣声伴随指示灯依次闪烁
  source: 知识库-家用可燃气体探测器
  confidence: CONFIRMED

rule:
  id: rule_scenario_b
  name: 场景B-新建楼盘批量安装
  category: 场景选型
  condition: |
    AND(
      user_type = "新建楼盘批量安装",
      linkage_needed = true
    )
  action: |
    THEN(
      detector_type = "联动型",
      detection_principle = "半导体式",
      output = "12V脉冲输出",
      valve = "配套电磁阀",
      features = ["带联动输出", "带切断阀"]
    )
  quality_check:
    - 联动测试: 长按自检键，观察电磁阀是否能在30s内关闭
    - 安装规范: 检查探测器是否安装在距离气源1.5-4米，距离天花板0.3米以内
  source: 知识库-家用可燃气体探测器
  confidence: CONFIRMED

rule:
  id: rule_scenario_c
  name: 场景C-独居老人/出租房管理
  category: 场景选型
  condition: |
    AND(
      user_type IN ["独居老人", "出租房管理"],
      remote_notification = true
    )
  action: |
    THEN(
      detector_type = "智能联网型",
      detection_principle = "半导体式",
      communication = "NB-IoT或4G-CAT1",
      features = ["远程报警", "APP通知"]
    )
  quality_check:
    - 联网测试: 现场触发报警，测试手机APP或短信能否在1分钟内收到报警信息
    - 信号强度: 检查安装位置的网络信号强度
  source: 知识库-家用可燃气体探测器
  confidence: CONFIRMED

rule:
  id: rule_scenario_d
  name: 场景D-智慧社区统一管理
  category: 场景选型
  condition: |
    AND(
      user_type = "智慧社区",
      platform_integration = true
    )
  action: |
    THEN(
      detector_type = "智能联网型",
      communication = "NB-IoT或4G-CAT1",
      protocol = "MQTT",
      features = ["平台接入", "统一管理"]
    )
  quality_check:
    - 协议测试: 确认支持标准物联协议
    - 平台对接: 测试数据能否对接到第三方平台
  source: 知识库-家用可燃气体探测器
  confidence: CONFIRMED

---
# 价格估算规则
---

rule:
  id: rule_price_basic
  name: 基础型报警器价格
  category: 价格
  condition: |
    AND(
      detector_type = "基础型",
      features = ["本地声光报警"]
    )
  action: |
    THEN(
      price_range = "40-50元/只"
    )
  factors:
    - 半导体传感器价格
    - 阻燃塑料粒子价格
  source: 知识库-家用可燃气体探测器
  confidence: CONFIRMED

rule:
  id: rule_price_linkage
  name: 联动型报警器价格
  category: 价格
  condition: |
    AND(
      detector_type = "联动型",
      features = ["带12V脉冲输出"]
    )
  action: |
    THEN(
      price_range = "45-55元/只"
    )
  factors:
    - 增加继电器或MOS管等联动驱动电路成本
  warning: |
    联动型报警器报价 < 30元 = 极高风险(可能使用非阻燃材料或回收传感器)
  source: 知识库-家用可燃气体探测器
  confidence: CONFIRMED

rule:
  id: rule_price_smart
  name: 智能联网型报警器价格
  category: 价格
  condition: |
    AND(
      detector_type = "智能联网型",
      communication IN ["NB-IoT", "4G-CAT1"]
    )
  action: |
    THEN(
      price_range = "70-80元/只"
    )
  factors:
    - NB-IoT/4G通信模组及平台服务费
  warning: |
    NB-IoT报警器报价 < 60元 = 风险(可能使用翻新模组)
  source: 知识库-家用可燃气体探测器
  confidence: CONFIRMED


path: rules_detector.yaml
content: # ontology-clawra 本体存储 - Rules (业务规则) - 家用可燃气体探测器

---
# 场景化选型决策规则
---

rule:
  id: rule_scenario_a
  name: 场景A-普通家庭自购安装
  category: 场景选型
  condition: |
    AND(
      user_type = "普通家庭自购",
      linkage_needed = false,
      remote_notification = false
    )
  action: |
    THEN(
      detector_type = "基础型",
      detection_principle = "半导体式",
      communication = "无通讯",
      features = ["本地声光报警"]
    )
  quality_check:
    - 认证检查: 确认产品铭牌上有CCC认证标志
    - 功能测试: 通电后长按自检键，发出间歇式蜂鸣声伴随指示灯依次闪烁
  source: 知识库-家用可燃气体探测器
  confidence: CONFIRMED

rule:
  id: rule_scenario_b
  name: 场景B-新建楼盘批量安装
  category: 场景选型
  condition: |
    AND(
      user_type = "新建楼盘批量安装",
      linkage_needed = true
    )
  action: |
    THEN(
      detector_type = "联动型",
      detection_principle = "半导体式",
      output = "12V脉冲输出",
      valve = "配套电磁阀",
      features = ["带联动输出", "带切断阀"]
    )
  quality_check:
    - 联动测试: 长按自检键，观察电磁阀是否能在30s内关闭
    - 安装规范: 检查探测器是否安装在距离气源1.5-4米，距离天花板0.3米以内
  source: 知识库-家用可燃气体探测器
  confidence: CONFIRMED

rule:
  id: rule_scenario_c
  name: 场景C-独居老人/出租房管理
  category: 场景选型
  condition: |
    AND(
      user_type IN ["独居老人", "出租房管理"],
      remote_notification = true
    )
  action: |
    THEN(
      detector_type = "智能联网型",
      detection_principle = "半导体式",
      communication = "NB-IoT或4G-CAT1",
      features = ["远程报警", "APP通知"]
    )
  quality_check:
    - 联网测试: 现场触发报警，测试手机APP或短信能否在1分钟内收到报警信息
    - 信号强度: 检查安装位置的网络信号强度
  source: 知识库-家用可燃气体探测器
  confidence: CONFIRMED

rule:
  id: rule_scenario_d
  name: 场景D-智慧社区统一管理
  category: 场景选型
  condition: |
    AND(
      user_type = "智慧社区",
      platform_integration = true
    )
  action: |
    THEN(
      detector_type = "智能联网型",
      communication = "NB-IoT或4G-CAT1",
      protocol = "MQTT",
      features = ["平台接入", "统一管理"]
    )
  quality_check:
    - 协议测试: 确认支持标准物联协议
    - 平台对接: 测试数据能否对接到第三方平台
  source: 知识库-家用可燃气体探测器
  confidence: CONFIRMED

---
# 价格估算规则
---

rule:
  id: rule_price_basic
  name: 基础型报警器价格
  category: 价格
  condition: |
    AND(
      detector_type = "基础型",
      features = ["本地声光报警"]
    )
  action: |
    THEN(
      price_range = "40-50元/只"
    )
  factors:
    - 半导体传感器价格
    - 阻燃塑料粒子价格
  source: 知识库-家用可燃气体探测器
  confidence: CONFIRMED

rule:
  id: rule_price_linkage
  name: 联动型报警器价格
  category: 价格
  condition: |
    AND(
      detector_type = "联动型",
      features = ["带12V脉冲输出"]
    )
  action: |
    THEN(
      price_range = "45-55元/只"
    )
  factors:
    - 增加继电器或MOS管等联动驱动电路成本
  warning: |
    联动型报警器报价 < 30元 = 极高风险(可能使用非阻燃材料或回收传感器)
  source: 知识库-家用可燃气体探测器
  confidence: CONFIRMED

rule:
  id: rule_price_smart
  name: 智能联网型报警器价格
  category: 价格
  condition: |
    AND(
      detector_type = "智能联网型",
      communication IN ["NB-IoT", "4G-CAT1"]
    )
  action: |
    THEN(
      price_range = "70-80元/只"
    )
  factors:
    - NB-IoT/4G通信模组及平台服务费
  warning: |
    NB-IoT报警器报价 < 60元 = 风险(可能使用翻新模组)
  source: 知识库-家用可燃气体探测器
  confidence: CONFIRMED


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (HIGH)