# 示例：按计划生成项目报告

> 把已经人工跑通的项目摘要交给本地调度器，通过立即执行、历史和真实产物验证计划任务。

Canonical page: /examples/scheduled-project-report



<Takeaways>
  <li>
    自动化只接收已经人工跑通的任务
  </li>

  <li>
    提示词不能依赖上一次会话记忆
  </li>

  <li>
    执行历史与真实文件必须同时检查
  </li>
</Takeaways>

这个示例每天从项目中的明确来源生成状态报告。它不依赖云端常驻：到点时需要 Vetta 正在运行，计算机没有睡眠或关机。

## 起始状态 [#起始状态]

目标项目中已有 `tasks/` 或其他稳定的任务记录目录，并允许写入 `reports/`。先在普通项目会话中运行一次下面的任务，确认输入路径和输出内容符合预期。

<Checklist title="交给调度器之前">
  <li>
    同一提示在普通会话中至少成功过一次。
  </li>

  <li>
    输入路径每次执行都存在，不依赖临时附件。
  </li>

  <li>
    报告路径不会覆盖人工维护的文件。
  </li>

  <li>
    任务不需要临场批准高风险动作。
  </li>

  <li>
    所选模型和必要能力在无人值守时可用。
  </li>
</Checklist>

## 准备无人值守任务 [#准备无人值守任务]

<Plate no="01" title="每日项目摘要">
  ```text
  读取当前项目中 tasks/ 下的任务记录，以及最近更新的 CHANGELOG.md（存在时）。
  生成 reports/daily-status.md，不修改其他文件。

  报告包含：
  - 生成时间和实际读取的来源；
  - 已完成、进行中、阻塞三类事项；
  - 信息不足或相互冲突的记录；
  - 下一工作日的三个优先建议。

  只根据项目文件总结，不补充外部事实。没有变化时仍生成报告并写明“本次未发现新记录”。
  完成后重新读取 reports/daily-status.md，确认以上部分存在；如果输入目录不存在或无法读取，让任务失败并说明原因，不要生成虚假成功报告。
  ```
</Plate>

## 创建并立即验证 [#创建并立即验证]

<Steps>
  <Step>
    ### 新建自动化 [#新建自动化]

    在侧栏 **自动化** 创建任务，选择已经试跑成功的工作目录、模型和执行模式。
  </Step>

  <Step>
    ### 设置计划 [#设置计划]

    选择每天或所需间隔，并核对界面显示的下次执行时间和系统时区。
  </Step>

  <Step>
    ### 立即执行 [#立即执行]

    保存后使用 **立即执行**，不要等到计划时间才验证目录、凭证和权限。
  </Step>

  <Step>
    ### 同时检查两类证据 [#同时检查两类证据]

    在执行历史中打开对应会话，并到项目目录检查 `reports/daily-status.md` 的实际内容。
  </Step>
</Steps>

## 预期产物 [#预期产物]

* 自动化详情中出现一次可打开的执行记录。
* 项目中存在 `reports/daily-status.md`，包含生成时间和实际来源。
* 下一次执行时间符合预期，任务处于启用状态。

## 验收结果 [#验收结果]

<Checklist title="开启计划前">
  <li>
    立即执行成功，且不是只有最终回复、没有报告文件。
  </li>

  <li>
    报告事实可以回到 

    `tasks/`

     或 

    `CHANGELOG.md`

    。
  </li>

  <li>
    输入缺失会形成明确失败，而不是沿用旧报告冒充新结果。
  </li>

  <li>
    计划时间、系统时区、启用状态和工作目录均正确。
  </li>

  <li>
    已理解 Vetta 退出或设备睡眠时不会按计划执行。
  </li>
</Checklist>

## 结果不符合时恢复 [#结果不符合时恢复]

先暂停任务，避免错误配置继续运行。根据历史中的具体失败编辑路径、模型、权限或提示，然后再次使用 **立即执行**；验证通过后再启用计划。错过的时间点不会因为重新启用自动补跑，需要时手动立即执行一次。

```text
本次报告的问题是：[缺少来源 / 路径错误 / 内容不完整]。
只修正 reports/daily-status.md，重新读取指定来源，不修改其他文件。
如果来源仍不可用，请明确失败，不要沿用旧内容。
```

<Continue>
  <ContinueLink href="/product/automation/" title="自动化完整指南" description="了解计划类型、运行状态、暂停、编辑和常见失败。" />

  <ContinueLink href="/examples/document-to-brief/" title="先完善报告结构" description="学习如何约束来源、标注不确定项并复核输出。" />

  <ContinueLink href="/troubleshooting/" title="自动化没有执行" description="按现象定位应用状态、模型、路径和权限问题。" />
</Continue>
