<!-- title: 会话全生命周期管理实战 -->

# Claude Code会话全生命周期管理实战：从创建到归档的完整掌控

## 概述

Claude Code的会话（Session）不仅是"对话历史"——它是一个完整的状态持久化系统，承载着上下文窗口、工具调用记录、Subagent转录和项目元数据。本教程深入解析会话从创建、延续、分支、压缩到归档的全生命周期，帮助你建立高效的对话工作流，避免上下文丢失，实现会话级别的版本控制。适合已掌握Claude Code基础操作、希望提升长期项目协作效率的中高级开发者。

## 前置条件

- 已安装Claude Code CLI（`npm install -g @anthropic-ai/claude-code`）
- 了解基本交互模式（`claude` 启动、`/help` 查看命令）
- 有至少一个真实项目的开发经验
- 理解Token和上下文窗口的基本概念

---

## 第一章：会话的诞生——理解存储架构

### 1.1 会话存储在哪里？

每次启动Claude Code交互会话，系统在 `~/.claude/projects/` 下创建一个JSONL文件。路径结构如下：

```
~/.claude/
├── projects/
│   └── -home-gprshome-myproject/    # 项目路径编码
│       ├── session-abc123.jsonl      # 会话文件
│       ├── session-def456.jsonl
│       └── ...
├── settings.json                     # 全局设置
└── credentials.json                  # 认证信息
```

项目目录名将工作目录的绝对路径做URL安全编码——`/home/user/my-project` 变成 `-home-user-my-project`。每个JSONL文件就是一次完整的会话记录。

### 1.2 JSONL文件内部结构

每个会话文件按行存储，每一行是一个独立的JSON对象（JSON Lines格式）：

```jsonl
{"type":"user","message":{"role":"user","content":"帮我分析这个项目的依赖关系"},"timestamp":"2026-05-21T08:30:00Z"}
{"type":"assistant","message":{"role":"assistant","content":"我来分析..."},"timestamp":"2026-05-21T08:30:05Z","toolUses":["Read","Grep","Glob"]}
{"type":"tool_result","toolName":"Read","result":"文件内容...","timestamp":"2026-05-21T08:30:06Z"}
{"type":"summary","content":"用户要求分析项目依赖，已读取package.json和tsconfig.json","contextUsed":45000,"contextTotal":200000}
```

关键记录类型：

| 记录类型 | 说明 | 用途 |
|---------|------|-----|
| `user` | 用户输入 | 还原对话历史 |
| `assistant` | AI回复 | 包含文本和工具调用决策 |
| `tool_result` | 工具执行结果 | Read/Grep/Bash等工具的输出 |
| `summary` | 压缩摘要 | `/compact` 后的上下文快照 |
| `metadata` | 元数据 | 模型版本、Token消耗、费用 |

### 1.3 会话ID的生成规则

会话ID是系统自动生成的唯一标识符（如 `abc123def456`），贯穿以下场景：

```bash
# 查看当前会话ID（在Claude Code内部输入）
/status

# 输出示例：
# Session: a3f8c2e1-9b4d-4f7a-b5e6-1234567890ab
# Context: 45,230 / 200,000 tokens (22.6%)
# Cost: $0.12
```

这个ID是后续 `--resume`、`--fork-session`、`/branch` 等操作的锚点。

---

## 第二章：会话延续——continue与resume

### 2.1 `--continue`：无缝衔接上次对话

最常用的会话延续方式。直接恢复最近一次会话的完整上下文：

```bash
# 恢复上一个会话，继续对话
claude --continue

# 简写形式
claude -c

# 恢复并直接发送新消息（非交互模式）
claude --continue -p "继续完成昨天未完成的测试"
```

**工作原理**：Claude Code读取 `~/.claude/projects/<project>/` 下最近修改的JSONL文件，加载完整对话历史到上下文窗口，然后进入交互模式。

**适用场景**：
- 昨天的工作今天继续
- 电脑重启后恢复进度
- 午休后无缝衔接

