技术实践

得物以加权匹配与索引流水线维护组件知识

应用与实践上下文与知识智能体系统知识库Agent 工具调用编程

概述

实现层面有四点:①入口收敛,SKILL.md 明确规定 Agent 必须调用统一入口 find-component.js,内部自动处理「components.csv 缺失则触发 run-scan.js、resolve-scope 计算搜索范围、match-component 匹配排序、命中记录 usage、按固定 JSON 协议返回」,避免 AI 在多脚本间犹豫或漏掉前置步骤。 ②范围解析由 resolve-scope.js 完成,读取 pnpm-workspace.yaml 解析 workspace 包,根据当前聚焦文件/目录反推 currentAppRoot,结合 root_scope_patterns(如 apps/_share/、packages/)形成「当前应用 + 根作用域共享包」的搜索集合,无聚焦子项目时退回全量 scope。 ③匹配用多因素加权而非纯关键词,含名称精确/包含、编辑距离模糊、Token 重叠、首字母缩写(如 dlp 匹配 DateLinkPicker)、当前应用加权、使用频率加权、来源质量加权(README 推断高于纯 inferred)、存在性校验与记录类型权重,并设 NO_MATCH_SCORE_THRESHOLD,低分视为噪音命中,可补扫一次,仍低分按无匹配返回。 ④索引构建做成 run-scan.js→index-manager→enrich 的流水线,按 source_hash 跳过未变化组件、支持并行扫描、缺失文件标记 exists=0,并在开启 agent_mode_no_fallback=true 后强制 Agent 完成 summary/keywords 富化再写回。 命中后记录 usage,形成轻量反馈回路以持续改写排序。