Agent skill

Duckduckgo Search

by AlexAI-MCP in AlexAI-MCP/hermes-CCC

Free web search via DuckDuckGo - no API key needed. An agent skill from AlexAI-MCP/hermes-CCC.

MITAuto-check passedProductivity & Automation

Install Duckduckgo Search

skills CLI
$ npx skills add AlexAI-MCP/hermes-CCC --skill duckduckgo-search -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install AlexAI-MCP/hermes-CCC duckduckgo-search --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/AlexAI-MCP/hermes-CCC.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/duckduckgo-search .claude/skills/duckduckgo-search && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
duckduckgo-search
GitHub stars
135
Token cost
~1.6k tokens
SKILL.md length
622 words
Files
1
Skills in repo
44
Repo updated
First seen
Licence
MIT

At a glance

Free web search via DuckDuckGo - no API key needed. An agent skill from AlexAI-MCP/hermes-CCC.

  • Works in 5 steps: Run a text search for broad discovery. → Switch to news search for recent… → Use images when you need visual… → …
  • Tasks that involve Web search
  • SKILL.md covers Purpose, Install, Why Use It and Python API, plus 14 more sections
  • Calls pip

What it does

Duckduckgo Search is an agent skill from AlexAI-MCP/hermes-CCC. Free web search via DuckDuckGo - no API key needed. Text, news, images. Use as fallback when other search tools unavailable.

Its SKILL.md is about 1.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Productivity & Automation, covering Web search. It works with Python. The repository describes itself as: Hermes Agent ported to Claude Code Channel — 46 native skills, no OAuth, no external process. The licence is MIT.

When your agent uses it

  • Tasks that involve Web search

Example prompts

  • “/duckduckgo-search”

Requirements

  • Python 3

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Run a text search for broad discovery.
  2. Switch to news search for recent developments.
  3. Use images when you need visual references or diagrams.
  4. Save URLs and summarize locally.
  5. Re-run with a region or time filter when result quality is weak.

What it can do on your machine

Read from SKILL.md and the folder at commit 8107e89. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • pip

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use pip, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Duckduckgo Search loads about 1.6k tokens when it runs. Until then it costs about 36 tokens; SKILL.md has 622 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~36
When it runs · the whole SKILL.md, loaded when a task matches
~1.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from AlexAI-MCP/hermes-CCC at commit 8107e89, republished under its MIT licence (© AlexAI-MCP). 622 words, ~1,563 tokens.

