← Back to Skills Marketplace
wangzhiming1999

Felo Search

by wangzhiming · GitHub ↗ · v1.0.0
cross-platform ⚠ suspicious
1985
Downloads
1
Stars
12
Active Installs
1
Versions
Install in OpenClaw
/install felo-search
Description
Felo AI real-time web search for questions requiring current/live information. Triggers on current events, news, trends, real-time data, information queries,...
README (SKILL.md)

\r \r

Felo Search Skill\r

\r

When to Use\r

\r Trigger this skill for questions requiring current or real-time information:\r \r

  • Current events & news: Recent developments, trending topics, breaking news\r
  • Real-time data: Weather, stock prices, exchange rates, sports scores\r
  • Information queries: "What is...", "Tell me about...", product reviews, comparisons, recommendations\r
  • Location-based: Restaurants, travel destinations, local attractions, things to do\r
  • How-to guides: Tutorials, step-by-step instructions, best practices\r
  • Shopping & prices: Product prices, deals, "where to buy"\r
  • Trends & statistics: Market trends, rankings, data analysis\r
  • Any question where Claude's knowledge may be outdated\r \r Trigger words:\r
  • 简体中文: 最近、什么、哪里、怎么样、如何、查、搜、找、推荐、比较、新闻、天气\r
  • 繁體中文: 最近、什麼、哪裡、怎麼樣、如何、查、搜、找、推薦、比較、新聞、天氣\r
  • 日本語: 最近、何、どこ、どう、検索、探す、おすすめ、比較、ニュース、天気\r
  • English: latest, recent, what, where, how, best, search, find, compare, news, weather\r \r Explicit commands: /felo-search, "search with felo", "felo search"\r \r Do NOT use for:\r
  • Code questions about the user's codebase (unless asking about external libraries/docs)\r
  • Pure mathematical calculations or logical reasoning\r
  • Questions about files in the current project\r \r

Setup\r

\r

1. Get Your API Key\r

\r

  1. Visit felo.ai and log in (or register)\r
  2. Click your avatar in the top right corner → Settings\r
  3. Navigate to the "API Keys" tab\r
  4. Click "Create New Key" to generate a new API Key\r
  5. Copy and save your API Key securely\r \r

2. Configure API Key\r

\r Set the FELO_API_KEY environment variable:\r \r Linux/macOS:\r

export FELO_API_KEY="your-api-key-here"\r
```\r
\r
**Windows (PowerShell):**\r
```powershell\r
$env:FELO_API_KEY="your-api-key-here"\r
```\r
\r
**Windows (CMD):**\r
```cmd\r
set FELO_API_KEY=your-api-key-here\r
```\r
\r
For permanent configuration, add it to your shell profile (~/.bashrc, ~/.zshrc) or system environment variables.\r
\r
## How to Execute\r
\r
When this skill is triggered, execute the following steps using the Bash tool:\r
\r
### Step 1: Check API Key\r
\r
Use the Bash tool to verify the API key is set:\r
\r
```bash\r
if [ -z "$FELO_API_KEY" ]; then\r
  echo "ERROR: FELO_API_KEY not set"\r
  exit 1\r
fi\r
echo "API key configured"\r
```\r
\r
If the API key is not set, inform the user with setup instructions and STOP.\r
\r
### Step 2: Make API Request\r
\r
Extract the user's query and call the Felo API using a temporary JSON file to handle special characters:\r
\r
```bash\r
# Create query JSON (replace USER_QUERY with actual query)\r
cat > /tmp/felo_query.json \x3C\x3C 'EOF'\r
{"query": "USER_QUERY_HERE"}\r
EOF\r
\r
# Call Felo API\r
curl -s -X POST https://openapi.felo.ai/v2/chat \\r
  -H "Authorization: Bearer $FELO_API_KEY" \\r
  -H "Content-Type: application/json" \\r
  -d @/tmp/felo_query.json\r
