{
  "schemaVersion": "1.0",
  "item": {
    "slug": "claude-connect",
    "name": "Claude Connect",
    "source": "tencent",
    "type": "skill",
    "category": "通讯协作",
    "sourceUrl": "https://clawhub.ai/TunaIssaCoding/claude-connect",
    "canonicalUrl": "https://clawhub.ai/TunaIssaCoding/claude-connect",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/claude-connect",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=claude-connect",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "AUTO-DETECTION-FLOW.md",
      "CHANGELOG.md",
      "CHANGES.md",
      "COMPLETION-REPORT.md",
      "DELIVERABLES.txt",
      "DETECTION-EXAMPLES.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-23T16:43:11.935Z",
      "expiresAt": "2026-04-30T16:43:11.935Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
        "contentDisposition": "attachment; filename=\"4claw-imageboard-1.0.1.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/claude-connect"
    },
    "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/claude-connect",
    "agentPageUrl": "https://openagent3.xyz/skills/claude-connect/agent",
    "manifestUrl": "https://openagent3.xyz/skills/claude-connect/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/claude-connect/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": "claude-connect",
        "body": "Connect your Claude subscription to Clawdbot in one step.\n\nAutomatically:\n\n✅ Reads Claude OAuth tokens from Keychain\n✅ Writes them to Clawdbot in proper OAuth format\n✅ Auto-refreshes every 2 hours (before expiry)\n✅ Notifies you on success/failure\n✅ Works with clawdbot onboard (fixes OAuth auth-profiles bug)"
      },
      {
        "title": "Quick Start",
        "body": "1. Install the skill:\n\nclawdhub install claude-connect\ncd ~/clawd/skills/claude-connect\n\n2. Ensure Claude CLI is logged in:\n\nclaude auth\n# Follow the browser login flow\n\n3. Run installer:\n\n./install.sh\n\nThat's it! Tokens will refresh automatically every 2 hours."
      },
      {
        "title": "Fixes clawdbot onboard OAuth Bug",
        "body": "When you run clawdbot onboard --auth-choice claude-cli, it sometimes doesn't properly write OAuth tokens to auth-profiles.json.\n\nThis skill:\n\nReads OAuth tokens from macOS Keychain (where Claude CLI stores them)\nWrites them to ~/.clawdbot/agents/main/agent/auth-profiles.json in proper OAuth format:\n{\n  \"profiles\": {\n    \"anthropic:claude-cli\": {\n      \"type\": \"oauth\",\n      \"provider\": \"anthropic\",\n      \"access\": \"sk-ant-...\",\n      \"refresh\": \"sk-ant-ort...\",\n      \"expires\": 1234567890\n    }\n  }\n}\n\n\nSets up auto-refresh (runs every 2 hours via launchd)\nKeeps your connection alive 24/7"
      },
      {
        "title": "Automatic (Recommended)",
        "body": "cd ~/clawd/skills/claude-connect\n./install.sh\n\nThe installer will:\n\n✅ Verify Claude CLI is set up\n✅ Create config file\n✅ Set up auto-refresh job (launchd)\n✅ Run first refresh to test"
      },
      {
        "title": "Manual",
        "body": "Copy example config:\ncp claude-oauth-refresh-config.example.json claude-oauth-refresh-config.json\n\n\n\nEdit config (optional):\nnano claude-oauth-refresh-config.json\n\n\n\nTest refresh:\n./refresh-token.sh --force\n\n\n\nInstall launchd job (optional - for auto-refresh):\ncp com.clawdbot.claude-oauth-refresher.plist ~/Library/LaunchAgents/\nlaunchctl load ~/Library/LaunchAgents/com.clawdbot.claude-oauth-refresher.plist"
      },
      {
        "title": "Configuration",
        "body": "Edit claude-oauth-refresh-config.json:\n\n{\n  \"refresh_buffer_minutes\": 30,\n  \"log_file\": \"~/clawd/logs/claude-oauth-refresh.log\",\n  \"notifications\": {\n    \"on_success\": true,\n    \"on_failure\": true\n  },\n  \"notification_target\": \"YOUR_CHAT_ID\"\n}\n\nOptions:\n\nrefresh_buffer_minutes: Refresh when token has this many minutes left (default: 30)\nlog_file: Where to log refresh activity\nnotifications.on_success: Notify on successful refresh (default: true)\nnotifications.on_failure: Notify on failure (default: true)\nnotification_target: Your Telegram chat ID (or leave empty to disable)"
      },
      {
        "title": "Manual Refresh",
        "body": "# Refresh now (even if not expired)\n./refresh-token.sh --force\n\n# Refresh only if needed\n./refresh-token.sh"
      },
      {
        "title": "Check Status",
        "body": "# View recent logs\ntail ~/clawd/logs/claude-oauth-refresh.log\n\n# Check auth profile\ncat ~/.clawdbot/agents/main/agent/auth-profiles.json | jq '.profiles.\"anthropic:claude-cli\"'\n\n# Check Clawdbot status\nclawdbot models status"
      },
      {
        "title": "Disable Notifications",
        "body": "Ask Clawdbot:\n\nDisable Claude refresh success notifications\n\nOr edit config:\n\n{\n  \"notifications\": {\n    \"on_success\": false,\n    \"on_failure\": true\n  }\n}"
      },
      {
        "title": "Refresh Process",
        "body": "Read from Keychain: Gets OAuth tokens from Claude Code-credentials\nCheck Expiry: Only refreshes if < 30 minutes left (or --force)\nCall OAuth API: Gets new access + refresh tokens\nUpdate auth-profiles.json: Writes proper OAuth format\nUpdate Keychain: Syncs new tokens back\nRestart Gateway: Picks up new tokens\nNotify: Sends success/failure message (optional)"
      },
      {
        "title": "Auto-Refresh (launchd)",
        "body": "Runs every 2 hours via ~/Library/LaunchAgents/com.clawdbot.claude-oauth-refresher.plist\n\nControls:\n\n# Stop auto-refresh\nlaunchctl unload ~/Library/LaunchAgents/com.clawdbot.claude-oauth-refresher.plist\n\n# Start auto-refresh\nlaunchctl load ~/Library/LaunchAgents/com.clawdbot.claude-oauth-refresher.plist\n\n# Check if running\nlaunchctl list | grep claude"
      },
      {
        "title": "OAuth not working after onboard",
        "body": "Symptom: clawdbot onboard --auth-choice claude-cli completes but Clawdbot can't use tokens\n\nFix:\n\ncd ~/clawd/skills/claude-connect\n./refresh-token.sh --force\n\nThis will write tokens in proper OAuth format."
      },
      {
        "title": "Tokens keep expiring",
        "body": "Symptom: Auth keeps failing after 8 hours\n\nFix: Ensure launchd job is running:\n\nlaunchctl load ~/Library/LaunchAgents/com.clawdbot.claude-oauth-refresher.plist\nlaunchctl list | grep claude"
      },
      {
        "title": "No tokens in Keychain",
        "body": "Symptom: No 'Claude Code-credentials' entries found\n\nFix: Log in with Claude CLI:\n\nclaude auth\n# Follow browser flow\n\nThen run refresh again:\n\n./refresh-token.sh --force"
      },
      {
        "title": "Uninstall",
        "body": "cd ~/clawd/skills/claude-connect\n./uninstall.sh\n\nOr manually:\n\n# Stop auto-refresh\nlaunchctl unload ~/Library/LaunchAgents/com.clawdbot.claude-oauth-refresher.plist\nrm ~/Library/LaunchAgents/com.clawdbot.claude-oauth-refresher.plist\n\n# Remove skill\nrm -rf ~/clawd/skills/claude-connect"
      },
      {
        "title": "Upgrade",
        "body": "If you previously installed an older version:\n\ncd ~/clawd/skills/claude-connect\n./validate-update.sh  # Check what changed\nclawdhub update claude-connect  # Update to latest\n./install.sh  # Re-run installer if needed"
      },
      {
        "title": "See Also",
        "body": "QUICKSTART.md - 60-second setup guide\nUPGRADE.md - Upgrading from older versions\nClawdbot docs - Model authentication\n\nVersion: 1.1.0\nAuthor: TunaIssaCoding\nLicense: MIT\nRepo: https://github.com/TunaIssaCoding/claude-connect"
      }
    ],
    "body": "claude-connect\n\nConnect your Claude subscription to Clawdbot in one step.\n\nAutomatically:\n\n✅ Reads Claude OAuth tokens from Keychain\n✅ Writes them to Clawdbot in proper OAuth format\n✅ Auto-refreshes every 2 hours (before expiry)\n✅ Notifies you on success/failure\n✅ Works with clawdbot onboard (fixes OAuth auth-profiles bug)\nQuick Start\n\n1. Install the skill:\n\nclawdhub install claude-connect\ncd ~/clawd/skills/claude-connect\n\n\n2. Ensure Claude CLI is logged in:\n\nclaude auth\n# Follow the browser login flow\n\n\n3. Run installer:\n\n./install.sh\n\n\nThat's it! Tokens will refresh automatically every 2 hours.\n\nWhat It Does\nFixes clawdbot onboard OAuth Bug\n\nWhen you run clawdbot onboard --auth-choice claude-cli, it sometimes doesn't properly write OAuth tokens to auth-profiles.json.\n\nThis skill:\n\nReads OAuth tokens from macOS Keychain (where Claude CLI stores them)\nWrites them to ~/.clawdbot/agents/main/agent/auth-profiles.json in proper OAuth format:\n{\n  \"profiles\": {\n    \"anthropic:claude-cli\": {\n      \"type\": \"oauth\",\n      \"provider\": \"anthropic\",\n      \"access\": \"sk-ant-...\",\n      \"refresh\": \"sk-ant-ort...\",\n      \"expires\": 1234567890\n    }\n  }\n}\n\nSets up auto-refresh (runs every 2 hours via launchd)\nKeeps your connection alive 24/7\nInstallation\nAutomatic (Recommended)\ncd ~/clawd/skills/claude-connect\n./install.sh\n\n\nThe installer will:\n\n✅ Verify Claude CLI is set up\n✅ Create config file\n✅ Set up auto-refresh job (launchd)\n✅ Run first refresh to test\nManual\n\nCopy example config:\n\ncp claude-oauth-refresh-config.example.json claude-oauth-refresh-config.json\n\n\nEdit config (optional):\n\nnano claude-oauth-refresh-config.json\n\n\nTest refresh:\n\n./refresh-token.sh --force\n\n\nInstall launchd job (optional - for auto-refresh):\n\ncp com.clawdbot.claude-oauth-refresher.plist ~/Library/LaunchAgents/\nlaunchctl load ~/Library/LaunchAgents/com.clawdbot.claude-oauth-refresher.plist\n\nConfiguration\n\nEdit claude-oauth-refresh-config.json:\n\n{\n  \"refresh_buffer_minutes\": 30,\n  \"log_file\": \"~/clawd/logs/claude-oauth-refresh.log\",\n  \"notifications\": {\n    \"on_success\": true,\n    \"on_failure\": true\n  },\n  \"notification_target\": \"YOUR_CHAT_ID\"\n}\n\n\nOptions:\n\nrefresh_buffer_minutes: Refresh when token has this many minutes left (default: 30)\nlog_file: Where to log refresh activity\nnotifications.on_success: Notify on successful refresh (default: true)\nnotifications.on_failure: Notify on failure (default: true)\nnotification_target: Your Telegram chat ID (or leave empty to disable)\nUsage\nManual Refresh\n# Refresh now (even if not expired)\n./refresh-token.sh --force\n\n# Refresh only if needed\n./refresh-token.sh\n\nCheck Status\n# View recent logs\ntail ~/clawd/logs/claude-oauth-refresh.log\n\n# Check auth profile\ncat ~/.clawdbot/agents/main/agent/auth-profiles.json | jq '.profiles.\"anthropic:claude-cli\"'\n\n# Check Clawdbot status\nclawdbot models status\n\nDisable Notifications\n\nAsk Clawdbot:\n\nDisable Claude refresh success notifications\n\n\nOr edit config:\n\n{\n  \"notifications\": {\n    \"on_success\": false,\n    \"on_failure\": true\n  }\n}\n\nHow It Works\nRefresh Process\nRead from Keychain: Gets OAuth tokens from Claude Code-credentials\nCheck Expiry: Only refreshes if < 30 minutes left (or --force)\nCall OAuth API: Gets new access + refresh tokens\nUpdate auth-profiles.json: Writes proper OAuth format\nUpdate Keychain: Syncs new tokens back\nRestart Gateway: Picks up new tokens\nNotify: Sends success/failure message (optional)\nAuto-Refresh (launchd)\n\nRuns every 2 hours via ~/Library/LaunchAgents/com.clawdbot.claude-oauth-refresher.plist\n\nControls:\n\n# Stop auto-refresh\nlaunchctl unload ~/Library/LaunchAgents/com.clawdbot.claude-oauth-refresher.plist\n\n# Start auto-refresh\nlaunchctl load ~/Library/LaunchAgents/com.clawdbot.claude-oauth-refresher.plist\n\n# Check if running\nlaunchctl list | grep claude\n\nTroubleshooting\nOAuth not working after onboard\n\nSymptom: clawdbot onboard --auth-choice claude-cli completes but Clawdbot can't use tokens\n\nFix:\n\ncd ~/clawd/skills/claude-connect\n./refresh-token.sh --force\n\n\nThis will write tokens in proper OAuth format.\n\nTokens keep expiring\n\nSymptom: Auth keeps failing after 8 hours\n\nFix: Ensure launchd job is running:\n\nlaunchctl load ~/Library/LaunchAgents/com.clawdbot.claude-oauth-refresher.plist\nlaunchctl list | grep claude\n\nNo tokens in Keychain\n\nSymptom: No 'Claude Code-credentials' entries found\n\nFix: Log in with Claude CLI:\n\nclaude auth\n# Follow browser flow\n\n\nThen run refresh again:\n\n./refresh-token.sh --force\n\nUninstall\ncd ~/clawd/skills/claude-connect\n./uninstall.sh\n\n\nOr manually:\n\n# Stop auto-refresh\nlaunchctl unload ~/Library/LaunchAgents/com.clawdbot.claude-oauth-refresher.plist\nrm ~/Library/LaunchAgents/com.clawdbot.claude-oauth-refresher.plist\n\n# Remove skill\nrm -rf ~/clawd/skills/claude-connect\n\nUpgrade\n\nIf you previously installed an older version:\n\ncd ~/clawd/skills/claude-connect\n./validate-update.sh  # Check what changed\nclawdhub update claude-connect  # Update to latest\n./install.sh  # Re-run installer if needed\n\nSee Also\nQUICKSTART.md - 60-second setup guide\nUPGRADE.md - Upgrading from older versions\nClawdbot docs - Model authentication\n\nVersion: 1.1.0\nAuthor: TunaIssaCoding\nLicense: MIT\nRepo: https://github.com/TunaIssaCoding/claude-connect"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/TunaIssaCoding/claude-connect",
    "publisherUrl": "https://clawhub.ai/TunaIssaCoding/claude-connect",
    "owner": "TunaIssaCoding",
    "version": "1.1.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/claude-connect",
    "downloadUrl": "https://openagent3.xyz/downloads/claude-connect",
    "agentUrl": "https://openagent3.xyz/skills/claude-connect/agent",
    "manifestUrl": "https://openagent3.xyz/skills/claude-connect/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/claude-connect/agent.md"
  }
}