返回顶部
n

nas-agent-syncNAS代理同步

Synology NAS integration for OpenClaw — centralized file storage for multi-agent teams via SSH

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.1.0
安全检测
已通过
739
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

nas-agent-sync

技能名称:nas-agent-sync
详细描述:

NAS Agent Sync — 面向 OpenClaw 代理的 Synology 文件存储

使用 Synology NAS(或任何可通过 SSH 访问的存储设备)集中管理多代理团队的文件存储。一个代理作为文件主控,其他所有代理通过它路由文件请求。

问题

多代理设置会在多个工作区生成文件。如果没有集中存储:

  • - 文件会在代理会话之间丢失
  • 缺乏备份策略
  • 代理重复工作
  • 没有单一事实来源

解决方案

指定一个代理作为文件主控。所有文件操作通过 sessions_send 经由该代理进行。文件主控管理:

  • - 与 NAS 的 SSH 连接
  • 每个代理的文件夹结构
  • 文件存储与检索
  • 跨代理文件共享

架构

┌──────────┐ sessions_send ┌────────────┐ SSH ┌─────────┐
│ 代理 A │ ──────────────────► │ 文件主控 │ ──────────► │ NAS │
│ (财务) │ 存储 invoice.pdf │ (技术主管) │ │ │
└──────────┘ └────────────┘ └─────────┘

┌──────────┐ sessions_send │ SSH
│ 代理 B │ ──────────────────► │
│ (销售) │ 获取销售报告 ▼
└──────────┘ ┌─────────────┐
│ _agents/ │
│ ├── agent-a/ │
│ ├── agent-b/ │
│ ├── agent-c/ │
│ └── _shared/ │
└─────────────┘

设置

1. NAS 前提条件

  • - Synology NAS(任何型号)或任何支持 SSH 的 Linux 服务器
  • 基于密钥认证的 SSH 访问
  • 建议使用 VPN 或 Tailnet 进行安全的远程访问

2. 创建文件夹结构

bash
SSH_HOST=user@your-nas-ip

创建代理文件夹(自定义代理名称以匹配您的团队)

ssh $SSHHOST mkdir -p ~/agents/{coordinator,techops,finance,sales,marketing}

创建共享文件夹

ssh $SSHHOST mkdir -p ~/shared/{config,templates}

创建代理目录文件

ssh $SSHHOST cat > ~/shared/config/agent-directory.json << EOF { agents: { coordinator: { role: 协调员, path: ~/_agents/coordinator/ }, techops: { role: 文件主控, path: ~/_agents/techops/ }, finance: { role: 财务, path: ~/_agents/finance/ } }, shared: ~/_shared/, basePath: ~/ } EOF

3. 配置文件主控代理

将以下内容添加到文件主控代理的 AGENTS.md 中:

markdown

文件主控 — 传入请求

当其他代理通过 sessions_send 发送文件请求时:

存储文件:

ssh USER@NAS-IP mkdir -p ~/_agents/[agent]/[subfolder]/

在此处复制/创建文件

检索文件:

ssh USER@NAS-IP cat ~/_agents/[agent]/[file]

将内容发送回请求代理

确认回复:

sessions_send(sessionKey=agent:[requester]:main, message=完成!文件位于 [path])

4. 配置其他代理

将以下内容添加到每个代理的 AGENTS.md 中:

markdown

文件操作 → 文件主控

我不直接访问文件。所有文件操作都通过文件主控进行:

sessions_send(sessionKey=agent:techops:main, message=存储:[详细信息])
sessions_send(sessionKey=agent:techops:main, message=检索:[路径])

NAS 文件夹结构(推荐)