Download SKILL.mdSave it as .claude/skills/duckduckgo-search/SKILL.md (or your agent's skills folder).
name
duckduckgo-search
description
Free web search via DuckDuckGo - no API key needed. Text, news, images. Use as fallback when other search tools unavailable.
version
1.0.0
author
hermes-CCC (ported from Hermes Agent by NousResearch)
license
MIT

Purpose

  • Use this skill for lightweight web search without an API key.
  • It is useful as a fallback when paid search APIs or first-party tools are unavailable.
  • The library supports text, news, and image search.
  • This is a pragmatic option for prototyping, research helpers, and lightweight retrieval.

Install

bash
pip install duckduckgo-search

Why Use It

  • No API key required.
  • Easy Python integration.
  • Useful CLI for quick terminal searches.
  • Supports regions and time filters for fresher results.
  • Good fallback for general web discovery.

Python API

  • The main entry point is the DDGS class.
  • Create a client and call the relevant search method.
  • Iterate the generator or cast results to a list.

Text Search Example

python
from duckduckgo_search import DDGS

with DDGS() as ddgs:
    results = ddgs.text("vector databases for rag", max_results=10)
    for item in results:
        print(item["title"])
        print(item["href"])
        print(item["body"])
        print()
  • text() is the default choice for general web results.
  • Use concise queries first, then refine.
  • Extract only the fields you actually need for downstream processing.

News Search Example

python
from duckduckgo_search import DDGS

with DDGS() as ddgs:
    results = ddgs.news(
        keywords="open source llm releases",
        max_results=10,
        region="us-en",
        timelimit="w",
    )
    for item in results:
        print(item["title"])
        print(item["date"])
        print(item["url"])
  • News search is better than general text search when recency matters.
  • Useful parameters include keywords, max_results, region, and timelimit.
  • Prefer short keyword-focused queries over verbose natural language.

Image Search Example

python
from duckduckgo_search import DDGS

with DDGS() as ddgs:
    results = ddgs.images("server rack diagram", max_results=10)
    for item in results:
        print(item["title"])
        print(item["image"])
  • ddgs.images(keywords, max_results) is the simplest path for image discovery.
  • Verify licensing and usage rights before reuse.
  • Image results are best for inspiration, references, and visual discovery rather than authoritative facts.

CLI Usage

bash
ddgs text -k "query" -m 10
  • text runs a standard web search.
  • -k sets the keywords.
  • -m 10 limits the maximum number of results.
  • This is useful for shell scripts or quick ad hoc research.

CLI Patterns

bash
ddgs text -k "python async queue patterns" -m 10
ddgs news -k "gpu inference news" -m 5
ddgs images -k "er diagram examples" -m 8
  • Use CLI mode when you want zero boilerplate.
  • Use Python mode when you need structured post-processing.

Regions

  • wt-wt for global results
  • us-en for United States English
  • kr-ko for Korea Korean
  • regional values can materially change ranking and language mix

Region examples:

python
results = ddgs.text("open banking regulation", region="wt-wt", max_results=10)
results = ddgs.text("AI policy", region="us-en", max_results=10)
results = ddgs.news("반도체 투자", region="kr-ko", max_results=10)

Time Limits

  • d for day
  • w for week
  • m for month
  • y for year

Use time limits when:

  • tracking current events
  • watching new releases
  • checking recent blog or news coverage
  • reducing stale results

Rate Limiting

  • Do not hammer the service with rapid repeated requests.
  • Add a short sleep between loops or batches.
  • Cache results locally when queries repeat.
  • If you are scraping many queries, batch slowly and keep scope tight.

Simple pattern:

python
import time
from duckduckgo_search import DDGS

queries = ["llm evals", "vector db benchmarks", "open source agents"]

with DDGS() as ddgs:
    for q in queries:
        results = list(ddgs.text(q, max_results=5))
        print(q, len(results))
        time.sleep(2)

Query Strategy

  • Start broad, then narrow.
  • Prefer keywords over long questions.
  • Use quotes only when exact phrase matching matters.
  • Switch to news mode when freshness matters more than general authority.
  • Use the region parameter intentionally rather than leaving locality to chance.
Show full SKILL.md (236 more words)Show less

Fallback Positioning

  • No API key required means this is a practical fallback.
  • It is well suited to a WebSearch fallback path in tools or scripts.
  • When other providers fail, DDG search can still return useful retrieval candidates.
  • It should not be treated as a guaranteed enterprise-grade SLA service.

Practical Research Workflow

  1. Run a text search for broad discovery.
  2. Switch to news search for recent developments.
  3. Use images when you need visual references or diagrams.
  4. Save URLs and summarize locally.
  5. Re-run with a region or time filter when result quality is weak.

Output Handling

  • Normalize fields early because result keys can vary slightly across search modes.
  • Save title, URL, snippet, source, and date when present.
  • Store timestamps when using this for repeated monitoring.
  • Filter duplicates before passing results downstream.

Limitations

  • Search result shape may evolve with library updates.
  • Relevance is not identical to large paid search providers.
  • Image search is discovery-oriented, not rights-cleared asset sourcing.
  • Heavy automation can trigger blocking or degraded responses.

Summary

  • Install with pip install duckduckgo-search.
  • Use the DDGS class for text, news, and image search in Python.
  • Use ddgs text -k "query" -m 10 for terminal-based search.
  • For news, pass keywords, max_results, region, and timelimit.
  • For images, use ddgs.images(keywords, max_results).
  • Common regions include wt-wt, us-en, and kr-ko.
  • Common time limits are d, w, m, and y.
  • Add sleeps between batches and use it as a no-API-key WebSearch fallback.

© AlexAI-MCP, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/duckduckgo-search of AlexAI-MCP/hermes-CCC.

Open the folder on GitHubat commit 8107e89

Compare with similar skills

Duckduckgo Search next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Duckduckgo Search compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Duckduckgo Search this skillAlexAI-MCP/hermes-CCC135—~1.6kAutomated safety check: PassMIT
Discover APIbrightdata/skills264—~2.4kAutomated safety check: PassMIT
Ag2 Use Builtin Toolsag2ai/build-with-ag2252—~1.3kAutomated safety check: PassApache-2.0
Web Accessitwanger/PaiCLI-Python102—~183Automated safety check: PassMIT
Brightdata SDK JSbrightdata/skills264—~3kAutomated safety check: PassMIT
Web Searchfastclaw-ai/fastclaw1.4k—~294Automated safety check: PassCustom licence

Similar skills

  • Discover API

    brightdata/skills

    Use Bright Data's Discover API — intent-ranked, AI-relevance-scored web search at scale (not keyword SERP).

    264 GitHub stars~2.4k tokensUpdated 4 days ago
    Productivity & AutomationAuto-check passed
  • Ag2 Use Builtin Tools

    ag2ai/build-with-ag2

    Wire AG2 beta's shipped tools into an Agent — both provider-native server-side tools (web search, web fetch, code execution, MCP, image generation, memory) and locally-executed common toolkits…

    252 GitHub stars~1.3k tokensUpdated 1 mo ago
    Productivity & AutomationAuto-check passed
  • Web Access

    itwanger/PaiCLI-Python

    A skill your agent uses for live web research, webpage fetching, login-state browsing, dynamic pages, social sites, and tasks that need current internet evidence.

    102 GitHub stars~183 tokensUpdated 2 mo ago
    Productivity & AutomationAuto-check passed
  • Brightdata SDK JS

    brightdata/skills

    Web data extraction and discovery using the Bright Data JavaScript/TypeScript SDK (@brightdata/sdk).

    264 GitHub stars~3k tokensUpdated 4 days ago
    Productivity & AutomationAuto-check passed
  • Web Search

    fastclaw-ai/fastclaw

    Search the web and fetch web pages. An agent skill from fastclaw-ai/fastclaw.

    1.4k GitHub stars~294 tokensUpdated yesterday
    Productivity & AutomationAuto-check passed
  • Duckduckgo Search

    Tommy-yw/RunbookHermes

    Free web search via DuckDuckGo — text, news, images, videos.

    546 GitHub starsUsed in 3 repos~2.1k tokens
    Productivity & AutomationAuto-check passed

More from AlexAI-MCP/hermes-CCC

All 44 skills in this repo
  • GitHub Code Review

    AlexAI-MCP/hermes-CCC

    Review GitHub pull requests with a findings-first engineering mindset.

    135 GitHub stars~1.3k tokensUpdated 6 mo ago
    Auto-check passed
  • GitHub PR Workflow

    AlexAI-MCP/hermes-CCC

    Run a disciplined GitHub pull request workflow from branch creation through merge.

    135 GitHub stars~1.4k tokensUpdated 6 mo ago
    Auto-check passed
  • Hermes Memory

    AlexAI-MCP/hermes-CCC

    Manage durable project memory for Claude Code. An agent skill from AlexAI-MCP/hermes-CCC.

    135 GitHub stars~1.7k tokensUpdated 6 mo ago
    Auto-check passed
  • Hermes Route

    AlexAI-MCP/hermes-CCC

    Route Claude Code work by complexity, risk, and tool needs. An agent skill from AlexAI-MCP/hermes-CCC.

    135 GitHub stars~1.9k tokensUpdated 6 mo ago
    Auto-check passed
  • Hermes Skill

    AlexAI-MCP/hermes-CCC

    Create, improve, inventory, and audit Claude Code skills. An agent skill from AlexAI-MCP/hermes-CCC.

    135 GitHub stars~1.7k tokensUpdated 6 mo ago
    Auto-check passed
  • Hermes Traj

    AlexAI-MCP/hermes-CCC

    Capture Claude Code interaction trajectories in training-friendly formats.

    135 GitHub stars~1.6k tokensUpdated 6 mo ago
    Auto-check passed

Works with

Questions about Duckduckgo Search

What does Duckduckgo Search do?

Free web search via DuckDuckGo - no API key needed. An agent skill from AlexAI-MCP/hermes-CCC. Duckduckgo Search is an agent skill from AlexAI-MCP/hermes-CCC. Free web search via DuckDuckGo - no API key needed.

When should I use Duckduckgo Search?

Duckduckgo Search fits situations like: tasks that involve Web search.

How do I install Duckduckgo Search in Claude Code?

Run `npx skills add AlexAI-MCP/hermes-CCC --skill duckduckgo-search -a claude-code`. Or copy the skill folder (skills/duckduckgo-search in AlexAI-MCP/hermes-CCC) into .claude/skills/duckduckgo-search in your project. Claude Code loads it when a task matches its description.

How do I install Duckduckgo Search in Codex?

Run `npx skills add AlexAI-MCP/hermes-CCC --skill duckduckgo-search -a codex`. Or copy the skill folder (skills/duckduckgo-search in AlexAI-MCP/hermes-CCC) into .agents/skills/duckduckgo-search in your project. Codex loads it when a task matches its description.

Can I use Duckduckgo Search in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add AlexAI-MCP/hermes-CCC --skill duckduckgo-search -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/duckduckgo-search, .gemini/skills/duckduckgo-search, .github/skills/duckduckgo-search and .opencode/skills/duckduckgo-search in your project.

What does Duckduckgo Search need to run?

Going by SKILL.md and its folder, Duckduckgo Search needs the command-line tools its instructions call (pip). Our summary lists: Python 3.

Does Duckduckgo Search access the network?

SKILL.md contains no URLs. Its commands use pip, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Duckduckgo Search safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Duckduckgo Search use?

Duckduckgo Search is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Duckduckgo Search use?

About 1.6k tokens (SKILL.md is roughly 6.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Duckduckgo Search?

Skills that share tags, products or a category with Duckduckgo Search: Discover API (brightdata/skills, 264 stars), Ag2 Use Builtin Tools (ag2ai/build-with-ag2, 252 stars), Web Access (itwanger/PaiCLI-Python, 102 stars) and Brightdata SDK JS (brightdata/skills, 264 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Duckduckgo Search?

AlexAI-MCP (a GitHub user) maintains it in AlexAI-MCP/hermes-CCC, which has 135 GitHub stars. The repository holds 44 skills in this directory. The repository was last updated on April 8, 2026.

Source: AlexAI-MCP/hermes-CCC on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.