Files
Workspace/Tools/AgentSupport/README.md
T
cneicy 0d9e04c09d
Validate ShrinkSDK Workspace / catalog (push) Successful in 4s
Validate ShrinkSDK Workspace / unity (push) Successful in 3m20s
chore(release): publish supplemental packages and remove internal reports
2026-09-29 10:42:21 +08:00

39 lines
3.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# ShrinkSDK Inspect
本地语义导航与能力查询工具。无需模型 API、向量数据库或常驻服务。
```powershell
dotnet tool install ShrinkSDK.Inspect --tool-path .tools --add-source https://git.crash.work/api/packages/ShrinkSDK/nuget/index.json --version 0.1.2
.tools/shrink inspect capabilities "存档" --root .
.tools/shrink inspect modules --root .
```
开发工具本身时,可用 `dotnet pack Tools/AgentSupport/Shrink.Inspect -c Release -o Artifacts/Inspect` 构建本地包。
支持 `modules`、`capabilities`、`symbol`、`flow`、`impact`、`check`。能力默认 3 项;其他结果默认 20 项,链路深度 2。使用 `--module`、`--limit`、`--depth` 缩小或展开,`--json` 返回结构化数据。
Unity 使用菜单 **Tools/ShrinkSDK/Inspection/Export compilation inputs** 导出实际编译引用、源文件和宏,然后传入 `--compilation Artifacts/Inspection/compilation.json`。没有导出时 IDE 工程输入只作为可能过期的辅助;无工程输入时采用标记不完整的源码候选索引。
.NET/Godot 消费项目先正常 restore/build,再使用 `--project path/to/project.csproj`,通过 MSBuildWorkspace 获取语义。工具需要 .NET 8 或兼容运行时,以及可加载该项目的 SDK。
```text
shrink inspect flow "route:command/execute" --compilation Artifacts/Inspection/compilation.json
shrink inspect symbol ShrinkContextRuntime --compilation Artifacts/Inspection/compilation.json
shrink inspect impact ShrinkNetworkService.cs --compilation Artifacts/Inspection/compilation.json
shrink inspect check --compilation Artifacts/Inspection/compilation.json --json
```
`static` 是静态绑定,`candidate` 是动态候选/待注册关系,`runtime-bound` 来自相同构建的按需快照,`unresolved` 表示信息不足。静态订阅关系不等于活跃订阅;影响查询不证明没有其他间接影响。索引每次从当前输入构建,不保存不可见的跨任务记忆。
通过 `--snapshot` 加载宿主导出的快照;无可验证构建标识或标识不符时不合并。工具不自动连接生产宿主,不输出消息正文或令牌。
新增内容的工作方式见 [复用优先设计](../../Docs/ReuseFirstDesign.md)。源码、配置与行为验证优先于描述;无命中不意味着不存在能力。
退出码:0 查询完成,1 `check` 发现确定错误,2 参数/输入错误。覆盖不足以结构化 coverage 返回,不伪装为完整检查通过。
当前目录下的 Unity PackageCache 只纳入已安装的 `com.cneicy.shrink-*` 源码与能力说明,其他第三方包作为引用。消费项目用自己的 README 声明业务能力,工具不会从 SDK 基础设施推断玩法已经存在。
本机仅安装较新 .NET SDK 时,CLI 允许前滚到最新已安装主版本;共享内核仍为 netstandard2.1。能力查询无需 MSBuild,`--project` 需要可加载目标项目的 SDK。
本地发布与验证入口:`Pack-Local.ps1` 打包 NuGet,`Install-Unity.py <工程路径>` 生成可随工程保存的 UPM tarball;它只改消费工程的 ShrinkSDK 依赖并保留原 manifest 备份。新版安装和回退说明见 [迁移指南](../../Docs/NetworkV2Migration.md)。