← Back to Skills Marketplace
white0dew

Doge Oss Upload

by 青玉白露 · GitHub ↗ · v0.1.0
cross-platform ⚠ suspicious
316
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install doge-oss-skill
Description
Upload a local file to DogeCloud OSS (DogeCloud 对象存储) and return a public URL + metadata. Use when the user asks to “upload to doge/dogecloud”, “生成公网链接”, “把截...
README (SKILL.md)

Doge Upload Public Info

Use the bundled uploader script to upload a local file with DogeCloud temporary credentials and print machine-readable public access info.

Read references/dogecloud-oss.md when API details are needed.

Quick Start

  1. Export environment variables (camelCase or DOGECLOUD_* both supported):
    • accessKey / DOGECLOUD_ACCESS_KEY
    • secretKey / DOGECLOUD_SECRET_KEY
    • bucket / DOGECLOUD_BUCKET (bucket name or s3Bucket)
    • endpoint / DOGECLOUD_ENDPOINT
    • publicBaseUrl / DOGECLOUD_PUBLIC_BASE_URL
    • prefix / DOGECLOUD_PREFIX
  2. Install dependencies:
python3 -m pip install -U boto3 requests
  1. Run:
python3 scripts/doge_upload_public_info.py ./local/file.jpg

Workflow

  1. Resolve bucket from env/CLI (support bucket name or s3Bucket).
  2. Resolve upload key from --key, otherwise use prefix/\x3Clocal-filename>.
  3. Request temporary credentials from /auth/tmp_token.json using scoped permissions.
  4. Upload file with Boto3 S3 client and returned s3Bucket + s3Endpoint.
  5. Return JSON with upload metadata and public URL candidates.

Output Contract

Return a JSON object with:

  • bucket, s3_bucket, s3_endpoint, object_key
  • file metadata (path, size_bytes, md5)
  • tmp_token metadata (channel, expired_at)
  • public_info:
    • primary_url
    • candidates (custom domain, derived test domain, and S3 endpoint style candidate)
    • notes

Guardrails

  • Keep permanent AccessKey/SecretKey on server side only.
  • Default to OSS_UPLOAD for least privilege; use OSS_FULL only when explicitly required.
  • If required env vars are missing, fail fast and print a clear reminder listing all missing keys.
  • Warn that test domains ending with .oss.dogecdn.com can expire (commonly after 30 days).
  • Prefer --public-base-url when the user requests a production-ready public URL.

Resources

scripts/

  • scripts/doge_upload_public_info.py: upload and public-info extractor CLI.

references/

  • references/dogecloud-oss.md: minimal API notes and URL caveats from official docs.
Usage Guidance
This appears to be a genuine DogeCloud OSS uploader script, but the package metadata incorrectly omits the env vars and credentials it needs. Before installing or running: (1) review the bundled script yourself (it’s included) and confirm the DogeCloud API host (https://api.dogecloud.com) is correct for your use; (2) do not hand over high-privilege or long-lived keys—create a limited-scope key or use the script’s temporary-token (OSS_UPLOAD) flow with short TTLs; (3) prefer setting only minimally-scoped credentials in a safe environment (server-side if possible) rather than exposing them to an automated agent you don’t fully control; (4) if you plan to let the agent invoke the skill autonomously, be explicit about which credentials will be available to it and consider removing permanent keys from the agent environment; (5) ask the skill author/maintainer to fix the registry metadata to declare required env vars so packaging and permissions are transparent.
Capability Analysis
Type: OpenClaw Skill Name: doge-oss-skill Version: 0.1.0 The skill is designed to upload a local file to DogeCloud OSS. It uses standard Python libraries (boto3, requests) and interacts with the legitimate DogeCloud API (api.dogecloud.com). The script follows good security practices by requesting temporary, scoped credentials for the upload and validating the S3 endpoint. While it reads sensitive API keys from environment variables, this is a standard and expected practice for cloud interaction scripts, and there is no evidence of these keys being exfiltrated or used for any purpose other than interacting with DogeCloud. No malicious execution, persistence mechanisms, or prompt injection attempts were found in any files.
Capability Assessment
Purpose & Capability
The skill's stated purpose (upload a local file to DogeCloud OSS) matches the included script and instructions: the script calls DogeCloud APIs and uploads via a temporary S3-style token. However the registry metadata claims "Required env vars: none" and "Primary credential: none" while SKILL.md, README, and the script require several environment variables (accessKey/secretKey/bucket/endpoint/prefix/publicBaseUrl). That mismatch is an incoherence in packaging/metadata.
Instruction Scope
Runtime instructions are narrowly scoped to uploading a local file: they read a local file, call DogeCloud API endpoints (https://api.dogecloud.com/*) to list buckets and request a temporary token, and then upload via boto3 to the returned s3Endpoint. The SKILL.md and script do not attempt to read unrelated system files or call unrelated external endpoints.
Install Mechanism
There is no install spec (instruction-only skill plus a bundled Python script). The SKILL.md instructs installing Python deps with pip (boto3, requests) which is common and expected. Because the package includes an executable script that will be run locally, confirm you trust this specific script before running pip and executing it, but the install mechanism itself is standard and not using arbitrary download URLs.
Credentials
The credentials and env vars the script requires (accessKey/secretKey/DOGECLOUD_BUCKET/ENDPOINT/PREFIX/ PUBLIC_BASE_URL) are appropriate for uploading to DogeCloud, but the package metadata does not declare them. That omission is problematic because a user or automated system might not realize they will need to provide secrets. Also be careful: the script encourages using permanent AccessKey/SecretKey server-side, but running this locally (or handing these to an agent) will expose permanent credentials unless you follow the temporary-token flow; prefer least-privilege keys and short TTLs.
Persistence & Privilege
The skill does not request permanent platform presence (always:false) and does not modify other skills or global agent settings. It will run as invoked and can be invoked autonomously (default), which is expected for skills; no extra privileges are requested.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install doge-oss-skill
  3. After installation, invoke the skill by name or use /doge-oss-skill
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v0.1.0
- Initial release of the doge-oss-upload skill: easily upload local files to DogeCloud OSS and retrieve a public URL plus metadata. - Supports both camelCase and DOGECLOUD_* environment variables for credentials and configuration. - Provides a command-line uploader script with machine-readable JSON output including public URL, upload metadata, and token info. - Includes clear guardrails for credentials and URL usage to ensure security and proper environment setup. - Offers quick-start instructions, workflow description, and references for API details.
Metadata
Slug doge-oss-skill
Version 0.1.0
License
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is Doge Oss Upload?

Upload a local file to DogeCloud OSS (DogeCloud 对象存储) and return a public URL + metadata. Use when the user asks to “upload to doge/dogecloud”, “生成公网链接”, “把截... It is an AI Agent Skill for Claude Code / OpenClaw, with 316 downloads so far.

How do I install Doge Oss Upload?

Run "/install doge-oss-skill" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Doge Oss Upload free?

Yes, Doge Oss Upload is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Doge Oss Upload support?

Doge Oss Upload is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Doge Oss Upload?

It is built and maintained by 青玉白露 (@white0dew); the current version is v0.1.0.

💬 Comments