FastSignalTrace
始终从本 skill 进入。让 scripts/invoke.ps1 自动检测项目语言,再调用同级的内部子 skill:
- C#:
fastsignaltrace-csharp - Godot/GDScript:
fastsignaltrace-godot - Rust、TypeScript/TSX、Tauri:
fastsignaltrace-rusttauri
标准流程
- 选择用户明确指定的单个源码根目录。一次测试只使用一个 Harness,不把多个实战工程放在同一根目录扫描。
- 默认使用
-Language Auto。只有用户明确要求覆盖自动判定时才指定具体语言。 - 优先把方程和变量表写入文件:
powershell.exe -NoProfile -ExecutionPolicy Bypass -File "<skill>/scripts/invoke.ps1" `
-SourceRoot "D:\Work\Project" `
-EquationOutput "D:\Work\result\equations.txt" `
-VariablesOutput "D:\Work\result\variables.tsv" `
-Detailed
- 从标准错误读取检测摘要,例如
SelectedLanguage=CSharp以及各扩展名计数。 - 退出码为 0 后,验证方程格式和 TSV 信号闭包,再汇报统计、输出路径和对应语言的静态分析边界。
- 需要语言级语义时读取被选中子 skill 的
SKILL.md;需要完整 CLI 手册时再读取其references/使用手册.md。
自动选择规则
.sln/.csproj强化 C# 判定。project.godot强化 Godot 判定。Cargo.toml、package.json、src-tauri、tauri.conf.json/json5强化 Rust+Tauri 判定。- 如果只有一种受支持源码扩展名,直接选择对应子 skill。
project.godot对常见的 Godot+C# 混合工程拥有 Godot 路由优先权。Godot 与 Cargo/Tauri 同时出现,或独立 C# 与 Cargo/Tauri 同时出现时返回退出码 5;没有强标记时再按源码扩展名评分。歧义时不调用任何分析器。- 完全没有
.cs/.gd/.rs/.ts/.tsx时返回退出码 3。
退出码
0:子 skill 扫描成功。2:参数或根目录错误。3:没有受支持源码,或强制语言与源码不匹配。4:检测或子分析器异常。5:语言/工程范围歧义,需要缩小根目录或显式指定语言。
不要把不同语言子 skill 的信号结果自动拼成跨语言调用图。Rust+Tauri 子 skill 虽统一扫描后端与前端,但当前不自动连接 Tauri invoke 和 Rust command。