---
title: Intent — 在 Git 之上建一层语义历史
date: '2026-03-26'
summary: 记录 Intent 早期的目标、快照与决策模型，以及开发记录方式的取舍。
lang: zh
category: AI/Agents
legacy_url: https://dozybot001.github.io/2026/03/26/2026-03-26-intent-semantic-history/
---

Git 记录代码怎么变的。但它不记录**你为什么走这条路**、途中做了什么决策、上次停在哪里。

当开发从”写代码”转向”引导 agent、沉淀决策”，这层缺失变得越来越明显。Intent 就是为了补上这层——**语义历史**。

---

### 传统开发 vs Agent 开发

传统开发，人直接写代码，Git 跟踪变更，够用了。

Agent 驱动开发，流程变成了 人 → Agent → 代码。中间多了一层交互——你在和 agent 对话、做判断、修正方向。这些交互产生了大量语义信息：目标、里程碑、决策，但它们散落在聊天记录里，session 一关就丢了。

Intent 补的就是这层：人通过 Intent 把语义信息结构化地传递给 agent，agent 通过 Git 管理代码。

---

### 三个对象

整个模型只有三种对象：

| 对象 | 记录什么 |
| --- | --- |
| **Intent** | 从交互中总结出的目标 |
| **Snap** | 语义快照——做了什么、为什么 |
| **Decision** | 跨多个 intent 持续生效的长期约束 |

对象自动关联，关系始终双向且只增不减。创建新 Intent 时，所有活跃的 Decision 自动挂上去——你不需要手动维护”这个任务受哪些约束影响”。

这种设计的好处是**机器可查询**。不是一堆散乱的笔记，而是有状态、有关联的语义图谱。

---

### 从 Snap-Query 到 Intent-Session

早期版本尝试过 **Snap-Query** 模式——让 agent 在每次交互后自动捕获快照。能跑通，但问题很明显：噪声大、token 开销高、打断工作流。

后来转向了 **Intent-Session** 模式：agent 自由工作，你来决定何时记录。

实践下来这更务实：

1. **省 token**——不是每次交互都记，只在目标完成时记
2. **不打断工作流**——agent 正常工作，记录是事后的
3. **数据质量更高**——回溯式总结，里程碑已经确定，归纳自然更准确

操作流程很简单：

1. 和 agent 一起完成目标
2. 目标达成后，让 agent 回顾并构建语义历史
3. Agent 创建一个 intent + 若干 snap + 标记完成

“Session” 不严格指一次完整会话——它代表任何有明确目的的交互。和 `git commit` 一样，记录由用户发起。

---

### 快速开始

```bash
# macOS / Linux
curl -fsSL https://raw.githubusercontent.com/dozybot001/Intent/main/scripts/install.sh | bash

# 克隆仓库 & 添加 agent skill
git clone https://github.com/dozybot001/Intent.git
npx skills add dozybot001/Intent -g --all
```

需要 Python 3.9+ 和 Git，安装脚本自动处理 pipx。

想在浏览器里查看语义历史，启动 IntHub Local：

```bash
itt hub start
```

然后在项目仓库里：

```bash
itt hub link --api-base-url http://127.0.0.1:7210
itt hub sync
```

也可以在线浏览 Showcase：**[IntHub Showcase](https://dozybot001.github.io/Intent/)**，里面有 Intent 项目自身的语义历史和 MAARS 的早期数据。

---

### 和其他工具的关系

Intent 不替代 Git，也不替代 agent 的 memory：

- **Git** 回答：代码怎么变了
- **Memory** 回答：你是谁，你怎么工作
- **Intent** 回答：你在解决什么，做到哪了，为什么这么做

三者各管一层，互不冲突。

---

*开发正在从”写代码”转向”引导 agent、沉淀决策”。如果你觉得 Git log 记录的东西越来越不能反映你实际在做什么——Intent 试图解决的就是这件事。*

- GitHub: [github.com/dozybot001/Intent](https://github.com/dozybot001/Intent)
- 文档: [愿景](https://github.com/dozybot001/Intent/blob/main/docs/CN/vision.md) · [CLI 设计](https://github.com/dozybot001/Intent/blob/main/docs/CN/cli.md)
- MIT 协议