\r
# Clean up\r
rm -f /tmp/felo_query.json\r
```\r
\r
**Notes:**\r
- Replace `USER_QUERY_HERE` with the actual user query\r
- Use heredoc (`cat > file \x3C\x3C 'EOF'`) to properly handle Chinese, Japanese, and special characters\r
- Use `-s` flag with curl for clean output\r
\r
### Step 3: Parse and Format Response\r
\r
The API returns JSON with this structure:\r
```json\r
{\r
  "answer": "AI-generated answer text",\r
  "query_analysis": ["optimized query 1", "optimized query 2"]\r
}\r
```\r
\r
Parse the JSON response and present it to the user in this format:\r
\r
```\r
## Answer\r
[Display the answer field]\r
\r
## Query Analysis\r
Optimized search terms: [list query_analysis items]\r
```\r
\r
## Complete Examples\r
\r
### Example 1: Weather query\r
\r
**User asks:** "What's the weather in Tokyo today?"\r
\r
**Expected response format:**\r
```\r
## Answer\r
Tokyo weather today: Sunny, 22°C (72°F). High of 25°C, low of 18°C.\r
Light winds from the east at 10 km/h. UV index: 6 (high).\r
Good day for outdoor activities!\r
\r
## Query Analysis\r
Optimized search terms: Tokyo weather today, 東京 天気 今日\r
```\r
\r
**Bash command:**\r
```bash\r
cat > /tmp/felo_query.json \x3C\x3C 'EOF'\r
{"query": "What's the weather in Tokyo today?"}\r
EOF\r
\r
curl -s -X POST https://openapi.felo.ai/v2/chat \\r
  -H "Authorization: Bearer $FELO_API_KEY" \\r
  -H "Content-Type: application/json" \\r
  -d @/tmp/felo_query.json\r
\r
rm -f /tmp/felo_query.json\r
```\r
\r
### Example 2: Local news / events\r
\r
**User asks:** "What's new in Hangzhou recently?"\r
\r
**Expected response format:**\r
```\r
## Answer\r
Recent news in Hangzhou: Asian Games venue upgrades completed, West Lake night tours launched, new metro lines opened. Details...\r
\r
## Query Analysis\r
Optimized search terms: Hangzhou recent news, Hangzhou events, 杭州 最近 新闻\r
```\r
\r
**Bash command:**\r
```bash\r
cat > /tmp/felo_query.json \x3C\x3C 'EOF'\r
{"query": "What's new in Hangzhou recently"}\r
EOF\r
\r
curl -s -X POST https://openapi.felo.ai/v2/chat \\r
  -H "Authorization: Bearer $FELO_API_KEY" \\r
  -H "Content-Type: application/json" \\r
  -d @/tmp/felo_query.json\r
\r
rm -f /tmp/felo_query.json\r
```\r
\r
### Example 3: Travel / things to do\r
\r
**User asks:** "What are the best things to do in Taipei?"\r
\r
**Bash command:**\r
```bash\r
cat > /tmp/felo_query.json \x3C\x3C 'EOF'\r
{"query": "What are the best things to do in Taipei"}\r
EOF\r
\r
curl -s -X POST https://openapi.felo.ai/v2/chat \\r
  -H "Authorization: Bearer $FELO_API_KEY" \\r
  -H "Content-Type: application/json" \\r
  -d @/tmp/felo_query.json\r
\r
rm -f /tmp/felo_query.json\r
```\r
\r
### Example 4: Restaurants / recommendations\r
\r
**User asks:** "Popular restaurants in Tokyo?"\r
\r
**Bash command:**\r
```bash\r
cat > /tmp/felo_query.json \x3C\x3C 'EOF'\r
{"query": "Popular restaurants in Tokyo"}\r
EOF\r
\r
curl -s -X POST https://openapi.felo.ai/v2/chat \\r
  -H "Authorization: Bearer $FELO_API_KEY" \\r
  -H "Content-Type: application/json" \\r
  -d @/tmp/felo_query.json\r
\r
rm -f /tmp/felo_query.json\r
```\r
\r
## Error Handling\r
\r
### Common Error Codes\r
\r
- `INVALID_API_KEY` - API Key is invalid or revoked\r
  - Solution: Check if your API key is correct and hasn't been revoked\r
- `MISSING_PARAMETER` - Required parameter is missing\r
  - Solution: Ensure the query parameter is provided\r
- `INVALID_PARAMETER` - Parameter value is invalid\r
  - Solution: Check the query format\r
- `CHAT_FAILED` - Internal service error\r
  - Solution: Retry the request or contact Felo support\r
\r
### Missing API Key\r
\r
If `FELO_API_KEY` is not set, display this message:\r
\r
```\r
❌ Felo API Key not configured\r
\r
To use this skill, you need to set up your Felo API Key:\r
\r
1. Get your API key from https://felo.ai (Settings → API Keys)\r
2. Set the environment variable:\r
\r
   Linux/macOS:\r
   export FELO_API_KEY="your-api-key-here"\r
\r
   Windows (PowerShell):\r
   $env:FELO_API_KEY="your-api-key-here"\r
