reasonix-sync-deploylisted
Install: claude install-skill Linearl/reasonix_skill_repo
# reasonix-sync-deploy
## 目标
把当前机器接入 `OneDrive\ReasonixSync` 多机同步体系(用户级技能 + 全局记忆每周同步)。
全程**无需管理员权限**;所有命令以当前用户��行。
## 前置检查
1. 定位脚本目录 `<SCRIPTS>`(按优先级取第一个存在的):
- 本技能目录同级 `scripts\`(技能自带脚本,分享包/独立场景)
- `%USERPROFILE%\OneDrive\ReasonixSync\scripts\`(已接入同步体系的机器)
- 都不存在 → 告诉用户"脚本未就位:分享包解压不完整,或 OneDrive 还在同步,等 1~2 分钟再让我重试"。
2. 探测 OneDrive 根目录(仅当走 `OneDrive\ReasonixSync` 路径时需要,依次尝试):
- `%USERPROFILE%\OneDrive`
- `%USERPROFILE%\OneDrive - <名称>`(企业/多账号重命名)
- 用 `dir %USERPROFILE%\OneDrive*` 列出候选
3. 探测 Python:`where pythonw`(找不到则告知用户安装 Python,或让其编辑 `install-tasks.ps1` 顶部的候选路径列表)。
4. 机器名不需要配置:脚本自动取 `COMPUTERNAME`,首次推送时自动创建 `inbox\<计算机名>\` 子目录。
## 部署步骤(按顺序执行)
### 第 1 步:提示用户设置 OneDrive"始终保留在此设备"
OneDrive 客户端设置 AI 无法代劳,**明确请用户操作**(仅同步体系场景需要):
> 请右键 `OneDrive\ReasonixSync` 文件夹 → 选择"始终保留在此设备上"。
等用户确认完成再继续。
### 第 2 步:创建定时任务
用 PowerShell 执行(脚本含 `StartWhenAvailable` 错过补跑):
```
powershell -NoProfile -ExecutionPolicy Bypass -File "<SCRIPTS>\install-tasks.ps1"
```
**先询问用户"这台机器是主力机吗?"**:
- 是 → 加 `-Organizer` 参数(额外创建每周五的 Organize 任务)
- ��� → 不加(只有 Push 每天 10:00 + Pull 周一 10:30)
创建后验证(任务应全部 `Ready`,且 `StartWhenAvailable=True`):
```
powershell -NoProfile -Command "Get-ScheduledTask -TaskPath '\ReasonixSync\' | Select-Object TaskName, State"
```
### 第 3 步:首次推送
```
python "<SCRIPTS>\sync-push.py"
```
预期输出:`== push: <本机计算机名> -> ...\inbox\<本机计算机名>\`,随后列出技能/事实数量。
### 第 4 步:验证
1. `dir <SCRIPTS>\..\inbox\<本机计算机名>` 下出现 `skills\` 与 `memory\global\` 且非空(仅同步体系场景)。
2. 告知用户当前状态: