Repository docs · as authored
Customer onboarding
A local reading view of the repository's documents: the body is served as authored (Chinese documents are not translated) and every in-document link is rewritten to stay inside this app.
Source: docs/onboarding-customer.md
This document is served as authored. This page translates the chrome — not the document text.
面向交付方与客户方共同执行的首日/首周落地手册。 前置阅读:
user-guide.md(日常使用)、api-reference.md(接口对接)。
1. 部署形态选择
| 形态 | 适用 | 前提 | 说明 |
|---|---|---|---|
| 单机桌面 | POC、单个工程师/客户经理使用 | Python ≥ 3.11;pip install -e ".[web]" |
fde-scope web 默认绑 127.0.0.1:8080,无需认证即可用;macOS 另有双击即用的 DMG(同一控制台) |
| 内网服务器 | 客户团队多人共用、长期运行 | 一台内网 Linux/macOS 主机;Python ≥ 3.11 | 必须先设 FDE_SCOPE_API_TOKEN 开启认证,再 FDE_SCOPE_ALLOW_REMOTE=1 fde-scope web --host 0.0.0.0;建议前面加反向代理做 HTTPS |
| PawApp 插件 | 已部署 QwenPaw 桌面宿主的团队 | QwenPaw 宿主(私有软件) | 同一引擎、同一数据根的原生前端,18 条路由挂在 /api/fde-scope |
单机定位说明:当前版本无多用户/RBAC(见路线图 P5)。多人共用时以
「一台服务器 + 一个 token」为边界,操作者身份经 operator 字段自报进审计日志。
2. 安全基线清单(上线前逐项打勾)
- [ ] 设置 API token:
export FDE_SCOPE_API_TOKEN="$(openssl rand -hex 32)"。 只放环境变量,不写进任何配置文件、脚本仓库或聊天记录。 - [ ] 仅受信网络暴露:未设 token 前不要加
FDE_SCOPE_ALLOW_REMOTE=1; 公网暴露暂不提供额外防护(HTTPS/SSO 见 P5)。 - [ ] 数据根目录权限:确认数据根(
FDE_SCOPE_HOME或启动目录)下.fde_scope/与reports/对运行账号可写、对无关账号不可读 (chmod 700级别;engagement JSON 明文含干系人姓名/电话)。 - [ ] 备份:把
.fde_scope/+reports/纳入每日备份 (tar czf fde-backup-$(date +%F).tgz .fde_scope/ reports/), 其中audit.jsonl是 append-only 审计轨迹,必须随备份保留。 - [ ] 审计保留策略:删除 engagement(GDPR 删除权)不会删审计日志—— 这是有意设计,合规轨迹独立于客户数据生命周期;备份与保留策略要覆盖它。
- [ ] 日志级别:生产用默认
WARNING;排障临时FDE_SCOPE_LOG_LEVEL=DEBUG, 排障后改回。凭据不会进日志,但 DEBUG 会输出 gate 评估细节。
3. 数据接入决策树
「客户能给什么」→ 对应连接器与 env 配置。所有连接器统一三态:
env 齐配 → 真实 API;给本地 .jsonl/CSV → 离线回放;都没有 → 空结果 + WARNING。
客户能提供什么?
├─ 一份导出的表格/工单 CSV
│ → CSV 连接器(零配置,冷启动首选)
│ fde-scope connect --type csv --source data/tickets.csv
│ Web 控制台 Corpus forge 直接上传(≤ 10 MiB)
├─ Zammad 工单系统
│ → export FDE_SCOPE_ZAMMAD_BASE_URL="https://support.example.com"
│ export FDE_SCOPE_ZAMMAD_API_TOKEN="..."
│ (GET /api/v1/tickets 分页拉取;缺一个变量即回退本地回放)
├─ Salesforce(CRM/Case)
│ → export FDE_SCOPE_SF_INSTANCE_URL="https://acme.my.salesforce.com"
│ export FDE_SCOPE_SF_ACCESS_TOKEN="..." # 进程外获取的 access token,SOQL 只读
├─ MySQL 数据库
│ → pip install -e ".[mysql]";--type mysql,--source 给 DSN
├─ MES(工单/质量/停机,ISA-95)
│ → export FDE_SCOPE_MES_BASE_URL=... FDE_SCOPE_MES_API_TOKEN=...
│ (GET /api/v1/work-orders 约定;现场端点不同可用 options.endpoint 适配)
├─ Historian 时序库
│ → export FDE_SCOPE_HISTORIAN_BASE_URL=... FDE_SCOPE_HISTORIAN_API_TOKEN=...
│ (GET /api/v1/samples?tag=X;支持 PI Web API 风格 {tag} 占位端点)
├─ PLC / 产线设备直读(OPC UA)
│ → pip install -e ".[opcua]"(asyncua 驱动)
├─ 设备遥测(MQTT-Sparkplug)
│ → pip install -e ".[mqtt]"(paho-mqtt,真 broker;也可 JSONL 回放)
├─ 机器人轨迹(ROS2 bag)
│ → pip install -e ".[ros2]"(rosbags 回放)
└─ 文档(PDF/Word/Excel/PPT)
→ documents 连接器;需 pip install -e ".[agentscope]"(延迟导入 agentscope.rag)
profile 选择:客服/工单类用 ticket(CSV/Zammad/Salesforce/MySQL),
工厂/机器人类用 manufacturing(OPC UA/MQTT/ROS2/MES/Historian)。
4. LLM 配置决策树
LLM 完全可选:不配则语料合成、质量评分、runbook、引导起草全部走确定性规则路径, 流水线不中断。要 AI 增强时按下图选:
想用 LLM 增强(合成补盲 / AI 起草 context / runbook 起草 / LLM 评测)?
├─ 可出公网,接受按 token 计费
│ → MiMo Token Plan(默认路径)
│ export FDE_SCOPE_MIMO_API_KEY="tp-..." # tp- 前缀,与 sk- 按量 key 不通用
│ # 可选覆盖:FDE_SCOPE_MIMO_BASE_URL / FDE_SCOPE_MIMO_MODEL(默认 mimo-v2.5-pro)
├─ 企业已有 OpenAI 兼容端点(内部网关 / DeepSeek / vLLM / ollama 本地模型)
│ → export FDE_SCOPE_LLM_BASE_URL="http://localhost:11434/v1"
│ export FDE_SCOPE_LLM_API_KEY="sk-..." # 本地模型可填任意非空值
│ export FDE_SCOPE_LLM_MODEL="qwen3:14b" # 缺省 gpt-4o-mini
│ (与 MiMo 同时配置时优先走这里)
└─ 数据不能出内网且没有本地模型
→ 不配任何 LLM env,纯规则兜底——功能完整可用,仅「AI 起草/合成」为规则版
验证:curl localhost:8080/api/health 看 checks.llm.configured。
显式依赖 LLM 的命令(corpus --llm 等)未配置时会 exit 2 并提示,不会静默失败。
5. 验收标准模板(POC 成功判据)
在 engagement 的 success_criteria 阶段把下列判据契约化(Web Context tab 或
POST /api/engagements/{eid}/context 写入,success_criteria gate 要求
≥ 2 名 sponsor 且每条可度量):
KPI 目标(示例,按 profile 调整)
- [ ] ticket:意图准确率 ≥ ___、首响时间 P95 < ___ 分钟、升级率 ≤ ___
- [ ] manufacturing:OEE 提升 ≥ ___pp、抓取成功率 ≥ ___、碰撞/干预率 ≤ ___% (基线参照:OEE 世界级 0.85;抓取率 DexNet 基准 ~0.80)
流程完备性
- [ ] 适用 gate 全部通过且无未说明的 force 例外(
GET /api/engagements/{eid}/gates全绿;审计日志中每条 force advance 都有 reason + operator) - [ ] 移交包齐全且客户验收:runbook + eval 报告 + SLO + 培训材料,
handoff已带accept=true执行并留handoff.accepted审计事件 - [ ] FAT/SAT 签字扫描件等证据已附加(
GET .../evidence非空,sha256 入审计) - [ ] 审计可导出:
GET /api/engagements/{eid}/audit/export产出 Markdown 报告 - [ ] SLO 已定义且告警路由到位(
slogate 通过)
运维就绪
- [ ] 备份脚本已跑通一次并验证可恢复
- [ ]
/api/health全部ok: true - [ ] 运维方已完成知识转移(Zone D 阶段 17)并能独立执行常用操作清单
(见
docs/user-guide.md)
6. 常见现场情况
- Air-gapped(气隙)现场:安装包与依赖 wheel 需离线带入;LLM 只能选本地
OpenAI 兼容端点或不启用;
air_gapgate 会在 connect 阶段校验离线部署姿态。 - 多班次工厂:manufacturing profile 下
shift_handovergate 要求数字交接 日志 + 每班次 runbook;提前与客户排班负责人对齐。 - 德国/欧盟客户:
works_council(BetrVG §87 工会共决)与conformity(CE / EU AI Act)gate 默认启用;签字扫描件走 evidence API 留存。