bookworm-smart-assistant/docs/bookworm-v5.7-architecture.md

24 KiB

Bookworm Smart Assistant v5.7 — 技术架构总览

生成时间: 2026-03-02 | 共 14 张架构图 在线预览: 粘贴至 Mermaid Live Editor 或 GitHub


图 1. 系统全景架构

graph TB
    subgraph USER["用户层"]
        Input["用户输入"]
        SlashCmd["/skill-name 显式调用"]
    end

    subgraph GATEWAY["Neural Gateway v5.7"]
        direction TB
        Hook1["route-interceptor<br/>(UserPromptSubmit)"]
        Tokenizer["分词 + 同义词展开<br/>22 组同义词"]
        BM25["BM25 语义评分<br/>+ TF-IDF 三层加权"]
        ContextFusion["上下文感知融合<br/>BM25(0.6) + 会话(0.2)<br/>+ 项目(0.1) + 工作流(0.1)"]
        Disambig["消歧规则引擎<br/>31 条 JSON 规则"]
        BWR["[BWR] 路由指令注入"]
    end

    subgraph COMPLIANCE["合规门控"]
        PreTool["route-compliance-gate<br/>(PreToolUse:Skill)"]
        PostAudit["route-auditor<br/>(Stop)"]
    end

    subgraph SKILLS["技能层 (52 Skills)"]
        direction LR
        S_AI["AI/数据 (3)"]
        S_DEV["开发 (12)"]
        S_ARCH["架构 (8)"]
        S_OPS["DevOps (4)"]
        S_SEC["安全 (1)"]
        S_QA["质量 (3)"]
        S_PROD["产品/设计 (4)"]
        S_BIZ["商业/研究 (9)"]
        S_CONTENT["内容/传播 (5)"]
        S_META["元技能/编排 (3)"]
    end

    subgraph AGENTS["智能体层 (10 Agents)"]
        direction LR
        A_OPUS["Opus (2)<br/>orchestrator<br/>code-reviewer"]
        A_SONNET["Sonnet (8)<br/>research-analyst | full-stack-builder<br/>quality-gate | self-auditor<br/>self-healer | canvas-ui-designer<br/>test-writer | pre-deploy-checker"]
    end

    subgraph MCP_LAYER["MCP 三层生态 (22+3)"]
        direction LR
        MCP_LOCAL["本地常驻 (12)<br/>deep-research | context7<br/>sequential-thinking | playwright<br/>chrome-devtools | browserbase<br/>mobile | github | slack<br/>linear | atlassian | supabase"]
        MCP_CLOUD["云托管 (9)<br/>sentry | figma | notion<br/>gamma | canva | vercel<br/>cloudinary | scholar-gateway<br/>graphos"]
        MCP_PLUGIN["插件市场 (1)<br/>firebase"]
        MCP_ONDEMAND["按需模板 (3)<br/>postgres | redis | k8s"]
    end

    subgraph EVOLUTION["自进化系统"]
        direction LR
        DriftDetect["drift-detector"]
        Auditor["self-auditor<br/>8 维审计"]
        Healer["self-healer<br/>元数据修复"]
        EvoLog["evolution-log<br/>18 seq"]
    end

    Input --> Hook1
    SlashCmd -.->|"优先级 1: 直接执行"| SKILLS
    Hook1 --> Tokenizer --> BM25 --> ContextFusion --> Disambig --> BWR
    BWR -->|"[BWR:id] 路由指令"| PreTool
    PreTool -->|"PASS"| SKILLS
    SKILLS --> PostAudit
    SKILLS -.->|"复杂任务"| AGENTS
    AGENTS --> MCP_LAYER
    SKILLS --> MCP_LAYER

    PostAudit -->|"反馈"| EVOLUTION
    DriftDetect --> Auditor --> Healer --> EvoLog
    EvoLog -.->|"权重学习"| BM25

    style GATEWAY fill:#1a1a2e,color:#e0e0ff,stroke:#4a4aff
    style COMPLIANCE fill:#2d1b2e,color:#ffccff,stroke:#aa44aa
    style SKILLS fill:#1b2e1b,color:#ccffcc,stroke:#44aa44
    style AGENTS fill:#2e2e1b,color:#ffffcc,stroke:#aaaa44
    style MCP_LAYER fill:#1b2e2e,color:#ccffff,stroke:#44aaaa
    style EVOLUTION fill:#2e1b1b,color:#ffcccc,stroke:#aa4444