### 2.2 `--resume`：精确恢复指定会话

当你有多个并行会话时，`--resume` 让你跳转到任意历史会话：

```bash
# 列出最近会话供选择
claude --resume

# 输出交互式列表：
# ? Select a session to resume:
# ❯ a3f8c2e1 - "重构认证模块" (2 hours ago, 45K tokens)
#   b7d4e3f2 - "修复支付Bug" (5 hours ago, 28K tokens)
#   c9e5f4a3 - "添加用户导出功能" (1 day ago, 62K tokens)

# 通过会话ID精确恢复
claude --resume a3f8c2e1-9b4d-4f7a-b5e6-1234567890ab
```

**`--continue` vs `--resume` 对比**：

| 特性 | `--continue` | `--resume` |
|------|-------------|-----------|
| 选择方式 | 自动选最近会话 | 手动选择或指定ID |
| 交互模式 | 可交互也可 `-p` | 可交互也可 `-p` |
| 适用场景 | 单线程连续工作 | 多任务并行切换 |
| 上下文加载 | 完整历史 | 完整历史 |

### 2.3 `--session-id`：命名会话

为会话指定一个有意义的标识符，方便后续引用：

```bash
# 启动带名称的会话
claude --session-id auth-refactor

# 恢复命名会话
claude --resume auth-refactor
```

也可以在交互中使用 `/session-name` 命令重命名当前会话：

```
> /session-name auth-refactor-phase2
Session renamed to: auth-refactor-phase2
```

### 2.4 会话搜索：快速定位历史对话

```bash
# 列出所有会话（含摘要）
claude --sessions

# 搜索包含特定关键词的会话
claude --sessions --grep "认证模块"

# 在headless模式下搜索
claude -p "列出所有与支付相关的历史会话"
```

---

## 第三章：会话分支——branch与fork

### 3.1 `/branch`：创建对话决策树

`/branch`（早期版本叫 `/fork`）是会话管理中最强大的特性之一——它让你在不丢失当前上下文的前提下，探索不同的解决方案路径：

```
# 在Claude Code交互中
> /branch try-redis-cache
Created branch: try-redis-cache
Current context preserved. You can now explore an alternative approach.

# 现在你可以大胆尝试Redis缓存方案
# 如果不理想，切回主干继续
```

**分支的工作机制**：

```mermaid
gitGraph
    commit id: "初始对话"
    commit id: "分析需求"
    commit id: "设计方案A"
    branch try-redis-cache
    checkout try-redis-cache
    commit id: "实现Redis方案"
    commit id: "测试失败"
    checkout main
    commit id: "改用方案B"
    commit id: "实现Memcached"
    commit id: "测试通过 ✓"
```

Claude Code为分支创建一份完整的上下文副本。主会话和分支会话互不干扰，你可以用 `--resume` 在两者之间切换。

### 3.2 `--fork-session`：从CLI直接分支

不需要进入交互模式，直接从命令行创建分支：

```bash
# 从最近的会话创建分支
claude --continue --fork-session cache-experiment

# 从指定会话创建分支
claude --resume a3f8c2e1 --fork-session parallel-approach

# 创建分支并立即执行任务
claude --resume a3f8c2e1 --fork-session quick-test -p "尝试用B-tree替代哈希表实现"
```

### 3.3 分支策略实战

**场景：重构数据库访问层，不确定用哪种ORM**

```
# 步骤1：在主会话中完成基础设计
> 帮我设计数据库访问层的重构方案
[...完成方案设计...]

# 步骤2：创建分支A - Prisma方案
> /branch try-prisma
> 按照方案用Prisma实现UserRepository
[...完成Prisma实现...]

# 步骤3：切回主会话
> /branch try-typeorm
> 按照方案用TypeORM实现UserRepository
[...完成TypeORM实现...]

# 步骤4：对比评估
> 对比两个分支的实现，分析性能差异
```

**分支管理最佳实践**：

