runtime-inspector
分析运行时行为、进程边界和 IPC 机制,检测"协议漂移"风险和进程生命周期问题。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
分析运行时行为、进程边界和 IPC 机制,检测"协议漂移"风险和进程生命周期问题。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
对已实现代码进行纯静态忠实度审查,验证实现是否忠于 PRD、ADR、System Design 与 05_TASKS.md 的既有契约,并识别契约漂移、任务漂移、测试漂移与回流遗漏,作为 challenge 的实现侧证据层。
Generate a persistent .nexus-map/ knowledge base that lets any AI session instantly understand a codebase's architecture, systems, dependencies, and change hotspots. Use when starting work on an unfamiliar repository, onboarding with AI-assisted context, preparing for a major refactoring initiative, or enabling reliable cold-start AI sessions across a team. Produces INDEX.md, systems.md, concept_model.json, git_forensics.md and more. Requires shell execution and Python 4.10+. For ad-hoc file queries or instant impact analysis during active development, use nexus-query instead.
使用WBS方法将系统设计文档分解为层次化任务。支持依赖分析、追溯链、验收标准。
评估技术栈选项,使用加权决策矩阵和 ATAM 方法论产出架构决策记录 (ADR)。
识别项目中的独立系统,定义系统边界。产出系统架构总览,为后续系统设计奠定基础。
为单个系统设计详细的技术文档。负责架构图、接口设计、数据模型、Trade-offs讨论等。
| name | runtime-inspector |
| description | 分析运行时行为、进程边界和 IPC 机制,检测"协议漂移"风险和进程生命周期问题。 |
"代码会骗人,但进程不会。一个
.spawn()暴露的比一千行注释还多。" —— 老窃听者箴言
本技能的工作是追踪进程间的通信线路。
老师傅核心定律: 如果两个进程说话,但没人规定它们说什么语言、什么版本、什么格式,那就是一场等待爆发的协议漂移 (Protocol Mismatch) 灾难。
[!IMPORTANT] 运行时分析需要深度思考,思考方式基于模型能力和任务复杂度。
核心判断规则:
- 无 CoT 模型 → 必须调用
sequential-thinkingCLI- 有 CoT 模型 + 简单项目(单进程、通信清晰)→ 用思考引导问题组织自然 CoT
- 有 CoT 模型 + 复杂项目(多进程、需要修正前提)→ 调用
sequential-thinkingCLI思考内容例如:
- "这个项目有多少个入口点(
main函数)?它们是一个进程还是多个?"- "进程之间用什么通信?Pipe?HTTP?共享数据库?"
- "如果我只更新了 A 进程的通信模块,B 进程会崩吗?有版本握手吗?"
识别运行时边界 (Runtime Boundaries) 和 通信契约 (Communication Contracts)。
每个 main 函数可能代表一个独立的进程。
fn main(), #[tokio::main]if __name__ == "__main__":require.main === module, package.json 的 binfunc main()如果进程 A 拉起了进程 B,这就是一条"血缘线"。
Command::new(...), std::process::Stdio, tauri-plugin-shellsubprocess.Popen, multiprocessing.Processchild_process.spawn, child_process.fork进程之间用什么"说话"?协议在哪里定义?
搜索 Channels (通道):
Pipe, NamedPipe, unix_stream, zmqTcpListener, UdpSocket, websocket, http::server搜索 Protocols (协议):
Handshake, Version, MagicBytes, schemaprotobuf, serde_json, JSON.parse, enum Message老师傅核心判断 (Contract Status):
| 发现 | 状态 | 老师傅建议 |
|---|---|---|
找到 Channel + 找到 enum Message 或 Protobuf 定义 | 🟢 Strong | 契约存在,相对安全。 |
找到 Channel + 找到 Version 或 Handshake 检查 | 🟢 Strong | 有版本协商,很好。 |
| 找到 Channel + 只有 raw JSON/字符串 | 🟡 Weak | 无显式契约。改动一端可能炸另一端。 |
| 找到 Channel + 无任何协议定义 | 🔴 None | 通信黑洞! 这是高危风险。 |
| 风险模式 | 检测特征 | 老师傅建议 |
|---|---|---|
| 协议漂移 (Protocol Mismatch) | Channel 存在,但无 Handshake/Version | 在新功能规划中强制添加版本握手任务 |
| 僵尸进程 (Zombie Child) | spawn 存在,但无 Kill on Drop 或心跳 | 标记进程生命周期管理风险 |
| 单点故障 (SPOF) | 一个进程管控所有 IPC,无容错 | 建议添加重连/重启逻辑 |
| Named Pipe 权限漏洞 (Windows) | 使用 Named Pipe 但未显式设置 Security Descriptor | 🔴 高危:默认可能允许 Everyone 访问! |
| 竞态条件 (Race Condition) | 多进程快速交互,无明确的消息顺序控制 | 建议添加消息序列号或锁机制 |
[Strong / Weak / None],并说明依据。