图 2. 路由引擎核心管线

flowchart LR
    subgraph INPUT["输入处理"]
        Raw["原始输入"]
        Seg["分词"]
        Syn["同义词展开<br/>22 组词典"]
    end

    subgraph SCORING["评分引擎"]
        BM25["BM25 评分<br/>k1=1.2, b=0.75"]
        TF["TF-IDF 加权<br/>core / strong / extended"]
        CTX["上下文融合<br/>会话窗口 10 次<br/>衰减 0.85"]
        PRJ["项目类型检测<br/>9 种项目"]
        WF["工作流 n-gram<br/>模式匹配"]
    end

    subgraph DECISION["决策层"]
        Fusion["综合评分<br/>BM25x0.6 + CTXx0.2<br/>+ PRJx0.1 + WFx0.1"]
        Disamb["消歧规则<br/>31 条"]
        Chain["技能链推荐<br/>composable 图"]
        Confidence{"置信度?"}
    end

    subgraph OUTPUT["输出"]
        HIGH["HIGH ge 0.8<br/>直接路由"]
        MED["MED 0.5-0.8<br/>路由+辅助指引"]
        LOW["LOW lt 0.5<br/>developer-expert"]
    end

    Raw --> Seg --> Syn
    Syn --> BM25
    BM25 --> TF --> Fusion
    CTX --> Fusion
    PRJ --> Fusion
    WF --> Fusion
    Fusion --> Disamb --> Chain --> Confidence
    Confidence -->|"ge 0.8"| HIGH
    Confidence -->|"0.5~0.8"| MED
    Confidence -->|"lt 0.5"| LOW

图 3. 技能全景 (52 Skills x 10 类别)

mindmap
  root((Bookworm v5.7<br/>52 Skills))
    AI / 数据 3
      ai-ml-expert
      data-analyst-expert
      data-engineer-expert
    开发 12
      frontend-expert
      backend-builder
      mobile-expert
      miniprogram-expert
      developer-expert
      debugger-expert
      api-integration-specialist
      regex-shell-wizard
      ultimate-code-expert
      browser-automation-expert
      workflow-automation-expert
      notification-system-expert
    架构 8
      architect-expert
      database-tuning-expert
      cloud-native-expert
      edge-computing-expert
      performance-expert
      impact-analyst
      diagram-as-code-expert
      zero-defect-guardian
    DevOps 4
      devops-expert
      devsecops-expert
      git-operation-master
      sre-expert
    安全 1
      security-expert
    质量 3
      tester-expert
      reviewer-expert
      project-audit-expert
    产品 / 设计 4
      product-manager-expert
      designer-expert
      ux-researcher
      project-coordinator
    商业 / 研究 9
      business-plan-skill
      finance-advisor
      sales-consultant
      pricing-strategist
      customer-success-expert
      growth-hacker
      investor-review-guide
      industry-research-cn
      legal-review-skill
    内容 / 传播 5
      tech-writer-expert
      copywriter-expert
      email-communicator
      social-media-manager
      technical-seo-expert
    元技能 / 编排 3
      genesis-engine
      prompt-optimizer
      tech-lead-mentor

图 4. 智能体编排 (10 Agents)

graph TB
    subgraph OPUS["Opus 模型 (2)"]
        ORC["orchestrator<br/>目标分解 - 调度 - 验收"]
        CR["code-reviewer<br/>多维度代码审查"]
    end

    subgraph SONNET_COMPOUND["Sonnet 复合型 (3)"]
        RA["research-analyst<br/>代码探索 + 技术调研"]
        FSB["full-stack-builder<br/>前后端 + DB 端到端"]
        QG["quality-gate<br/>PASS / BLOCKED 门控"]
    end

    subgraph SONNET_SPECIAL["Sonnet 专业型 (3)"]
        CUD["canvas-ui-designer<br/>高保真 UI/UX"]
        TW["test-writer<br/>自动测试生成"]
        PDC["pre-deploy-checker<br/>部署前安全检查"]
    end

    subgraph SONNET_META["Sonnet 元系统 (2)"]
        SA["self-auditor<br/>8 维系统审计"]
        SH["self-healer<br/>配置漂移修复"]
    end

    ORC -->|"分派研究"| RA
    ORC -->|"分派实现"| FSB
    ORC -->|"分派审查"| CR
    ORC -->|"质量验收"| QG
    FSB -.->|"实现后"| TW
    TW -.->|"测试通过"| PDC
    SA -->|"审计报告"| SH
    SH -.->|"修复后"| SA

    style OPUS fill:#4a1942,color:#ffccff,stroke:#aa44aa
    style SONNET_COMPOUND fill:#1a3a1a,color:#ccffcc,stroke:#44aa44
    style SONNET_SPECIAL fill:#1a2a3a,color:#cce0ff,stroke:#4488cc
    style SONNET_META fill:#3a2a1a,color:#ffe0cc,stroke:#cc8844