| 策略 | 说明 | 适用场景 |
|------|------|---------|
| 探索分支 | 快速尝试高风险方案 | 技术选型、架构决策 |
| 调试分支 | 隔离调试过程 | 复杂Bug排查 |
| 并行开发 | 多功能同时推进 | 独立模块开发 |
| 回滚锚点 | 做重大修改前分支 | 不可逆操作前的安全网 |

---

## 第四章：上下文管理——compact与clear

### 4.1 上下文窗口的生命周期

Claude Code的上下文窗口是有限资源。随着对话推进，Token消耗呈线性增长：

```mermaid
graph LR
    A[会话开始<br/>0% 上下文] --> B[轻度对话<br/>20-30%]
    B --> C[工具密集调用<br/>50-60%]
    C --> D{到达阈值?}
    D -->|否| C
    D -->|是 60%| E[建议 /compact]
    D -->|是 90%| F[自动压缩]
    E --> G[手动压缩<br/>保留关键信息]
    F --> G
    G --> H[压缩后<br/>15-25%]
    H --> C
```

### 4.2 `/compact`：智能上下文压缩

`/compact` 是保持会话活力的核心命令。它不是简单地"截断"历史，而是让AI生成一份结构化的摘要来替换完整对话：

```
# 手动压缩（推荐在上下文60%时执行）
> /compact
Compacting conversation...
Summary generated. Context reduced from 125,000 to 18,000 tokens (85.6% reduction).

# 带指令的压缩——强调保留特定信息
> /compact 保留所有已修改文件的路径和修改原因，丢弃工具调用的详细输出
```

**压缩保留了什么**：

| 保留 | 丢弃 |
|------|------|
| 用户的核心需求和意图 | 工具调用的原始输出 |
| 已做出的架构决策 | 中间步骤的探索过程 |
| 已修改的文件清单 | 错误重试的过程 |
| 当前任务状态和进度 | 代码片段的讨论过程 |
| Bug的根因分析结论 | 格式化和调整的过程 |

**压缩时机策略**：

```
# 策略1：主动压缩（推荐）
在上下文达到50-60%时主动执行 /compact
优点：信息损失最小，AI有足够上下文生成高质量摘要

# 策略2：阈值触发
在上下文达到80%时执行
优点：保留更多细节
缺点：压缩质量下降，接近极限时AI推理能力减弱

# 策略3：阶段转换时压缩
每完成一个子任务后执行
优点：每个阶段有清晰的压缩锚点
```

### 4.3 `/clear`：硬重置

当你需要完全重新开始，但保留在同一个项目中：

```
> /clear
Context cleared. Starting fresh in current project.

# 带说明的重置
> /clear 放弃当前方向，从零开始重新设计API
```

`/clear` 与 `/compact` 的本质区别：

| 特性 | `/compact` | `/clear` |
|------|-----------|---------|
| 上下文处理 | 压缩保留关键信息 | 完全清空 |
| 会话文件 | 追加压缩记录 | 追加清空标记 |
| Token节省 | 60-85% | 100% |
| 信息损失 | 最小化 | 全部丢失 |
| 适用场景 | 长会话延续 | 方向完全改变 |

### 4.4 `/cost`：实时监控Token消耗

```
> /cost
Session cost breakdown:
┌─────────────────────────────────────────┐
│ Input tokens:     89,230  ($0.27)       │
│ Output tokens:    12,450   ($0.19)      │
│ Cache read:       45,000   ($0.02)      │
│ Cache creation:   67,800   ($0.34)      │
│─────────────────────────────────────────│
│ Total:                     $0.82        │
│ Context window: 146,680 / 200,000 (73%) │
│ Suggestion: Consider /compact           │
└─────────────────────────────────────────┘
```

---

## 第五章：多会话工作流实战

### 5.1 场景：并行开发三个独立模块

