Blog 知识库 — AI 操作指南

本目录是 Android 性能工程师的个人技术知识库。你(AI)在此目录下工作时,必须遵守本文件的所有规则。

知识库定位

  • 主人:Android 系统性能优化工程师(小米),专注渲染流畅度、内存、稳定性、图形
  • 核心价值:原创深度分析 + 实战案例复盘,不是文章收藏夹
  • 增长方向:AI 辅助持续向各板块补充案例(trace 分析、问题复盘、修复方案)

目录结构速查

performance/          ← 性能优化(最核心)
  rendering/          ← 卡顿掉帧、流畅度、Choreographer、Vsync、Perfetto 分析
  memory/             ← 内存拆解、Jemalloc、hprof、GC、Memtrack、泄漏
  stability/          ← ANR、Crash、hwasan、D状态、watchdog
  graphics/           ← GPU、SurfaceFlinger、动画、硬件加速、Skia、黑花闪
  cpu-sched/          ← CPU调度、EEVDF、cgroup、VIP Task、负载量化
  binder-ipc/         ← Binder(性能视角)、IPC 延迟
  tools/              ← Perfetto、Simpleperf、火焰图、dumpsys、adb
  cases/              ← 实战案例目录(每案例一个子目录)
  misc/               ← 未归类的性能内容

framework/            ← Android Framework 原理
  wms-display/        ← WMS、窗口、Winscope、锁屏
  input/              ← Input 系统、触摸事件
  binder-ipc/         ← Binder(原理视角)
  ams-activity/       ← AMS、Activity 生命周期
  systemui/           ← SystemUI、状态栏
  handler-looper/     ← Handler/Looper/MessageQueue
  graphics/           ← 图形子系统、Vsync
  memory/             ← 内存管理、shmem、cgroup
  concurrency/        ← 线程、并发、锁
  kernel/             ← Linux 内核、调度、Doze
  pms/                ← PackageManagerService
  misc/               ← 逆向、Kotlin、设计模式、源码工具

ai-engineering/       ← AI 工程化
  claude-code/        ← Claude Code 配置与技巧
  harness/            ← Harness Engineering 研究
  mcp-tools/          ← MCP、GitNexus
  skills/             ← Skill 开发
  practice/           ← AI 实践案例

devops/               ← 工具链
  git/ gitlab/ docker/ ubuntu/ python/ shell/ misc/

tmp/                  ← 待整理文件投递区(执行 /blog-organize 处理)
_private/             ← 私人内容(禁止 AI 读写)
_archive/             ← 归档(已废弃/附件/旧文件)
_references/          ← 外部参考文章

AI 必须遵守的规则

写入规则

  1. 必须加 frontmatter:每篇新建的 md 文件都要有:
    ---
    title: "标题"
    tags: [关键词1, 关键词2]    # 最多 5 个
    type: original | reference | case
    created: YYYY-MM-DD
    ---
  2. 必须放对目录:根据内容主题放入对应子目录,不确定时放 misc/
  3. 必须更新索引:文件放入后,在该板块的 _index.md 末尾追加条目
  4. 禁止在根目录创建文件(除 CLAUDE.md、README.md、CONTRIBUTING.md)
  5. 禁止删除任何文件:标记过时用 frontmatter deprecated: true
  6. 禁止访问 _private/

分类判断规则

当你需要决定一篇文章放在哪里时,按以下优先级判断:

如果内容主要关于…放入
性能问题的分析/排查/优化(有数据、有 trace、有结论)performance/ 对应子目录
Android 子系统的工作原理(源码级、机制级)framework/ 对应子目录
AI 工具使用、Claude Code、MCP、Skillai-engineering/ 对应子目录
开发环境、工具、脚本devops/ 对应子目录
来自外部网站的文章(知乎/CSDN/简书/掘金)_references/

performance vs framework 的区分

  • 讲”怎么分析 ANR""ANR 耗时拆解” → performance/stability/
  • 讲”InputDispatcher 源码流程""ANR 触发机制” → framework/input/
  • 简单规则:有数据/案例/工具 → performance,有源码/流程/原理 → framework

案例写入规则

实战案例是知识库最有价值的内容,写入时:

  1. performance/cases/ai-engineering/practice/ 下创建目录:YYYY-MM-简短描述/
  2. 主文档命名为 README.md
  3. trace 文件、火焰图、截图放在同目录
  4. 必须包含:现象分析过程根因修复方案 四个章节
  5. 详细模板见 CONTRIBUTING.md

可用 Skill

/blog-organize

自动整理 tmp/ 目录中的文件到知识库。工作流程:

  1. 扫描 tmp/ 下所有文件
  2. 读取内容,自动判断分类
  3. 补充缺失的 frontmatter
  4. 清理不规范的文件名(去掉 CSDN 时间戳等)
  5. 列出分类计划,等用户确认后执行移动
  6. 更新目标板块的 _index.md
  7. 输出整理报告

用户只需把文件丢进 tmp/,然后执行 /blog-organize

索引文件说明

每个主要板块有一个 _index.md,是该板块的目录导航。格式:

# 板块名称
> 一句话描述
 
## 系列文章
- [系列名](路径) — 说明
 
## 独立文章
- [文章名](路径) — 说明
 
## 案例
- [案例名](cases/目录/) — 说明

当你添加新文件时,必须在对应 _index.md 追加一行:

- [文章标题](文件名.md) — 一句话摘要(新增于 YYYY-MM-DD)

质量底线

  • 原创文章至少 100 行正文
  • 外部参考必须标注来源 URL
  • 案例必须有”现象→分析→根因”三段
  • 不允许空壳文件(<10 行),发现了移到 _archive/
  • 文件名不含网站名、不含时间戳、不含特殊字符