---
title: "会话与历史"
description: "Gemini CLI 会话管理：resume、list sessions、delete session、/chat save、/chat resume、/chat share 和项目作用域。"
verifiedAt: "2026-05-09"
---

Gemini CLI 可以恢复之前的 session，也可以在交互式会话里保存和恢复聊天状态。会话通常和当前项目目录相关。

> [!NOTE]
> **记住项目作用域**：在一个项目里保存的会话，不一定能在另一个目录直接看到。恢复前先确认你在哪个项目目录。

## CLI 层恢复

常见恢复方式包括 `gemini -r "latest"`、`gemini -r "latest" "继续检查 type errors"`，也可以用具体 session id 恢复指定会话。

也可以列出和删除 session：

列出 session 用 `gemini --list-sessions`，删除 session 用 `gemini --delete-session 3`。

| 动作 | 命令 | 适合场景 |
| --- | --- | --- |
| 恢复最近会话 | `gemini -r latest` | 刚退出、目录没变、继续同一任务 |
| 恢复并追加任务 | `gemini -r latest "继续跑测试"` | 上下文沿用，但要给新的明确目标 |
| 查看历史会话 | `gemini --list-sessions` | 不确定该恢复哪一个 |
| 删除旧会话 | `gemini --delete-session <id>` | 清理无用或敏感历史 |

`latest` 很方便，但也最容易误恢复。跨项目、多终端、多 agent 并行时，优先用 session id 或 tag，而不是盲用最近一次。

## 交互式保存

交互式会话里常用 `/chat save refactor-auth`、`/chat list`、`/chat resume refactor-auth`、`/chat delete refactor-auth`。

`/chat` 和 `/resume` 在官方 command reference 中指向同一组 session/checkpoint 动作。

建议 tag 用任务名，不用“今天”“fix”“test”这类无法回忆的名字：

```text
/chat save auth-middleware-typecheck
/chat save docs-gemini-cli-web-tools
```

好 tag 应该能回答三件事：项目、任务、当前阶段。以后恢复时，你不需要重新猜它属于哪条线。

## 分享会话

分享可以导出为 Markdown 或 JSON，例如 `/chat share file.md`、`/chat share file.json`。

> [!WARNING]
> 分享前必须脱敏。会话里可能包含文件路径、代码、报错、环境变量名、业务信息、账号线索。

## 使用建议

- 大任务开始前保存 tag。
- 切目录前确认 session 作用域。
- 分享会话前先读一遍导出的 Markdown/JSON。
- 不要把含密钥或私有代码的 session 公开贴出去。

## 恢复前检查

恢复 session 前，先把项目状态重新拉回现实：

1. 看当前目录是否正确。
2. 看 `git status` 是否有别人或其他 agent 的改动。
3. 看依赖、分支、环境变量是否和旧会话一致。
4. 让 Gemini CLI 重新读取关键文件，不要完全依赖旧上下文。

```text
Before continuing, inspect the current git status and re-read the files you plan to touch.
Do not assume the previous session state is still accurate.
```

这一步在多人协作、长时间中断、自动化任务恢复时尤其重要。session 保存的是对话上下文，不是项目真实状态的永久证明。

## 什么时候不用恢复

会话恢复适合延续上下文，但不适合用来掩盖项目状态变化。如果代码已经被别人改过、依赖升级过、分支切换过，恢复旧 session 后要先让 Gemini CLI 重新读取当前文件和 `git status`。旧会话里的判断可能已经过期。

## 验收方式

保存一个测试会话，退出后用 tag 和 `latest` 分别恢复，确认目录作用域符合预期。导出 Markdown/JSON 后，用搜索检查是否包含 token、邮箱、本机绝对路径、私有 repo 名或客户信息。

## 接下来去哪

<Cards>
  <Card title="任务规划" description="继续看复杂任务如何先列计划、拆步骤、设验证点。" href="/docs/gemini-cli/official/01-cli-workflow/17-task-planning" />
  <Card title="Checkpoint 与 rewind" description="如果要恢复文件修改前状态，继续看 checkpoint 和 /restore。" href="/docs/gemini-cli/official/01-cli-workflow/18-checkpointing-rewind" />
  <Card title="Settings" description="需要长期固定 session、checkpoint、工具权限等行为时，继续看 settings.json。" href="/docs/gemini-cli/official/02-context-config/20-settings" />
</Cards>

## 官方来源

- [Gemini CLI session management](https://github.com/google-gemini/gemini-cli/blob/main/docs/cli/session-management.md)
- [Gemini CLI session tutorial](https://github.com/google-gemini/gemini-cli/blob/main/docs/cli/tutorials/session-management.md)