```bash
# 终端1：前端模块
claude --session-id frontend-dashboard
> 实现Dashboard页面的数据可视化组件...

# 终端2：后端API
claude --session-id api-v2-endpoints
> 为Dashboard设计REST API端点...

# 终端3：数据库迁移
claude --session-id db-migration-may
> 编写v2到v3的数据库迁移脚本...
```

每个会话独立运作，互不干扰。完成后可以用 `--resume` 随时回到任意会话继续工作。

### 5.2 场景：长期项目的会话节奏

```text
graph TD
    A[Day 1: 会话 init-project] --> B[初始化项目结构]
    B --> C[/compact 阶段性压缩]
    C --> D[完成基础架构]
    D --> E[Day 2: --continue]
    E --> F[实现核心功能]
    F --> G[/branch try-new-algo]
    G --> H[Day 3: --resume分支]
    H --> I[性能测试与优化]
    I --> J[Day 4: --resume主会话]
    J --> K[集成与E2E测试]
    K --> L[/compact 最终压缩]
    L --> M[Day 5: --continue]
    M --> N[部署与文档]
```

### 5.3 会话间信息传递

不同会话之间不能直接共享上下文，但有几种间接方式：

**方法1：CLAUDE.md 作为跨会话记忆**

```bash
# 在会话A中写入项目状态
> 更新CLAUDE.md，添加以下进度信息：
> - 认证模块已完成（JWT + Refresh Token）
> - 下一步：实现RBAC权限系统
> - 注意事项：使用casbin库，参考/docs/rbac-design.md

# 在会话B中自动继承
claude --session-id rbac-impl
# Claude Code自动读取项目根目录的CLAUDE.md
```

**方法2：文件作为中间产物**

```bash
# 会话A：生成设计文档
claude -p "将当前认证模块的架构设计写入 docs/auth-architecture.md"

# 会话B：读取设计文档
claude --session-id rbac-impl -p "阅读docs/auth-architecture.md，基于其中的设计实现RBAC"
```

**方法3：`/memory` 命令写入全局记忆**

```
# 在任意会话中
> /memory 添加：项目使用pnpm，不要用npm
> /memory 添加：数据库迁移必须向后兼容

# 这些记忆会在所有新会话中自动加载
```

---

## 第六章：高级会话模式

### 6.1 Headless模式下的会话管理

在CI/CD或批量脚本中，会话管理同样重要：

```bash
#!/bin/bash
# ci-code-review.sh - CI中的代码审查脚本

# 获取PR变更
git diff origin/main...HEAD > /tmp/pr-diff.patch

# 使用命名会话，方便追踪
claude -p \
  --session-id "pr-review-$(date +%Y%m%d-%H%M%S)" \
  --output-format json \
  --max-turns 5 \
  "审查以下代码变更，关注安全问题和性能隐患: $(cat /tmp/pr-diff.patch)"

# 查看历史CI审查会话
claude --sessions --grep "pr-review"
```

### 6.2 会话与Subagent的交互

当使用Task工具派发Subagent时，会话的层级关系：

```
主会话 (session-abc123)
├── 用户请求："重构整个认证系统"
├── Task工具 → Subagent-1 (session-sub-001)
│   └── 独立上下文："重构JWT签发逻辑"
├── Task工具 → Subagent-2 (session-sub-002)
│   └── 独立上下文："重写权限中间件"
└── 汇总结果 → 主会话继续
```

Subagent拥有独立的上下文窗口，不会污染主会话。Subagent完成后只返回摘要结果给主会话。

### 6.3 会话归档与外部存储

对于长期项目，使用Agent SDK将会话持久化到外部存储：

```typescript
import { ClaudeCode } from '@anthropic-ai/claude-code';

// 自定义会话存储后端
const agent = new ClaudeCode({
  sessionStorage: {
    // 将会话存储到S3
    async save(sessionId, data) {
      await s3.putObject({
        Bucket: 'claude-sessions',
        Key: `${sessionId}.jsonl`,
        Body: JSON.stringify(data),
      });
    },
    async load(sessionId) {
      const result = await s3.getObject({
        Bucket: 'claude-sessions',
        Key: `${sessionId}.jsonl`,
      });
      return JSON.parse(result.Body);
    },
  },
});
```

