迁移

从 Agent Harness 迁移到 Tenetora:哪些内容变化、升级如何进行,以及什么事情绝不会自动发生。

适用对象

计划从 Agent Harness 迁到 Tenetora 的用户。

任务路径

  1. 读下面的变化表,弄清哪些入口被替换。
  2. 在机器上重跑无 scope 的安装命令;它只刷新已登记的安装面。
  3. tenetora-update 更新每个已治理项目。
  4. tenetora versiontenetora doctor 核验,然后重启原生 plugin 宿主。

哪些内容变化

入口当前兼容行为
产品名TenetoraAgent Harness 作为旧产品名继续识别
CLItenetora升级器移除可证明归属的旧 shim,不再创建旧别名
lifecycle skillstenetora-*agent-harness-* 只作为迁移输入识别;已确认归属的副本移入机器级备份
机器主目录~/.tenetora能证明归属的旧主目录执行一次性迁移;归属不明的同名目录原样保留
项目治理目录.tenetora/,含 manifest.harness/ 只作为旧版迁移输入读取,不再用于正常运行
环境变量协议TENETORA_*旧变量不会被提升、翻译或透传
原生插件身份tenetora@tenetora-local已确认归属的旧注册在 canonical 插件验证通过后才被替换

升级已有电脑

重复执行同一条无 scope 命令即 existing-only 升级:刷新注册表中的全部已有全局安装面、项目安装面与仅治理项目,不创建任何新安装。旧机器状态只有至少两个独立所有权特征匹配时才迁移——托管 CLI shim、稳定 runtime、版本化 release 或 skill、安装注册表、插件来源、托管源码。顺序是事务式的:先收敛原生 plugin,再自举 canonical CLI,备份并原子重写已登记的旧 Git Hook,这些步骤成功后才迁移已证明归属的旧主目录。新旧目录同时存在时,完整旧目录归档到迁移备份,只合并缺失的 release、插件源、日志和项目登记。

升级前预览有界发现;自动根目录之外的项目用显式根目录登记:

bash
tenetora installations discover --auto --dry-run
tenetora installations discover --root ~/projects

原生 Windows 上,release 激活通过 mklink /J 创建 junction:本地化命令输出按容错解码处理,系统代码页不会破坏升级进程;激活失败保留首行诊断;退出码为 0 但 junction 未实际创建时会报告错误(按版本的说明见发布页)。POSIX symlink 激活流程保持不变。

项目中的旧 skill 与目录

不要手工重命名 .harnessCLAUDE.mdAGENTS.md。先运行分类检查:

bash
tenetora migrate --check --path <project>
tenetora migrate --plan --path <project>

高置信的自产目录可通过 tenetora migrate --apply 自动迁移;第三方目录原样保留;混合或归属模糊的目录默认阻断,只有用户审查后显式放行才会继续。每次成功迁移都会生成 manifest、项目外恢复备份和机器级迁移日志。

回滚边界

版本化 release 保存在机器主目录下,只有包校验完成后才切换 current。项目目录迁移会先把旧目录复制到备份,在 staging 中构建并校验,再原子发布 .tenetora。入口适配器改写使用原子写入与共享回滚日志,后续步骤失败会恢复之前已经修改的全部文件。验收通过前不要手工删除迁移备份或插件注册表。

不会自动发生的事情

  • 安装 skill 包不会创建 .tenetora/
  • 仅因为产品改名,不会重写项目已有规则。
  • 第三方或归属不明的 plugin、Hook、旧目录不会被重命名、删除或合并。
  • 用户文件和工具私有配置不会被迁移到共享 .tenetora 内容中。
  • 旧环境变量不会选择活动主目录、解释器、plugin root、语言或运行行为。

限制

  • 本页只覆盖用户可见的迁移边界;内部研发历史不在此公开。
  • 公开来源核验完成前,不提供推荐迁移入口——先在发布页核验证据。

下一步

  • 阅读概念了解你要迁入的治理模型。
  • 来源核验完成后使用快速开始