“根证书”里的 root 是信任链的锚点,不是操作系统超级用户,更不是 Android Root。安装 CA 只改变某个 trust store 对证书签发者的信任;它不会解锁 Bootloader,也不会出现 Magisk 的 su 授权。本实验仅为个人开发机上的 localhost 创建可撤销 HTTPS,不拦截任何第三方流量。
你会完成什么#
- 分清 root CA、intermediate CA、leaf/server certificate 与私钥。
- 用 mkcert 为
localhost生成只在本机开发使用的证书。 - 用 OpenSSL 启动 loopback HTTPS 并检查证书主题与 SAN。
- 观察浏览器/
openssl s_client的验证结果,不把“受信任”理解成“代码安全”。 - 撤销本地 CA 信任并删除实验叶子私钥,留下可核对的清理结果。
先看结论#
| 需求 | 正确选择 | 不该做什么 |
|---|---|---|
本机 localhost 开发 | mkcert 本地 CA | 把 rootCA-key.pem 提交到仓库 |
| 公网正式域名 | ACME CA,例如 Let's Encrypt/Certbot | 让访客安装你的私有根证书 |
| 企业内部 PKI | 受管理的 step-ca 等,离线 root + 在线 intermediate | 在个人电脑临时搭一套当生产 CA |
| Android debug App | Network Security Config 的 debug-only 信任设置 | 把未知 CA 强塞进系统分区 |
| 手机 Root | 精确设备的启动链方案 | 把“安装 root certificate”当成 Root 手机 |
心智模型#
本机 trust store 信任:Root CA(信任锚,私钥极敏感)
└─签发→ localhost 叶子证书 ──出示→ TLS 客户端
客户端检查:签发链 + 有效期 + 主机名/SAN + 本地策略
Android Root:Bootloader/boot/kernel/su 管理链,与上述 PKI 链无关
工具清单#
| 工具 | 角色 | 什么时候用 | 来源与注意 |
|---|---|---|---|
OpenSSL s_client | 观察服务器送出的证书与验证错误 | 信任变更前后核对 | -showcerts 显示证书不等于验证成功 |
OpenSSL s_server | 在 loopback 启动临时 TLS 服务 | 本篇本地实验 | 不是生产 Web 服务器,结束后停止进程 |
| mkcert | 创建本机 CA 并签发开发证书 | 仅用于本地开发 | rootCA-key.pem 可冒充任意站点,绝不分享 |
Smallstep step-ca | 管理私有 X.509/SSH CA | 有正式内部 PKI 需求时 | 需要生命周期、审计、备份与离线根设计 |
| Let's Encrypt / Certbot | 为公网域名走 ACME 签发与续期 | 生产公网 HTTPS | 要保护账户、DNS/API 凭据并测试续期 |
| Android Network Security Config | 限定 App 信任锚 | 自己的 debug build | App 策略,不是 Android Root 工具 |
项目全景:根证书与 PKI的 47 个项目,一个不漏#
47 个结果里只有少数真正处理根证书;多数项目的 root 是“根因”。文章应以“先分清 trust root 与 root cause”为主线,既覆盖 PKI 工具,也完整介绍被误收进来的 RCA 生态。
| 技术路线 | 项目数 | 处理等级 | 在主题任务中的位置 |
|---|---|---|---|
| 根证书、信任库与签发链 | 5 | 候选路线 | 围绕证书查看、Mozilla 根列表、Android 模拟器 CA 安装、受约束内部 CA 和测试证书签发讲信任链;只向自有测试环境安装 CA。 |
| 因果推断与时序 RCA 方法 | 13 | 候选路线 | 将 Granger 因果、因果发现、多变量时序、知识图谱和鲁棒定位作为研究路线,先复现实验数据,再讨论可迁移性。 |
| 微服务与可观测性根因定位 | 11 | 候选路线 | 用日志、指标、追踪和数据库诊断项目说明从异常发现到候选根因排序,强调时间对齐、拓扑和证据链接。 |
| AI Agent、Copilot 与假设驱动调试 | 8 | 候选路线 | 比较多 Agent、值班 Copilot、LLM 基准和自动修复建议,要求每个结论回链原始日志、代码或测试,禁止凭模型输出直接改生产。 |
| 代码、崩溃与领域诊断 | 10 | 候选路线 | 覆盖崩溃解释、Git 历史、内存泄漏、形式验证、Android ANR、教育错误、DeFi 事故和业务指标驱动因素,并说明这些都不是证书管理。 |
1. 根证书、信任库与签发链 · 5#
围绕证书查看、Mozilla 根列表、Android 模拟器 CA 安装、受约束内部 CA 和测试证书签发讲信任链;只向自有测试环境安装 CA。
本组共 5 项:5 个源项目、0 个 Fork,其中 0 项已归档。新手应先从“未归档的源项目”核对 README 和 Release,再用 Fork 追溯设备适配或历史差异;分组本身不等于推荐安装。
| 项目 | 上游定位与识别信号 | 状态与采用前检查 |
|---|---|---|
| nh2/internal-contstrained-pki | 主题用途:将 nh2/internal-contstrained-pki 纳入「根证书、信任库与签发链」候选路线,根据 openssl · pki · tls · Shell 核对功能、平台与版本适配。 上游自述(保留原文):Safely shareable TLS root CA for .internal networks using Name Constraints | 未归档源项目 · ★ 552 · 协议未声明 · 2024-10-25。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| breml/rootcerts | 主题用途:将 breml/rootcerts 纳入「根证书、信任库与签发链」候选路线,根据 certificates · go · golang · Go 核对功能、平台与版本适配。 上游自述(保留原文):Go package to embed the Mozilla Included CA Certificate List | 未归档源项目 · ★ 125 · BSD-2-Clause · 2026-07-19。边界命中:先读 README,确认它确实属于当前任务,再决定是否使用。 |
| txthinking/mad | 主题用途:将 txthinking/mad 纳入「根证书、信任库与签发链」候选路线,根据 Go 核对功能、平台与版本适配。 上游自述(保留原文):Generate root CA and derivative certificate for any domains and any IPs. | 未归档源项目 · ★ 53 · MIT · 2024-09-23。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| RaymiiOrg/CertInfo | 主题用途:将 RaymiiOrg/CertInfo 纳入「根证书、信任库与签发链」候选路线,根据 certificates · https · qt · C++ 核对功能、平台与版本适配。 上游自述(保留原文):Which Root Certificates should you trust? | 未归档源项目 · ★ 46 · GPL-3.0 · 2024-01-16。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| artumino/adb-cert | 主题用途:将 artumino/adb-cert 纳入「根证书、信任库与签发链」候选路线,根据 Rust 核对功能、平台与版本适配。 上游自述(保留原文):Root CA certificate installer utility for android emulators through ADB | 未归档源项目 · ★ 4 · 协议未声明 · 2023-09-04。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
2. 因果推断与时序 RCA 方法 · 13#
将 Granger 因果、因果发现、多变量时序、知识图谱和鲁棒定位作为研究路线,先复现实验数据,再讨论可迁移性。
本组共 13 项:13 个源项目、0 个 Fork,其中 0 项已归档。新手应先从“未归档的源项目”核对 README 和 Release,再用 Fork 追溯设备适配或历史差异;分组本身不等于推荐安装。
| 项目 | 上游定位与识别信号 | 状态与采用前检查 |
|---|---|---|
| salesforce/PyRCA | 主题用途:将 salesforce/PyRCA 纳入「因果推断与时序 RCA 方法」候选路线,根据 Python 核对功能、平台与版本适配。 上游自述(保留原文):PyRCA: A Python Machine Learning Library for Root Cause Analysis | 未归档源项目 · ★ 561 · BSD-3-Clause · 2026-06-02。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| cuebook/CueObserve | 主题用途:将 cuebook/CueObserve 纳入「因果推断与时序 RCA 方法」候选路线,根据 anomaly · anomaly-detection · bigquery · Python 核对功能、平台与版本适配。 上游自述(保留原文):Timeseries Anomaly detection and Root Cause Analysis on data in SQL data warehouses and databases | 未归档源项目 · ★ 235 · Apache-2.0 · 2022-02-23。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| shaido987/riskloc | 主题用途:将 shaido987/riskloc 纳入「因果推断与时序 RCA 方法」候选路线,根据 adtributor · autoroot · hotspot · Python 核对功能、平台与版本适配。 上游自述(保留原文):Official implementation of RiskLoc, a method for localizing multi-dimensional root causes in time-series data. | 未归档源项目 · ★ 136 · MIT · 2024-10-16。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| NetManAIOps/CIRCA | 主题用途:将 NetManAIOps/CIRCA 纳入「因果推断与时序 RCA 方法」候选路线,根据 Python 核对功能、平台与版本适配。 上游自述(保留原文):Causal Inference-based Root Cause Analysis | 未归档源项目 · ★ 98 · BSD-3-Clause · 2023-02-13。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| hanxiao0607/AERCA | 主题用途:将 hanxiao0607/AERCA 纳入「因果推断与时序 RCA 方法」候选路线,根据 anomaly-detection · root-cause-analysis · Python 核对功能、平台与版本适配。 上游自述(保留原文):AERCA: Root Cause Analysis of Anomalies in Multivariate Time Series through Granger Causal Discovery (ICLR 2025 Oral) | 未归档源项目 · ★ 93 · MIT · 2026-07-17。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| azamikram/rcd | 主题用途:将 azamikram/rcd 纳入「因果推断与时序 RCA 方法」候选路线,根据 Python 核对功能、平台与版本适配。 上游自述(保留原文):Root Cause Discovery: Root Cause Analysis of Failures in Microservices through Causal Discovery | 未归档源项目 · ★ 71 · MIT · 2024-04-26。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| phamquiluan/baro | 主题用途:将 phamquiluan/baro 纳入「因果推断与时序 RCA 方法」候选路线,根据 aiops · anomaly-detection · microservices · Jupyter Notebook 核对功能、平台与版本适配。 上游自述(保留原文):(FSE'24 - 🏆 Best Artifact Award) BARO: Robust Root Cause Analysis for Time Series Data. | 未归档源项目 · ★ 66 · MIT · 2026-03-10。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| lalaland1921/Squeeze | 主题用途:将 lalaland1921/Squeeze 纳入「因果推断与时序 RCA 方法」候选路线,根据 Python 核对功能、平台与版本适配。 上游自述(保留原文):多维监控异常根因分析,复现论文ISSRE 2019 REG paper 'Generic and Robust Localization of Multi-Dimensional Root Cause'. | 未归档源项目 · ★ 52 · 协议未声明 · 2022-12-08。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| algorithm-tools/CausalAnalysis | 主题用途:将 algorithm-tools/CausalAnalysis 纳入「因果推断与时序 RCA 方法」候选路线,根据 Java 核对功能、平台与版本适配。 上游自述(保留原文):Algorithmic implementation of indicators causal analysis, causal inference using Java. Helps to quickly find the root cause of indicators | 未归档源项目 · ★ 45 · Apache-2.0 · 2025-06-17。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| zmlin1998/RUN | 主题用途:将 zmlin1998/RUN 纳入「因果推断与时序 RCA 方法」候选路线,根据 Python 核对功能、平台与版本适配。 上游自述(保留原文):Official repository of "Root Cause Analysis In Microservice Using Neural Granger Causal Discovery" @ AAAI 2024 | 未归档源项目 · ★ 45 · 协议未声明 · 2024-07-15。边界命中:先读 README,确认它确实属于当前任务,再决定是否使用。 |
| PanYicheng/dycause_rca | 主题用途:将 PanYicheng/dycause_rca 纳入「因果推断与时序 RCA 方法」候选路线,根据 Jupyter Notebook 核对功能、平台与版本适配。 上游自述(保留原文):DyCause is a root cause analysis method for the microservice system failures. | 未归档源项目 · ★ 43 · Apache-2.0 · 2021-12-10。边界命中:先读 README,确认它确实属于当前任务,再决定是否使用。 |
| KnowledgeDiscovery/rca_baselines | 主题用途:将 KnowledgeDiscovery/rca_baselines 纳入「因果推断与时序 RCA 方法」候选路线,根据 causal-discovery · log-analysis · multi-modal-learning · Python 核对功能、平台与版本适配。 上游自述(保留原文):Code for "LEMMA-RCA: A Large Multi-modal Multi-domain Dataset for Root Cause Analysis" paper | 未归档源项目 · ★ 35 · NOASSERTION · 2025-10-06。边界命中:先读 README,确认它确实属于当前任务,再决定是否使用。 |
| rainstorm12/Root-KGD | 主题用途:将 rainstorm12/Root-KGD 纳入「因果推断与时序 RCA 方法」候选路线,根据 Jupyter Notebook 核对功能、平台与版本适配。 上游自述(保留原文):基于工业数据和知识图谱联合驱动的工业故障诊断框架,论文代码Root-KGI: a Novel Framework for Root Cause Diagnosis Based on Knowledge Graph and Industrial Data | 未归档源项目 · ★ 35 · 协议未声明 · 2024-06-26。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
3. 微服务与可观测性根因定位 · 11#
用日志、指标、追踪和数据库诊断项目说明从异常发现到候选根因排序,强调时间对齐、拓扑和证据链接。
本组共 11 项:11 个源项目、0 个 Fork,其中 0 项已归档。新手应先从“未归档的源项目”核对 README 和 Release,再用 Fork 追溯设备适配或历史差异;分组本身不等于推荐安装。
| 项目 | 上游定位与识别信号 | 状态与采用前检查 |
|---|---|---|
| tangpan360/MicroRCA-Agent | 主题用途:将 tangpan360/MicroRCA-Agent 纳入「微服务与可观测性根因定位」候选路线,根据 Python 核对功能、平台与版本适配。 上游自述(保留原文):2025 CCF International AIOps Challenge / Track 1: Microservice Root Cause Localization Based on Large Model Agents / "男团910" Solution · Top 5 in Final · Score: 48.52; (2025 CCF 国际 AIOps 挑战赛 / 赛道一:基于大模型智能体的微服务根因定位 / "男团910"方案 · 决赛Top5 · 48.52分) | 未归档源项目 · ★ 255 · 协议未声明 · 2026-01-14。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| axiomhq/gilfoyle | 主题用途:将 axiomhq/gilfoyle 纳入「微服务与可观测性根因定位」候选路线,根据 TypeScript 核对功能、平台与版本适配。 上游自述(保留原文):An SRE agent that does what you can't. Queries your observability stack. Finds root causes. Doesn't panic. Doesn't guess. Doesn't care about your feelings. You're welcome. | 未归档源项目 · ★ 214 · Apache-2.0 · 2026-06-29。边界命中:先读 README,确认它确实属于当前任务,再决定是否使用。 |
| oceanbase/obdiag | 主题用途:将 oceanbase/obdiag 纳入「微服务与可观测性根因定位」候选路线,根据 hacktoberfest · obdiag · oceanbase · Python 核对功能、平台与版本适配。 上游自述(保留原文):obdiag (OceanBase Diagnostic Tool) is designed to help OceanBase users quickly gather necessary information and analyze the root cause of the problem. | 未归档源项目 · ★ 160 · MulanPSL-2.0 · 2026-05-19。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| dreamhomes/RCAPapers | 主题用途:将 dreamhomes/RCAPapers 纳入「微服务与可观测性根因定位」候选路线,根据 cloud-systems · microservice-architecture · microservice-systems 核对功能、平台与版本适配。 上游自述(保留原文):Papers about Root Cause Analysis in MicroService Systems. Reference to Paper Notes: https://dreamhomes.top/ | 未归档源项目 · ★ 144 · Apache-2.0 · 2022-04-22。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| LiaoWenzhe/BigdataAi | 主题用途:将 LiaoWenzhe/BigdataAi 纳入「微服务与可观测性根因定位」候选路线,根据 ai · data-mining · deep-learning 核对功能、平台与版本适配。 上游自述(保留原文):介绍Liao Wenzhe 的一些主要代表作品,包括AIOPS,异常检测,根因分析,告警降噪,关联分析,数据安全,数据挖掘,机器学习,深度学习,文本匹配,公开演讲,思维方式,学习方法,读书阅读等。欢迎star。 Introduce some of Liao Wenzhe's main representative works, including AIOPS, anomaly detection, root cause analysis, alarm noise reduction, correlation analysis, data security, data mining, machine learning, deep learning, text matching, public speech, way of thinking, learning methods, reading, reading, etc. Welcome star. | 未归档源项目 · ★ 74 · AGPL-3.0 · 2022-11-19。边界命中:先读 README,确认它确实属于当前任务,再决定是否使用。 |
| IntelligentDDS/Nezha | 主题用途:将 IntelligentDDS/Nezha 纳入「微服务与可观测性根因定位」候选路线,根据 Python 核对功能、平台与版本适配。 上游自述(保留原文):The implementation of multimodal observability data root cause analysis approach Nezha in FSE 2023 | 未归档源项目 · ★ 72 · MIT · 2025-05-20。边界命中:先读 README,确认它确实属于当前任务,再决定是否使用。 |
| YEDASAVG/Stratum | 主题用途:将 YEDASAVG/Stratum 纳入「微服务与可观测性根因定位」候选路线,根据 Rust 核对功能、平台与版本适配。 上游自述(保留原文):AI-powered Log Intelligence System - Semantic search, anomaly detection, and root cause analysis for logs using RAG techniques. Built with Rust, Axum, NATS, ClickHouse, and Qdrant. | 未归档源项目 · ★ 51 · Apache-2.0 · 2026-02-23。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| avivl/cloud-sre-agent | 主题用途:将 avivl/cloud-sre-agent 纳入「微服务与可观测性根因定位」候选路线,根据 ai-agents · ai-ops · automation · Go 核对功能、平台与版本适配。 上游自述(保留原文):An autonomous SRE agent that monitors cloud logs across multiple platforms, leveraging AI models from various providers to detect anomalies, perform root cause analysis, and automate remediation by creating GitHub Pull Requests. | 未归档源项目 · ★ 48 · MIT · 2026-06-29。边界命中:先读 README,确认它确实属于当前任务,再决定是否使用。 |
| VishApp/multiagent-debugger | 主题用途:将 VishApp/multiagent-debugger 纳入「微服务与可观测性根因定位」候选路线,根据 ai-tools · autonomous-agents · code-analysis · Python 核对功能、平台与版本适配。 上游自述(保留原文):Multi-Agent Debugger: An AI-powered debugging system using CrewAI to orchestrate specialized agents that analyze logs, trace code, and uncover root causes across your stack — powered by LLM providers. | 未归档源项目 · ★ 36 · MIT · 2025-07-22。边界命中:先读 README,确认它确实属于当前任务,再决定是否使用。 |
| opensearch-project/performance-analyzer-rca | 主题用途:将 opensearch-project/performance-analyzer-rca 纳入「微服务与可观测性根因定位」候选路线,根据 Java 核对功能、平台与版本适配。 上游自述(保留原文):The Performance Analyzer RCA is a framework that builds on the Performance Analyzer engine to support root cause analysis (RCA) of performance and reliability problems for OpenSearch instances. | 未归档源项目 · ★ 34 · Apache-2.0 · 2026-05-27。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| dreamhomes/TroubleShooter | 主题用途:将 dreamhomes/TroubleShooter 纳入「微服务与可观测性根因定位」候选路线,根据 Jupyter Notebook 核对功能、平台与版本适配。 上游自述(保留原文):The algorithms about root cause analysis/localization/diagnosis in AIOps. | 未归档源项目 · ★ 30 · Apache-2.0 · 2021-09-14。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
4. AI Agent、Copilot 与假设驱动调试 · 8#
比较多 Agent、值班 Copilot、LLM 基准和自动修复建议,要求每个结论回链原始日志、代码或测试,禁止凭模型输出直接改生产。
本组共 8 项:8 个源项目、0 个 Fork,其中 0 项已归档。新手应先从“未归档的源项目”核对 README 和 Release,再用 Fork 追溯设备适配或历史差异;分组本身不等于推荐安装。
| 项目 | 上游定位与识别信号 | 状态与采用前检查 |
|---|---|---|
| uptrain-ai/uptrain | 主题用途:将 uptrain-ai/uptrain 纳入「AI Agent、Copilot 与假设驱动调试」候选路线,根据 autoevaluation · evaluation · experimentation · Python 核对功能、平台与版本适配。 上游自述(保留原文):UpTrain is an open-source unified platform to evaluate and improve Generative AI applications. We provide grades for 20+ preconfigured checks (covering language, code, embedding use-cases), perform root cause analysis on failure cases and give insights on how to resolve them. | 未归档源项目 · ★ 2355 · Apache-2.0 · 2024-08-18。边界命中:先读 README,确认它确实属于当前任务,再决定是否使用。 |
| rhesis-ai/rhesis | 主题用途:将 rhesis-ai/rhesis 纳入「AI Agent、Copilot 与假设驱动调试」候选路线,根据 generative-ai · llm-evaluation · llm-evaluation-framework · Python 核对功能、平台与版本适配。 上游自述(保留原文):The testing platform for AI teams. Bring engineers, PMs, and domain experts together to generate tests, simulate (adversarial) conversations, and trace every failure to its root cause. | 未归档源项目 · ★ 381 · NOASSERTION · 2026-07-19。边界命中:先读 README,确认它确实属于当前任务,再决定是否使用。 |
| microsoft/OpenRCA | 主题用途:将 microsoft/OpenRCA 纳入「AI Agent、Copilot 与假设驱动调试」候选路线,根据 benchmark · large-language-models · llm · Python 核对功能、平台与版本适配。 上游自述(保留原文):(ICLR'25) OpenRCA: Can Large Language Models Locate the Root Cause of Software Failures? | 未归档源项目 · ★ 380 · MIT · 2026-07-13。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| schickling/dilagent | 主题用途:将 schickling/dilagent 纳入「AI Agent、Copilot 与假设驱动调试」候选路线,根据 TypeScript 核对功能、平台与版本适配。 上游自述(保留原文):"Deep research for bugs" – Agentic root cause analysis through hypothesis-driven debugging | 未归档源项目 · ★ 105 · 协议未声明 · 2025-09-10。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| YanpengQi7/ai-reliability-copilot | 主题用途:将 YanpengQi7/ai-reliability-copilot 纳入「AI Agent、Copilot 与假设驱动调试」候选路线,根据 ai-sdk · deepseek · incident-response · TypeScript 核对功能、平台与版本适配。 上游自述(保留原文):Turn a production incident into a structured 9-section LLM response (severity, root cause, mitigation, postmortem). Ships with a 5-scenario regression suite + LLM-as-judge eval pipeline. | 未归档源项目 · ★ 103 · 协议未声明 · 2026-06-24。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| Otutu11/Root-Cause-Analysis-Assistant | 主题用途:将 Otutu11/Root-Cause-Analysis-Assistant 纳入「AI Agent、Copilot 与假设驱动调试」候选路线,根据 Python 核对功能、平台与版本适配。 上游自述(保留原文):Root-Cause-Analysis-Assistant helps identify, analyze, and resolve underlying issues in complex systems. It leverages data-driven insights, structured workflows, and visualization to streamline troubleshooting, reduce downtime, and enhance decision-making across industries. | 未归档源项目 · ★ 54 · 协议未声明 · 2025-10-03。边界命中:先读 README,确认它确实属于当前任务,再决定是否使用。 |
| leestott/On-Call-Copilot-Multi-Agent | 主题用途:将 leestott/On-Call-Copilot-Multi-Agent 纳入「AI Agent、Copilot 与假设驱动调试」候选路线,根据 agent-services · foundry · hosted · Python 核对功能、平台与版本适配。 上游自述(保留原文):On-Call Copilot is an open-source multi-agent AI system built on Microsoft Agent Framework and Agent Services v2 Hosted Agents that automates incident response. It runs four specialist agents concurrently Triage, Summary, Comms, and PIR, returning root cause analysis, a plain-language narrative, Slack and stakeholder update | 未归档源项目 · ★ 41 · MIT · 2026-06-18。边界命中:先读 README,确认它确实属于当前任务,再决定是否使用。 |
| yuchuangu85/llm-anr | 主题用途:将 yuchuangu85/llm-anr 纳入「AI Agent、Copilot 与假设驱动调试」候选路线,根据 Python 核对功能、平台与版本适配。 上游自述(保留原文):Agent-driven Android ANR evidence extraction and AI-assisted root cause analysis pipeline. | 未归档源项目 · ★ 32 · 协议未声明 · 2026-06-23。边界命中:先读 README,确认它确实属于当前任务,再决定是否使用。 |
5. 代码、崩溃与领域诊断 · 10#
覆盖崩溃解释、Git 历史、内存泄漏、形式验证、Android ANR、教育错误、DeFi 事故和业务指标驱动因素,并说明这些都不是证书管理。
本组共 10 项:10 个源项目、0 个 Fork,其中 1 项已归档。新手应先从“未归档的源项目”核对 README 和 Release,再用 Fork 追溯设备适配或历史差异;分组本身不等于推荐安装。
| 项目 | 上游定位与识别信号 | 状态与采用前检查 |
|---|---|---|
| empower-ai/dsensei | 主题用途:将 empower-ai/dsensei 纳入「代码、崩溃与领域诊断」候选路线,根据 analytics · business-analytics · business-intelligence · TypeScript 核对功能、平台与版本适配。 上游自述(保留原文):AI-powered key driver analysis tool that pinpoints root cause behind metrics fluctuation in one minute. | 未归档源项目 · ★ 262 · GPL-3.0 · 2023-12-01。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| RUB-SysSec/aurora | 主题用途:将 RUB-SysSec/aurora 纳入「代码、崩溃与领域诊断」候选路线,根据 Rust 核对功能、平台与版本适配。 上游自述(保留原文):Usenix Security 2021 - AURORA: Statistical Crash Analysis for Automated Root Cause Explanation | 未归档源项目 · ★ 161 · AGPL-3.0 · 2022-08-31。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| root-project/student-course | 主题用途:将 root-project/student-course 纳入「代码、崩溃与领域诊断」候选路线,根据 Jupyter Notebook 核对功能、平台与版本适配。 上游自述(保留原文):ROOT course for students | 未归档源项目 · ★ 121 · CC-BY-4.0 · 2026-07-15。边界命中:先读 README,确认它确实属于当前任务,再决定是否使用。 |
| SunWeb3Sec/DeFi-Security-Breach-RCA | 主题用途:将 SunWeb3Sec/DeFi-Security-Breach-RCA 纳入「代码、崩溃与领域诊断」候选路线,根据 仓库名、README 与发布记录 核对功能、平台与版本适配。 上游自述(保留原文):DeFi Security Breaches: Comprehensive Root Cause Analysis | 未归档源项目 · ★ 90 · 协议未声明 · 2025-07-23。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| gitext-rs/git-dive | 主题用途:将 gitext-rs/git-dive 纳入「代码、崩溃与领域诊断」候选路线,根据 Rust 核对功能、平台与版本适配。 上游自述(保留原文):Dive into a file's history to find root cause | 未归档源项目 · ★ 67 · Apache-2.0 · 2026-07-09。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| m2sup3rn0va/RASEv1 | 主题用途:将 m2sup3rn0va/RASEv1 纳入「代码、崩溃与领域诊断」候选路线,根据 PowerShell 核对功能、平台与版本适配。 上游自述(保留原文):Rooting Android Studio Emulator with Android Version 9.0 and above | 已归档源项目 · ★ 54 · 协议未声明 · 2021-01-12。已归档:保留作历史、迁移或兼容性参考,不作为默认安装源。 |
| digitalboy/RCAE_graph_data | 主题用途:将 digitalboy/RCAE_graph_data 纳入「代码、崩溃与领域诊断」候选路线,根据 ai · biology · dataset 核对功能、平台与版本适配。 上游自述(保留原文):本数据集属于 根因分析与练习系统(Root Cause Analysis and Exercises for Mathematics, RCAE) 的基础子项目之一。旨在可以高效的发现学生数学、生物学业错误的根本原因。 | 未归档源项目 · ★ 54 · NOASSERTION · 2024-09-29。边界命中:先读 README,确认它确实属于当前任务,再决定是否使用。 |
| chopratejas/vitals | 主题用途:将 chopratejas/vitals 纳入「代码、崩溃与领域诊断」候选路线,根据 Python 核对功能、平台与版本适配。 上游自述(保留原文):Codebase vital signs for Claude Code — finds hotspots, diagnoses root causes, ranks fixes by ROI | 未归档源项目 · ★ 40 · MIT · 2026-03-04。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| model-checking/cbmc-viewer | 主题用途:将 model-checking/cbmc-viewer 纳入「代码、崩溃与领域诊断」候选路线,根据 Python 核对功能、平台与版本适配。 上游自述(保留原文):CBMC Viewer scans the output of CBMC and produces a browsable summary of its findings, making it easy to root cause the issues it finds. | 未归档源项目 · ★ 37 · Apache-2.0 · 2026-07-01。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
| dev-vikas-soni/leak-lens | 主题用途:将 dev-vikas-soni/leak-lens 纳入「代码、崩溃与领域诊断」候选路线,根据 android · android-debugging · android-development · Kotlin 核对功能、平台与版本适配。 上游自述(保留原文):Android Memory Leak Detector for Android Studio. Analyze LeakCanary reports, identify root causes, and get AI-powered fix recommendations. | 未归档源项目 · ★ 21 · Apache-2.0 · 2026-07-13。活跃候选:先核对 README、最新 Release、目标版本与已知问题。 |
开始前#
仅在个人开发机运行;公司受管设备可能禁止修改 trust store,应先遵守组织政策。通过 mkcert 上游 README 安装与当前系统匹配的正式发行版,不从镜像站下载。创建一个不含其他文件的实验目录,记录 mkcert -CAROOT 输出。浏览器可能使用独立证书库,因此命令行验证与浏览器结果不一定同步。
操作步骤#
1. 建立隔离目录并确认 CA 位置#
在新目录运行 pwd 和 ls -la,确认没有现有秘密。执行 mkcert -CAROOT,记录本机 CA 目录,但不要打开、复制或上传其中的 rootCA-key.pem。运行 mkcert -install;它只应把 mkcert 的本地 CA 加入受支持的本机信任库。若系统弹出管理员授权,核对程序路径和目标后再决定,不能确认就取消。
2. 签发 localhost 叶子证书#
在实验目录运行 mkcert localhost 127.0.0.1 ::1。记录生成的证书与 -key.pem 文件名;文件名可能随版本/参数变化,不要猜。用 openssl x509 -in <certificate.pem> -noout -subject -issuer -dates -ext subjectAltName 查看 subject、issuer、有效期和 SAN。确认 SAN 只包含本实验的 localhost 名称/IP。
3. 只在 loopback 启动并验证 HTTPS#
运行 openssl s_server -accept 127.0.0.1:8443 -cert <certificate.pem> -key <certificate-key.pem> -www。在第二终端执行 openssl s_client -connect 127.0.0.1:8443 -servername localhost -verify_hostname localhost </dev/null。记录证书链和最终 verify return code;也可访问 https://localhost:8443,但不要点击绕过警告。完成观察后回到服务终端按 Ctrl-C。
4. 撤销信任并清理私钥#
先确认服务已停止,再运行 mkcert -uninstall,让 mkcert 从其支持的 trust stores 移除本地 CA。完全退出并重新打开浏览器后复测,原证书应不再被本机信任。用文件管理器只删除本实验目录中的叶子证书和叶子私钥;若准备彻底废弃 mkcert CA,按上游 README 与系统证书管理界面确认所有信任项已撤销后,再处理 CAROOT。不要用宽泛递归命令删除系统证书目录。
验证#
- 叶子证书的 SAN 包含
localhost,而不是第三方域名。 - 服务只监听
127.0.0.1:8443,局域网其他机器不可直接访问。 - 安装期间,
s_client的主机名和链验证结果可观察且与浏览器提示相符。 Ctrl-C后端口不再提供服务。mkcert -uninstall与浏览器重启后,实验叶子证书不再获得本机 CA 信任。
排错#
| 现象 | 常见原因 | 安全处理 |
|---|---|---|
| 浏览器仍报不受信任 | 浏览器用独立证书库或未重启 | 查 mkcert README 的平台说明,不手工导入随机 CA |
hostname mismatch | 连接名不在 SAN 中 | 重新为准确的本地域名签发,不关闭主机名校验 |
| 8443 已被占用 | 另一个本地服务监听 | 用系统只读网络工具确认进程,换一个高端口 |
| 卸载后仍显示可信 | 会话缓存或其他 trust store 仍保留 CA | 完全重启客户端并在系统证书界面按指纹核对 |
| Android App 不信任用户 CA | Android/App 的网络安全策略拒绝 | 仅在自有 debug build 配置 debug-overrides,不 Root 系统绕过 |
完成清单#
- 我能解释根 CA 是信任锚,而不是 Android 超级用户。
- 我只为
localhost生成证书,服务只绑定 loopback。 - 我没有分享、提交或复制
rootCA-key.pem。 - 我验证了 SAN、issuer、有效期与主机名结果。
- 我停止服务、撤销本地信任并清理实验叶子私钥。