{
  "schemaVersion": "1.0",
  "item": {
    "slug": "secret-portal",
    "name": "Secret Portal",
    "source": "tencent",
    "type": "skill",
    "category": "通讯协作",
    "sourceUrl": "https://clawhub.ai/awlevin/secret-portal",
    "canonicalUrl": "https://clawhub.ai/awlevin/secret-portal",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/secret-portal",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=secret-portal",
    "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/secret-portal"
    },
    "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/secret-portal",
    "agentPageUrl": "https://openagent3.xyz/skills/secret-portal/agent",
    "manifestUrl": "https://openagent3.xyz/skills/secret-portal/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/secret-portal/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": "Secret Portal",
        "body": "Spin up a temporary, one-time-use web UI for securely entering secret keys and environment variables. No secrets ever touch chat history or terminal logs."
      },
      {
        "title": "Quick Start",
        "body": "# Single key with cloudflared tunnel (recommended)\nuv run --with secret-portal secret-portal \\\n  -k API_KEY_NAME \\\n  -f ~/.secrets/target-env-file \\\n  --tunnel cloudflared\n\n# With guided instructions and a link to the key's console\nuv run --with secret-portal secret-portal \\\n  -k OPENAI_API_KEY \\\n  -f ~/.env \\\n  -i '<strong>Get your key:</strong><ol><li>Go to platform.openai.com</li><li>Click API Keys</li><li>Create new key</li></ol>' \\\n  -l \"https://platform.openai.com/api-keys\" \\\n  --link-text \"Open OpenAI dashboard →\" \\\n  --tunnel cloudflared\n\n# Multi-key mode (no -k flag, user enters key names and values)\nuv run --with secret-portal secret-portal \\\n  -f ~/.secrets/keys.env \\\n  --tunnel cloudflared"
      },
      {
        "title": "Options",
        "body": "FlagDescription-k, --keyPre-populate a single key name (user only enters the value)-f, --env-filePath to save secrets to (default: ~/.env)-i, --instructionsHTML instructions shown above the input field-l, --linkURL button for where to get/create the key--link-textLabel for the link button (default: \"Open console →\")--tunnelcloudflared (recommended), ngrok, or none-p, --portPort to bind to (default: random)--timeoutSeconds before auto-shutdown (default: 300)"
      },
      {
        "title": "Tunneling",
        "body": "Use --tunnel cloudflared — it's free, requires no account, has no interstitial pages, provides HTTPS, and auto-downloads the binary if missing.\n\nngrok free tier shows an interstitial warning page that blocks mobile and automated use.\n\nWithout a tunnel, the port must be open in your firewall/security group. The CLI will warn you if it detects the port is unreachable."
      },
      {
        "title": "Security",
        "body": "One-time use: portal expires after a single submission\nToken auth: URL contains a random 32-byte token\nSecret values are never printed to stdout/stderr (enforced by tests)\nEnv file is written with 600 permissions (owner-only)\nSecrets never touch chat history or terminal logs"
      },
      {
        "title": "Source",
        "body": "https://github.com/Olafs-World/secret-portal"
      }
    ],
    "body": "Secret Portal\n\nSpin up a temporary, one-time-use web UI for securely entering secret keys and environment variables. No secrets ever touch chat history or terminal logs.\n\nQuick Start\n# Single key with cloudflared tunnel (recommended)\nuv run --with secret-portal secret-portal \\\n  -k API_KEY_NAME \\\n  -f ~/.secrets/target-env-file \\\n  --tunnel cloudflared\n\n# With guided instructions and a link to the key's console\nuv run --with secret-portal secret-portal \\\n  -k OPENAI_API_KEY \\\n  -f ~/.env \\\n  -i '<strong>Get your key:</strong><ol><li>Go to platform.openai.com</li><li>Click API Keys</li><li>Create new key</li></ol>' \\\n  -l \"https://platform.openai.com/api-keys\" \\\n  --link-text \"Open OpenAI dashboard →\" \\\n  --tunnel cloudflared\n\n# Multi-key mode (no -k flag, user enters key names and values)\nuv run --with secret-portal secret-portal \\\n  -f ~/.secrets/keys.env \\\n  --tunnel cloudflared\n\nOptions\nFlag\tDescription\n-k, --key\tPre-populate a single key name (user only enters the value)\n-f, --env-file\tPath to save secrets to (default: ~/.env)\n-i, --instructions\tHTML instructions shown above the input field\n-l, --link\tURL button for where to get/create the key\n--link-text\tLabel for the link button (default: \"Open console →\")\n--tunnel\tcloudflared (recommended), ngrok, or none\n-p, --port\tPort to bind to (default: random)\n--timeout\tSeconds before auto-shutdown (default: 300)\nTunneling\n\nUse --tunnel cloudflared — it's free, requires no account, has no interstitial pages, provides HTTPS, and auto-downloads the binary if missing.\n\nngrok free tier shows an interstitial warning page that blocks mobile and automated use.\n\nWithout a tunnel, the port must be open in your firewall/security group. The CLI will warn you if it detects the port is unreachable.\n\nSecurity\nOne-time use: portal expires after a single submission\nToken auth: URL contains a random 32-byte token\nSecret values are never printed to stdout/stderr (enforced by tests)\nEnv file is written with 600 permissions (owner-only)\nSecrets never touch chat history or terminal logs\nSource\n\nhttps://github.com/Olafs-World/secret-portal"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/awlevin/secret-portal",
    "publisherUrl": "https://clawhub.ai/awlevin/secret-portal",
    "owner": "awlevin",
    "version": "0.1.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/secret-portal",
    "downloadUrl": "https://openagent3.xyz/downloads/secret-portal",
    "agentUrl": "https://openagent3.xyz/skills/secret-portal/agent",
    "manifestUrl": "https://openagent3.xyz/skills/secret-portal/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/secret-portal/agent.md"
  }
}