~/
├── _agents/
│ ├── coordinator/ # 协调员文件
│ │ ├── journal/ # 每日日志
│ │ └── tracking/ # 任务跟踪
│ ├── techops/ # 技术文档、脚本
│ │ ├── scripts/
│ │ └── configs/
│ ├── finance/ # 财务
│ │ ├── invoices/
│ │ ├── contracts/
│ │ └── reports/
│ ├── sales/ # 销售
│ │ ├── leads/
│ │ └── proposals/
│ └── [your-agent]/ # 每个代理的存储
├── _shared/
│ ├── config/ # 共享配置
│ │ └── agent-directory.json
│ └── templates/ # 共享模板
└── _backups/
└── memory/ # 内存文件备份

通过 VPN/Tailnet 进行 SSH(推荐)

bash

通过安全隧道 IP 连接(例如 WireGuard、ZeroTier 或类似工具)


SSH_HOST=user@10.x.x.x # 您的 VPN/Tailnet IP

测试连接

ssh $SSH_HOST echo NAS 已连接!

安全性

  • - ✅ 基于 SSH 密钥认证(配置中无密码)
  • ✅ VPN/Tailnet 用于加密隧道(无需端口转发)
  • ✅ 文件主控模式将 SSH 访问限制为一个代理
  • ✅ 其他代理永远不会获得 SSH 凭据
  • ❌ 切勿在代理的 SOUL.md 或内存文件中存储 SSH 密钥

为什么采用文件主控模式?

  1. 1. 安全性:只有一个代理拥有 NAS 凭据
  2. 一致性:文件位置的单一事实来源
  3. 审计追踪:所有文件操作通过一个代理记录
  4. 简单性:其他代理无需了解 SSH 命令

备份策略

每日备份 Cron(通过 OpenClaw)

设置一个 cron 作业,将代理工作区备份到 NAS:

json5
// Cron 作业配置
{
schedule: { kind: cron, expr: 0 3 *, tz: UTC },
payload: {
kind: agentTurn,
message: 将所有代理工作区备份到 NAS。对每个代理:将工作区 memory/ 文件夹 rsync 到 NAS _agents/{agent}/memory-backup/。报告任何失败。
},
sessionTarget: isolated
}

手动备份命令

bash

备份特定代理

rsync -avz ~/.openclaw/workspace-finance/memory/ user@nas-ip:~/_agents/finance/memory-backup/

备份所有代理(根据您的团队自定义列表)

for agent in coordinator techops finance sales marketing; do rsync -avz ~/.openclaw/workspace-$agent/memory/ user@nas-ip:~/_agents/$agent/memory-backup/ done

故障排除

SSH 连接被拒绝:
→ 检查 VPN/Tailnet 状态 — NAS 是否在线并已连接?
→ 验证 NAS 上 SSH 服务是否运行(Synology:DSM → 控制面板 → 终端和 SNMP)

权限被拒绝:
→ SSH 密钥未添加:ssh-copy-id user@nas-ip
→ NAS 主文件夹未启用(Synology:DSM → 用户 → 高级 → 启用主文件夹服务)

传输缓慢:
→ 使用直接 VPN 连接(非中继)
→ 考虑压缩:rsync -avz --compress

兼容的 NAS 型号

  • - ✅ Synology(任何运行 DSM 7+ 的型号)
  • ✅ QNAP(QTS 5+)
  • ✅ TrueNAS / FreeNAS
  • ✅ 任何支持 SSH 访问的 Linux 服务器
  • ✅ 带外部存储的 Raspberry Pi

更新日志

v1.1.0

  • - 移除了所有特定的代理/设置引用
  • 泛化了文件夹结构和示例
  • 添加了带 cron 的备份策略

v1.0.0

  • - 初始发布

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 nas-agent-sync-1776420090 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 nas-agent-sync-1776420090 技能

通过命令行安装

skillhub install nas-agent-sync-1776420090

下载

⬇ 下载 nas-agent-sync v1.1.0(免费)

文件大小: 3.3 KB | 发布时间: 2026-4-17 19:58

v1.1.0 最新 2026-4-17 19:58
SECURITY FIX: Removed all specific agent names and setup details. Fully generalized examples.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部