← Back to Skills Marketplace
mengbin92

DuckDuckGo Search

by mengbin92 · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
198
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install duckduckgo-search-skill
Description
Search the web and fetch URL content using DuckDuckGo. Use when the user wants to search for information online without requiring API keys or paid services....
README (SKILL.md)

DuckDuckGo Search & Fetch

Search the web and fetch URL content using DuckDuckGo (no API key required).

Prerequisites

需要安装依赖:

pip3 install duckduckgo-search

功能

1. 网页搜索 (ddg_search.py)

python3 scripts/ddg_search.py "your search query" [--max-results 10]

2. 网页抓取 (ddg_fetch.py)

python3 scripts/ddg_fetch.py "https://example.com" [--timeout 30]

Usage Examples

搜索

# Basic search
python3 scripts/ddg_search.py "OpenClaw AI agent"

# Search with more results
python3 scripts/ddg_search.py "Python best practices" --max-results 15

抓取网页

# Fetch a webpage
python3 scripts/ddg_fetch.py "https://openclaw.ai"

# With custom timeout
python3 scripts/ddg_fetch.py "https://example.com" --timeout 15

# Plain text output
python3 scripts/ddg_fetch.py "https://example.com" --format text

Output Format

搜索结果 (JSON)

{
  "query": "search query",
  "count": 10,
  "results": [
    {
      "title": "Result title",
      "url": "https://example.com",
      "snippet": "Description snippet"
    }
  ]
}

抓取结果 (JSON)

{
  "url": "https://example.com",
  "title": "Page Title",
  "text": "Extracted readable content...",
  "description": "Meta description",
  "status_code": 200,
  "error": null
}

Integration with OpenClaw

Example workflow

# Search
result = exec({
    "command": "python3 /path/to/skills/duckduckgo-search/scripts/ddg_search.py query"
})
# Parse: json.loads(result.stdout)

# Fetch URL
result = exec({
    "command": "python3 /path/to/skills/duckduckgo-search/scripts/ddg_fetch.py https://example.com"
})
# Parse: json.loads(result.stdout)
Usage Guidance
This skill appears to implement the advertised search and fetch functionality but has some sloppy documentation and a few security considerations you should weigh before installing: - Missing declared dependency: ddg_search.py has a curl-based fallback (subprocess.run('curl', ...)) but the skill metadata does not declare 'curl' as required. Ensure 'curl' is present if you rely on the fallback or remove that code path. - Extraneous pip instruction: SKILL.md recommends 'pip3 install duckduckgo-search' even though the included scripts don't import that package. That likely harmlessly confuses install steps — you can omit it. - Unrestricted URL fetching (SSRF/privacy risk): ddg_fetch.py will fetch any URL you give it (and the skill could be invoked autonomously). If the agent runs in an environment that can reach internal services or metadata endpoints, this could be abused to access internal resources. Consider restricting allowed hosts, adding allow/deny rules, or running the skill in a sandboxed environment. - Review outputs and network behavior: the scripts only print JSON to stdout (no hidden external endpoints), but verify network traffic from the host when running the skill and consider rate-limiting or timeouts. If you want to proceed: (1) run the scripts in a controlled/sandboxed environment first; (2) update SKILL.md to accurately list requirements (or remove the pip line); and (3) consider adding host whitelisting or checks to prevent accidental fetching of internal IP ranges (e.g., 127.0.0.0/8, 10.0.0.0/8, 169.254.0.0/16, 192.168.0.0/16). If you want, I can produce a patched version of ddg_fetch.py that rejects private IPs and hostnames before fetching.
Capability Assessment
Purpose & Capability
Name/description match the included scripts (search + fetch). However SKILL.md recommends 'pip3 install duckduckgo-search' although the shipped scripts do not import that package, and ddg_search.py includes a curl fallback but the skill declares no required binaries. These are inconsistencies (likely sloppy documentation) rather than proof of malicious intent.
Instruction Scope
Runtime instructions ask the agent to execute the included scripts to fetch arbitrary web pages and search results. The scripts will make outbound HTTP requests to arbitrary URLs (user-supplied). There is no sandboxing, host restriction, or explicit warning about fetching internal/localhost addresses — this allows SSRF-like access to internal network resources if the agent runs in an environment with internal connectivity. The instructions don't read local files or environment variables, which is good, but the unrestricted fetching behavior is a meaningful security surface.
Install Mechanism
There is no formal install spec (instruction-only skill), so nothing will be written to disk by the registry. SKILL.md suggests running 'pip3 install duckduckgo-search' but the provided code does not depend on that package. This is a documentation inconsistency rather than a high-risk installer. No downloads from arbitrary URLs or archive extraction are present.
Credentials
The skill declares no environment variables, no credentials, and the scripts do not read env vars or config paths. That is proportionate to the stated purpose (search + fetch).
Persistence & Privilege
The skill is not marked always:true and uses normal autonomous invocation defaults. It does not request persistent system-wide privileges or modify other skills' configs as part of installation.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install duckduckgo-search-skill
  3. After installation, invoke the skill by name or use /duckduckgo-search-skill
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Web search and URL fetch using DuckDuckGo without API key
Metadata
Slug duckduckgo-search-skill
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is DuckDuckGo Search?

Search the web and fetch URL content using DuckDuckGo. Use when the user wants to search for information online without requiring API keys or paid services.... It is an AI Agent Skill for Claude Code / OpenClaw, with 198 downloads so far.

How do I install DuckDuckGo Search?

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

Is DuckDuckGo Search free?

Yes, DuckDuckGo Search is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does DuckDuckGo Search support?

DuckDuckGo Search is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created DuckDuckGo Search?

It is built and maintained by mengbin92 (@mengbin92); the current version is v1.0.0.

💬 Comments