图 5. 钩子生命周期 (17 Hooks)

flowchart TB
    subgraph SUBMIT["UserPromptSubmit (1)"]
        H1["route-interceptor<br/>Neural Gateway 路由注入"]
    end

    subgraph PRE["PreToolUse (5)"]
        H2["block-sensitive-files<br/>Write/Edit/NotebookEdit"]
        H3["block-dangerous-commands<br/>Bash"]
        H4["commit-message-lint<br/>Bash (git commit)"]
        H5["code-quality-gate<br/>Bash"]
        H6["route-compliance-gate<br/>Skill"]
    end

    subgraph POST["PostToolUse (4 主 + 4 sub)"]
        H7["post-edit-dispatcher<br/>Edit/Write 并行派遣"]
        H7a["check-typescript"]
        H7b["check-lint"]
        H7c["suggest-tests"]
        H7d["drift-detector<br/>integrity-check"]
        H8["build-outcome-tracker<br/>Bash 构建结果"]
        H9["post-edit-quality-check<br/>反模式扫描"]
        H10["activity-logger<br/>JSONL 活动日志"]
    end

    subgraph OTHER["SubagentStart / Stop (2)"]
        H11["subagent-route-injector<br/>子 Agent 上下文注入"]
        H12["route-auditor<br/>端到端审计 + 反馈闭环"]
    end

    H1 -->|"BWR 指令"| PRE
    PRE -->|"PASS"| POST
    H7 --> H7a & H7b & H7c & H7d
    POST --> OTHER
    H12 -.->|"route-feedback.jsonl"| H1

    style SUBMIT fill:#2a1a3a,color:#e0ccff,stroke:#8844cc
    style PRE fill:#3a1a1a,color:#ffcccc,stroke:#cc4444
    style POST fill:#1a3a2a,color:#ccffe0,stroke:#44cc88
    style OTHER fill:#1a2a3a,color:#cce0ff,stroke:#4488cc

图 6. MCP 三层生态

graph LR
    subgraph T1["Tier 1 — 本地常驻 (12)"]
        direction TB
        subgraph T1_AI["AI/研究"]
            DR["deep-research<br/>stdio/Python"]
            C7["context7<br/>stdio/npx"]
            ST["sequential-thinking<br/>stdio/npx"]
        end
        subgraph T1_BROWSER["浏览器"]
            PW["playwright<br/>stdio/npx"]
            CD["chrome-devtools<br/>stdio/node"]
            BB["browserbase<br/>stdio/node"]
        end
        subgraph T1_DEVICE["设备"]
            MB["mobile<br/>stdio/npx"]
        end
        subgraph T1_SAAS["SaaS 集成"]
            GH["github<br/>HTTP"]
            SK["slack<br/>HTTP"]
            LN["linear<br/>HTTP"]
            AT["atlassian<br/>HTTP"]
            SB["supabase<br/>HTTP"]
        end
    end

    subgraph T2["Tier 2 — 云托管 (9)"]
        direction TB
        SE["sentry"]
        FG["figma"]
        NO["notion"]
        GA["gamma"]
        CA["canva"]
        VE["vercel"]
        CL["cloudinary"]
        SG["scholar-gateway"]
        GP["graphos"]
    end

    subgraph T3["Tier 3 — 插件 + 按需 (1+3)"]
        direction TB
        FB["firebase<br/>(插件市场)"]
        PG["postgres<br/>(按需模板)"]
        RD["redis<br/>(按需模板)"]
        K8["kubernetes<br/>(按需模板)"]
    end

    T1 ---|"always on"| CORE["Claude Code<br/>Runtime"]
    T2 ---|"deferred tools<br/>按需加载"| CORE
    T3 ---|"手动安装<br/>项目级配置"| CORE

    style T1 fill:#1a2e2e,color:#ccffff,stroke:#44aaaa
    style T2 fill:#2e2e1b,color:#ffffcc,stroke:#aaaa44
    style T3 fill:#2e1b2e,color:#ffccff,stroke:#aa44aa

