{
  "schemaVersion": "1.0",
  "item": {
    "slug": "xferops-gog",
    "name": "XferOps gog",
    "source": "tencent",
    "type": "skill",
    "category": "效率提升",
    "sourceUrl": "https://clawhub.ai/parker-xferops/xferops-gog",
    "canonicalUrl": "https://clawhub.ai/parker-xferops/xferops-gog",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/xferops-gog",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=xferops-gog",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md"
    ],
    "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. 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. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/xferops-gog"
    },
    "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/xferops-gog",
    "agentPageUrl": "https://openagent3.xyz/skills/xferops-gog/agent",
    "manifestUrl": "https://openagent3.xyz/skills/xferops-gog/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/xferops-gog/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. 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. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "gog",
        "body": "Use gog for Gmail/Calendar/Drive/Contacts/Sheets/Docs. Requires OAuth setup.\n\nSetup (once)\n\ngog auth credentials /path/to/client_secret.json\ngog auth add you@gmail.com --services gmail,calendar,drive,contacts,docs,sheets\ngog auth list\n\nCommon commands\n\nGmail search: gog gmail search 'newer_than:7d' --max 10\nGmail messages search (per email, ignores threading): gog gmail messages search \"in:inbox from:ryanair.com\" --max 20 --account you@example.com\nGmail read email body: gog gmail get <MESSAGE_ID> --account you@example.com\n\nGet message ID from search, then use get to fetch full body\nUse --format metadata for just headers, --format raw for raw RFC822\n\n\nGmail attachments: gog gmail attachment <messageId> <attachmentId> --out /path/to/save\nGmail send (plain): gog gmail send --to a@b.com --subject \"Hi\" --body \"Hello\"\nGmail send (multi-line): gog gmail send --to a@b.com --subject \"Hi\" --body-file ./message.txt\nGmail send (stdin): gog gmail send --to a@b.com --subject \"Hi\" --body-file -\nGmail send (HTML): gog gmail send --to a@b.com --subject \"Hi\" --body-html \"<p>Hello</p>\"\nGmail draft: gog gmail drafts create --to a@b.com --subject \"Hi\" --body-file ./message.txt\nGmail send draft: gog gmail drafts send <draftId>\nGmail reply: gog gmail send --to a@b.com --subject \"Re: Hi\" --body \"Reply\" --reply-to-message-id <msgId>\nCalendar list events: gog calendar events <calendarId> --from <iso> --to <iso>\nCalendar create event: gog calendar create <calendarId> --summary \"Title\" --from <iso> --to <iso>\nCalendar create with color: gog calendar create <calendarId> --summary \"Title\" --from <iso> --to <iso> --event-color 7\nCalendar update event: gog calendar update <calendarId> <eventId> --summary \"New Title\" --event-color 4\nCalendar show colors: gog calendar colors\nDrive search: gog drive search \"query\" --max 10\nContacts: gog contacts list --max 20\nSheets get: gog sheets get <sheetId> \"Tab!A1:D10\" --json\nSheets update: gog sheets update <sheetId> \"Tab!A1:B2\" --values-json '[[\"A\",\"B\"],[\"1\",\"2\"]]' --input USER_ENTERED\nSheets append: gog sheets append <sheetId> \"Tab!A:C\" --values-json '[[\"x\",\"y\",\"z\"]]' --insert INSERT_ROWS\nSheets clear: gog sheets clear <sheetId> \"Tab!A2:Z\"\nSheets metadata: gog sheets metadata <sheetId> --json\nDocs export: gog docs export <docId> --format txt --out /tmp/doc.txt\nDocs cat: gog docs cat <docId>\n\nCalendar Colors\n\nUse gog calendar colors to see all available event colors (IDs 1-11)\nAdd colors to events with --event-color <id> flag\nEvent color IDs (from gog calendar colors output):\n\n1: #a4bdfc\n2: #7ae7bf\n3: #dbadff\n4: #ff887c\n5: #fbd75b\n6: #ffb878\n7: #46d6db\n8: #e1e1e1\n9: #5484ed\n10: #51b749\n11: #dc2127\n\nEmail Formatting\n\nPrefer plain text. Use --body-file for multi-paragraph messages (or --body-file - for stdin).\n\n\nSame --body-file pattern works for drafts and replies.\n\n\n--body does not unescape \\n. If you need inline newlines, use a heredoc or $'Line 1\\n\\nLine 2'.\n\n\nUse --body-html only when you need rich formatting.\n\n\nHTML tags: <p> for paragraphs, <br> for line breaks, <strong> for bold, <em> for italic, <a href=\"url\"> for links, <ul>/<li> for lists.\n\n\nExample (plain text via stdin):\ngog gmail send --to recipient@example.com \\\n  --subject \"Meeting Follow-up\" \\\n  --body-file - <<'EOF'\nHi Name,\n\nThanks for meeting today. Next steps:\n- Item one\n- Item two\n\nBest regards,\nYour Name\nEOF\n\n\n\nExample (HTML list):\ngog gmail send --to recipient@example.com \\\n  --subject \"Meeting Follow-up\" \\\n  --body-html \"<p>Hi Name,</p><p>Thanks for meeting today. Here are the next steps:</p><ul><li>Item one</li><li>Item two</li></ul><p>Best regards,<br>Your Name</p>\"\n\nNotes\n\nHeadless/EC2 setup: On headless machines (no TTY), gog needs GOG_KEYRING_PASSWORD set:\n\nAdd to shell profile: export GOG_KEYRING_PASSWORD=your-password\n\n\nAdd to systemd service: Environment=GOG_KEYRING_PASSWORD=your-password\n\n\nOr use file keyring: gog auth keyring file\n\n\nSet GOG_ACCOUNT=you@gmail.com to avoid repeating --account.\n\n\nFor scripting, prefer --json plus --no-input.\n\n\nSheets values can be passed via --values-json (recommended) or as inline rows.\n\n\nDocs supports export/cat/copy. In-place edits require a Docs API client (not in gog).\n\n\nConfirm before sending mail or creating events.\n\n\ngog gmail search returns one row per thread; use gog gmail messages search when you need every individual email returned separately."
      }
    ],
    "body": "gog\n\nUse gog for Gmail/Calendar/Drive/Contacts/Sheets/Docs. Requires OAuth setup.\n\nSetup (once)\n\ngog auth credentials /path/to/client_secret.json\ngog auth add you@gmail.com --services gmail,calendar,drive,contacts,docs,sheets\ngog auth list\n\nCommon commands\n\nGmail search: gog gmail search 'newer_than:7d' --max 10\nGmail messages search (per email, ignores threading): gog gmail messages search \"in:inbox from:ryanair.com\" --max 20 --account you@example.com\nGmail read email body: gog gmail get <MESSAGE_ID> --account you@example.com\nGet message ID from search, then use get to fetch full body\nUse --format metadata for just headers, --format raw for raw RFC822\nGmail attachments: gog gmail attachment <messageId> <attachmentId> --out /path/to/save\nGmail send (plain): gog gmail send --to a@b.com --subject \"Hi\" --body \"Hello\"\nGmail send (multi-line): gog gmail send --to a@b.com --subject \"Hi\" --body-file ./message.txt\nGmail send (stdin): gog gmail send --to a@b.com --subject \"Hi\" --body-file -\nGmail send (HTML): gog gmail send --to a@b.com --subject \"Hi\" --body-html \"<p>Hello</p>\"\nGmail draft: gog gmail drafts create --to a@b.com --subject \"Hi\" --body-file ./message.txt\nGmail send draft: gog gmail drafts send <draftId>\nGmail reply: gog gmail send --to a@b.com --subject \"Re: Hi\" --body \"Reply\" --reply-to-message-id <msgId>\nCalendar list events: gog calendar events <calendarId> --from <iso> --to <iso>\nCalendar create event: gog calendar create <calendarId> --summary \"Title\" --from <iso> --to <iso>\nCalendar create with color: gog calendar create <calendarId> --summary \"Title\" --from <iso> --to <iso> --event-color 7\nCalendar update event: gog calendar update <calendarId> <eventId> --summary \"New Title\" --event-color 4\nCalendar show colors: gog calendar colors\nDrive search: gog drive search \"query\" --max 10\nContacts: gog contacts list --max 20\nSheets get: gog sheets get <sheetId> \"Tab!A1:D10\" --json\nSheets update: gog sheets update <sheetId> \"Tab!A1:B2\" --values-json '[[\"A\",\"B\"],[\"1\",\"2\"]]' --input USER_ENTERED\nSheets append: gog sheets append <sheetId> \"Tab!A:C\" --values-json '[[\"x\",\"y\",\"z\"]]' --insert INSERT_ROWS\nSheets clear: gog sheets clear <sheetId> \"Tab!A2:Z\"\nSheets metadata: gog sheets metadata <sheetId> --json\nDocs export: gog docs export <docId> --format txt --out /tmp/doc.txt\nDocs cat: gog docs cat <docId>\n\nCalendar Colors\n\nUse gog calendar colors to see all available event colors (IDs 1-11)\nAdd colors to events with --event-color <id> flag\nEvent color IDs (from gog calendar colors output):\n1: #a4bdfc\n2: #7ae7bf\n3: #dbadff\n4: #ff887c\n5: #fbd75b\n6: #ffb878\n7: #46d6db\n8: #e1e1e1\n9: #5484ed\n10: #51b749\n11: #dc2127\n\nEmail Formatting\n\nPrefer plain text. Use --body-file for multi-paragraph messages (or --body-file - for stdin).\n\nSame --body-file pattern works for drafts and replies.\n\n--body does not unescape \\n. If you need inline newlines, use a heredoc or $'Line 1\\n\\nLine 2'.\n\nUse --body-html only when you need rich formatting.\n\nHTML tags: <p> for paragraphs, <br> for line breaks, <strong> for bold, <em> for italic, <a href=\"url\"> for links, <ul>/<li> for lists.\n\nExample (plain text via stdin):\n\ngog gmail send --to recipient@example.com \\\n  --subject \"Meeting Follow-up\" \\\n  --body-file - <<'EOF'\nHi Name,\n\nThanks for meeting today. Next steps:\n- Item one\n- Item two\n\nBest regards,\nYour Name\nEOF\n\n\nExample (HTML list):\n\ngog gmail send --to recipient@example.com \\\n  --subject \"Meeting Follow-up\" \\\n  --body-html \"<p>Hi Name,</p><p>Thanks for meeting today. Here are the next steps:</p><ul><li>Item one</li><li>Item two</li></ul><p>Best regards,<br>Your Name</p>\"\n\n\nNotes\n\nHeadless/EC2 setup: On headless machines (no TTY), gog needs GOG_KEYRING_PASSWORD set:\n\nAdd to shell profile: export GOG_KEYRING_PASSWORD=your-password\n\nAdd to systemd service: Environment=GOG_KEYRING_PASSWORD=your-password\n\nOr use file keyring: gog auth keyring file\n\nSet GOG_ACCOUNT=you@gmail.com to avoid repeating --account.\n\nFor scripting, prefer --json plus --no-input.\n\nSheets values can be passed via --values-json (recommended) or as inline rows.\n\nDocs supports export/cat/copy. In-place edits require a Docs API client (not in gog).\n\nConfirm before sending mail or creating events.\n\ngog gmail search returns one row per thread; use gog gmail messages search when you need every individual email returned separately."
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/parker-xferops/xferops-gog",
    "publisherUrl": "https://clawhub.ai/parker-xferops/xferops-gog",
    "owner": "parker-xferops",
    "version": "0.1.1",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/xferops-gog",
    "downloadUrl": "https://openagent3.xyz/downloads/xferops-gog",
    "agentUrl": "https://openagent3.xyz/skills/xferops-gog/agent",
    "manifestUrl": "https://openagent3.xyz/skills/xferops-gog/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/xferops-gog/agent.md"
  }
}