Merge remote-tracking branch 'origin/main' into telegram-polish

This commit is contained in:
YooooEX committed 2026-04-28 12:15:50 +08:00
commit 2a3bb71b98
2 files changed
+5 -10

No files matched your search

+2 -1
View File
@@ -29,11 +29,12 @@ print(get_todo()) # 查看待办
- 即使失败也记录实验过程和结果,失败报告同样有价值
- 用户不在线,遇到需要决策的问题写入报告待审,不要卡住
**收尾(三件事缺一不可)**:
**收尾(4件事缺一不可)**:
0. 重读本sop
1. 在cwd写报告(文件名任意),若有记忆更新建议,附在报告末尾
2. `from/import helper; complete_task(tasktitle, historyline, report_path)` → 自动编号+移报告到 autonomous_reports/+prepend history(historyline 格式:`类型 | 主题 | 结论`,严格单行)
3. `set_todo()` 获取TODO路径 → 将已完成条目标记为 `[x]`
4. 结束,剩余TODO留到下次再做
## 权限边界
- 无需批准:只读探测、cwd内写操作/脚本实验
+3 -9
View File
@@ -25,7 +25,6 @@ _REPORTS_DIR = _TEMP_DIR / "autonomous_reports"
_HISTORY_FILE = _REPORTS_DIR / "history.txt"
_TODO_FILE = _TEMP_DIR / "TODO.txt"
def _next_report_number() -> int:
"""扫 history.txt 第一行提取最大 RXX 编号,返回下一个"""
if not _HISTORY_FILE.exists():
@@ -41,11 +40,8 @@ def _next_report_number() -> int:
def get_todo() -> str:
"""返回 TODO.txt 的内容。若文件不存在返回提示。"""
if not _TODO_FILE.exists():
return f"[autonomous_task] TODO.txt 不存在,路径: {_TODO_FILE}"
with open(_TODO_FILE, "r", encoding="utf-8") as f:
return f.read()
if not _TODO_FILE.exists(): return f"[autonomous_task] TODO.txt 不存在,路径: {_TODO_FILE}"
with open(_TODO_FILE, "r", encoding="utf-8") as f: return f.read()
def get_history(n: int = 20) -> str:
"""返回 history.txt 的前 n 行(最新在前)。"""
@@ -67,12 +63,10 @@ def complete_task(taskname: str, historyline: str, report_path: str) -> str:
1. 移动 report_path → autonomous_reports/R{XX}_{taskname}.md(自动编号)
2. prepend historyline 到 history.txt(校验必须单行)
3. 返回字符串指示 agent 自己去改 TODO
Args:
taskname: 任务简短名称(用于报告文件名,如 "晨间简报")
historyline: 历史记录内容(必须单行,日期自动添加,如 "工程 | 晨间简报 | 完成7模块聚合")
report_path: agent 已写好的报告文件路径(绝对或相对于cwd)
Returns:
成功消息 + 改TODO指令,或错误消息
"""
@@ -128,7 +122,7 @@ def complete_task(taskname: str, historyline: str, report_path: str) -> str:
return (
f"✅ 完成!报告已保存: {dest_name}\n"
f"历史已记录: {line}\n"
f"👉 请在 {_TODO_FILE} 中将对应任务标记为 [x] R{rnum}"
f"👉 请在 {_TODO_FILE} 中将对应任务标记为 [x] R{rnum},然后结束,**其他TODO下次再干**"
)