cloudsway-search-tob

v1.0.0

Search the web using Cloudsways SmartSearch API. Returns highly relevant results with dynamic summaries, snippets, and optional full-text content. Use when y...

0· 266·0 current·0 all-time
bynodunjj@prismheart
MIT-0
Download zip
LicenseMIT-0 · Free to use, modify, and redistribute. No attribution required.
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Suspicious
medium confidence
!
Purpose & Capability
The skill's name, SKILL.md, and included script all implement a Cloudsways SmartSearch client and legitimately require CLOUDSWAYS_BASE_PATH, CLOUDSWAYS_ENDPOINT, and CLOUDSWAYS_AK plus curl and jq. However, the registry metadata listed 'Required env vars: none' and 'Required binaries: none', which is inconsistent with the shipped instructions and script. The required artifacts themselves are proportionate to the described purpose, but the metadata mismatch is an incoherence to investigate.
Instruction Scope
SKILL.md and scripts/search.sh limit actions to building a GET request to the Cloudsways endpoint, using only the provided JSON input and the three required env vars. The instructions do not ask the agent to read unrelated files, system state, or other credentials, nor to transmit data to unexpected endpoints beyond the documented Cloudsways endpoints.
Install Mechanism
There is no install spec — the skill is instruction-only with an included bash script. Nothing in the bundle downloads or executes third-party code at install time, and the script itself is plain bash using curl and jq already expected on many systems.
Credentials
The three environment variables (base path, endpoint, access key) are appropriate and required for the described API. The concern is the registry metadata failing to declare these requirements; that omission could be a packaging error or a red flag about the publisher's diligence. No unrelated secrets are requested.
Persistence & Privilege
The skill does not request permanent presence (always is false), does not modify agent or system configs, and contains no code that attempts to persist or elevate privileges.
What to consider before installing
This skill's code is a straightforward client for a Cloudsways search API and requires three environment variables (CLOUDSWAYS_BASE_PATH, CLOUDSWAYS_ENDPOINT, CLOUDSWAYS_AK) as well as curl and jq — but the registry metadata does not declare these requirements. Before installing: (1) confirm the publisher/source is trusted (homepage is missing and owner ID is opaque), (2) verify why metadata omits required env vars (ask the publisher or check a trusted registry entry), (3) avoid supplying production credentials — test with a staging endpoint or dummy key, (4) run the script in an isolated environment or container to observe network calls and ensure they go only to the expected Cloudsways host, and (5) if you need stronger assurance, request that the maintainer update the registry metadata to list the required env vars and binaries so the manifest accurately reflects the runtime requirements.

Like a lobster shell, security has layers — review code before you run it.

latestvk97dwbv3mq1wsq80hvn30n2vys81w94y

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

SKILL.md

Cloudsways SmartSearch Skill

Search the web and extract intelligent fragments or full-text content directly into the LLM context.

Authentication

[cite_start]Authentication is handled via the URL endpoint and an Access Key[cite: 3, 5]. You must set the following environment variables before using the script:

export CLOUDSWAYS_BASE_PATH="your-base-path"
export CLOUDSWAYS_ENDPOINT="your-endpoint"
export CLOUDSWAYS_AK="your-access-key"

Quick Start

Using the Script

If you have configured the script locally, you can call it by passing a JSON object:

./scripts/search.sh '<json>'

Examples:

# Basic search
./scripts/search.sh '{"q": "python async patterns"}'

# Search with time filter and pagination
./scripts/search.sh '{"q": "Apple earnings", "freshness": "Week", "count": 20}'

# Deep research (extracts full content and dynamic key fragments)
./scripts/search.sh '{"q": "Agentic AI architecture", "enableContent": true, "mainText": true}'

Basic Search (cURL)

curl -i --location --request GET 'https://{BasePath}/search/{Endpoint}/smart?q=latest+developments+in+quantum+computing&count=5' \
  --header 'Authorization: Bearer {AK}' \
  --header 'pragma: no-cache'

Advanced Search with Full Content (cURL)

curl -i --location --request GET 'https://{BasePath}/search/{Endpoint}/smart?q=machine+learning+best+practices&count=10&enableContent=true&mainText=true' \
  --header 'Authorization: Bearer {AK}' \
  --header 'pragma: no-cache'

API Reference

Endpoint

GET https://{BasePath}/search/{Endpoint}/smart

Headers

HeaderTypeValueDescription
AuthorizationStringBearer {AK}Input value uses your assigned AccessKey.
pragmaStringno-cacheEntering no-cache returns results without caching, making each request independent; omitting this caches results for the same query term for 10 minutes.

Request Parameters

ParameterRequiredTypeDefaultDescription
qYString-User search query term; cannot be empty.
countNShort10Number of search results included. Enum values: 10, 20, 30, 40, 50.
freshnessNStringnullFilter search results by time periods: Day (Past 24 hours), Week, Month.
offsetNShort0Zero-based offset indicating the number of search results to skip. Use with count to paginate.
enableContentNboolfalseControls whether full text (content) extraction is enabled: true or false.
contentTypeNStringTEXTFull text return format. Optional values: HTML, MARKDOWN, TEXT.
contentTimeoutNFloat3.0Full text read timeout. Maximum supported is 10 seconds. For low latency, set to 0.1.
mainTextNboolfalseUsed to return dynamic summary key fragments. Takes effect only when enableContent is true.

Response Format

{
  "queryContext": {
    "originalQuery": "open ai recent news"
  },
  "webPages": {
    "value": [
      {
        "name": "OpenAI just launched ChatGPT-5.1 Pro...",
        "url": "https://www.example.com/page",
        "datePublished": "2025-07-14T01:15:00.0000000Z",
        "snippet": "ChatGPT is looking to compete with Gemini...",
        "mainText": "Now GPT-5.1 Pro takes a lot of these improvements and makes them smarter...",
        "content": "Full extracted body text goes here...",
        "score": 0.8521444
      }
    ]
  }
}

Content Strategy

Understanding which text field to request is critical for token optimization:

FieldLatencyRelevanceDescription
snippetLowestGoodA short text summary describing the webpage content. Best for general queries and fast browsing.
mainTextMediumHighestDynamic summary fragments most relevant to the query term extracted from the body text. Smarter than the snippet.
contentHigherHighWebpage full text information. Best for deep research, but consumes significant context tokens.

Tips:

  • For standard answers, rely on the default snippet.
  • When you need precise, detailed answers without reading the whole page, use enableContent=true and mainText=true.
  • Always set pragma: no-cache if you are querying real-time news or stock updates.

MCP Client Integration (Alternative)

For environments supporting the Model Context Protocol (MCP), configure your MCP Client using streamable_http:

{
  "mcpServers": {
    "smartsearch": {
      "transport": "streamable_http",
      "url": "https://searchmcp.cloudsway.net/search/{YOUR_SMARTSEARCH_ENDPOINT}/smart",
      "headers": {
        "Authorization": "Bearer {YOUR_SMARTSEARCH_AK}"
      }
    }
  }
}

Files

2 total
Select a file
Select a file to preview.

Comments

Loading comments…