@windaka-erp/erp-cli
v0.4.2
Published
物达通(WindaKa)物业管理 ERP 命令行工具,为人类和 AI Agent 设计
Maintainers
Readme
@windaka-erp/erp-cli
物达通(WindaKa)物业管理 ERP 命令行工具,为人类和 AI Agent 设计。 一句话:用户说自然语言,AI Agent 通过本工具 + Skill 精准操作 ERP。
它能做什么
- ERP 操作:工单全流程(创建/待办/分派/接单/处理/确认/回访/转单/延期/作废/审批)、OA 全流程(发起/待办/审批/驳回/加签/转交/撤回/退回重填/抄送)、项目/房产查询、费用查询
- 知识库问答:对接 RAGFlow,问"消防巡检怎么处理""报修流程""物业费标准"等,先检索知识库拿到原文,再结合上下文回答
- AI Agent 友好:统一 JSON 输出、
--dry-run预览、危险操作确认、意图路由文档(Skill),AI 装上即可听懂用户口语并自动选对命令
安装
npm install -g @windaka-erp/erp-cli二进制已打包进 npm 包(含 Windows/macOS/Linux 的 x64/arm64 六个平台),安装即用,无需联网下载。
国内用户用淘宝镜像加速:
npm install -g @windaka-erp/erp-cli --registry=https://registry.npmmirror.com验证:
erp-cli --version快速开始
1. 配置 ERP 地址
erp-cli config init
# 默认连生产环境,也可指定:
erp-cli config init --base-url https://your-erp-server.com/prod-api2. 登录(Device Flow,扫码/账号授权)
erp-cli auth login
# 输出登录链接 → 浏览器打开授权 → 自动保存 token3. 开始用
erp-cli workorder +list # 我的待办工单
erp-cli workorder +info --id 123 # 工单详情
erp-cli oa +handle-list # 我的 OA 审批待办
erp-cli oa +available-processes # 我可发起的 OA 流程
erp-cli knowledge +search --question "报修流程" # 检索知识库配置知识库(RAGFlow)
知识库检索走独立的 RAGFlow 服务,首次用要配地址、API Key、知识库 ID:
erp-cli config ragflow
# 交互式引导:输入 RAGFlow 地址、API Key,自动列出知识库让你选验证:
erp-cli knowledge +check # 检查 RAGFlow 连通性
erp-cli knowledge +list-datasets # 列出知识库知识库检索不需要 ERP 登录,走 RAGFlow 自己的 API Key。
认证
两步登录(AI Agent 推荐)
# Step 1: 获取验证链接(立即返回,不阻塞)
erp-cli auth login-start
# 返回 { "verification_uri_complete": "https://...", "device_code": "xxx" }
# Step 2: 把链接发用户,然后等待授权
erp-cli auth login-wait --device-code xxx
# 阻塞等待,成功自动保存 token一步登录(终端直接使用)
erp-cli auth login # 一步完成:申请码 + 输出链接 + 等待授权其他
erp-cli auth status # 查看登录状态
erp-cli auth logout # 登出当前 profile配置
erp-cli config init # 初始化配置(ERP 地址)
erp-cli config show # 查看当前配置
erp-cli config set key=val # 修改配置项
erp-cli config remove # 删除配置 profile
erp-cli config ragflow # 交互式配置 RAGFlow 知识库命令一览
工单(workorder)
| 命令 | 说明 |
|------|------|
| workorder +list | 我的待办工单列表,支持按状态筛选和分页 |
| workorder +handle-list | 我经办的工单列表(含已完成历史) |
| workorder +info | 工单详情(含完整处理记录) |
| workorder +create | 创建新工单(需指定标题和优先级,可选指定处理人) |
| workorder +request-link | 生成线上工单申请链接(用户自行填写提交) |
| workorder +search-user | 搜索用户(按姓名模糊查询,用于分派/转单) |
| workorder +apportion | 分派工单给指定处理人(仅待分派状态可操作) |
| workorder +take | 接单工单 |
| workorder +complete | 完成处理工单 |
| workorder +confirm | 确认工单 |
| workorder +transfer | 转单 |
| workorder +follow | 记录工单跟进 |
| workorder +visit | 回访工单 |
| workorder +postpone | 申请延期工单 |
| workorder +discard | 作废工单(不可恢复) |
| workorder +update-class | 修改工单分类 |
| workorder +class-tree | 查询工单分类树 |
| workorder +process-list | 查询工单流程列表 |
OA 审批/流程(oa)
| 命令 | 说明 |
|------|------|
| oa +handle-list | 我的 OA 待办列表(审批/处理节点) |
| oa +return-list | 我的被退回 OA 待办列表 |
| oa +timeout-list | 我的已超时 OA 待办列表 |
| oa +done-list | 我经办的 OA 流程列表 |
| oa +draft-list | 我的 OA 草稿列表 |
| oa +create-list | 我发起的 OA 流程列表 |
| oa +cc-list | 抄送给我的 OA 流程列表 |
| oa +available-processes | 当前用户可发起的 OA 流程模板 |
| oa +info | OA 流程详情(含表单结构和处理记录) |
| oa +request-link | 生成 OA 流程发起链接(用户填写并提交) |
| oa +approve | 审批通过 OA 流程(仅审批节点;写操作,需确认) |
| oa +handle | 办理 OA 流程(仅处理节点;写操作,需确认) |
| oa +reject | 驳回 OA 流程(仅审批节点;写操作,需确认) |
| oa +add-sign | OA 待办前加签/后加签(写操作,需确认) |
| oa +transfer | 转交 OA 待办(写操作,需确认) |
| oa +return-step | 退回 OA 流程到指定步骤(写操作,需确认) |
| oa +return-step-options | 查询 OA 待办可退回的步骤 |
| oa +return-for-refill | 退回重填到发起人步骤(写操作,需确认) |
| oa +revoke | 撤回 OA 流程到指定步骤(写操作,需确认) |
| oa +revoke-options | 查询 OA 流程可撤回的步骤 |
| oa +search-user | 搜索 OA 流程审批人(用于加签/转交) |
| oa +delete-draft | 删除 OA 草稿(不可恢复;需确认) |
| oa +delete | 删除本人待提交 OA 流程(不可恢复;需确认) |
+approve、+reject、+add-sign、+transfer支持--cc-recipient userId:userName参数(可重复),随本次操作一并抄送指定人员;先通过+search-user查询核对人员。
知识库(knowledge)
| 命令 | 说明 |
|------|------|
| knowledge +search | 检索知识库(核心高频;非 ERP 操作类问题默认先搜) |
| knowledge +list-datasets | 列出知识库 |
| knowledge +check | 检查 RAGFlow 连通性 |
其他
| 命令 | 说明 |
|------|------|
| auth login / login-start / login-wait | 登录(两步登录适合 AI Agent) |
| auth status / logout | 登录状态 / 登出 |
| config init / show / set / remove | 配置管理(ERP 地址、RAGFlow) |
| config ragflow | 交互式配置 RAGFlow 知识库 |
| api GET/POST/PUT <path> | 原始 API 调用(兜底;当 Shortcut 不满足需求时) |
| dev | 启动本地 mock ERP 服务器(开发/测试用) |
| completion | 生成 shell 自动补全脚本 |
project和property命令正在开发中,对应功能可通过api命令兜底调用。
所有命令加 --help 看详细参数,加 --dry-run 预览请求不实际执行。
全局参数
--profile <name>— 切换环境(prod/staging),默认 default--dry-run— 预览请求内容,不实际执行--format json|table|csv— 输出格式,默认 json
单用户模式:一个环境(profile)一个登录 token,命令不带任何身份参数。
输出格式
所有命令输出统一 JSON 信封:
{"ok": true, "data": {...}}
{"ok": false, "error": {"type": "auth", "code": 3, "message": "token expired", "hint": "run `erp-cli auth login-start` then `erp-cli auth login-wait`"}}--format table 输出表格(适合人类阅读),--format csv 输出 CSV(适合导出)。
AI Agent 使用
本工具为 AI Agent 设计。配合 Skill(AI 使用文档,含意图路由决策树、命令参数、行为规则)使用,AI 即可:
- 精准路由:用户说口语 → 自动匹配对应命令,不做模糊猜测
- 先查后做:操作前先查询确认 ID、状态、上下文,不编造参数
- 写操作确认:创建/修改/删除等操作执行前先向用户展示摘要并确认,可使用
--dry-run预览 - 知识库优先:非 ERP 操作的问题默认先检索知识库,搜到结合原文回答
Skill 安装方式:
npx skills add windaka-erp/erp-cli -y -gSkill 文档位于仓库 skills/ 目录,包含:
- 意图路由决策树("用户说X → 执行Y命令"的完整映射)
- 各产品模块详细参考(oa.md、workorder.md)
- 认证/配置/错误处理规则
- 危险操作清单和确认流程
安全与风险提示(使用前必读)
本工具可供 AI Agent 调用以自动化操作物达通(WindaKa)ERP 系统,存在模型幻觉、执行不可控、提示词注入等固有风险;授权登录后,AI Agent 将以您的用户身份在授权范围内执行操作,可能导致敏感数据泄露、越权操作等高风险后果,请您谨慎操作和使用。
为降低上述风险,工具已在多个层面启用默认安全保护,但上述风险仍然存在。我们强烈建议不要主动修改任何默认安全配置;一旦放开相关限制,上述风险将显著提高,由此产生的后果需由您自行承担。
环境要求
- Node.js >= 14.0.0
- 平台:Windows / macOS / Linux(均支持 x64 和 arm64)
License
MIT