图 7. 自进化闭环

flowchart LR
    subgraph TRIGGER["触发源"]
        Edit["文件修改<br/>(Edit/Write)"]
        Session["会话结束<br/>(Stop)"]
    end

    subgraph DETECT["检测层"]
        Drift["drift-detector<br/>配置变更感知"]
        Integrity["integrity-check<br/>SHA256 校验<br/>24 文件"]
    end

    subgraph AUDIT["审计层 — 10 维度"]
        H1a["H1 配置一致性 13%"]
        H2a["H2 行为基线 13%"]
        H3a["H3 磁盘健康 10%"]
        H4a["H4 钩子完整性 13%"]
        H5a["H5 技能索引 9%"]
        H6a["H6 规则缓存 9%"]
        H7a2["H7 路由准确率 13%"]
        H8a["H8 学习收敛 10%"]
        H9a["H9 路由合规率 10%"]
        H10a["H10 Hook有效性 9%"]
    end

    subgraph HEAL["修复层"]
        SelfHeal["self-healer<br/>仅修改元数据"]
        Actions["版本同步 | 计数修正<br/>注册表修复 | 缺失补建"]
    end

    subgraph LOG["记录层"]
        EvoLog["evolution-log.jsonl<br/>18 seq (v5.4-v5.7)"]
        Weights["route-weights.json<br/>学习权重 pm 0.5 限幅"]
        Feedback["route-feedback.jsonl<br/>路由纠正记录"]
    end

    Edit --> Drift --> Integrity
    Session --> AUDIT
    Integrity --> AUDIT
    AUDIT -->|"CRITICAL/WARNING"| SelfHeal
    SelfHeal --> Actions --> EvoLog
    AUDIT -->|"H7/H8 数据"| Weights
    AUDIT -->|"路由反馈"| Feedback
    Feedback -.->|"自适应学习<br/>5 天半衰期"| Weights

图 8. 数据流与文件拓扑

graph TB
    subgraph CONFIG["配置层 (唯一信源)"]
        CLAUDE["CLAUDE.md<br/>系统宪法"]
        SKILL_MD["skills/*/SKILL.md x52<br/>技能定义"]
        AGENT_MD["agents/*.md x10<br/>智能体定义"]
        SETTINGS["settings.json<br/>钩子 + MCP 注册"]
    end

    subgraph COMPILED["编译产物 (自动生成)"]
        INDEX["skills-index.json<br/>52 技能 x 2573 关键词"]
        STATS["stats-compiled.json<br/>实时统计"]
        RULES["rules-compiled.json<br/>缓存规则"]
        DISAMB["disambiguation-rules.json<br/>31 条消歧"]
        SYNS["synonyms.json<br/>22 组同义词"]
        CHECKSUMS["checksums.json<br/>24 文件 SHA256"]
    end

    subgraph RUNTIME["运行时数据"]
        RF["route-feedback.jsonl<br/>路由纠正"]
        RW["route-weights.json<br/>学习权重"]
        AL["activity-log.jsonl<br/>活动日志"]
        EL["evolution-log.jsonl<br/>进化记录"]
        SM["session-memory.json<br/>会话路由记忆"]
    end

    subgraph SCRIPTS["脚本引擎 (46 模块)"]
        RA2["route-analyzer.js<br/>BM25 评分"]
        TF2["tfidf-engine.js<br/>关键词加权"]
        SE2["synonym-expander.js<br/>同义词展开"]
        CT2["context-tracker.js<br/>会话追踪"]
        PD2["project-detector.js<br/>项目类型"]
        WP2["workflow-patterns.js<br/>工作流模式"]
        SCR["skill-chain-recommender.js<br/>技能链推荐"]
        GEN["generate-skill-index.js<br/>索引生成"]
    end

    SKILL_MD -->|"提取"| GEN --> INDEX
    INDEX --> RA2
    SYNS --> SE2 --> RA2
    RA2 --> TF2
    CT2 --> RA2
    PD2 --> RA2
    WP2 --> RA2
    DISAMB --> RA2
    RA2 -->|"评分结果"| RF
    RF -->|"学习"| RW
    SETTINGS -->|"注册"| COMPILED
    CLAUDE --> STATS
    AGENT_MD --> STATS

    style CONFIG fill:#1a1a2e,color:#e0e0ff,stroke:#4a4aff
    style COMPILED fill:#2e2e1b,color:#ffffcc,stroke:#aaaa44
    style RUNTIME fill:#1b2e1b,color:#ccffcc,stroke:#44aa44
    style SCRIPTS fill:#2e1b2e,color:#ffccff,stroke:#aa44aa

