工作方式
本地优先、单一编排核心、四个薄入口——理解 FlowLens 如何组织你的流量数据。
设计原则
四条贯穿整个系统的不变量,任何功能都不能绕过。
确定性核心
匹配、diff、统计、规则与指纹计算全部由确定性算法完成, 相同输入必得相同输出,结果可复现、可逐字段核对; AI 只是受门控的辅助面,不参与核心判定路径。
单一核心
所有业务逻辑收敛在 Rust 编排层 flowlens-app, 四个入口只做薄适配,不在入口层复制分析逻辑。
证据链
artifact + provenance + 追加式审计, 每一次转换的输入输出哈希、来源引用都完整可追溯。
能力门控
AI 与自动化入口默认只读,写操作需显式授权, 删除与密钥能力永不开放给 agent;所有数据留在本机, 不依赖云端服务。
分层架构
依赖方向自上而下:入口层 → 编排层 → 能力层 → 基础设施。
能力层 crate 只依赖领域模型,互不横向依赖;入口不重写分析核心, 只把请求翻译成编排层调用;MCP 的工具抽象(flowlens-mcp)与后端实现 分离,外部会话与内嵌 AI 助手共享同一套注册表、策略与审计通道。
关键数据流
三条主干路径:Pair Diff、基线与异常发现、转换与证据链。
Pair Diff 流水线
导入
自动探测 HAR / JSONL / Spider JSONL / PCAP 等格式, 归一化为 Session / Exchange 领域模型,body 写入内容寻址的 blob store。
配对
五种策略自动对齐两侧会话,每条匹配携带 score / confidence / ambiguity,支持人工复查与锁定。
结构化 diff
逐字段生成字段树 DiffReport,可选开启表示层信号 (header 顺序、query 编码等被归一化抹掉的差异)。
持久化
session / match_set / diff_report 全部落库, 锁定的人工配对在后续重跑时自动继承。
复核
语义视图、文本 diff、协议指纹三种证据面板交叉验证, 每条结论都能回链到原始 exchange 证据。
重跑
调整匹配或 diff 参数后按已有锁定结果重跑, 人工复核的投入不会丢失。
基线与异常发现
从正常样本构建基线:endpoint 出现频次、转移概率与 7 个域的字段统计。扫描时合并四类信号——规则命中、字段统计偏离、 内置高确定性检查、序列异常——按规则 / 统计 / 序列 / AI 四维贡献合成 finding 评分,用户可反馈状态, 也可对单条 finding 显式触发 AI 判定(第四维)。
转换与证据链
转换、pipeline 与插件的输出一律写成不可变 artifact, 附带输入输出哈希、provenance 链与敏感级别; 后续的 diff、finding 与 AI 解释都引用这条证据链, 而不是直接暴露裸明文。原始输入字节始终保留在 blob store, 归一化过程中被抹掉的差异由独立的表示层信号层记录, 可追溯不丢失。
规则从哪里来:AI 辅助生成与人工演进
FlowLens 的规则可以由人手工编写,也可以由 AI 辅助产出, 但所有规则演进都经过显式人工确认与证据门禁,不存在自动晋升路径。
生命周期状态机
解析规则与规则提案各自的状态迁移,全部以追加式 revision 与事件留痕。
安全模型
账号隔离、凭证、网络出口与审计,四层防线默认就位。
账号与隔离
Argon2 密码哈希;逻辑项目路径经 SHA-256 摘要映射到 账号隔离的数据目录,最后一个管理员账号受删除保护。 导入侧支持脱敏:SNI、远端地址与 QUIC SCID 可哈希化, 保留存在性语义而不暴露真实值。
凭证
API Token 采用 fls_ 前缀格式,存储侧只保留哈希与前缀, 完整 token 仅在创建时显示一次;每个请求重新认证,吊销即时生效。
网络出口
AI 调用经受限 HTTPS 客户端发起:host 白名单、强制 HTTPS、 私网地址默认拒绝;发往 AI provider 的内容只含脱敏摘要 (finding 标题 + 字段路径 / 值),不发完整原始 body; 日志 span 不落原始 body 与密钥等敏感字段。
审计
audit_log 追加式写入、永不覆盖;HTTP 请求的 correlation id 贯穿 tracing span 与审计行,操作可追溯到来路。
四入口对比
同一套编排核心,不同的定位与认证模型。
| 入口 | 定位 | 认证方式 | 适用场景 |
|---|---|---|---|
| 桌面工作台 | 图形化主入口 | 账号登录(会话在进程内存) | 日常交互式分析 |
| HTTP 服务 | 浏览器模式 API | 账号登录(sessionStorage token) | 团队协作或 IDE 内嵌 |
| MCP 服务 | AI 与自动化工具面(122 个工具) | stdio 无认证;HTTP 模式支持账号 API Token | AI agent 集成 |
| CLI | 批处理与脚本 | 无账号体系(直接打开项目目录) | CI 与一次性分析 |