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.
Files changed (39) hide show
  1. package/.github/workflows/publish-npm.yml +39 -0
  2. package/CHANGELOG.md +30 -0
  3. package/CONTRIBUTING.md +346 -346
  4. package/README.en.md +129 -129
  5. package/README.md +435 -408
  6. package/docs/EXAMPLES.md +632 -632
  7. package/docs/FAQ.md +479 -479
  8. package/felo-search/LICENSE +21 -21
  9. package/felo-search/README.md +440 -440
  10. package/felo-search/SKILL.md +291 -291
  11. package/felo-slides/LICENSE +21 -21
  12. package/felo-slides/README.md +87 -87
  13. package/felo-slides/SKILL.md +166 -166
  14. package/felo-slides/scripts/run_ppt_task.mjs +251 -251
  15. package/felo-superAgent/LICENSE +21 -0
  16. package/felo-superAgent/README.md +125 -0
  17. package/felo-superAgent/SKILL.md +165 -0
  18. package/felo-web-fetch/README.md +127 -0
  19. package/felo-web-fetch/SKILL.md +204 -0
  20. package/felo-web-fetch/scripts/run_web_fetch.mjs +316 -0
  21. package/felo-x-search/SKILL.md +204 -0
  22. package/felo-x-search/scripts/run_x_search.mjs +385 -0
  23. package/felo-youtube-subtitling/README.md +59 -59
  24. package/felo-youtube-subtitling/SKILL.md +161 -161
  25. package/felo-youtube-subtitling/scripts/run_youtube_subtitling.mjs +239 -239
  26. package/package.json +37 -35
  27. package/src/cli.js +370 -252
  28. package/src/config.js +66 -66
  29. package/src/search.js +142 -142
  30. package/src/slides.js +332 -332
  31. package/src/superAgent.js +609 -0
  32. package/src/{webExtract.js → webFetch.js} +148 -148
  33. package/src/xSearch.js +366 -0
  34. package/src/youtubeSubtitling.js +179 -179
  35. package/tests/config.test.js +78 -78
  36. package/tests/search.test.js +100 -100
  37. package/felo-web-extract/README.md +0 -78
  38. package/felo-web-extract/SKILL.md +0 -200
  39. package/felo-web-extract/scripts/run_web_extract.mjs +0 -232