\r
3. Restart Claude Code or reload the environment\r
```\r
\r
## API Configuration\r
\r
**Endpoint:** `https://openapi.felo.ai/v2/chat`\r
\r
**Authentication:** Bearer token in Authorization header (from `FELO_API_KEY` environment variable)\r
\r
**Request format:**\r
```json\r
{\r
  "query": "user's search query"\r
}\r
```\r
\r
**Response format:**\r
```json\r
{\r
  "answer": "AI-generated comprehensive answer",\r
  "query_analysis": ["optimized query 1", "optimized query 2"]\r
}\r
```\r
\r
## Important Notes\r
\r
- This skill should be used for any question requiring current information\r
- Execute immediately using the Bash tool - don't just describe what you would do\r
- Multi-language support: Fully supports Simplified Chinese, Traditional Chinese (Taiwan), Japanese, and English\r
- Handle special characters properly: Use heredoc for JSON files to avoid encoding issues\r
- Parse JSON response: Extract answer and query_analysis fields\r
- Format nicely: Present results in a clean, readable format with proper markdown\r
- The API returns results in the same language as the query when possible\r
\r
## Additional Resources\r
\r
- [Felo Open Platform Documentation](https://openapi.felo.ai)\r
- [Get API Key](https://felo.ai) (Settings → API Keys)\r
- [API Reference](https://openapi.felo.ai/docs)\r
Usage Guidance
The skill appears to be a straightforward wrapper for the Felo API, but the package metadata omits the FELO_API_KEY requirement that the SKILL.md and README insist on — this inconsistency is suspicious (likely an oversight, but treat it as a red flag). Before installing: (1) Confirm you trust https://felo.ai and the unknown publisher; (2) Do not store your master API keys in global shell profiles — use a scoped/limited key or environment configured only for the session; (3) Avoid printing the key (do not run echo $FELO_API_KEY); (4) Run the skill in an isolated environment (container or VM) if you must test it; (5) Expect the skill to create a /tmp file and make outbound HTTPS requests to openapi.felo.ai — if that is unacceptable, do not enable it. If the publisher/contact is available, ask them to update the registry metadata to declare FELO_API_KEY and a homepage so the mismatch is resolved.
Capability Analysis
Type: OpenClaw Skill Name: felo-search Version: 1.0.0 The skill is classified as suspicious due to a critical shell injection vulnerability found in `SKILL.md`. The instructions for the AI agent to replace `USER_QUERY_HERE` directly within a heredoc (`cat > /tmp/felo_query.json << 'EOF' ... EOF`) allow an attacker to terminate the heredoc and inject arbitrary shell commands, leading to Remote Code Execution (RCE). While the skill's stated purpose is benign and there's no evidence of intentional malicious behavior by the developer, this severe vulnerability makes it exploitable.
Capability Assessment
Purpose & Capability
The SKILL.md and README describe a web-search integration that calls https://openapi.felo.ai/v2/chat — that capability matches the name/description. However, the registry metadata declares no required environment variables or primary credential while the instructions explicitly require FELO_API_KEY. The README also suggests an npx install step even though no install spec is present and the skill has no homepage/known source.
Instruction Scope
Instructions are focused on checking FELO_API_KEY, building a temporary JSON file in /tmp, and POSTing to the Felo API with curl — scope is narrow and consistent with a search integration. Minor concerns: README examples show echoing $FELO_API_KEY (which would print the key), and the instructions recommend adding the key to shell profiles (persistent storage). The SKILL.md does not instruct reading other system files or unrelated credentials.
Install Mechanism
This is an instruction-only skill with no install spec and no code files, which lowers disk-write risk. The README mentions 'npx @claude/skills add felo-search' as a user step, but no install mechanism is embedded in the skill bundle itself.
Credentials
The runtime requires a single service credential (FELO_API_KEY), which is proportional for an external search API — but the skill metadata did not declare any required env vars. That mismatch is a coherence problem. The guidance to store the API key in shell profiles or echo it to verify could expose the key to other processes or logs; users should prefer scoped/rotatable keys and avoid printing secrets.
Persistence & Privilege
The skill is not flagged 'always:true' and is user-invocable; it doesn't request persistent agent-wide privileges or claim to modify other skills. It will perform runtime network calls when invoked, which is expected for this type of integration.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install felo-search
  3. After installation, invoke the skill by name or use /felo-search
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release of the felo-search skill: - Provides real-time web search for current events, news, trends, location queries, shopping, and more. - Triggers automatically on information queries where up-to-date results are needed, with multi-language support. - Guides users through API key setup and environment variable configuration. - Executes queries via Bash using the Felo API, handling special characters robustly. - Parses and formats API responses for clear, markdown-style output. - Includes comprehensive usage examples and error-handling instructions.
Metadata
Slug felo-search
Version 1.0.0
License
All-time Installs 12
Active Installs 12
Total Versions 1
Frequently Asked Questions

What is Felo Search?

Felo AI real-time web search for questions requiring current/live information. Triggers on current events, news, trends, real-time data, information queries,... It is an AI Agent Skill for Claude Code / OpenClaw, with 1985 downloads so far.

How do I install Felo Search?

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

Is Felo Search free?

Yes, Felo Search is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Felo Search support?

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

Who created Felo Search?

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

💬 Comments