图 9. 请求全生命周期 (时序图)

sequenceDiagram
    actor U as 用户
    participant HK1 as route-interceptor
    participant RE as 路由引擎<br/>(BM25+TF-IDF)
    participant HK2 as compliance-gate
    participant SK as Skill 技能
    participant HK3 as post-edit-dispatcher
    participant SUB as sub-hooks x4
    participant HK4 as activity-logger
    participant HK5 as route-auditor

    U->>HK1: 输入文本
    HK1->>RE: 分词 + 同义词展开
    RE->>RE: BM25 评分 x TF-IDF
    RE->>RE: 上下文融合 (0.6+0.2+0.1+0.1)
    RE->>RE: 消歧规则 (31 条)
    RE-->>HK1: [BWR:id] 路由指令
    HK1-->>U: additionalContext 注入

    U->>HK2: 调用 Skill
    HK2->>HK2: 校验 BWR 匹配
    alt 合规
        HK2-->>SK: PASS
    else 违规
        HK2-->>U: BLOCKED + 建议
    end

    SK->>SK: 执行技能逻辑
    SK->>HK3: Edit/Write 触发

    par 并行派遣
        HK3->>SUB: check-typescript
        HK3->>SUB: check-lint
        HK3->>SUB: suggest-tests
        HK3->>SUB: drift-detector + integrity-check
    end

    SK->>HK4: 活动日志 (JSONL)

    Note over U,HK5: 会话结束
    HK5->>HK5: 端到端路由审计
    HK5->>HK5: actualSkill 闭环记录
    HK5-->>RE: route-feedback.jsonl

图 10. 安全纵深架构 (三层防线)

graph TB
    subgraph L1["Layer 1 — 输入防线 (PreToolUse)"]
        B1["block-sensitive-files<br/>禁写: .env / credentials<br/>settings.json / CLAUDE.md"]
        B2["block-dangerous-commands<br/>禁执: rm -rf / DROP TABLE<br/>format / shutdown"]
        B3["commit-message-lint<br/>规范 commit 消息"]
        B4["code-quality-gate<br/>构建命令白名单"]
        B5["route-compliance-gate<br/>BWR 路由合规校验"]
    end

    subgraph L2["Layer 2 — 执行防线 (PostToolUse)"]
        P1["post-edit-quality-check<br/>反模式扫描"]
        P2["integrity-check<br/>SHA256 x 24 文件"]
        P3["drift-detector<br/>配置漂移实时检测"]
        P4["build-outcome-tracker<br/>构建成功率统计"]
    end

    subgraph L3["Layer 3 — 审计防线 (Stop + 元系统)"]
        A1["route-auditor<br/>端到端审计 + 合规率"]
        A2["self-auditor<br/>10 维健康检查"]
        A3["activity-logger<br/>全操作 JSONL 留痕"]
    end

    subgraph SAFEGUARD["安全约束"]
        SG1["self-healer 只修改元数据<br/>不触碰业务逻辑"]
        SG2["学习权重限幅 pm 0.5<br/>白名单校验 + holdout 验证"]
        SG3["checksums HMAC<br/>防篡改"]
    end

    L1 -->|"放行"| L2
    L2 -->|"放行"| L3
    L3 -.->|"CRITICAL/WARNING"| SAFEGUARD

    style L1 fill:#3a1a1a,color:#ffcccc,stroke:#cc4444
    style L2 fill:#3a2a1a,color:#ffe0cc,stroke:#cc8844
    style L3 fill:#1a2a3a,color:#cce0ff,stroke:#4488cc
    style SAFEGUARD fill:#1a3a1a,color:#ccffcc,stroke:#44aa44

