felo-ai 0.2.6 → 0.2.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/publish-npm.yml +39 -0
- package/CHANGELOG.md +30 -0
- package/CONTRIBUTING.md +346 -346
- package/README.en.md +129 -129
- package/README.md +435 -408
- package/docs/EXAMPLES.md +632 -632
- package/docs/FAQ.md +479 -479
- package/felo-search/LICENSE +21 -21
- package/felo-search/README.md +440 -440
- package/felo-search/SKILL.md +291 -291
- package/felo-slides/LICENSE +21 -21
- package/felo-slides/README.md +87 -87
- package/felo-slides/SKILL.md +166 -166
- package/felo-slides/scripts/run_ppt_task.mjs +251 -251
- package/felo-superAgent/LICENSE +21 -0
- package/felo-superAgent/README.md +125 -0
- package/felo-superAgent/SKILL.md +165 -0
- package/felo-web-fetch/README.md +127 -0
- package/felo-web-fetch/SKILL.md +204 -0
- package/felo-web-fetch/scripts/run_web_fetch.mjs +316 -0
- package/felo-x-search/SKILL.md +204 -0
- package/felo-x-search/scripts/run_x_search.mjs +385 -0
- package/felo-youtube-subtitling/README.md +59 -59
- package/felo-youtube-subtitling/SKILL.md +161 -161
- package/felo-youtube-subtitling/scripts/run_youtube_subtitling.mjs +239 -239
- package/package.json +37 -35
- package/src/cli.js +370 -252
- package/src/config.js +66 -66
- package/src/search.js +142 -142
- package/src/slides.js +332 -332
- package/src/superAgent.js +609 -0
- package/src/{webExtract.js → webFetch.js} +148 -148
- package/src/xSearch.js +366 -0
- package/src/youtubeSubtitling.js +179 -179
- package/tests/config.test.js +78 -78
- package/tests/search.test.js +100 -100
- package/felo-web-extract/README.md +0 -78
- package/felo-web-extract/SKILL.md +0 -200
- package/felo-web-extract/scripts/run_web_extract.mjs +0 -232
package/felo-search/SKILL.md
CHANGED
|
@@ -1,291 +1,291 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: felo-search
|
|
3
|
-
description: "Felo AI real-time web search for questions requiring current/live information. Triggers on current events, news, trends, real-time data, information queries, location queries, how-to guides, shopping, or when Claude's knowledge may be outdated."
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Felo Search Skill
|
|
7
|
-
|
|
8
|
-
## When to Use
|
|
9
|
-
|
|
10
|
-
Trigger this skill for questions requiring current or real-time information:
|
|
11
|
-
|
|
12
|
-
- **Current events & news:** Recent developments, trending topics, breaking news
|
|
13
|
-
- **Real-time data:** Weather, stock prices, exchange rates, sports scores
|
|
14
|
-
- **Information queries:** "What is...", "Tell me about...", product reviews, comparisons, recommendations
|
|
15
|
-
- **Location-based:** Restaurants, travel destinations, local attractions, things to do
|
|
16
|
-
- **How-to guides:** Tutorials, step-by-step instructions, best practices
|
|
17
|
-
- **Shopping & prices:** Product prices, deals, "where to buy"
|
|
18
|
-
- **Trends & statistics:** Market trends, rankings, data analysis
|
|
19
|
-
- **Any question where Claude's knowledge may be outdated**
|
|
20
|
-
|
|
21
|
-
**Trigger words:**
|
|
22
|
-
- 简体中文: 最近、什么、哪里、怎么样、如何、查、搜、找、推荐、比较、新闻、天气
|
|
23
|
-
- 繁體中文: 最近、什麼、哪裡、怎麼樣、如何、查、搜、找、推薦、比較、新聞、天氣
|
|
24
|
-
- 日本語: 最近、何、どこ、どう、検索、探す、おすすめ、比較、ニュース、天気
|
|
25
|
-
- English: latest, recent, what, where, how, best, search, find, compare, news, weather
|
|
26
|
-
|
|
27
|
-
**Explicit commands:** `/felo-search`, "search with felo", "felo search"
|
|
28
|
-
|
|
29
|
-
**Do NOT use for:**
|
|
30
|
-
- Code questions about the user's codebase (unless asking about external libraries/docs)
|
|
31
|
-
- Pure mathematical calculations or logical reasoning
|
|
32
|
-
- Questions about files in the current project
|
|
33
|
-
|
|
34
|
-
## Setup
|
|
35
|
-
|
|
36
|
-
### 1. Get Your API Key
|
|
37
|
-
|
|
38
|
-
1. Visit [felo.ai](https://felo.ai) and log in (or register)
|
|
39
|
-
2. Click your avatar in the top right corner → Settings
|
|
40
|
-
3. Navigate to the "API Keys" tab
|
|
41
|
-
4. Click "Create New Key" to generate a new API Key
|
|
42
|
-
5. Copy and save your API Key securely
|
|
43
|
-
|
|
44
|
-
### 2. Configure API Key
|
|
45
|
-
|
|
46
|
-
Set the `FELO_API_KEY` environment variable:
|
|
47
|
-
|
|
48
|
-
**Linux/macOS:**
|
|
49
|
-
```bash
|
|
50
|
-
export FELO_API_KEY="your-api-key-here"
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
**Windows (PowerShell):**
|
|
54
|
-
```powershell
|
|
55
|
-
$env:FELO_API_KEY="your-api-key-here"
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
**Windows (CMD):**
|
|
59
|
-
```cmd
|
|
60
|
-
set FELO_API_KEY=your-api-key-here
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
For permanent configuration, add it to your shell profile (~/.bashrc, ~/.zshrc) or system environment variables.
|
|
64
|
-
|
|
65
|
-
## How to Execute
|
|
66
|
-
|
|
67
|
-
When this skill is triggered, execute the following steps using the Bash tool:
|
|
68
|
-
|
|
69
|
-
### Step 1: Check API Key
|
|
70
|
-
|
|
71
|
-
Use the Bash tool to verify the API key is set:
|
|
72
|
-
|
|
73
|
-
```bash
|
|
74
|
-
if [ -z "$FELO_API_KEY" ]; then
|
|
75
|
-
echo "ERROR: FELO_API_KEY not set"
|
|
76
|
-
exit 1
|
|
77
|
-
fi
|
|
78
|
-
echo "API key configured"
|
|
79
|
-
```
|
|
80
|
-
|
|
81
|
-
If the API key is not set, inform the user with setup instructions and STOP.
|
|
82
|
-
|
|
83
|
-
### Step 2: Make API Request
|
|
84
|
-
|
|
85
|
-
Extract the user's query and call the Felo API using a temporary JSON file to handle special characters:
|
|
86
|
-
|
|
87
|
-
```bash
|
|
88
|
-
# Create query JSON (replace USER_QUERY with actual query)
|
|
89
|
-
cat > /tmp/felo_query.json << 'EOF'
|
|
90
|
-
{"query": "USER_QUERY_HERE"}
|
|
91
|
-
EOF
|
|
92
|
-
|
|
93
|
-
# Call Felo API
|
|
94
|
-
curl -s -X POST https://openapi.felo.ai/v2/chat \
|
|
95
|
-
-H "Authorization: Bearer $FELO_API_KEY" \
|
|
96
|
-
-H "Content-Type: application/json" \
|
|
97
|
-
-d @/tmp/felo_query.json
|
|
98
|
-
|
|
99
|
-
# Clean up
|
|
100
|
-
rm -f /tmp/felo_query.json
|
|
101
|
-
```
|
|
102
|
-
|
|
103
|
-
**Notes:**
|
|
104
|
-
- Replace `USER_QUERY_HERE` with the actual user query
|
|
105
|
-
- Use heredoc (`cat > file << 'EOF'`) to properly handle Chinese, Japanese, and special characters
|
|
106
|
-
- Use `-s` flag with curl for clean output
|
|
107
|
-
|
|
108
|
-
### Step 3: Parse and Format Response
|
|
109
|
-
|
|
110
|
-
The API returns JSON with this structure:
|
|
111
|
-
```json
|
|
112
|
-
{
|
|
113
|
-
"answer": "AI-generated answer text",
|
|
114
|
-
"query_analysis": ["optimized query 1", "optimized query 2"]
|
|
115
|
-
}
|
|
116
|
-
```
|
|
117
|
-
|
|
118
|
-
Parse the JSON response and present it to the user in this format:
|
|
119
|
-
|
|
120
|
-
```
|
|
121
|
-
## Answer
|
|
122
|
-
[Display the answer field]
|
|
123
|
-
|
|
124
|
-
## Query Analysis
|
|
125
|
-
Optimized search terms: [list query_analysis items]
|
|
126
|
-
```
|
|
127
|
-
|
|
128
|
-
## Complete Examples
|
|
129
|
-
|
|
130
|
-
### Example 1: Weather query
|
|
131
|
-
|
|
132
|
-
**User asks:** "What's the weather in Tokyo today?"
|
|
133
|
-
|
|
134
|
-
**Expected response format:**
|
|
135
|
-
```
|
|
136
|
-
## Answer
|
|
137
|
-
Tokyo weather today: Sunny, 22°C (72°F). High of 25°C, low of 18°C.
|
|
138
|
-
Light winds from the east at 10 km/h. UV index: 6 (high).
|
|
139
|
-
Good day for outdoor activities!
|
|
140
|
-
|
|
141
|
-
## Query Analysis
|
|
142
|
-
Optimized search terms: Tokyo weather today, 東京 天気 今日
|
|
143
|
-
```
|
|
144
|
-
|
|
145
|
-
**Bash command:**
|
|
146
|
-
```bash
|
|
147
|
-
cat > /tmp/felo_query.json << 'EOF'
|
|
148
|
-
{"query": "What's the weather in Tokyo today?"}
|
|
149
|
-
EOF
|
|
150
|
-
|
|
151
|
-
curl -s -X POST https://openapi.felo.ai/v2/chat \
|
|
152
|
-
-H "Authorization: Bearer $FELO_API_KEY" \
|
|
153
|
-
-H "Content-Type: application/json" \
|
|
154
|
-
-d @/tmp/felo_query.json
|
|
155
|
-
|
|
156
|
-
rm -f /tmp/felo_query.json
|
|
157
|
-
```
|
|
158
|
-
|
|
159
|
-
### Example 2: Local news / events
|
|
160
|
-
|
|
161
|
-
**User asks:** "What's new in Hangzhou recently?"
|
|
162
|
-
|
|
163
|
-
**Expected response format:**
|
|
164
|
-
```
|
|
165
|
-
## Answer
|
|
166
|
-
Recent news in Hangzhou: Asian Games venue upgrades completed, West Lake night tours launched, new metro lines opened. Details...
|
|
167
|
-
|
|
168
|
-
## Query Analysis
|
|
169
|
-
Optimized search terms: Hangzhou recent news, Hangzhou events, 杭州 最近 新闻
|
|
170
|
-
```
|
|
171
|
-
|
|
172
|
-
**Bash command:**
|
|
173
|
-
```bash
|
|
174
|
-
cat > /tmp/felo_query.json << 'EOF'
|
|
175
|
-
{"query": "What's new in Hangzhou recently"}
|
|
176
|
-
EOF
|
|
177
|
-
|
|
178
|
-
curl -s -X POST https://openapi.felo.ai/v2/chat \
|
|
179
|
-
-H "Authorization: Bearer $FELO_API_KEY" \
|
|
180
|
-
-H "Content-Type: application/json" \
|
|
181
|
-
-d @/tmp/felo_query.json
|
|
182
|
-
|
|
183
|
-
rm -f /tmp/felo_query.json
|
|
184
|
-
```
|
|
185
|
-
|
|
186
|
-
### Example 3: Travel / things to do
|
|
187
|
-
|
|
188
|
-
**User asks:** "What are the best things to do in Taipei?"
|
|
189
|
-
|
|
190
|
-
**Bash command:**
|
|
191
|
-
```bash
|
|
192
|
-
cat > /tmp/felo_query.json << 'EOF'
|
|
193
|
-
{"query": "What are the best things to do in Taipei"}
|
|
194
|
-
EOF
|
|
195
|
-
|
|
196
|
-
curl -s -X POST https://openapi.felo.ai/v2/chat \
|
|
197
|
-
-H "Authorization: Bearer $FELO_API_KEY" \
|
|
198
|
-
-H "Content-Type: application/json" \
|
|
199
|
-
-d @/tmp/felo_query.json
|
|
200
|
-
|
|
201
|
-
rm -f /tmp/felo_query.json
|
|
202
|
-
```
|
|
203
|
-
|
|
204
|
-
### Example 4: Restaurants / recommendations
|
|
205
|
-
|
|
206
|
-
**User asks:** "Popular restaurants in Tokyo?"
|
|
207
|
-
|
|
208
|
-
**Bash command:**
|
|
209
|
-
```bash
|
|
210
|
-
cat > /tmp/felo_query.json << 'EOF'
|
|
211
|
-
{"query": "Popular restaurants in Tokyo"}
|
|
212
|
-
EOF
|
|
213
|
-
|
|
214
|
-
curl -s -X POST https://openapi.felo.ai/v2/chat \
|
|
215
|
-
-H "Authorization: Bearer $FELO_API_KEY" \
|
|
216
|
-
-H "Content-Type: application/json" \
|
|
217
|
-
-d @/tmp/felo_query.json
|
|
218
|
-
|
|
219
|
-
rm -f /tmp/felo_query.json
|
|
220
|
-
```
|
|
221
|
-
|
|
222
|
-
## Error Handling
|
|
223
|
-
|
|
224
|
-
### Common Error Codes
|
|
225
|
-
|
|
226
|
-
- `INVALID_API_KEY` - API Key is invalid or revoked
|
|
227
|
-
- Solution: Check if your API key is correct and hasn't been revoked
|
|
228
|
-
- `MISSING_PARAMETER` - Required parameter is missing
|
|
229
|
-
- Solution: Ensure the query parameter is provided
|
|
230
|
-
- `INVALID_PARAMETER` - Parameter value is invalid
|
|
231
|
-
- Solution: Check the query format
|
|
232
|
-
- `CHAT_FAILED` - Internal service error
|
|
233
|
-
- Solution: Retry the request or contact Felo support
|
|
234
|
-
|
|
235
|
-
### Missing API Key
|
|
236
|
-
|
|
237
|
-
If `FELO_API_KEY` is not set, display this message:
|
|
238
|
-
|
|
239
|
-
```
|
|
240
|
-
❌ Felo API Key not configured
|
|
241
|
-
|
|
242
|
-
To use this skill, you need to set up your Felo API Key:
|
|
243
|
-
|
|
244
|
-
1. Get your API key from https://felo.ai (Settings → API Keys)
|
|
245
|
-
2. Set the environment variable:
|
|
246
|
-
|
|
247
|
-
Linux/macOS:
|
|
248
|
-
export FELO_API_KEY="your-api-key-here"
|
|
249
|
-
|
|
250
|
-
Windows (PowerShell):
|
|
251
|
-
$env:FELO_API_KEY="your-api-key-here"
|
|
252
|
-
|
|
253
|
-
3. Restart Claude Code or reload the environment
|
|
254
|
-
```
|
|
255
|
-
|
|
256
|
-
## API Configuration
|
|
257
|
-
|
|
258
|
-
**Endpoint:** `https://openapi.felo.ai/v2/chat`
|
|
259
|
-
|
|
260
|
-
**Authentication:** Bearer token in Authorization header (from `FELO_API_KEY` environment variable)
|
|
261
|
-
|
|
262
|
-
**Request format:**
|
|
263
|
-
```json
|
|
264
|
-
{
|
|
265
|
-
"query": "user's search query"
|
|
266
|
-
}
|
|
267
|
-
```
|
|
268
|
-
|
|
269
|
-
**Response format:**
|
|
270
|
-
```json
|
|
271
|
-
{
|
|
272
|
-
"answer": "AI-generated comprehensive answer",
|
|
273
|
-
"query_analysis": ["optimized query 1", "optimized query 2"]
|
|
274
|
-
}
|
|
275
|
-
```
|
|
276
|
-
|
|
277
|
-
## Important Notes
|
|
278
|
-
|
|
279
|
-
- This skill should be used for any question requiring current information
|
|
280
|
-
- Execute immediately using the Bash tool - don't just describe what you would do
|
|
281
|
-
- Multi-language support: Fully supports Simplified Chinese, Traditional Chinese (Taiwan), Japanese, and English
|
|
282
|
-
- Handle special characters properly: Use heredoc for JSON files to avoid encoding issues
|
|
283
|
-
- Parse JSON response: Extract answer and query_analysis fields
|
|
284
|
-
- Format nicely: Present results in a clean, readable format with proper markdown
|
|
285
|
-
- The API returns results in the same language as the query when possible
|
|
286
|
-
|
|
287
|
-
## Additional Resources
|
|
288
|
-
|
|
289
|
-
- [Felo Open Platform Documentation](https://openapi.felo.ai)
|
|
290
|
-
- [Get API Key](https://felo.ai) (Settings → API Keys)
|
|
291
|
-
- [API Reference](https://openapi.felo.ai/docs)
|
|
1
|
+
---
|
|
2
|
+
name: felo-search
|
|
3
|
+
description: "Felo AI real-time web search for questions requiring current/live information. Triggers on current events, news, trends, real-time data, information queries, location queries, how-to guides, shopping, or when Claude's knowledge may be outdated."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Felo Search Skill
|
|
7
|
+
|
|
8
|
+
## When to Use
|
|
9
|
+
|
|
10
|
+
Trigger this skill for questions requiring current or real-time information:
|
|
11
|
+
|
|
12
|
+
- **Current events & news:** Recent developments, trending topics, breaking news
|
|
13
|
+
- **Real-time data:** Weather, stock prices, exchange rates, sports scores
|
|
14
|
+
- **Information queries:** "What is...", "Tell me about...", product reviews, comparisons, recommendations
|
|
15
|
+
- **Location-based:** Restaurants, travel destinations, local attractions, things to do
|
|
16
|
+
- **How-to guides:** Tutorials, step-by-step instructions, best practices
|
|
17
|
+
- **Shopping & prices:** Product prices, deals, "where to buy"
|
|
18
|
+
- **Trends & statistics:** Market trends, rankings, data analysis
|
|
19
|
+
- **Any question where Claude's knowledge may be outdated**
|
|
20
|
+
|
|
21
|
+
**Trigger words:**
|
|
22
|
+
- 简体中文: 最近、什么、哪里、怎么样、如何、查、搜、找、推荐、比较、新闻、天气
|
|
23
|
+
- 繁體中文: 最近、什麼、哪裡、怎麼樣、如何、查、搜、找、推薦、比較、新聞、天氣
|
|
24
|
+
- 日本語: 最近、何、どこ、どう、検索、探す、おすすめ、比較、ニュース、天気
|
|
25
|
+
- English: latest, recent, what, where, how, best, search, find, compare, news, weather
|
|
26
|
+
|
|
27
|
+
**Explicit commands:** `/felo-search`, "search with felo", "felo search"
|
|
28
|
+
|
|
29
|
+
**Do NOT use for:**
|
|
30
|
+
- Code questions about the user's codebase (unless asking about external libraries/docs)
|
|
31
|
+
- Pure mathematical calculations or logical reasoning
|
|
32
|
+
- Questions about files in the current project
|
|
33
|
+
|
|
34
|
+
## Setup
|
|
35
|
+
|
|
36
|
+
### 1. Get Your API Key
|
|
37
|
+
|
|
38
|
+
1. Visit [felo.ai](https://felo.ai) and log in (or register)
|
|
39
|
+
2. Click your avatar in the top right corner → Settings
|
|
40
|
+
3. Navigate to the "API Keys" tab
|
|
41
|
+
4. Click "Create New Key" to generate a new API Key
|
|
42
|
+
5. Copy and save your API Key securely
|
|
43
|
+
|
|
44
|
+
### 2. Configure API Key
|
|
45
|
+
|
|
46
|
+
Set the `FELO_API_KEY` environment variable:
|
|
47
|
+
|
|
48
|
+
**Linux/macOS:**
|
|
49
|
+
```bash
|
|
50
|
+
export FELO_API_KEY="your-api-key-here"
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
**Windows (PowerShell):**
|
|
54
|
+
```powershell
|
|
55
|
+
$env:FELO_API_KEY="your-api-key-here"
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
**Windows (CMD):**
|
|
59
|
+
```cmd
|
|
60
|
+
set FELO_API_KEY=your-api-key-here
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
For permanent configuration, add it to your shell profile (~/.bashrc, ~/.zshrc) or system environment variables.
|
|
64
|
+
|
|
65
|
+
## How to Execute
|
|
66
|
+
|
|
67
|
+
When this skill is triggered, execute the following steps using the Bash tool:
|
|
68
|
+
|
|
69
|
+
### Step 1: Check API Key
|
|
70
|
+
|
|
71
|
+
Use the Bash tool to verify the API key is set:
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
if [ -z "$FELO_API_KEY" ]; then
|
|
75
|
+
echo "ERROR: FELO_API_KEY not set"
|
|
76
|
+
exit 1
|
|
77
|
+
fi
|
|
78
|
+
echo "API key configured"
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
If the API key is not set, inform the user with setup instructions and STOP.
|
|
82
|
+
|
|
83
|
+
### Step 2: Make API Request
|
|
84
|
+
|
|
85
|
+
Extract the user's query and call the Felo API using a temporary JSON file to handle special characters:
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
# Create query JSON (replace USER_QUERY with actual query)
|
|
89
|
+
cat > /tmp/felo_query.json << 'EOF'
|
|
90
|
+
{"query": "USER_QUERY_HERE"}
|
|
91
|
+
EOF
|
|
92
|
+
|
|
93
|
+
# Call Felo API
|
|
94
|
+
curl -s -X POST https://openapi.felo.ai/v2/chat \
|
|
95
|
+
-H "Authorization: Bearer $FELO_API_KEY" \
|
|
96
|
+
-H "Content-Type: application/json" \
|
|
97
|
+
-d @/tmp/felo_query.json
|
|
98
|
+
|
|
99
|
+
# Clean up
|
|
100
|
+
rm -f /tmp/felo_query.json
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
**Notes:**
|
|
104
|
+
- Replace `USER_QUERY_HERE` with the actual user query
|
|
105
|
+
- Use heredoc (`cat > file << 'EOF'`) to properly handle Chinese, Japanese, and special characters
|
|
106
|
+
- Use `-s` flag with curl for clean output
|
|
107
|
+
|
|
108
|
+
### Step 3: Parse and Format Response
|
|
109
|
+
|
|
110
|
+
The API returns JSON with this structure:
|
|
111
|
+
```json
|
|
112
|
+
{
|
|
113
|
+
"answer": "AI-generated answer text",
|
|
114
|
+
"query_analysis": ["optimized query 1", "optimized query 2"]
|
|
115
|
+
}
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
Parse the JSON response and present it to the user in this format:
|
|
119
|
+
|
|
120
|
+
```
|
|
121
|
+
## Answer
|
|
122
|
+
[Display the answer field]
|
|
123
|
+
|
|
124
|
+
## Query Analysis
|
|
125
|
+
Optimized search terms: [list query_analysis items]
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
## Complete Examples
|
|
129
|
+
|
|
130
|
+
### Example 1: Weather query
|
|
131
|
+
|
|
132
|
+
**User asks:** "What's the weather in Tokyo today?"
|
|
133
|
+
|
|
134
|
+
**Expected response format:**
|
|
135
|
+
```
|
|
136
|
+
## Answer
|
|
137
|
+
Tokyo weather today: Sunny, 22°C (72°F). High of 25°C, low of 18°C.
|
|
138
|
+
Light winds from the east at 10 km/h. UV index: 6 (high).
|
|
139
|
+
Good day for outdoor activities!
|
|
140
|
+
|
|
141
|
+
## Query Analysis
|
|
142
|
+
Optimized search terms: Tokyo weather today, 東京 天気 今日
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
**Bash command:**
|
|
146
|
+
```bash
|
|
147
|
+
cat > /tmp/felo_query.json << 'EOF'
|
|
148
|
+
{"query": "What's the weather in Tokyo today?"}
|
|
149
|
+
EOF
|
|
150
|
+
|
|
151
|
+
curl -s -X POST https://openapi.felo.ai/v2/chat \
|
|
152
|
+
-H "Authorization: Bearer $FELO_API_KEY" \
|
|
153
|
+
-H "Content-Type: application/json" \
|
|
154
|
+
-d @/tmp/felo_query.json
|
|
155
|
+
|
|
156
|
+
rm -f /tmp/felo_query.json
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
### Example 2: Local news / events
|
|
160
|
+
|
|
161
|
+
**User asks:** "What's new in Hangzhou recently?"
|
|
162
|
+
|
|
163
|
+
**Expected response format:**
|
|
164
|
+
```
|
|
165
|
+
## Answer
|
|
166
|
+
Recent news in Hangzhou: Asian Games venue upgrades completed, West Lake night tours launched, new metro lines opened. Details...
|
|
167
|
+
|
|
168
|
+
## Query Analysis
|
|
169
|
+
Optimized search terms: Hangzhou recent news, Hangzhou events, 杭州 最近 新闻
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
**Bash command:**
|
|
173
|
+
```bash
|
|
174
|
+
cat > /tmp/felo_query.json << 'EOF'
|
|
175
|
+
{"query": "What's new in Hangzhou recently"}
|
|
176
|
+
EOF
|
|
177
|
+
|
|
178
|
+
curl -s -X POST https://openapi.felo.ai/v2/chat \
|
|
179
|
+
-H "Authorization: Bearer $FELO_API_KEY" \
|
|
180
|
+
-H "Content-Type: application/json" \
|
|
181
|
+
-d @/tmp/felo_query.json
|
|
182
|
+
|
|
183
|
+
rm -f /tmp/felo_query.json
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
### Example 3: Travel / things to do
|
|
187
|
+
|
|
188
|
+
**User asks:** "What are the best things to do in Taipei?"
|
|
189
|
+
|
|
190
|
+
**Bash command:**
|
|
191
|
+
```bash
|
|
192
|
+
cat > /tmp/felo_query.json << 'EOF'
|
|
193
|
+
{"query": "What are the best things to do in Taipei"}
|
|
194
|
+
EOF
|
|
195
|
+
|
|
196
|
+
curl -s -X POST https://openapi.felo.ai/v2/chat \
|
|
197
|
+
-H "Authorization: Bearer $FELO_API_KEY" \
|
|
198
|
+
-H "Content-Type: application/json" \
|
|
199
|
+
-d @/tmp/felo_query.json
|
|
200
|
+
|
|
201
|
+
rm -f /tmp/felo_query.json
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
### Example 4: Restaurants / recommendations
|
|
205
|
+
|
|
206
|
+
**User asks:** "Popular restaurants in Tokyo?"
|
|
207
|
+
|
|
208
|
+
**Bash command:**
|
|
209
|
+
```bash
|
|
210
|
+
cat > /tmp/felo_query.json << 'EOF'
|
|
211
|
+
{"query": "Popular restaurants in Tokyo"}
|
|
212
|
+
EOF
|
|
213
|
+
|
|
214
|
+
curl -s -X POST https://openapi.felo.ai/v2/chat \
|
|
215
|
+
-H "Authorization: Bearer $FELO_API_KEY" \
|
|
216
|
+
-H "Content-Type: application/json" \
|
|
217
|
+
-d @/tmp/felo_query.json
|
|
218
|
+
|
|
219
|
+
rm -f /tmp/felo_query.json
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
## Error Handling
|
|
223
|
+
|
|
224
|
+
### Common Error Codes
|
|
225
|
+
|
|
226
|
+
- `INVALID_API_KEY` - API Key is invalid or revoked
|
|
227
|
+
- Solution: Check if your API key is correct and hasn't been revoked
|
|
228
|
+
- `MISSING_PARAMETER` - Required parameter is missing
|
|
229
|
+
- Solution: Ensure the query parameter is provided
|
|
230
|
+
- `INVALID_PARAMETER` - Parameter value is invalid
|
|
231
|
+
- Solution: Check the query format
|
|
232
|
+
- `CHAT_FAILED` - Internal service error
|
|
233
|
+
- Solution: Retry the request or contact Felo support
|
|
234
|
+
|
|
235
|
+
### Missing API Key
|
|
236
|
+
|
|
237
|
+
If `FELO_API_KEY` is not set, display this message:
|
|
238
|
+
|
|
239
|
+
```
|
|
240
|
+
❌ Felo API Key not configured
|
|
241
|
+
|
|
242
|
+
To use this skill, you need to set up your Felo API Key:
|
|
243
|
+
|
|
244
|
+
1. Get your API key from https://felo.ai (Settings → API Keys)
|
|
245
|
+
2. Set the environment variable:
|
|
246
|
+
|
|
247
|
+
Linux/macOS:
|
|
248
|
+
export FELO_API_KEY="your-api-key-here"
|
|
249
|
+
|
|
250
|
+
Windows (PowerShell):
|
|
251
|
+
$env:FELO_API_KEY="your-api-key-here"
|
|
252
|
+
|
|
253
|
+
3. Restart Claude Code or reload the environment
|
|
254
|
+
```
|
|
255
|
+
|
|
256
|
+
## API Configuration
|
|
257
|
+
|
|
258
|
+
**Endpoint:** `https://openapi.felo.ai/v2/chat`
|
|
259
|
+
|
|
260
|
+
**Authentication:** Bearer token in Authorization header (from `FELO_API_KEY` environment variable)
|
|
261
|
+
|
|
262
|
+
**Request format:**
|
|
263
|
+
```json
|
|
264
|
+
{
|
|
265
|
+
"query": "user's search query"
|
|
266
|
+
}
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
**Response format:**
|
|
270
|
+
```json
|
|
271
|
+
{
|
|
272
|
+
"answer": "AI-generated comprehensive answer",
|
|
273
|
+
"query_analysis": ["optimized query 1", "optimized query 2"]
|
|
274
|
+
}
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
## Important Notes
|
|
278
|
+
|
|
279
|
+
- This skill should be used for any question requiring current information
|
|
280
|
+
- Execute immediately using the Bash tool - don't just describe what you would do
|
|
281
|
+
- Multi-language support: Fully supports Simplified Chinese, Traditional Chinese (Taiwan), Japanese, and English
|
|
282
|
+
- Handle special characters properly: Use heredoc for JSON files to avoid encoding issues
|
|
283
|
+
- Parse JSON response: Extract answer and query_analysis fields
|
|
284
|
+
- Format nicely: Present results in a clean, readable format with proper markdown
|
|
285
|
+
- The API returns results in the same language as the query when possible
|
|
286
|
+
|
|
287
|
+
## Additional Resources
|
|
288
|
+
|
|
289
|
+
- [Felo Open Platform Documentation](https://openapi.felo.ai)
|
|
290
|
+
- [Get API Key](https://felo.ai) (Settings → API Keys)
|
|
291
|
+
- [API Reference](https://openapi.felo.ai/docs)
|
package/felo-slides/LICENSE
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2026 Felo Slides Skill Contributors
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Felo Slides Skill Contributors
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|