### 6.4 会话健康度检查

```bash
# 内置诊断
> /doctor
Running diagnostics...
✓ API connection: healthy
✓ Context window: 45% used (good)
✓ Session file: intact (2.3MB)
⚠ Last compact: 4 hours ago (consider /compact)
✓ Project config: CLAUDE.md found
✓ MCP servers: 3 connected

# 手动检查会话文件
ls -lh ~/.claude/projects/-home-myproject/*.jsonl

# 输出：
# -rw-r--r--  1 user  staff  2.3M  session-abc123.jsonl
# -rw-r--r--  1 user  staff  890K  session-def456.jsonl
# -rw-r--r--  1 user  staff  4.1M  session-ghi789.jsonl  ← 过大，需要compact
```

---

## 第七章：完整实战案例——电商重构项目的会话管理

### 7.1 项目背景

一个中型电商平台的后端重构项目，预计3周完成，涉及5个核心模块。

### 7.2 会话规划

```mermaid
graph TD
    subgraph "Week 1: 基础架构"
        A1[session: init-scaffold] --> A2[session: db-schema-v2]
        A2 --> A3[session: api-gateway]
    end
    subgraph "Week 2: 核心业务"
        B1[session: user-auth] --> B2[session: order-flow]
        B2 --> B3[session: payment-integration]
    end
    subgraph "Week 3: 测试与部署"
        C1[session: e2e-testing] --> C2[session: perf-optimization]
        C2 --> C3[session: deployment]
    end
    A3 --> B1
    B3 --> C1
```

### 7.3 Day-by-Day 操作记录

**Day 1：初始化**

```bash
# 创建项目并启动首个会话
cd ~/ecommerce-refactor
claude --session-id init-scaffold

# 在会话中
> 这是一个Express.js电商后端项目，需要重构为模块化架构。
> 先分析当前项目结构，然后提出重构方案。

# 完成后压缩
> /compact 保留项目结构分析结果和重构方案决策

# 结束会话
> /cost  # 记录消耗：$0.45
> exit
```

**Day 2：数据库设计**

```bash
# 新会话，但延续项目知识
claude --session-id db-schema-v2

# CLAUDE.md已包含昨日决策，Claude自动继承上下文
> 基于昨天的重构方案，设计新的数据库Schema。
> 要求支持多租户、软删除、完整的审计日志。

# 遇到设计分歧时使用分支
> /branch try-nosql
> 尝试用MongoDB替代PostgreSQL的设计方案

# 评估后决定保留PostgreSQL
> /branch try-multi-tenant-schema
> 用Schema隔离方案实现多租户

# 压缩保存
> /compact 保留最终Schema设计和放弃的方案及其原因
```

**Day 5：认证模块（复杂场景）**

```bash
claude --continue  # 继续昨天的会话

# 上下文已满60%，先压缩
> /compact 保留已完成的认证流程图和JWT配置，丢弃中间调试日志

# 继续开发
> 实现Refresh Token轮换机制

# 发现安全漏洞需要紧急修复
> /branch hotfix-token-validation
> Token验证存在时间攻击漏洞，立即修复

# 修复完成后回到主线
> /compact
> 继续实现RBAC权限系统
```

**Day 10：集成测试**

```bash
# 恢复多个会话进行集成
claude --session-id integration-test

# 引用之前会话的成果
> 读取以下文件了解已完成模块的接口定义：
> - docs/auth-api.md（来自user-auth会话）
> - docs/order-api.md（来自order-flow会话）
> - docs/payment-api.md（来自payment-integration会话）
> 
> 编写跨模块的集成测试

# 使用 /compact 管理大量测试输出
> /compact 保留失败的测试用例和错误信息，丢弃通过的测试详细输出
```

### 7.4 会话管理自动化脚本