图 11. 自适应学习闭环

flowchart TB
    subgraph COLLECT["数据采集"]
        Explicit["显式反馈<br/>route-feedback.js<br/>用户纠正路由"]
        Implicit["隐式反馈<br/>implicit-feedback.js<br/>路由后 5 min 使用情况"]
        Compliance["合规日志<br/>route-compliance-gate<br/>gate-pass / blocked"]
        Build["构建结果<br/>build-outcome-tracker<br/>成功 / 失败 / 超时"]
    end

    subgraph LEARN["学习引擎"]
        Decay["指数衰减<br/>半衰期 5 天"]
        Whitelist["白名单校验<br/>仅允许已注册技能"]
        Clamp["权重限幅<br/>-0.5 to +0.5"]
        Holdout["Holdout 验证<br/>20% 保留集"]
        Snapshot["权重快照<br/>回滚保护"]
    end

    subgraph APPLY["应用层"]
        Weights["route-weights.json<br/>权重增量"]
        Index["skills-index.json<br/>2573 关键词 x 三层权重"]
        BM25["BM25 评分<br/>基础分 + 学习增量"]
    end

    subgraph MONITOR["监控"]
        H7["H7 路由准确率<br/>13% 权重"]
        H8["H8 学习收敛<br/>10% 权重"]
        Stale["Stale 检测<br/>过期数据告警"]
    end

    Explicit --> Decay
    Implicit --> Decay
    Decay --> Whitelist --> Clamp --> Holdout
    Holdout -->|"验证通过"| Weights
    Holdout -->|"验证失败"| Snapshot -->|"回滚"| Weights
    Weights --> BM25
    Index --> BM25
    Compliance --> H7
    Build --> H8
    H7 --> Stale
    H8 --> Stale

    style COLLECT fill:#2e1b2e,color:#ffccff,stroke:#aa44aa
    style LEARN fill:#1a2e2e,color:#ccffff,stroke:#44aaaa
    style APPLY fill:#1b2e1b,color:#ccffcc,stroke:#44aa44
    style MONITOR fill:#2e2e1b,color:#ffffcc,stroke:#aaaa44

图 12. 健康评分模型 (10 维度)

pie title 健康评分权重分布 (总计 100%)
    "H1 配置一致性" : 13
    "H2 行为基线" : 13
    "H3 磁盘健康" : 10
    "H4 钩子完整性" : 13
    "H5 技能索引" : 9
    "H6 规则缓存" : 9
    "H7 路由准确率" : 13
    "H8 学习收敛" : 10
    "H9 路由合规率" : 10
    "H10 Hook有效性" : 9
graph LR
    subgraph STATIC["静态检查 (54%)"]
        H1["H1 配置一致性 13%<br/>config-validator<br/>错误/警告计数"]
        H4["H4 钩子完整性 13%<br/>SHA256 checksums<br/>24 文件校验"]
        H5["H5 技能索引 9%<br/>索引数 vs SKILL.md 数"]
        H6["H6 规则缓存 9%<br/>rules-compiled.json<br/>新鲜度检查"]
        H10["H10 Hook有效性 9%<br/>构建成功率统计"]
    end

    subgraph DYNAMIC["动态分析 (36%)"]
        H2["H2 行为基线 13%<br/>IQR + Z-score<br/>混合异常检测"]
        H7["H7 路由准确率 13%<br/>route-feedback.jsonl<br/>正确率计算"]
        H8["H8 学习收敛 10%<br/>route-weights.json<br/>权重偏移度"]
    end

    subgraph INFRA["基础设施 (10%)"]
        H3["H3 磁盘健康 10%<br/>大于 16GB CRITICAL<br/>大于 8GB WARNING"]
    end

    subgraph COMPLIANCE_H["合规 (10%)"]
        H9["H9 路由合规率 10%<br/>compliance 日志<br/>合规比率"]
    end

    subgraph TUNING["自优化机制"]
        EWMA["EWMA 动态阈值<br/>替代静态 3-sigma"]
        TREND["趋势预测<br/>指数平滑 + 尖峰检测"]
        WEIGHT_OPT["权重自优化<br/>历史瓶颈频率调整"]
    end

    STATIC --> TUNING
    DYNAMIC --> TUNING
    INFRA --> TUNING
    COMPLIANCE_H --> TUNING
    TUNING -->|"综合评分"| SCORE["健康度: 0-100"]

    style STATIC fill:#1a2a3a,color:#cce0ff,stroke:#4488cc
    style DYNAMIC fill:#2e1b2e,color:#ffccff,stroke:#aa44aa
    style INFRA fill:#1a3a1a,color:#ccffcc,stroke:#44aa44
    style COMPLIANCE_H fill:#3a2a1a,color:#ffe0cc,stroke:#cc8844

