﻿# 给旧项目建一张能用的索引

Next Token 博客

记得做过什么，却忘了项目名称和位置，会让复用从一开始就卡住。一张围绕用途、入口和当前状态维护的索引，能帮助 Agent 找回已有成果。

发布：2026-11-10
更新：2026-10-26

记得以前做过一个类似的视觉效果，却想不起项目名、作者和文件位置。歸藏在第六期讲到，自己借助 Memory 找回这些线索，再让 Agent 判断能否复用，接着做出了 Demo。杨攀也提到，有时连在哪个 Agent 里讨论过都忘了。

乔木提出的设想是给项目建一张 Map：以后在一个入口说出需求，由 Agent 去找相关项目。要支持这种寻找，索引得能接住“以前做过一个什么东西”这种模糊描述。

## 先记用途，再给出能打开的入口

仓库名往往是临时代号，过一阵子连作者也未必能想起来。“视频里给物体画框”“把长录屏裁成竖屏”更接近再次使用时脑中的线索。可以保留正式名称，再加一句实际做成过的用途。

以一个虚构的图片画框组件为例，索引可以这样写：

| 字段 | 内容示例 |
| --- | --- |
| 用途 | 在图片上显示矩形标注；目前只处理静态图 |
| 位置 | 仓库地址与组件目录 |
| 入口 | 演示文件、启动命令及所需依赖 |
| 已核对版本 | 能运行演示的提交编号与核对日期 |
| 复用提示 | 坐标相对原图；显示前要处理缩放 |

“支持实时视频跟踪”如果只是当时讨论过的想法，就不要写进用途栏。索引用于寻找已经存在的东西，未来计划可以另外标注。

开始时挑几个近期还会使用的项目就够了。复用时发现目录搬了、启动命令过时，顺手更正；这些修正会直接减少下一次寻找的时间。

## 同一仓库，可能有好几个现场

演示能运行的版本可能在实验分支里，主分支还没有相应功能。同一个仓库也可能有多个 worktree，目录相近但状态不同。

`git worktree list --porcelain` 可以列出工作目录、提交和分支，帮助核对它们的关系，格式见 [Git 文档](https://git-scm.com/docs/git-worktree)。它不能代替检查各目录当前的未提交改动，也不能证明项目现在可运行。准备复用时，还需要读当前说明、查看本地状态并启动相关入口。

如果索引写着某个提交跑通过，而现场已经往后改了几十次，可以先比较需要的部分发生了什么变化。这样不用在“相信旧记录”和“把全部项目重读一遍”之间二选一。

## 只拿这次需要的部分

找回图片画框项目后，新需求也许只需要其中的坐标换算。先确认这段代码依赖哪些类型和配置，再决定复制小模块、抽成公共组件，或直接调用旧项目的接口。

整仓复制容易把原来的界面、部署设置和临时假设一起带走。一个小函数能独立使用，就没有必要为了它启动旧项目的全部服务。反过来，功能与原有数据关系很紧，也不宜强行拆成一个看似通用的工具。

复用完成后，在原条目补上新项目的位置和使用部分。下一次搜索“图片缩放后画框偏了”，Agent 就有机会找到最近修过这个问题的实例，而不只是最初的演示。

## 相关资料

- [从 Memory 找回项目并复用制作 Demo 的经历](https://nexttoken.tv/weekly/006/transcript#quote-7764a789fcb295fcbc20)
- [忘记在哪个 Agent 中讨论过事情的困扰](https://nexttoken.tv/weekly/006/transcript#quote-076a7dae07427ed56156)
- [建立项目 Map、从统一入口寻找项目的设想](https://nexttoken.tv/weekly/006/transcript#quote-b14cd2058010090ca6c6)
- [Git：git-worktree](https://git-scm.com/docs/git-worktree)，查阅于 2026 年 10 月 26 日。

## 来源与相关链接

- [网页版文章](https://nexttoken.tv/blog/project-index-for-agent-reuse)
- [Weekly #006 完整文字稿](https://nexttoken.tv/weekly/006/transcript)