```bash
#!/bin/bash
# session-manager.sh - 项目会话管理工具

PROJECT_DIR="$HOME/ecommerce-refactor"
SESSIONS_DIR="$HOME/.claude/projects/$(echo $PROJECT_DIR | sed 's/\//-/g')"

# 列出所有会话及大小
list_sessions() {
    echo "=== 项目会话列表 ==="
    for f in "$SESSIONS_DIR"/*.jsonl; do
        size=$(du -h "$f" | cut -f1)
        name=$(basename "$f" .jsonl)
        modified=$(stat -f "%Sm" -t "%Y-%m-%d %H:%M" "$f" 2>/dev/null || stat -c "%y" "$f" | cut -d'.' -f1)
        lines=$(wc -l < "$f")
        echo "[$size] $name | 修改: $modified | 记录数: $lines"
    done
}

# 清理30天前的旧会话
archive_old_sessions() {
    echo "=== 归档30天前的会话 ==="
    find "$SESSIONS_DIR" -name "*.jsonl" -mtime +30 | while read f; do
        echo "归档: $(basename $f)"
        gzip "$f"  # 压缩但不删除
    done
}

# 会话大小预警
check_session_health() {
    echo "=== 会话健康检查 ==="
    for f in "$SESSIONS_DIR"/*.jsonl; do
        size=$(stat -f%z "$f" 2>/dev/null || stat -c%s "$f")
        if [ "$size" -gt 5242880 ]; then  # >5MB
            echo "⚠ $(basename $f): $(( size / 1024 ))KB — 建议compact或归档"
        elif [ "$size" -gt 10485760 ]; then  # >10MB
            echo "🔴 $(basename $f): $(( size / 1024 ))KB — 严重过大！"
        else
            echo "✓ $(basename $f): $(( size / 1024 ))KB"
        fi
    done
}

case "${1:-list}" in
    list)   list_sessions ;;
    archive) archive_old_sessions ;;
    health) check_session_health ;;
    *)      echo "用法: $0 {list|archive|health}" ;;
esac
```

---

## 第八章：会话管理的反模式与最佳实践

### 8.1 五大会话反模式

**反模式1：永不压缩的巨型会话**

```
# 错误示范
> 继续继续继续...  # 上下文95%
> 再加一个功能...   # 上下文98%
> 为什么回答质量下降了？  # 上下文100%，AI被迫自动压缩
```

**修复**：设置心理锚点，上下文超过50%就主动 `/compact`。

**反模式2：单会话承载所有任务**

```
# 错误示范：用同一个会话处理前端、后端、DevOps
> 帮我写React组件
> 然后配置K8s部署
> 再写个数据库迁移脚本
```

**修复**：按职责拆分会话，每个会话聚焦一个领域。

**反模式3：忽略 `/cost` 监控**

三天后发现API费用远超预期，却不知道哪个会话消耗最多。

**修复**：每次结束会话前执行 `/cost`，记录到项目日志。

**反模式4：不使用CLAUDE.md传递上下文**

每次新会话都要重新解释项目背景、技术栈、编码规范。

**修复**：维护完善的CLAUDE.md，让每个新会话自动继承项目知识。

**反模式5：会话文件无限增长**

`~/.claude/projects/` 目录膨胀到数GB，影响CLI启动速度。

**修复**：定期归档旧会话，使用上文的 `session-manager.sh` 脚本。

### 8.2 最佳实践速查表

| 场景 | 推荐操作 | 频率 |
|------|---------|------|
| 长对话持续开发 | `--continue` | 每日 |
| 多任务切换 | `--resume <id>` | 按需 |
| 上下文50%+ | `/compact` | 主动 |
| 方向完全改变 | `/clear` | 少用 |
| 技术方案探索 | `/branch <name>` | 按需 |
| 跨日进度传递 | CLAUDE.md + `/memory` | 每日 |
| 费用控制 | `/cost` | 每次结束 |
| 会话健康检查 | `/doctor` | 每周 |
| 旧会话清理 | gzip归档 | 每月 |

