核心定位
aios-call-app-service 是企业级AI Agent与业务系统(AIOS、OpenClaw、Forguncy等)之间的标准化调用网关,解决大模型与企业实时数据交互的可靠性问题。
核心用法
1. 强制本体驱动:每次调用前必须读取 AIOS_ONTOLOGY_DIR 指向的本体目录,禁止缓存历史本体
2. 统一CLI通道:唯一通过 aios-apps-invoke-cli 发起调用,禁止绕过CLI直接写API脚本
3. 会话标识绑定:从当前上下文的 topic_id 提取 SessionId(格式 s-+30位数字),作为 -s 参数
4. 类型严格区分:servercommand(命令执行)与 binding(数据绑定)两种调用模式,分别遵循不同JSON Schema
显著优点
- 零臆造保障:枚举值、接口名、字段结构完全以本体为唯一事实源,杜绝LLM幻觉导致的业务错误
- 实时性优先:CLI返回结果优先级高于记忆/缓存/历史对话,确保决策基于最新数据
- 安全边界清晰:SessionId隔离会话、provider限流(仅
hzg)、缺失字段即停机制,防止越权调用
潜在局限
- 强依赖本体完整性:若本体缺失或字段不全,流程强制中断,无法降级处理
- 单provider限制:当前仅支持
hzg,其他provider需明确报错 - 无内置容错重试:CLI失败时无自动重试逻辑,需调用方处理异常
- 上下文敏感:
topic_id缺失即视为运行时缺参,无法继续
适合人群
- 企业AI Agent开发者(需对接ERP/CRM/MES等业务系统)
- 需要审计级操作留痕的场景(金融、医疗、制造工单系统)
- 对数据一致性要求极高的实时决策场景
常规风险
| 风险类型 | 场景 | 缓解机制 |
|---------|------|---------|
| 会话劫持 | 复用他人SessionId | 强制从当前`topic_id`读取,禁止外部传入 |
| 接口漂移 | 本体更新后字段变更 | 每次调用重新读取本体,禁止缓存 |
| 参数注入 | 构造非法jsonBody | 严格校验ontology定义的Input Arguments |
| 越权调用 | 调用非授权应用 | SessionId与MQTT会话绑定,服务端鉴权 |
使用建议
生产环境部署时,建议配合 invoke-rules.md 和 data-processing.md 分级阅读——调用前读规则,数据清洗时再读处理指南,避免信息过载。