图 13. 生产部署架构 (闲鱼助手)

graph TB
    subgraph CLIENT["客户端"]
        EXT["Chrome Extension<br/>闲鱼助手插件"]
        WEB["Web Dashboard<br/>:3005 - :3000"]
    end

    subgraph HOST["生产服务器 <SERVER_A_IP>"]
        subgraph DOCKER["Docker Compose"]
            API["FastAPI 应用<br/>:8002 - :8000"]
            PG["PostgreSQL<br/>持久化存储"]
            REDIS["Redis<br/>缓存 + 绑定双写"]
        end

        subgraph OBSERVE["可观测性"]
            PROM["Prometheus<br/>:9091 - :9090"]
            GRAF["Grafana<br/>:3101 - :3000"]
            JAEGER["Jaeger<br/>:16686 + :4317 OTLP"]
        end
    end

    subgraph EXTERNAL["外部服务"]
        XY["闲鱼平台 WS"]
        LLM["LLM API<br/>(Claude/OpenAI)"]
    end

    EXT -->|"WebSocket"| API
    WEB -->|"HTTP REST"| API
    API --> PG
    API --> REDIS
    API -->|"WS 双路径"| XY
    API -->|"AI 回复生成"| LLM
    API -->|"OTel gRPC :4317"| JAEGER
    PROM -->|"scrape"| API
    GRAF -->|"query"| PROM
    GRAF -->|"trace"| JAEGER

    style CLIENT fill:#2e2e1b,color:#ffffcc,stroke:#aaaa44
    style DOCKER fill:#1a2e2e,color:#ccffff,stroke:#44aaaa
    style OBSERVE fill:#1b2e1b,color:#ccffcc,stroke:#44aa44
    style EXTERNAL fill:#2e1b2e,color:#ffccff,stroke:#aa44aa

图 14. 版本演进时间线

timeline
    title Bookworm 版本演进 (v5.4 - v5.7)
    section v5.4 (02-23 to 02-24)
        seq 1-3 : 三层防线 + 消歧规则引擎 (18 规则)
               : 学习安全基座 (白名单+权重快照+holdout)
               : 关键词缺口检测 + 健康趋势预测
    section v5.5 (02-26 to 03-01)
        seq 4-13 : dispatcher 委托模式消除双重实现
                 : 消歧规则外部化 (22 规则 JSON)
                 : H9/H10 评分逻辑修正
                 : 1320 tests 全绿
    section v5.6 (03-01)
        seq 14-17 : actualSkill 合规闭环
                  : detectPipeline 管道检测
                  : 框架汇总行检测 (12 框架)
                  : 消歧规则 27 条
    section v5.7 (03-01 to 03-02)
        seq 18 : MCP 三层生态 13 to 22
               : 技能 50 to 52 (+workflow +notification)
               : 消歧 28 to 31 条 + 同义词 20 to 22 组
               : 路由准确率 98%

附录: 关键数字汇总

维度 数量 备注
技能 52 10 类别, 全部 stable, 22 composable
智能体 10 2 opus + 8 sonnet
钩子 17 13 注册 + 4 sub-hook
MCP 22+3 12 本地 + 9 云托管 + 1 插件 + 3 按需
脚本模块 46 45 .js + 1 .py
消歧规则 31 JSON 外部化
同义词组 22 词典展开
加权关键词 2573 core/strong/extended 三层
健康维度 10 权重自优化 + EWMA 动态阈值
进化记录 18 seq v5.4 - v5.5 - v5.6 - v5.7
路由准确率 98% 含 A/B 实验框架