Hyperresearch archive-run 命令详解:如何安全归档旧版本研究产物,避免被静默覆盖
Hyperresearch archive-run 命令详解如何安全归档旧版本研究产物避免被静默覆盖【免费下载链接】hyperresearchAgent-driven research knowledge base. Agents collect, search, and synthesize web research into a persistent, searchable wiki.项目地址: https://gitcode.com/GitHub_Trending/hy/hyperresearchHyperresearch 是一个 Agent 驱动的研究知识库工具Agent 负责收集、搜索并综合网络研究沉淀为持久化、可检索的 wiki 库。当你在同一个 vault 里第二次运行研究时hyperresearch archive-run命令就是关键——它能把上一次运行留下的研究产物安全归档到独立目录防止新一次运行悄悄覆盖旧成果是保护旧版本研究数据的第一道防线。为什么需要 archive-run 归档命令Hyperresearch 的 16 步研究流水线会在research/目录下写入大量中间产物。这些文件没有按运行标签命名空间隔离第二次运行时会被直接覆写scaffold.md研究脚手架prompt-decomposition.json提示词分解loci.json/loci-a.json/loci-b.json深度议题comparisons.md跨议题对比4 份critic-findings-*.json批评者发现patch-log.json、polish-log.json修补与润色日志readability-*.json、audit_findings.json、corpus-critic-gaps.json整个research/temp/草稿树⚠️ 覆盖是静默发生的不会有任何报错。而最终报告final_report_tag.md和查询文件query-tag.md因为带 vault_tag 命名空间会安然无恙——但这反而让人误以为什么都没丢。这个命令正是为了解决研究产物丢失问题而设计在新运行启动前把上一轮的全部中间产物整体搬走。archive-run 具体会移动哪些文件归档清单在源码 archive.py 中明确定义分两类类别内容归档方式根目录平铺产物scaffold.md、loci.json、comparisons.md、各critic-findings-*.json、日志类 JSON 等 18 个文件逐个移动草稿树research/temp/整棵树整体移动明确不动的文件research/notes/final_report_tag.md和research/query-tag.md——它们已按标签隔离原地保留。归档后的目录结构长这样research/ ├── runs/ │ └── archive-alpha-beta-20260918T022039Z/ ← 旧产物全在这里 │ ├── scaffold.md │ ├── loci.json │ └── temp/ 整棵草稿树 ├── query-alpha-beta.md ← 不动 └── notes/final_report_alpha-beta.md ← 不动archive-run 使用步骤3 步完成归档步骤一进入 vault 根目录命令依赖自动发现的 vault 结构.hyperresearch/research/所以必须在你项目的根目录下执行cd your-project步骤二运行归档命令hyperresearch archive-run如果想在脚本中使用加上 JSON 输出hyperresearch archive-run --json步骤三确认输出人类可读模式会打印类似Archived 18 items to research/runs/archive-alpha-beta-20260918T022039Z previous vault_tag: alpha-betaJSON 模式返回的核心字段字段含义archived是否真正发生了归档空 vault 为falsearchive_dir归档目录相对路径files_moved移动的文件/目录数moved每个文件from → to的明细previous_vault_tag推断出的上一次运行标签 两个贴心设计自动推断上次运行标签——优先取最近修改的query-*.md找不到就回退到scaffold.md里的vault_tag字段实现见 archive.py#L59-L81所以归档目录名自带上下文一眼能认出是哪次运行的产物。同秒多次运行不冲突——目录名撞上时自动追加-2、-3后缀_unique_archive_dir。归档后重建空的research/temp/后续步骤无需手动 mkdir。什么时候会被自动触发好消息是大多数时候你不需要手动调用。入口技能 hyperresearch.md 的引导流程把archive-run固化为步骤 0.5每次/hyperresearch启动前自动执行一次。对于 3.0 版本的 vault每次运行本就拥有独立的research/runs/vault_tag/工作区命令检测到无平铺产物后会低成本空跑no-op几乎零开销。它主要保护的是仍残留 3.0 之前平铺产物的旧 vault变更历史见 CHANGELOG.md#L289。常见疑问与注意事项Q1全新 vault 上运行会报错吗不会。检测到research/不存在或无旧产物时命令直接返回archived: false并静默结束是安全的幂等操作。Q2归档目录会被误认为新运行吗不会。vault_tag.py 在生成新标签时会显式排除archive-*目录避免旧标签污染命名空间。Q3它能防止并发运行互相覆盖吗⚠️ 不能。源码注释archive.py#L10-L11明确说明它保护的是顺序运行。两个时间重叠的/hyperresearch调用仍会竞争写入。Q4归档后能恢复吗可以。归档只是shutil.move没有任何删除动作打开research/runs/archive-*/即可完整找回上一轮的全部中间产物。相关源码与测试命令实现src/hyperresearch/cli/archive.py命令注册src/hyperresearch/cli/__init__.py#L96行为测试含空 vault、重复调用、标签推断等场景tests/test_cli/test_archive.py2.0 路线图中的定位docs/roadmap-2.0/README.md#L61✅ 一句话总结每次启动新的/hyperresearch研究前跑一次hyperresearch archive-run或交给入口技能自动执行旧版本研究产物就会被完整搬到research/runs/archive-*/新运行从干净状态出发历史数据一个字节都不会丢。【免费下载链接】hyperresearchAgent-driven research knowledge base. Agents collect, search, and synthesize web research into a persistent, searchable wiki.项目地址: https://gitcode.com/GitHub_Trending/hy/hyperresearch创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考