{
  "schemaVersion": "1.0",
  "item": {
    "slug": "github-memory-sync",
    "name": "Github Memory Sync",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/davinwang/github-memory-sync",
    "canonicalUrl": "https://clawhub.ai/davinwang/github-memory-sync",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/github-memory-sync",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=github-memory-sync",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "sync.sh",
      "SKILL.md",
      "README.md",
      "LICENSE",
      "clawhub.yaml",
      "cron-backup.sh"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "slug": "github-memory-sync",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-03T19:24:58.791Z",
      "expiresAt": "2026-05-10T19:24:58.791Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=github-memory-sync",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=github-memory-sync",
        "contentDisposition": "attachment; filename=\"github-memory-sync-1.1.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "github-memory-sync"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/github-memory-sync"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/github-memory-sync",
    "agentPageUrl": "https://openagent3.xyz/skills/github-memory-sync/agent",
    "manifestUrl": "https://openagent3.xyz/skills/github-memory-sync/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/github-memory-sync/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "GitHub Memory Sync 技能",
        "body": "📝 将 OpenClaw 的 完整工作空间配置 同步到 GitHub 仓库进行备份和版本控制，支持跨服务器迁移。"
      },
      {
        "title": "核心记忆文件（必须同步）",
        "body": "文件路径说明敏感度SOUL.md/AI 人格定义🔒 高IDENTITY.md/AI 身份定义（名字、emoji 等）🔒 高USER.md/用户信息🔒 高MEMORY.md/长期记忆🔒 高TOOLS.md/工具配置（SSH、摄像头等）🔒 高HEARTBEAT.md/心跳任务配置🟡 中memory/*.mdmemory/日常记忆文件🔒 高"
      },
      {
        "title": "可选配置文件",
        "body": "文件路径说明建议AGENTS.md/工作空间指南✅ 推荐BOOTSTRAP.md/初始化脚本（如有）⚪ 可选skills/skills/自定义技能✅ 推荐avatars/avatars/头像图片⚪ 可选"
      },
      {
        "title": "排除文件（不同步）",
        "body": ".git/ - Git 元数据\nnode_modules/ - 依赖包\n*.log - 日志文件\n*.tmp, *.bak - 临时文件\nsessions/ - 会话数据（可能很大）"
      },
      {
        "title": "功能特性",
        "body": "📤 完整备份 - 将所有记忆和配置文件推送到 GitHub\n📥 一键恢复 - 从 GitHub 拉取配置到新服务器\n📊 查看状态 - 检查本地和远程的差异\n📋 列出文件 - 显示所有同步的文件\n🔧 初始化仓库 - 首次设置 GitHub 仓库连接\n🔄 增量同步 - 只同步变化的文件\n📦 迁移模式 - 支持完整工作空间迁移到新服务器"
      },
      {
        "title": "必需配置",
        "body": "GitHub Token:\n\n需要一个 Personal Access Token\n权限要求：repo（仓库读写权限）\n生成地址：https://github.com/settings/tokens/new\n\nGitHub 仓库:\n\n格式：username/repository-name\n示例：myusername/openclaw-memory-backup\n建议设为 Private（私有仓库），因为 memory 可能包含敏感信息"
      },
      {
        "title": "配置方式",
        "body": "方案 A：使用环境变量（推荐用于测试）\n\nexport GITHUBTOKEN=\"ghp_xxxxxxxxxxxxxxxxx\"\nexport GITHUB_REPO=\"yourusername/your-repo\"\n\n方案 B：配置文件（推荐用于生产）\n\n在 ~/.openclaw/openclaw.json 中添加：\n\n{\n  \"skills\": {\n    \"entries\": {\n      \"github-memory-sync\": {\n        \"enabled\": true,\n        \"apiKey\": \"ghp_xxxxxxxxxxxxxxxxx\",\n        \"env\": {\n          \"GITHUBTOKEN\": \"ghp_xxxxxxxxxxxxxxxxx\",\n          \"GITHUB_REPO\": \"username/memory-backup\",\n          \"GITHUB_BRANCH\": \"main\",\n          \"WORKSPACE_DIR\": \"/root/.openclaw/workspace\"\n        }\n      }\n    }\n  }\n}"
      },
      {
        "title": "首次初始化",
        "body": "用户：\"初始化 GitHub memory 仓库\"\nAI: [获取 Token 和仓库信息后执行初始化]"
      },
      {
        "title": "推送更新（备份）",
        "body": "用户：\"同步到 GitHub\" / \"备份配置\"\nAI: [执行推送操作，同步所有记忆和配置文件]"
      },
      {
        "title": "拉取更新（恢复）",
        "body": "用户：\"从 GitHub 拉取配置\" / \"恢复备份\"\nAI: [执行拉取操作，恢复所有文件]"
      },
      {
        "title": "查看状态",
        "body": "用户：\"检查同步状态\"\nAI: [显示本地和远程的差异]"
      },
      {
        "title": "🚀 服务器迁移（完整流程）",
        "body": "在原服务器上：\n\n用户：\"备份所有配置到 GitHub\"\nAI: [执行完整推送，包括 SOUL.md, IDENTITY.md, USER.md, MEMORY.md, TOOLS.md, memory/* 等]\n\n在新服务器上：\n\n用户：\"从 GitHub 恢复配置\"\nAI: [执行以下步骤]\n1. 克隆 GitHub 仓库到临时目录\n2. 复制所有记忆和配置文件到 workspace\n3. 保留新服务器的通道配置（不覆盖 openclaw.json 中的通道凭证）\n4. 验证文件完整性"
      },
      {
        "title": "部分恢复",
        "body": "用户：\"只恢复 MEMORY.md\"\nAI: [仅拉取指定文件]\n\n用户：\"恢复 memory 目录\"\nAI: [仅拉取 memory/*.md 文件]"
      },
      {
        "title": "安全提醒",
        "body": "⚠️ 重要安全注意事项：\n\nToken 保护\n\n❌ 不要把 Token 发送到任何公开渠道\n❌ 不要在代码中硬编码 Token\n✅ 使用环境变量或配置文件\n✅ 定期轮换 Token\n\n\n\n仓库隐私\n\n🔒 建议将 GitHub 仓库设为 Private（私有）\n👁 memory 可能包含敏感信息\n📝 审查 memory 内容再上传\n\n\n\n权限最小化\n\n只给 Token 必要的权限（repo）\n避免使用具有广泛权限的 Token\n设置 Token 过期时间（不要永不过期）"
      },
      {
        "title": "激活技能",
        "body": "当用户提到以下关键词时激活此技能：\n\n\"GitHub memory\"\n\"同步 memory\"\n\"备份 memory\"\n\"GitHub 备份\"\n\"memory 同步\"\n\"github-memory-sync\""
      },
      {
        "title": "1. 获取配置信息",
        "body": "向用户询问 GitHub Token\n向用户询问 GitHub 仓库地址（或帮其创建）"
      },
      {
        "title": "2. 保存配置",
        "body": "将 Token 和仓库信息保存到配置文件或环境变量\n提醒用户注意安全事项"
      },
      {
        "title": "3. 执行操作",
        "body": "根据用户请求执行 init/push/pull/status/migrate 操作\n显示操作结果"
      },
      {
        "title": "4. 验证同步",
        "body": "推送后验证远程仓库文件完整性\n拉取后验证本地文件完整性"
      },
      {
        "title": "注意事项",
        "body": "首次使用必须先执行 init 初始化\n推送前建议先拉取，避免冲突\n定期检查 Token 是否过期\n建议启用 GitHub 的两因素认证\n通道凭证不同步 - openclaw.json 中的 tokens/secrets 不应上传到 GitHub\n迁移模式 - 使用 migrate 命令可安全恢复到新服务器"
      },
      {
        "title": "相关文件",
        "body": "scripts/sync_to_github.py - 同步脚本\nreferences/migration-guide.md - 完整服务器迁移指南\nreferences/backup-policy.md - 备份策略和安全建议"
      },
      {
        "title": "常用命令",
        "body": "# 初始化（首次使用）\npython scripts/sync_to_github.py init\n\n# 备份\npython scripts/sync_to_github.py push\n\n# 恢复\npython scripts/sync_to_github.py pull\n\n# 查看状态\npython scripts/sync_to_github.py status\n\n# 迁移到新服务器\nBACKUP_DIR=/tmp/openclaw-restore python scripts/sync_to_github.py migrate"
      },
      {
        "title": "对话触发词",
        "body": "\"备份到 GitHub\"\n\"同步配置\"\n\"恢复备份\"\n\"迁移到新服务器\"\n\"检查同步状态\"\n\"github-memory-sync\""
      }
    ],
    "body": "GitHub Memory Sync 技能\n\n📝 将 OpenClaw 的 完整工作空间配置 同步到 GitHub 仓库进行备份和版本控制，支持跨服务器迁移。\n\n同步范围\n核心记忆文件（必须同步）\n文件\t路径\t说明\t敏感度\nSOUL.md\t/\tAI 人格定义\t🔒 高\nIDENTITY.md\t/\tAI 身份定义（名字、emoji 等）\t🔒 高\nUSER.md\t/\t用户信息\t🔒 高\nMEMORY.md\t/\t长期记忆\t🔒 高\nTOOLS.md\t/\t工具配置（SSH、摄像头等）\t🔒 高\nHEARTBEAT.md\t/\t心跳任务配置\t🟡 中\nmemory/*.md\tmemory/\t日常记忆文件\t🔒 高\n可选配置文件\n文件\t路径\t说明\t建议\nAGENTS.md\t/\t工作空间指南\t✅ 推荐\nBOOTSTRAP.md\t/\t初始化脚本（如有）\t⚪ 可选\nskills/\tskills/\t自定义技能\t✅ 推荐\navatars/\tavatars/\t头像图片\t⚪ 可选\n排除文件（不同步）\n.git/ - Git 元数据\nnode_modules/ - 依赖包\n*.log - 日志文件\n*.tmp, *.bak - 临时文件\nsessions/ - 会话数据（可能很大）\n功能特性\n📤 完整备份 - 将所有记忆和配置文件推送到 GitHub\n📥 一键恢复 - 从 GitHub 拉取配置到新服务器\n📊 查看状态 - 检查本地和远程的差异\n📋 列出文件 - 显示所有同步的文件\n🔧 初始化仓库 - 首次设置 GitHub 仓库连接\n🔄 增量同步 - 只同步变化的文件\n📦 迁移模式 - 支持完整工作空间迁移到新服务器\n配置要求\n必需配置\n\nGitHub Token:\n\n需要一个 Personal Access Token\n权限要求：repo（仓库读写权限）\n生成地址：https://github.com/settings/tokens/new\n\nGitHub 仓库:\n\n格式：username/repository-name\n示例：myusername/openclaw-memory-backup\n建议设为 Private（私有仓库），因为 memory 可能包含敏感信息\n配置方式\n方案 A：使用环境变量（推荐用于测试）\nexport GITHUBTOKEN=\"ghp_xxxxxxxxxxxxxxxxx\"\nexport GITHUB_REPO=\"yourusername/your-repo\"\n\n方案 B：配置文件（推荐用于生产）\n\n在 ~/.openclaw/openclaw.json 中添加：\n\n{\n  \"skills\": {\n    \"entries\": {\n      \"github-memory-sync\": {\n        \"enabled\": true,\n        \"apiKey\": \"ghp_xxxxxxxxxxxxxxxxx\",\n        \"env\": {\n          \"GITHUBTOKEN\": \"ghp_xxxxxxxxxxxxxxxxx\",\n          \"GITHUB_REPO\": \"username/memory-backup\",\n          \"GITHUB_BRANCH\": \"main\",\n          \"WORKSPACE_DIR\": \"/root/.openclaw/workspace\"\n        }\n      }\n    }\n  }\n}\n\n使用示例\n首次初始化\n用户：\"初始化 GitHub memory 仓库\"\nAI: [获取 Token 和仓库信息后执行初始化]\n\n推送更新（备份）\n用户：\"同步到 GitHub\" / \"备份配置\"\nAI: [执行推送操作，同步所有记忆和配置文件]\n\n拉取更新（恢复）\n用户：\"从 GitHub 拉取配置\" / \"恢复备份\"\nAI: [执行拉取操作，恢复所有文件]\n\n查看状态\n用户：\"检查同步状态\"\nAI: [显示本地和远程的差异]\n\n🚀 服务器迁移（完整流程）\n\n在原服务器上：\n\n用户：\"备份所有配置到 GitHub\"\nAI: [执行完整推送，包括 SOUL.md, IDENTITY.md, USER.md, MEMORY.md, TOOLS.md, memory/* 等]\n\n\n在新服务器上：\n\n用户：\"从 GitHub 恢复配置\"\nAI: [执行以下步骤]\n1. 克隆 GitHub 仓库到临时目录\n2. 复制所有记忆和配置文件到 workspace\n3. 保留新服务器的通道配置（不覆盖 openclaw.json 中的通道凭证）\n4. 验证文件完整性\n\n部分恢复\n用户：\"只恢复 MEMORY.md\"\nAI: [仅拉取指定文件]\n\n用户：\"恢复 memory 目录\"\nAI: [仅拉取 memory/*.md 文件]\n\n安全提醒\n\n⚠️ 重要安全注意事项：\n\nToken 保护\n\n❌ 不要把 Token 发送到任何公开渠道\n❌ 不要在代码中硬编码 Token\n✅ 使用环境变量或配置文件\n✅ 定期轮换 Token\n\n仓库隐私\n\n🔒 建议将 GitHub 仓库设为 Private（私有）\n👁 memory 可能包含敏感信息\n📝 审查 memory 内容再上传\n\n权限最小化\n\n只给 Token 必要的权限（repo）\n避免使用具有广泛权限的 Token\n设置 Token 过期时间（不要永不过期）\n激活技能\n\n当用户提到以下关键词时激活此技能：\n\n\"GitHub memory\"\n\"同步 memory\"\n\"备份 memory\"\n\"GitHub 备份\"\n\"memory 同步\"\n\"github-memory-sync\"\n配置流程\n1. 获取配置信息\n向用户询问 GitHub Token\n向用户询问 GitHub 仓库地址（或帮其创建）\n2. 保存配置\n将 Token 和仓库信息保存到配置文件或环境变量\n提醒用户注意安全事项\n3. 执行操作\n根据用户请求执行 init/push/pull/status/migrate 操作\n显示操作结果\n4. 验证同步\n推送后验证远程仓库文件完整性\n拉取后验证本地文件完整性\n注意事项\n首次使用必须先执行 init 初始化\n推送前建议先拉取，避免冲突\n定期检查 Token 是否过期\n建议启用 GitHub 的两因素认证\n通道凭证不同步 - openclaw.json 中的 tokens/secrets 不应上传到 GitHub\n迁移模式 - 使用 migrate 命令可安全恢复到新服务器\n相关文件\nscripts/sync_to_github.py - 同步脚本\nreferences/migration-guide.md - 完整服务器迁移指南\nreferences/backup-policy.md - 备份策略和安全建议\n快速参考\n常用命令\n# 初始化（首次使用）\npython scripts/sync_to_github.py init\n\n# 备份\npython scripts/sync_to_github.py push\n\n# 恢复\npython scripts/sync_to_github.py pull\n\n# 查看状态\npython scripts/sync_to_github.py status\n\n# 迁移到新服务器\nBACKUP_DIR=/tmp/openclaw-restore python scripts/sync_to_github.py migrate\n\n对话触发词\n\"备份到 GitHub\"\n\"同步配置\"\n\"恢复备份\"\n\"迁移到新服务器\"\n\"检查同步状态\"\n\"github-memory-sync\""
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/davinwang/github-memory-sync",
    "publisherUrl": "https://clawhub.ai/davinwang/github-memory-sync",
    "owner": "davinwang",
    "version": "1.1.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/github-memory-sync",
    "downloadUrl": "https://openagent3.xyz/downloads/github-memory-sync",
    "agentUrl": "https://openagent3.xyz/skills/github-memory-sync/agent",
    "manifestUrl": "https://openagent3.xyz/skills/github-memory-sync/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/github-memory-sync/agent.md"
  }
}