# anysearch-skill **Repository Path**: devai/anysearch-skill ## Basic Information - **Project Name**: anysearch-skill - **Description**: 面向 AI Agent 的统一实时搜索 Skill 插件,是专为智能体设计的轻量化联网检索工具,用来给 Claude、Cursor、Windsurf、各类自定义 Agent 补齐联网调研能力。 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-29 - **Last Updated**: 2026-06-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # AnySearch Skill [![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) Unified real-time search engine skill for AI agents. Supports general web search, vertical domain search, parallel batch search, and full-page content extraction. ## Download & Install ### For AI Agents If your agent platform supports a skill marketplace/store, search for **anysearch** and install from there. Otherwise, download and install manually: ```bash # Download a pinned release (recommended). Replace v2.1.0 with the latest tag # from https://github.com/anysearch-ai/anysearch-skill/releases curl -L -o anysearch-skill.zip https://github.com/anysearch-ai/anysearch-skill/archive/refs/tags/v2.1.0.zip # or: wget -O anysearch-skill.zip https://github.com/anysearch-ai/anysearch-skill/archive/refs/tags/v2.1.0.zip # (For the latest unreleased changes, use .../archive/refs/heads/main.zip instead.) # Unzip — creates a directory named anysearch-skill-, e.g. anysearch-skill-2.1.0 unzip anysearch-skill.zip # Move it to your agent's skill directory, renaming it to "anysearch". # Adjust the source directory name to match the ref you downloaded. # Claude Code: mv anysearch-skill-2.1.0 ~/.claude/skills/anysearch # OpenCode: mv anysearch-skill-2.1.0 ~/.config/opencode/skills/anysearch # Cursor/Windsurf: mv anysearch-skill-2.1.0 /.skills/anysearch # Generic: mv anysearch-skill-2.1.0 /anysearch # Shared agents: mv anysearch-skill-2.1.0 ~/.agents/skills/anysearch ``` `~/.agents/skills/` is a useful shared install location when multiple AI tools read from the same skill directory, including Codex, Cursor, and OpenClaw personal agent skills. ### For Humans 1. Download the latest release zip: https://github.com/anysearch-ai/anysearch-skill/releases 2. Unzip to your agent's skill directory 3. Configure API key (see below) 4. Run the entry test to verify installation ## API Key Configuration An API key is **optional but strongly recommended**. Without a key, you can still use all search features via anonymous access, but with **lower rate limits and quota**. ### How to configure Copy the example env file and fill in your key: ```bash cp .env.example .env # Edit .env and set: ANYSEARCH_API_KEY= ``` Or set the environment variable directly: ```bash export ANYSEARCH_API_KEY= # Linux/macOS set ANYSEARCH_API_KEY= # Windows CMD $env:ANYSEARCH_API_KEY="" # Windows PowerShell ``` ### Get an API Key Visit https://anysearch.com/console/api-keys to sign up and create a free API key. Key priority order: `--api_key` CLI flag > `.env` file > environment variable > anonymous ## Post-Install Verification After installation, probe the platform and run the entry test: ### Step 1: Detect available runtime Run these checks in order. The first success determines the active CLI: ```bash # Check Python (recommended) python --version # Need >= 3.6, requires `requests` library python3 --version # Need >= 3.6, requires `requests` library # Check Node.js (alternative) node --version # Need >= 12, no external dependencies # Check Shell (fallback) # Windows: PowerShell 5.1+ / Linux/macOS: bash 3.2+ (also requires jq and curl) ``` Priority: **Python > Node.js > Shell** Important: do not assume `python` exists. On many macOS systems, the correct executable is `python3`. Check both `python` and `python3`; if either works, Python is available. ### Step 2: Run entry test (probe all available runtimes) Run the `doc` command with **each available** runtime to verify the skill works, and observe which runs without errors or warnings: ```bash # Python python /scripts/anysearch_cli.py doc # Python 3 fallback (common on macOS) python3 /scripts/anysearch_cli.py doc # Node.js (if available) node /scripts/anysearch_cli.js doc # PowerShell (Windows) powershell -ExecutionPolicy Bypass -File /scripts/anysearch_cli.ps1 doc # Bash (Linux/macOS) bash /scripts/anysearch_cli.sh doc ``` For each runtime, record whether the command succeeded and any errors/warnings encountered. The runtime that completes without errors and produces the cleanest output is the recommended runtime for this environment. ### Step 3: Persist recommended runtime to configuration file Based on the entry test results, write the recommended runtime to `/runtime.conf`: ```bash echo "Runtime: " > /runtime.conf echo "Command: " >> /runtime.conf ``` Example for Python: ```bash echo "Runtime: Python" > /runtime.conf echo "Command: python /scripts/anysearch_cli.py" >> /runtime.conf ``` Example for Python 3: ```bash echo "Runtime: Python" > /runtime.conf echo "Command: python3 /scripts/anysearch_cli.py" >> /runtime.conf ``` Example for Node.js: ```bash echo "Runtime: Node.js" > /runtime.conf echo "Command: node /scripts/anysearch_cli.js" >> /runtime.conf ``` Example for PowerShell: ```bash echo "Runtime: PowerShell" > /runtime.conf echo "Command: powershell -ExecutionPolicy Bypass -File /scripts/anysearch_cli.ps1" >> /runtime.conf ``` Example for Bash: ```bash echo "Runtime: Bash" > /runtime.conf echo "Command: bash /scripts/anysearch_cli.sh" >> /runtime.conf ``` **Important:** Runtime preferences are stored in `runtime.conf`, NOT in SKILL.md. The agent reads `runtime.conf` on skill load to determine the active CLI. If the file is missing or corrupted, the agent falls back to the Platform Detection procedure in SKILL.md. If `runtime.conf` already exists, replace it instead of appending. ### Routine agent usage After `runtime.conf` exists, agents should use the stored `Command` directly for routine calls instead of running `doc` before every search. For example, if `runtime.conf` contains `Command: python3 /scripts/anysearch_cli.py`, use: ```bash python3 /scripts/anysearch_cli.py search "query" --max_results 5 python3 /scripts/anysearch_cli.py batch_search --queries '[{"query":"q1","max_results":5},{"query":"q2","max_results":5}]' python3 /scripts/anysearch_cli.py extract "https://example.com/page" python3 /scripts/anysearch_cli.py extract --url "https://example.com/page" ``` `extract` output is already Markdown. Do not pass `--format markdown`, `--format json`, or `--markdown`; the extract command only accepts the URL positional argument or `--url`/`-u`. If a subcommand argument is unclear or fails, run ` --help` for that subcommand rather than the full `doc` command. ### Social media source workflows AnySearch includes a `social_media` vertical domain. Use it for public social discovery before reaching for platform-specific tools: ```bash python3 /scripts/anysearch_cli.py get_sub_domains --domain social_media python3 /scripts/anysearch_cli.py search "product launch response on X and Reddit" --domain social_media --sub_domain --max_results 5 ``` AnySearch should stay the broad web and vertical search layer. When an OpenClaw user needs account-scoped X/Twitter source packets such as exact tweets, tweet replies, profile lookup, follower export, media URLs, monitors, webhooks, or approved post/reply workflows, use a dedicated authenticated tool after user approval. For example, TweetClaw (`@xquik/tweetclaw`) can provide the X/Twitter evidence packet while AnySearch keeps the cross-source context. ### Step 4 (optional): Test a real search ```bash python /scripts/anysearch_cli.py search "hello world" --max_results 1 ``` If your system does not provide `python`, use: ```bash python3 /scripts/anysearch_cli.py search "hello world" --max_results 1 ``` A successful JSON response confirms the API connection is working. ## File Structure ``` anysearch-skill/ # renamed to "anysearch" on install (see above) ├── .env.example # API key configuration template ├── .env # Your API key (gitignored; create from .env.example) ├── runtime.conf.example # Runtime configuration template ├── runtime.conf # Detected runtime preferences (gitignored; created at install) ├── SKILL.md # Skill definition for AI agents ├── README.md # This file ├── SECURITY.md # Security policy / vulnerability reporting ├── TEST_PLAN.md # End-to-end test plan └── scripts/ ├── anysearch_cli.py # Python CLI ├── anysearch_cli.js # Node.js CLI ├── anysearch_cli.ps1 # PowerShell CLI ├── anysearch_cli.sh # Bash CLI ├── generate.py # Regenerates the shared blocks in the 4 CLIs └── shared/ # Single source of truth read by the CLIs ├── constants.json # Domain list + endpoint └── doc_spec.md # AI-facing interface spec (rendered by `doc`) ``` ## Download History [![Download History](https://skill-history.com/chart/anysearch-ai/anysearch.svg)](https://skill-history.com/anysearch-ai/anysearch)