duckduckgo-search

Search DuckDuckGo for text, news, images, and videos via ddgs CLI.

Updated Apr 9, 2026
One-click install
npx skills add https://github.com/MarbleSodas/Mavis --skill duckduckgo-search-marblesodas
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: duckduckgo-search
Source: https://github.com/MarbleSodas/Mavis/tree/main/optional-skills/research/duckduckgo-search
Command: npx skills add https://github.com/MarbleSodas/Mavis --skill duckduckgo-search-marblesodas

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires ddgs, and includes scripts (resource) components.

What problem does it solve?

It solves the need to perform free, practical web searches and quickly narrow down relevant sources when you don’t have (or don’t want to use) a paid search API.

Core Features & Use Cases

  • CLI-first DuckDuckGo search: Runs the ddgs command for text, news, images, and videos, minimizing assumptions about Python packages inside different runtimes.
  • Python search with verification: Uses the Python DDGS interface only after confirming the package is available in the target runtime.
  • Search-then-extract workflow: Uses search results (titles/URLs/snippets) as a starting point, then applies separate extraction tools to retrieve full page content.

Quick Start

Use ddgs to search DuckDuckGo text results for "fastapi deployment guide" and return the top 3 links.

Frequently Asked Questions about duckduckgo-search

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I search the web with DuckDuckGo without an API key?

You can search the web with DuckDuckGo without an API key by using the ddgs CLI command or the Python DDGS interface, which returns titles, URLs, and snippets for text, news, images, and videos.

Can I use the ddgs CLI for DuckDuckGo news and image searches?

Yes, the ddgs CLI supports DuckDuckGo searches for text, news, images, and videos. It is the preferred method for minimizing assumptions about Python package availability in different runtimes.

How do I extract full page content from DuckDuckGo search results?

DuckDuckGo search results provide titles, URLs, and snippets as a starting point. You extract full page content by passing these source URLs to separate extraction tools in a search-then-extract workflow.

Do I need to install the ddgs Python package before running DuckDuckGo searches?

You must verify the ddgs package is installed in your chosen runtime before using the Python DDGS API. The Skill prefers running the ddgs CLI first to avoid runtime dependency issues.

What is the best free web search tool for source discovery and research?

Free web search tools like ddgs enable source discovery by querying DuckDuckGo for titles, URLs, and snippets without paid API keys, supporting research workflows where you narrow down relevant sources before extracting content.

Why does my DuckDuckGo Python search return empty results?

DuckDuckGo searches may return empty results if the ddgs package is not installed in the runtime. You must verify the package availability first, or use the ddgs CLI command to execute queries reliably.