---
name: semantic-discover
description: >-
  建立或补全仓库的语义行为基线，识别能力边界、状态权威、重要入口、证据缺口和未知区；
  仅在首次建立、扩大或修复 `semantic/` 基线覆盖时使用，不负责普通新需求预检、已有差异分析或代码审查。
metadata:
  category: 语义质量
  scope: 框架
---

# 语义基线发现

把源码、契约、测试和设计中的事实整理成可追踪的语义地图。这个 Skill 负责发现和归并，
不把“读过代码”当成覆盖证据，也不自动修改业务代码。

## 工作边界

- 首次创建或更新语义对象前调用 `semantic-contract`，取得当前合同版本和对象字段；合同不可用时停止写入。
- 先读取当前生效的 `AGENTS.md`、仓库状态和已有 `semantic/` 材料；记录源码快照和未提交状态。
- 先全仓搜索已有能力、规则、公共接口、实现、测试和相邻命名，再决定复用、扩展或新建。
- 用领域 → 能力 → 语义边界导航；边界由独立入口、状态/生命周期、副作用、跨界或独立裁决决定，
  不按文件数量切分。
- 分类相关路径为 `in_scope`、`supporting`、`generated_or_vendor` 或 `excluded`；排除项必须有理由、风险和重查条件。
- 从入口、状态/数据、时间生命周期、外部副作用和契约五个方向交叉发现，并将同一承诺归并到一个稳定 ID。

## 输出

返回源码快照、区域分类、边界与能力图候选、行为承诺/规则/证据/问题记录候选、未知区和下一批待审集合。
只有覆盖网格、路径去向、边界归属和中高风险场景都有依据时，才报告两层闭合状态为 `closed`。
需要独立探索时优先派发 `semantic-boundary-explorer`，需要能力闭合复核时派发
`semantic-capability-reviewer`。宿主不能发现专用角色时，改用现有只读 `explorer` 或 `reviewer`，并在派发任务中
完整提供仓库绝对路径、源码版本、范围、相关对象和输出合同；无法取得独立上下文时由主 Agent 原地只读执行，
并明确缺少独立复核。长期对象只能由主 Agent 写入 `semantic/`；探索 Subagent 只返回候选事实和证据。
不要新建第二个任务图、存储、状态机、审查账本或调度器。

两层闭合与结构检查完成后调用 `semantic-verify`。该调用只验证基线材料，不自动进入代码修改。
