核心用法
OpenClaw AICFO Agent 是一个 REST-first 的桥接技能,用于在无浏览器环境下将 OpenClaw 智能体接入 AICFO 企业数据平台。核心交互通过本地 Node 脚本 bin/openclaw-aicfo-adapter.mjs 完成,无需预装 MCP SDK 或额外 npm 包。
标准工作流:
1. 启动自检:运行 node bin/openclaw-aicfo-adapter.mjs session 获取授权范围、隐式公司 ID 及可访问公司列表
2. 工具枚举:执行 tools 子命令查看可用操作集
3. 确定作用域:优先使用 implicitCompanyId,否则需显式传入 company_id
4. 执行业务操作:支持 dashboard 概览、query/search 数据查询、get-entity/get-file 实体与文件读取、connectors 连接器管理、documents 文档问答等
关键 API 表面:
/api/agent/session- 会话与权限自检/api/agent/companies- 公司列表/api/company/query,/api/company/search- 数据检索/api/company/entity,/api/company/file- 实体与文件访问/api/documents,/api/documents/questions- 文档与问答
显著优点
- 零依赖部署:仅需 Node.js 运行时,无需浏览器、Slack 或本地守护进程
- 自包含设计:
bin/openclaw-aicfo-adapter.mjs作为单一入口,REST-first 架构避免 SDK 版本冲突 - 明确的作用域控制:通过
session端点清晰暴露grantedScopes、implicitCompanyId和requiresCompanySelection,减少权限猜测 - 连接器隔离:
/api/agent/connectors作为机器访问的规范表面,与浏览器端/api/connections/*明确区分 - 文档智能问答:支持
document-questions轮询与answer-document-questions澄清,适用于 RAG 场景
潜在局限
- 环境约束:依赖
AICFO_API_KEY环境变量,且要求目标机器具备 Node 执行能力 - 权限前置校验:技能本身不执行权限拦截,需调用方在操作前手动检查 scope(如
documents.write) - 公司选择强制:无
implicitCompanyId时,每次操作必须显式指定company_id,增加调用复杂度 - 连接器能力边界:部分连接器操作可能受限于 AICFO 平台的实时状态,而非仅由 API key 决定
- 无内置重试机制:文档处理状态需通过
document-questions轮询确认,技能层未封装异步等待逻辑
适合人群
- 需将 AICFO 企业数据接入自动化工作流的开发团队
- 使用 OpenClaw 作为编排层、追求无头(headless)集成的 AI 工程团队
- 需在 CI/CD 或服务器端脚本中批量查询公司实体、文件或文档的运维人员
常规风险
- 密钥泄露:
AICFO_API_KEY作为唯一认证凭证,一旦暴露将导致租户数据完全暴露 - 作用域误用:未校验
requiresCompanySelection可能导致跨公司数据访问或 403 错误 - 文档处理竞态:上传/导入后立即查询可能返回未完成状态,需实现指数退避轮询
- 连接器越权:缺乏特定 connector scope 时尝试操作会产生不可预期的平台侧错误