# Audit Context Building

> 启用超细粒度、逐行代码分析，在漏洞或缺陷发现之前构建深度架构上下文。触发词：上下文构建、代码审计上下文、深度代码分析、架构理解、逐行分析、审计准备、上下文建立、代码理解、安全审计准备、架构审查

- Skill: `kscz0000/audit-context-building` (Agent Skill)
- Install (CLI): `npx skillmds@latest add kscz0000/audit-context-building`
- Raw SKILL.md: https://api.skillmd.com/api/skills/kscz0000/audit-context-building/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Security
- Author: kscz0000 (https://skillmd.com/u/kscz0000)
- Updated: 2026-09-21
- Page: https://skillmd.com/skills/kscz0000/audit-context-building

---


# 深度上下文构建技能（超细粒度纯上下文模式）

## 1. 目的

本技能规范审计上下文构建阶段 **Claude 的思维方式**。

激活时，Claude 将：
- 默认执行 **逐行/逐块** 代码分析。
- 在微观层面应用 **第一性原理**、**5个为什么** 和 **5个如何**。
- 持续关联洞察 → 函数 → 模块 → 整个系统。
- 维护稳定、显式的思维模型，随新证据演进。
- 识别不变量、假设、流程和推理风险。

本技能定义结构化分析格式（见下文示例：函数微观分析），并在漏洞搜寻阶段 **之前** 运行。

---

## 何时使用
适用于：
- 在缺陷或漏洞发现之前需要深度理解。
- 需要自底向上的理解，而非高层猜测。
- 减少幻觉、矛盾和上下文丢失至关重要。
- 为安全审计、架构审查或威胁建模做准备。

**不** 适用于：
- 漏洞发现
- 修复建议
- 漏洞利用推理
- 严重性/影响评级

---

## 3. 本技能的行为方式

激活时，Claude 将：
- 默认对每个代码块和行进行 **超细粒度分析**。
- 应用微观层面的第一性原理、5个为什么和5个如何。
- 构建并精化持久的全局思维模型。
- 当出现矛盾时更新早期假设（"之前我认为X；现在是Y"）。
- 定期锚定摘要以维护稳定的上下文。
- 避免猜测；需要时显式表达不确定性。

目标：**深度、准确的理解**，而非结论。

---

## 合理化（不可跳过）

| 合理化 | 为何错误 | 必需行动 |
|-----------------|----------------|-----------------|
| "我懂大意" | 大意级别的理解会遗漏边界情况 | 必须逐行分析 |
| "这个函数很简单" | 简单函数组合后会形成复杂缺陷 | 仍需应用5个为什么 |
| "我会记住这个不变量" | 你不会。上下文会衰减。 | 显式写下来 |
| "外部调用应该没问题" | 外部 = 敌对，除非证明否则 | 跳入代码或建模为敌对 |
| "我可以跳过这个辅助函数" | 辅助函数包含会传播的假设 | 追踪完整调用链 |
| "这花太长时间了" | 匆忙的上下文 = 后续产生幻觉漏洞 | 慢即是快 |

---

## 4. 阶段1 — 初始定位（自底向上扫描）

深度分析之前，Claude 执行最小化映射：

1. 识别主要模块/文件/合约。
2. 标记明显的 public/external 入口点。
3. 识别可能的参与者（用户、所有者、中继器、预言机、其他合约）。
4. 识别重要的存储变量、字典、状态结构体或单元格。
5. 构建初步结构，不假设行为。

这为详细分析建立锚点。

---

## 5. 阶段2 — 超细粒度函数分析（默认模式）

每个非平凡函数都接受完整的微观分析。

### 5.1 每函数微观结构检查清单

对于每个函数：

1. **目的**
   - 函数为何存在及其在系统中的角色。

2. **输入与假设**
   - 参数和隐式输入（状态、调用者、环境）。
   - 前置条件和约束。

3. **输出与效果**
   - 返回值。
   - 状态/存储写入。
   - 事件/消息。
   - 外部交互。

4. **逐块/逐行分析**
   对于每个逻辑块：
   - 它做什么。
   - 为何出现在这里（排序逻辑）。
   - 它依赖什么假设。
   - 它建立或维护什么不变量。
   - 后续逻辑如何依赖它。

   对每个块应用：
   - **第一性原理**
   - **5个为什么**
   - **5个如何**

---

### 5.2 跨函数与外部流程分析
*（跳入外部代码规则的完整集成）*

遇到调用时，**跨边界继续相同的微观优先分析。**

#### 内部调用
- 立即跳入被调用者。
- 对相关代码执行逐块分析。
- 追踪数据、假设和不变量的流动：
  调用者 → 被调用者 → 返回 → 调用者。
- 注意被调用者逻辑在此特定调用上下文中是否有不同行为。

#### 外部调用 — 两种情况

**情况A — 调用代码库中存在代码的合约**
视为内部调用：
- 跳入目标合约/函数。
- 继续逐块微观分析。
- 无缝传播不变量和假设。
- 基于 *实际* 代码考虑边界情况，而非黑盒猜测。

**情况B — 调用无可用代码的外部（真正外部/黑盒）**
作为敌对分析：
- 描述发送的载荷/值/gas或参数。
- 识别关于目标的假设。
- 考虑所有结果：
  - revert
  - 不正确/奇怪的返回值
  - 意外的状态变更
  - 异常行为
  - 重入（如适用）

#### 连续性规则
将整个调用链视为 **一个连续的执行流程**。
永不重置上下文。
所有不变量、假设和数据依赖必须跨调用传播。

---

### 5.3 完整分析示例

参见 FUNCTION_MICRO_ANALYSIS_EXAMPLE.md 的完整演示，展示：
- DEX swap 函数的完整微观分析
- 第一性原理、5个为什么和5个如何的应用
- 带不变量和假设的逐块分析
- 跨函数依赖映射
- 外部交互的风险分析

此示例展示了所有被分析函数所需的深度和结构级别。

---

### 5.4 输出要求

执行超细粒度分析时，Claude 必须遵循 OUTPUT_REQUIREMENTS.md 中定义的格式结构化输出。

关键要求：
- **目的**（最少2-3句话）
- **输入与假设**（所有参数、前置条件、信任假设）
- **输出与效果**（返回值、状态写入、外部调用、事件、后置条件）
- **逐块分析**（做什么、为何在此、假设、第一性原理/5个为什么/5个如何）
- **跨函数依赖**（内部调用、带风险分析的外部调用、共享状态）

质量阈值：
- 每函数最少3个不变量
- 最少5个已记录假设
- 外部交互最少3个风险考量
- 至少1次第一性原理应用
- 至少3次5个为什么/5个如何组合应用

---

### 5.5 完整性检查清单

结束函数微观分析之前，对照 COMPLETENESS_CHECKLIST.md 验证：

- **结构完整性**：所有必需部分存在（目的、输入、输出、逐块、依赖）
- **内容深度**：达到最低阈值（不变量、假设、风险分析、第一性原理）
- **连续性与集成**：交叉引用、传播假设、不变量耦合
- **反幻觉**：行号引用、无模糊陈述、基于证据的主张

当所有检查清单项满足且无未解决的"不清楚"项时，分析完成。

---

## 6. 阶段3 — 全局系统理解

充分微观分析后：

1. **状态与不变量重建**
   - 映射每个状态变量的读/写。
   - 推导多函数和多模块不变量。

2. **工作流重建**
   - 识别端到端流程（存款、取款、生命周期、升级）。
   - 追踪状态如何在这些流程中转换。
   - 记录跨步骤持续的假设。

3. **信任边界映射**
   - 参与者 → 入口点 → 行为。
   - 识别不受信任的输入路径。
   - 权限变更和隐式角色期望。

4. **复杂性与脆弱性聚类**
   - 具有许多假设的函数。
   - 高分支逻辑。
   - 多步骤依赖。
   - 跨模块的耦合状态变更。

这些聚类有助于引导漏洞搜寻阶段。

---

## 7. 稳定性与一致性规则
*（反幻觉、反矛盾）*

Claude 必须：

- **永不重塑证据以适应早期假设。**
  出现矛盾时：
  - 更新模型。
  - 显式说明修正。

- **定期锚定关键事实**
  总结核心：
  - 不变量
  - 状态关系
  - 参与者角色
  - 工作流

- **避免模糊猜测**
  使用：
  - "不清楚；需要检查X。"
  而非：
  - "它可能……"

- **持续交叉引用**
  将新洞察与之前的状态、流程和不变量连接，维护全局一致性。

---

## 8. 子智能体使用

Claude 可为以下情况生成子智能体：
- 密集或复杂函数。
- 长数据流或控制流链。
- 密码学/数学逻辑。
- 复杂状态机。
- 多模块工作流重建。

使用 **`function-analyzer`** 智能体进行每函数深度分析。
它遵循本技能中定义的完整微观结构检查清单、跨函数流程
规则和质量阈值，并强制执行纯上下文构建约束。

子智能体必须：
- 遵循相同的微观优先规则。
- 返回 Claude 集成到其全局模型的摘要。

---

## 9. 与其他阶段的关系

本技能运行于以下阶段 **之前**：
- 漏洞发现
- 分类/分流
- 报告撰写
- 影响建模
- 漏洞利用推理

其唯一目的是构建：
- 深度理解
- 稳定上下文
- 系统级清晰度

---

## 10. 非目标

激活期间，Claude 不应：
- 识别漏洞
- 提出修复
- 生成概念验证
- 建模漏洞利用
- 分配严重性或影响

这仅是 **纯上下文构建**。

## 局限性
- 仅当任务明确匹配上述范围时使用本技能。
- 不要将输出视为环境特定验证、测试或专家审查的替代品。
- 如果缺少必需的输入、权限、安全边界或成功标准，请停下来请求澄清。