package/CONTRIBUTING.md CHANGED
@@ -1,346 +1,346 @@
1
- # Contributing to Felo Skills
2
-
3
- We welcome contributions! Whether you want to report bugs, suggest features, improve documentation, or add new skills.
4
-
5
- ---
6
-
7
- ## How to Contribute
8
-
9
- ### 1. Report Bugs
10
-
11
- Found a bug? [Open an issue](https://github.com/Felo-Inc/felo-skills/issues/new) with:
12
- - Clear description of the problem
13
- - Steps to reproduce
14
- - Expected vs actual behavior
15
- - Environment (OS, Claude Code version, skill version)
16
- - Error messages or logs
17
-
18
- ### 2. Suggest Features
19
-
20
- Have an idea? [Start a discussion](https://github.com/Felo-Inc/felo-skills/discussions) or open an issue with:
21
- - Use case description
22
- - Why this feature is useful
23
- - Proposed implementation (optional)
24
-
25
- ### 3. Submit Code
26
-
27
- Ready to code? Follow the pull request process below.
28
-
29
- ---
30
-
31
- ## Development Setup
32
-
33
- ### Prerequisites
34
-
35
- - Git
36
- - Claude Code CLI
37
- - Node.js (for testing npx installation)
38
- - Text editor
39
-
40
- ### Clone the Repository
41
-
42
- ```bash
43
- git clone https://github.com/Felo-Inc/felo-skills.git
44
- cd felo-skills
45
- ```
46
-
47
- ### Test Locally
48
-
49
- Copy a skill to your Claude Code skills directory:
50
-
51
- ```bash
52
- # Linux/macOS
53
- cp -r felo-search ~/.claude/skills/
54
-
55
- # Windows (PowerShell)
56
- Copy-Item -Recurse felo-search "$env:USERPROFILE\.claude\skills\"
57
- ```
58
-
59
- Restart Claude Code:
60
- ```bash
61
- claude restart
62
- ```
63
-
64
- Test the skill:
65
- ```
66
- Ask Claude: "What's the weather today?"
67
- ```
68
-
69
- ---
70
-
71
- ## Adding a New Skill
72
-
73
- ### Folder Structure
74
-
75
- Create a new folder for your skill:
76
-
77
- ```
78
- your-skill-name/
79
- ├── SKILL.md # Skill implementation (required)
80
- ├── README.md # User documentation (required)
81
- └── LICENSE # MIT License (required)
82
- ```
83
-
84
- ### SKILL.md Format
85
-
86
- The `SKILL.md` file defines how the skill works. Use this template:
87
-
88
- ```markdown
89
- ---
90
- name: your-skill-name
91
- description: "Brief description of when to use this skill. Include trigger keywords and use cases."
92
- ---
93
-
94
- # Your Skill Name
95
-
96
- ## When to Use
97
-
98
- List specific scenarios when this skill should trigger:
99
- - Scenario 1
100
- - Scenario 2
101
- - Trigger keywords: "keyword1", "keyword2"
102
-
103
- ## Setup
104
-
105
- Step-by-step setup instructions:
106
- 1. Get API key from [service]
107
- 2. Set environment variable
108
- 3. Test the skill
109
-
110
- ## How to Execute
111
-
112
- Detailed instructions for Claude Code on how to execute this skill:
113
-
114
- ### Step 1: Check Prerequisites
115
- [Bash commands to verify setup]
116
-
117
- ### Step 2: Execute Main Logic
118
- [Bash commands or tool calls to perform the skill's function]
119
-
120
- ### Step 3: Format Response
121
- [How to present results to the user]
122
-
123
- ## Examples
124
-
125
- ### Example 1: [Scenario]
126
- **User asks:** "example query"
127
- **You MUST do:** [step-by-step execution]
128
-
129
- ## Error Handling
130
-
131
- Common errors and solutions:
132
- - Error 1: Solution
133
- - Error 2: Solution
134
-
135
- ## Important Notes
136
-
137
- - Key implementation details
138
- - Best practices
139
- - Limitations
140
- ```
141
-
142
- ### README.md Format
143
-
144
- User-facing documentation. Use this structure:
145
-
146
- ```markdown
147
- # Your Skill Name
148
-
149
- **One-line description**
150
-
151
- Brief overview of what the skill does.
152
-
153
- ---
154
-
155
- ## What It Does
156
-
157
- - Feature 1
158
- - Feature 2
159
- - Feature 3
160
-
161
- **When to use:**
162
- - Use case 1
163
- - Use case 2
164
-
165
- **When NOT to use:**
166
- - Anti-pattern 1
167
- - Anti-pattern 2
168
-
169
- ---
170
-
171
- ## Quick Setup
172
-
173
- ### Step 1: Install
174
- [Installation command]
175
-
176
- ### Step 2: Configure
177
- [Configuration steps with verification]
178
-
179
- ### Step 3: Test
180
- [Test command]
181
-
182
- ---
183
-
184
- ## Usage Examples
185
-
186
- [Real-world examples with input/output]
187
-
188
- ---
189
-
190
- ## Troubleshooting
191
-
192
- [Common issues and solutions]
193
-
194
- ---
195
-
196
- ## Links
197
-
198
- - [Service website]
199
- - [API documentation]
200
- - [Report issues]
201
- ```
202
-
203
- ### Testing Checklist
204
-
205
- Before submitting, verify:
206
-
207
- - [ ] Skill triggers correctly for intended scenarios
208
- - [ ] Error handling works (missing API key, network errors, etc.)
209
- - [ ] Multi-language support (if applicable)
210
- - [ ] Documentation is clear and complete
211
- - [ ] Examples are realistic and helpful
212
- - [ ] All commands are copy-paste ready
213
- - [ ] Links work
214
- - [ ] Tested on Windows, macOS, or Linux
215
-
216
- ---
217
-
218
- ## Pull Request Guidelines
219
-
220
- ### Branch Naming
221
-
222
- Use descriptive branch names:
223
- - `feature/add-xyz-skill` - New skill
224
- - `fix/felo-search-encoding` - Bug fix
225
- - `docs/improve-readme` - Documentation
226
- - `refactor/skill-structure` - Code refactoring
227
-
228
- ### Commit Messages
229
-
230
- Follow this format:
231
- ```
232
- type: brief description
233
-
234
- Detailed explanation (if needed)
235
- ```
236
-
237
- Types:
238
- - `feat`: New feature or skill
239
- - `fix`: Bug fix
240
- - `docs`: Documentation changes
241
- - `refactor`: Code refactoring
242
- - `test`: Testing improvements
243
- - `chore`: Maintenance tasks
244
-
245
- Examples:
246
- ```
247
- feat: add weather-skill for real-time weather data
248
-
249
- Integrates OpenWeatherMap API to provide current weather,
250
- forecasts, and alerts. Supports multi-language queries.
251
-
252
- fix: handle Chinese characters in felo-search
253
-
254
- Use heredoc for JSON files to properly encode Chinese,
255
- Japanese, and Korean characters.
256
-
257
- docs: improve installation guide in README
258
-
259
- Add verification steps after each installation step
260
- to help users confirm setup is correct.
261
- ```
262
-
263
- ### Pull Request Description
264
-
265
- Include:
266
-
267
- 1. **What**: What does this PR do?
268
- 2. **Why**: Why is this change needed?
269
- 3. **How**: How does it work?
270
- 4. **Testing**: How did you test this?
271
- 5. **Screenshots**: (if applicable)
272
-
273
- Example:
274
- ```markdown
275
- ## What
276
- Adds a new skill for real-time weather information using OpenWeatherMap API.
277
-
278
- ## Why
279
- Users frequently ask about weather, and current web search is slow.
280
- Direct API integration provides faster, more accurate results.
281
-
282
- ## How
283
- - Integrates OpenWeatherMap API
284
- - Auto-triggers for weather-related queries
285
- - Supports location detection and multi-language
286
-
287
- ## Testing
288
- - Tested on Windows 11, macOS 14, Ubuntu 22.04
289
- - Verified with English, Chinese, Japanese queries
290
- - Tested error handling (invalid API key, network errors)
291
-
292
- ## Screenshots
293
- [Screenshot of weather query result]
294
- ```
295
-
296
- ### Review Process
297
-
298
- 1. Submit PR
299
- 2. Automated checks run (if configured)
300
- 3. Maintainers review code and documentation
301
- 4. Address feedback
302
- 5. PR merged
303
-
304
- ---
305
-
306
- ## Code of Conduct
307
-
308
- ### Be Respectful
309
-
310
- - Use welcoming and inclusive language
311
- - Respect differing viewpoints
312
- - Accept constructive criticism gracefully
313
- - Focus on what's best for the community
314
-
315
- ### Be Professional
316
-
317
- - Keep discussions on-topic
318
- - Avoid personal attacks
319
- - Don't spam or self-promote
320
- - Follow GitHub's terms of service
321
-
322
- ### Be Helpful
323
-
324
- - Help newcomers get started
325
- - Share knowledge and experience
326
- - Provide constructive feedback
327
- - Celebrate others' contributions
328
-
329
- ---
330
-
331
- ## Questions?
332
-
333
- - **Documentation**: Check [README](./README.md) and skill docs
334
- - **Discussions**: [GitHub Discussions](https://github.com/Felo-Inc/felo-skills/discussions)
335
- - **Issues**: [GitHub Issues](https://github.com/Felo-Inc/felo-skills/issues)
336
- - **Email**: support@felo.ai
337
-
338
- ---
339
-
340
- ## License
341
-
342
- By contributing, you agree that your contributions will be licensed under the MIT License.
343
-
344
- ---
345
-
346
- Thank you for contributing to Felo Skills! 🎉
1
+ # Contributing to Felo Skills
2
+
3
+ We welcome contributions! Whether you want to report bugs, suggest features, improve documentation, or add new skills.
4
+
5
+ ---
6
+
7
+ ## How to Contribute
8
+
9
+ ### 1. Report Bugs
10
+
11
+ Found a bug? [Open an issue](https://github.com/Felo-Inc/felo-skills/issues/new) with:
12
+ - Clear description of the problem
13
+ - Steps to reproduce
14
+ - Expected vs actual behavior
15
+ - Environment (OS, Claude Code version, skill version)
16
+ - Error messages or logs
17
+
18
+ ### 2. Suggest Features
19
+
20
+ Have an idea? [Start a discussion](https://github.com/Felo-Inc/felo-skills/discussions) or open an issue with:
21
+ - Use case description
22
+ - Why this feature is useful
23
+ - Proposed implementation (optional)
24
+
25
+ ### 3. Submit Code
26
+
27
+ Ready to code? Follow the pull request process below.
28
+
29
+ ---
30
+
31
+ ## Development Setup
32
+
33
+ ### Prerequisites
34
+
35
+ - Git
36
+ - Claude Code CLI
37
+ - Node.js (for testing npx installation)
38
+ - Text editor
39
+
40
+ ### Clone the Repository
41
+
42
+ ```bash
43
+ git clone https://github.com/Felo-Inc/felo-skills.git
44
+ cd felo-skills
45
+ ```
46
+
47
+ ### Test Locally
48
+
49
+ Copy a skill to your Claude Code skills directory:
50
+
51
+ ```bash
52
+ # Linux/macOS
53
+ cp -r felo-search ~/.claude/skills/
54
+
55
+ # Windows (PowerShell)
56
+ Copy-Item -Recurse felo-search "$env:USERPROFILE\.claude\skills\"
57
+ ```
58
+
59
+ Restart Claude Code:
60
+ ```bash
61
+ claude restart
62
+ ```
63
+
64
+ Test the skill:
65
+ ```
66
+ Ask Claude: "What's the weather today?"
67
+ ```
68
+
69
+ ---
70
+
71
+ ## Adding a New Skill
72
+
73
+ ### Folder Structure
74
+
75
+ Create a new folder for your skill:
76
+
77
+ ```
78
+ your-skill-name/
79
+ ├── SKILL.md # Skill implementation (required)
80
+ ├── README.md # User documentation (required)
81
+ └── LICENSE # MIT License (required)
82
+ ```
83
+
84
+ ### SKILL.md Format
85
+
86
+ The `SKILL.md` file defines how the skill works. Use this template:
87
+
88
+ ```markdown
89
+ ---
90
+ name: your-skill-name
91
+ description: "Brief description of when to use this skill. Include trigger keywords and use cases."
92
+ ---
93
+
94
+ # Your Skill Name
95
+
96
+ ## When to Use
97
+
98
+ List specific scenarios when this skill should trigger:
99
+ - Scenario 1
100
+ - Scenario 2
101
+ - Trigger keywords: "keyword1", "keyword2"
102
+
103
+ ## Setup
104
+
105
+ Step-by-step setup instructions:
106
+ 1. Get API key from [service]
107
+ 2. Set environment variable
108
+ 3. Test the skill
109
+
110
+ ## How to Execute
111
+
112
+ Detailed instructions for Claude Code on how to execute this skill:
113
+
114
+ ### Step 1: Check Prerequisites
115
+ [Bash commands to verify setup]
116
+
117
+ ### Step 2: Execute Main Logic
118
+ [Bash commands or tool calls to perform the skill's function]
119
+
120
+ ### Step 3: Format Response
121
+ [How to present results to the user]
122
+
123
+ ## Examples
124
+
125
+ ### Example 1: [Scenario]
126
+ **User asks:** "example query"
127
+ **You MUST do:** [step-by-step execution]
128
+
129
+ ## Error Handling
130
+
131
+ Common errors and solutions:
132
+ - Error 1: Solution
133
+ - Error 2: Solution
134
+
135
+ ## Important Notes
136
+
137
+ - Key implementation details
138
+ - Best practices
139
+ - Limitations
140
+ ```
141
+
142
+ ### README.md Format
143
+
144
+ User-facing documentation. Use this structure:
145
+
146
+ ```markdown
147
+ # Your Skill Name
148
+
149
+ **One-line description**
150
+
151
+ Brief overview of what the skill does.
152
+
153
+ ---
154
+
155
+ ## What It Does
156
+
157
+ - Feature 1
158
+ - Feature 2
159
+ - Feature 3
160
+
161
+ **When to use:**
162
+ - Use case 1
163
+ - Use case 2
164
+
165
+ **When NOT to use:**
166
+ - Anti-pattern 1
167
+ - Anti-pattern 2
168
+
169
+ ---
170
+
171
+ ## Quick Setup
172
+
173
+ ### Step 1: Install
174
+ [Installation command]
175
+
176
+ ### Step 2: Configure
177
+ [Configuration steps with verification]
178
+
179
+ ### Step 3: Test
180
+ [Test command]
181
+
182
+ ---
183
+
184
+ ## Usage Examples
185
+
186
+ [Real-world examples with input/output]
187
+
188
+ ---
189
+
190
+ ## Troubleshooting
191
+
192
+ [Common issues and solutions]
193
+
194
+ ---
195
+
196
+ ## Links
197
+
198
+ - [Service website]
199
+ - [API documentation]
200
+ - [Report issues]
201
+ ```
202
+
203
+ ### Testing Checklist
204
+
205
+ Before submitting, verify:
206
+
207
+ - [ ] Skill triggers correctly for intended scenarios
208
+ - [ ] Error handling works (missing API key, network errors, etc.)
209
+ - [ ] Multi-language support (if applicable)
210
+ - [ ] Documentation is clear and complete
211
+ - [ ] Examples are realistic and helpful
212
+ - [ ] All commands are copy-paste ready
213
+ - [ ] Links work
214
+ - [ ] Tested on Windows, macOS, or Linux
215
+
216
+ ---
217
+
218
+ ## Pull Request Guidelines
219
+
220
+ ### Branch Naming
221
+
222
+ Use descriptive branch names:
223
+ - `feature/add-xyz-skill` - New skill
224
+ - `fix/felo-search-encoding` - Bug fix
225
+ - `docs/improve-readme` - Documentation
226
+ - `refactor/skill-structure` - Code refactoring
227
+
228
+ ### Commit Messages
229
+
230
+ Follow this format:
231
+ ```
232
+ type: brief description
233
+
234
+ Detailed explanation (if needed)
235
+ ```
236
+
237
+ Types:
238
+ - `feat`: New feature or skill
239
+ - `fix`: Bug fix
240
+ - `docs`: Documentation changes
241
+ - `refactor`: Code refactoring
242
+ - `test`: Testing improvements
243
+ - `chore`: Maintenance tasks
244
+
245
+ Examples:
246
+ ```
247
+ feat: add weather-skill for real-time weather data
248
+
249
+ Integrates OpenWeatherMap API to provide current weather,
250
+ forecasts, and alerts. Supports multi-language queries.
251
+
252
+ fix: handle Chinese characters in felo-search
253
+
254
+ Use heredoc for JSON files to properly encode Chinese,
255
+ Japanese, and Korean characters.
256
+
257
+ docs: improve installation guide in README
258
+
259
+ Add verification steps after each installation step
260
+ to help users confirm setup is correct.
261
+ ```
262
+
263
+ ### Pull Request Description
264
+
265
+ Include:
266
+
267
+ 1. **What**: What does this PR do?
268
+ 2. **Why**: Why is this change needed?
269
+ 3. **How**: How does it work?
270
+ 4. **Testing**: How did you test this?
271
+ 5. **Screenshots**: (if applicable)
272
+
273
+ Example:
274
+ ```markdown
275
+ ## What
276
+ Adds a new skill for real-time weather information using OpenWeatherMap API.
277
+
278
+ ## Why
279
+ Users frequently ask about weather, and current web search is slow.
280
+ Direct API integration provides faster, more accurate results.
281
+
282
+ ## How
283
+ - Integrates OpenWeatherMap API
284
+ - Auto-triggers for weather-related queries
285
+ - Supports location detection and multi-language
286
+
287
+ ## Testing
288
+ - Tested on Windows 11, macOS 14, Ubuntu 22.04
289
+ - Verified with English, Chinese, Japanese queries
290
+ - Tested error handling (invalid API key, network errors)
291
+
292
+ ## Screenshots
293
+ [Screenshot of weather query result]
294
+ ```
295
+
296
+ ### Review Process
297
+
298
+ 1. Submit PR
299
+ 2. Automated checks run (if configured)
300
+ 3. Maintainers review code and documentation
301
+ 4. Address feedback
302
+ 5. PR merged
303
+
304
+ ---
305
+
306
+ ## Code of Conduct
307
+
308
+ ### Be Respectful
309
+
310
+ - Use welcoming and inclusive language
311
+ - Respect differing viewpoints
312
+ - Accept constructive criticism gracefully
313
+ - Focus on what's best for the community
314
+
315
+ ### Be Professional
316
+
317
+ - Keep discussions on-topic
318
+ - Avoid personal attacks
319
+ - Don't spam or self-promote
320
+ - Follow GitHub's terms of service
321
+
322
+ ### Be Helpful
323
+
324
+ - Help newcomers get started
325
+ - Share knowledge and experience
326
+ - Provide constructive feedback
327
+ - Celebrate others' contributions
328
+
329
+ ---
330
+
331
+ ## Questions?
332
+
333
+ - **Documentation**: Check [README](./README.md) and skill docs
334
+ - **Discussions**: [GitHub Discussions](https://github.com/Felo-Inc/felo-skills/discussions)
335
+ - **Issues**: [GitHub Issues](https://github.com/Felo-Inc/felo-skills/issues)
336
+ - **Email**: support@felo.ai
337
+
338
+ ---
339
+
340
+ ## License
341
+
342
+ By contributing, you agree that your contributions will be licensed under the MIT License.
343
+
344
+ ---
345
+
346
+ Thank you for contributing to Felo Skills! 🎉