---

## 第九章：会话管理命令速查

```
会话生命周期命令一览：

# 创建
claude                          # 新建会话
claude --session-id <name>      # 命名会话

# 延续
claude --continue               # 恢复最近会话
claude --continue -p "任务"     # 恢复并执行
claude -c                       # --continue的简写

# 定位
claude --resume                 # 选择历史会话
claude --resume <id>            # 恢复指定会话
claude --sessions               # 列出所有会话

# 分支
> /branch <name>               # 在交互中创建分支
claude --continue --fork-session <name>  # CLI创建分支

# 管理
> /compact                     # 压缩上下文
> /compact <指令>              # 带指导的压缩
> /clear                       # 清空上下文
> /cost                        # 查看费用
> /doctor                      # 健康诊断
> /session-name <name>         # 重命名当前会话
> /status                      # 查看会话状态

# 外部
> /memory add <内容>           # 添加全局记忆
```

---

## 延伸阅读

- [Anthropic官方：使用CLAUDE.md文件](https://claude.com/blog/using-claude-md-files) — 项目指令文件的最佳实践
- [Claude Code官方文档：会话管理](https://code.claude.com/docs/en/sessions) — `--continue`、`--resume`、`--fork-session`完整参考
- [Claude Code官方文档：Agent SDK会话存储](https://code.claude.com/docs/en/agent-sdk/session-storage) — 外部会话持久化方案
- [Anthropic官方：会话管理与1M上下文](https://claude.com/blog/using-claude-code-session-management-and-1m-context) — 上下文窗口策略深度解析
- [Claude Code最佳实践：15条经验](https://aiorg.dev/blog/claude-code-best-practices) — 来自6个生产项目的实战总结

## 训练营适用性评估

| 维度 | 说明 |
|------|------|
| 适合训练营类型 | Claude Code进阶训练营、AI辅助开发工作坊、团队效率提升培训 |
| 教学时长 | 3-4小时（含实操练习） |
| 学员基础要求 | 已完成Claude Code入门，有1周以上使用经验 |
| 实操占比 | 60%（会话创建/分支/压缩实操）+ 40%（原理讲解） |
| 建议分组 | 2-3人一组，各负责一个模拟项目的不同模块会话 |

---

## 参考来源

1. [Manage sessions - Claude Code Docs](https://code.claude.com/docs/en/sessions) — 官方会话管理文档，涵盖continue/resume/fork全流程
2. [Using Claude Code: Session Management & 1M Context](https://claude.com/blog/using-claude-code-session-management-and-1m-context) — Anthropic官方博客，深度解析上下文策略
3. [Session Storage - ClaudeWorld](https://claude-world.com/tutorials/s16-session-storage/) — JSONL存储格式与内部架构详解
4. [Claude Code Session Persistence: Conversation Storage & Resume](https://openedclaude.github.io/claude-reviews-claude/chapters/09-session-persistence) — 会话持久化系统源码级分析
5. [Inside ~/.claude: The Filesystem Architecture Behind Claude Code](https://www.diljitpr.net/blog-post-2026-02-24-inside-dot-claude-filesystem-architecture.html) — ~/.claude目录结构完整解析

> [!tip] 51学通信知识星球
> **星主：爱卫生**（微信：gprshome201101）——公众号「51学通信」创办者，19 年通信行业运维与讲师经验，著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书（各大电商平台有售）。
> **星球定位**：深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域，主打运维岗位与信令分析。
> **当前规模**：5200 篇主题 / 990 个回答，198 元/年。
> **加入福利**：加入星球后请加爱卫生微信，拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题，另有群内分享。
> **AI 加持**：51学通信知识星球已作为 skill 接入 WorkBuddy，使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例，做总结、找文档和 PPT 等场景全覆盖。

![51学通信知识星球海报-扫码加入](https://wiki.500nian.com/images/zhixingqiu_qrcode.png)
