
runtime-inspector
by Haaaiawd
🚀 The structured operating system for Agentic AI. Combines Workflows (Plan) & Skills (Execute) to force AI to think like a Senior Architect. Native support for Antigravity to prevent architecture drift in the Vibe Coding era. Agentic AI 的结构化操作系统。通过工作流(规划)与技能(执行)的深度结合,强迫 AI 像高级架构师一样思考。Antigravity 原生支持,专为解决 Vibe Coding 时代的架构漂移问题而生。
SKILL.md
name: runtime-inspector description: 分析运行时行为、进程边界和 IPC 机制,检测"协议漂移"风险和进程生命周期问题。
窃听者手册 (The Wiretapper's Casebook)
"代码会骗人,但进程不会。一个
.spawn()暴露的比一千行注释还多。" —— 老窃听者箴言
本技能的工作是追踪进程间的通信线路。
老师傅核心定律: 如果两个进程说话,但没人规定它们说什么语言、什么版本、什么格式,那就是一场等待爆发的协议漂移 (Protocol Mismatch) 灾难。
⚠️ 强制深度思考
[!IMPORTANT] 在执行任何分析之前,你必须调用
mcp_sequential-thinking_sequentialthinking工具,视情况进行 3 步——10 步,甚至更多步推理。 思考内容例如:
- "这个项目有多少个入口点(
main函数)?它们是一个进程还是多个?"- "进程之间用什么通信?Pipe?HTTP?共享数据库?"
- "如果我只更新了 A 进程的通信模块,B 进程会崩吗?有版本握手吗?"
⚡ 任务目标
识别运行时边界 (Runtime Boundaries) 和 通信契约 (Communication Contracts)。
🧭 探索流程 (The Investigation)
第一步:识别入口点 (Identify Entry Points)
每个 main 函数可能代表一个独立的进程。
- 搜索目标:
- Rust:
fn main(),#[tokio::main] - Python:
if __name__ == "__main__": - Node:
require.main === module, package.json 的bin - Go:
func main()
- Rust:
- 老师傅直觉: 找到多个入口点?立刻问:"它们是独立运行的,还是被一个父进程管控的?"
第二步:追踪生成链 (Trace Spawning)
如果进程 A 拉起了进程 B,这就是一条"血缘线"。
- 搜索目标:
- Rust:
Command::new(...),std::process::Stdio,tauri-plugin-shell - Python:
subprocess.Popen,multiprocessing.Process - Node:
child_process.spawn,child_process.fork
- Rust:
- 老师傅警报 (Lifecycle Risks):
- ⚠️ "父进程死了,子进程知道吗?有心跳吗?" -> 僵尸进程风险 (Zombie Child)
- ⚠️ "子进程崩溃了,父进程会重启它吗?还是静默失败?" -> 静默故障风险
第三步:窃听通信 (Tap the Wire)
进程之间用什么"说话"?协议在哪里定义?
-
搜索 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 通信黑洞! 这是高危风险。
🛡️ IPC 风险模式速查 (来自安全研究)
| 风险模式 | 检测特征 | 老师傅建议 |
|---|---|---|
| 协议漂移 (Protocol Mismatch) | Channel 存在,但无 Handshake/Version | 在新功能规划中强制添加版本握手任务 |
| 僵尸进程 (Zombie Child) | spawn 存在,但无 Kill on Drop 或心跳 | 标记进程生命周期管理风险 |
| 单点故障 (SPOF) | 一个进程管控所有 IPC,无容错 | 建议添加重连/重启逻辑 |
| Named Pipe 权限漏洞 (Windows) | 使用 Named Pipe 但未显式设置 Security Descriptor | 🔴 高危:默认可能允许 Everyone 访问! |
| 竞态条件 (Race Condition) | 多进程快速交互,无明确的消息顺序控制 | 建议添加消息序列号或锁机制 |
📤 输出清单
- Process Roots: 发现的入口点列表(文件路径、角色)。
- Spawning Chains: 进程生成关系 (A spawns B)。
- IPC Surfaces: 发现的通信通道(类型、关键词、位置)。
- Contract Status:
[Strong / Weak / None],并说明依据。 - Lifecycle Risks: 僵尸进程、静默崩溃等风险。
- Security Flags (Windows): 如果是 Named Pipe,是否有 ACL 设置?
スコア
総合スコア
リポジトリの品質指標に基づく評価
SKILL.mdファイルが含まれている
ライセンスが設定されている
100文字以上の説明がある
GitHub Stars 100以上
1ヶ月以内に更新
10回以上フォークされている
オープンIssueが50未満
プログラミング言語が設定されている
1つ以上のタグが設定されている
レビュー
レビュー機能は近日公開予定です

