创建 Task Pack
当博客搜索从“一个输入框”变成“后端搜索、分页、权限、测试、模块档案和发布验证”时,不要继续用一条超长 Prompt。改用 Task Pack。
Task Pack 把计划、执行入口、编号任务、状态文件和验证要求放在一起。会话中断后,下一次也能从 SESSION_STATE.md 继续。
什么时候需要 Task Pack
| 信号 | 含义 |
|---|---|
| 先审计再开发 | 需要先确认现有列表、API、数据结构和测试。 |
| 涉及多个组件 | 例如 client、server 和模块文档都要改。 |
| 验证分阶段 | UI、API、测试和收口不能混在一个结论里。 |
| 任务可能中断 | 需要保存 NEXT_TASK 和恢复点。 |
| 要给别人接手 | 任务包比聊天记录更容易复用。 |
博客搜索任务包目录
text
task-packs/blog-search/
├── README.md
├── manifest.json
├── PLAN.md
├── EXECUTE_PROMPT.md
├── SESSION_STATE.md
├── prompts/
│ └── 00-session-runbook.md
└── tasks/
├── 01-audit-current-blog-list.md
├── 02-implement-search-ui.md
├── 03-add-search-api-if-needed.md
└── 04-run-checks-and-closeout.md如果你的项目已有固定任务包目录,按项目约定放置。公开分享前再脱敏和改成可复用示例。
manifest.json
json
{
"name": "blog-search",
"version": "0.1.0",
"purpose": "为博客文章列表增加可验证的搜索能力",
"entry": "EXECUTE_PROMPT.md",
"status_file": "SESSION_STATE.md",
"safe_to_publish": false
}PLAN.md
md
# PLAN
1. 审计当前博客列表、数据来源、模块档案和测试入口。
2. 先实现前端标题 / 摘要搜索和无结果状态。
3. 如果文章量、分页或权限要求需要后端支持,再补搜索 API。
4. 运行检查,更新状态文件,完成中文收口。计划不是承诺一定要做所有事。审计后发现后端搜索暂不需要,就在状态文件里说明取舍。
EXECUTE_PROMPT.md
md
# 执行博客搜索任务包
请按本任务包执行,不要跳过 `SESSION_STATE.md`。
任务包目录:`task-packs/blog-search/`
状态文件:`task-packs/blog-search/SESSION_STATE.md`
执行模式:same_session_auto_run
执行步骤:
1. 读取 `README.md`、`PLAN.md`、`manifest.json`、`prompts/00-session-runbook.md` 和 `SESSION_STATE.md`。
2. 根据 `NEXT_TASK` 执行编号任务。
3. 每完成一个子任务,运行对应验证并更新 `SESSION_STATE.md`。
4. 如果产生实际改动,按项目规则提交、推送和记录验证结果。
5. 最终用中文说明变更、验证、风险、发布影响和下一步。SESSION_STATE.md
md
# SESSION_STATE
status: not_started
current_task: 01-audit-current-blog-list
next_task: 01-audit-current-blog-list
resume_from: read_task_pack
done: []
changed_files: []
commands_run: []
risks: []状态文件只写恢复所需事实,不写聊天全文。
编号任务示例
md
# 01 审计当前博客列表
## 目标
- 找到博客列表页面、文章数据来源、测试入口和模块文档。
- 判断本轮是否只做前端搜索,还是需要后端搜索 API。
## 允许修改
- task-packs/blog-search/SESSION_STATE.md
## 禁止修改
- 业务代码
- 发布配置
- .local/**
## 验收标准
- 输出真实路径清单。
- 更新 `SESSION_STATE.md` 的审计结论和下一任务。md
# 02 实现搜索 UI
## 目标
- 在博客文章列表增加搜索输入框。
- 支持按标题和摘要过滤。
- 没有匹配结果时显示空状态。
## 允许修改
- code/client/**
- docs/modules/blog/**
## 验收标准
- 空关键词显示全部文章。
- 非空关键词只显示匹配文章。
- 收口说明包含验证和发布影响。任务包检查
创建后先检查结构:
bash
test -f task-packs/blog-search/manifest.json
test -f task-packs/blog-search/EXECUTE_PROMPT.md
test -f task-packs/blog-search/PLAN.md
test -f task-packs/blog-search/prompts/00-session-runbook.md
test -f task-packs/blog-search/SESSION_STATE.md执行后再运行本项目要求的验证命令。最小命令通常包括:
bash
git diff --check
npm run test:plan常见错误
| 错误 | 修正方式 |
|---|---|
| 只有计划,没有执行入口 | 补 EXECUTE_PROMPT.md。 |
| 只有执行入口,没有状态文件 | 补 SESSION_STATE.md 和 NEXT_TASK。 |
| 子任务没有验收标准 | 每个任务必须能判断完成。 |
| 审计任务直接改代码 | 先只读定位,再进入实现任务。 |
| 任务包包含内部资料 | 公开前执行脱敏和 release gates。 |
下一步
阅读 运行检查,把博客搜索的验证结果变成可复盘的收口证据。
