用途:sem-integration 提供在 night-market 技能中使用 sem 语义差异的基础模式,面向构建或修改会消费 git diff 输出的技能,给出检测、安装与回退逻辑。不适用于直接运行 sem CLI,也不适用于不消费 diff 输出的技能。
主要能力:一是检测模式,通过 _sem_check 检查 sem 是否可用,并把结果按会话缓存到 ${CLAUDE_CODE_TMPDIR:-/tmp}/sem-available,每个会话最多执行一次检测。二是首次使用时安装,当检测返回 0 时提供安装建议,平台相关命令见 modules/detection.md。三是语义差异与影响分析,sem 可用时使用 sem diff --format json <baseline> 和 sem impact --json <file-or-entity>;不可用时回退到 git diff --name-only --diff-filter=A/M/D/R <baseline>,并用 rg/grep 按文件名追踪调用方。四是输出归一化,回退输出按 modules/fallback.md 归一化为与 sem JSON 相同的实体结构,使下游消费者两种情况看到一致结构。
必要用法:会话内缓存检测结果,避免重复检测;当 sem 不可用时必须给出安装建议并自动走回退路径,不得静默失败;消费该集成的技能在前言中声明 dependencies: [leyline:sem-integration],而不是重新实现检测逻辑。
限制:资料未提供 sem 的安装命令细节、具体平台命令、许可证、性能表现或收费信息;相关实现细节需查阅其引用的 modules 文档。