rss-agent-discovery 0.1.1 → 0.1.3
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/README.md +36 -19
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -23,11 +23,23 @@ npm install
|
|
|
23
23
|
npm run build
|
|
24
24
|
```
|
|
25
25
|
|
|
26
|
+
### Agent Skills
|
|
27
|
+
|
|
28
|
+
Install the `skills/rss-agent-discovery` skill with the Skills CLI:
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
npx skills add <owner/repo>
|
|
32
|
+
# example:
|
|
33
|
+
npx skills add brooksy4503/rss-agent-discovery
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
More info about the Skills CLI: https://skills.sh/
|
|
37
|
+
|
|
26
38
|
## Usage
|
|
27
39
|
|
|
28
40
|
### Basic usage:
|
|
29
41
|
```bash
|
|
30
|
-
|
|
42
|
+
node dist/find-rss-feeds.js https://vercel.com
|
|
31
43
|
```
|
|
32
44
|
|
|
33
45
|
Or via CLI (after `npm link`):
|
|
@@ -37,44 +49,49 @@ rss-discover https://vercel.com
|
|
|
37
49
|
|
|
38
50
|
### Multiple URLs (parallel processing):
|
|
39
51
|
```bash
|
|
40
|
-
|
|
52
|
+
node dist/find-rss-feeds.js https://vercel.com https://news.ycombinator.com https://stripe.com
|
|
41
53
|
```
|
|
42
54
|
|
|
43
55
|
### Parse with jq:
|
|
44
56
|
```bash
|
|
45
|
-
|
|
57
|
+
node dist/find-rss-feeds.js https://vercel.com | jq '.results[0].feeds'
|
|
46
58
|
```
|
|
47
59
|
|
|
48
60
|
### Custom timeout:
|
|
49
61
|
```bash
|
|
50
|
-
|
|
62
|
+
node dist/find-rss-feeds.js --timeout 15000 https://example.com
|
|
51
63
|
```
|
|
52
64
|
|
|
53
65
|
### Skip blog scanning:
|
|
54
66
|
```bash
|
|
55
|
-
|
|
67
|
+
node dist/find-rss-feeds.js --skip-blogs https://example.com
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### Limit blog scans:
|
|
71
|
+
```bash
|
|
72
|
+
node dist/find-rss-feeds.js --max-blogs 3 https://example.com
|
|
56
73
|
```
|
|
57
74
|
|
|
58
75
|
### Custom blog paths:
|
|
59
76
|
```bash
|
|
60
|
-
|
|
77
|
+
node dist/find-rss-feeds.js --blog-paths '/blog,/news' https://example.com
|
|
61
78
|
# or with pipe separator
|
|
62
|
-
|
|
79
|
+
node dist/find-rss-feeds.js --blog-paths '/blog|/updates' https://example.com
|
|
63
80
|
```
|
|
64
81
|
|
|
65
82
|
### Verbose mode (debug logging):
|
|
66
83
|
```bash
|
|
67
|
-
|
|
84
|
+
node dist/find-rss-feeds.js --verbose https://example.com
|
|
68
85
|
```
|
|
69
86
|
|
|
70
87
|
### Show help:
|
|
71
88
|
```bash
|
|
72
|
-
|
|
89
|
+
node dist/find-rss-feeds.js --help
|
|
73
90
|
```
|
|
74
91
|
|
|
75
92
|
### Show version:
|
|
76
93
|
```bash
|
|
77
|
-
|
|
94
|
+
node dist/find-rss-feeds.js --version
|
|
78
95
|
# or
|
|
79
96
|
rss-discover --version
|
|
80
97
|
```
|
|
@@ -138,7 +155,7 @@ npm run test:smoke # Run smoke tests (integration)
|
|
|
138
155
|
|
|
139
156
|
### Find feeds for Vercel:
|
|
140
157
|
```bash
|
|
141
|
-
|
|
158
|
+
node dist/find-rss-feeds.js https://vercel.com
|
|
142
159
|
```
|
|
143
160
|
|
|
144
161
|
Output:
|
|
@@ -159,19 +176,19 @@ Output:
|
|
|
159
176
|
|
|
160
177
|
### Check exit code:
|
|
161
178
|
```bash
|
|
162
|
-
|
|
179
|
+
node dist/find-rss-feeds.js https://vercel.com 2>/dev/null
|
|
163
180
|
echo $? # Outputs: 0
|
|
164
181
|
```
|
|
165
182
|
|
|
166
183
|
### No feeds found:
|
|
167
184
|
```bash
|
|
168
|
-
|
|
185
|
+
node dist/find-rss-feeds.js https://example.com 2>/dev/null
|
|
169
186
|
echo $? # Outputs: 1
|
|
170
187
|
```
|
|
171
188
|
|
|
172
189
|
### Parallel scan:
|
|
173
190
|
```bash
|
|
174
|
-
|
|
191
|
+
node dist/find-rss-feeds.js https://vercel.com https://news.ycombinator.com | jq
|
|
175
192
|
```
|
|
176
193
|
|
|
177
194
|
## Integration Example
|
|
@@ -211,7 +228,7 @@ This tool is designed to work seamlessly with AI coding agents:
|
|
|
211
228
|
### Opencode / Claude Code
|
|
212
229
|
```bash
|
|
213
230
|
# Opencode can call this tool directly
|
|
214
|
-
npx rss-agent-discovery https://example.com | jq '.results[0].feeds[].url'
|
|
231
|
+
npx -y rss-agent-discovery https://example.com | jq '.results[0].feeds[].url'
|
|
215
232
|
```
|
|
216
233
|
|
|
217
234
|
### Cursor
|
|
@@ -219,7 +236,7 @@ Cursor can integrate this as a custom tool:
|
|
|
219
236
|
```json
|
|
220
237
|
{
|
|
221
238
|
"name": "rss_discovery",
|
|
222
|
-
"command": "npx rss-agent-discovery {url}",
|
|
239
|
+
"command": "npx -y rss-agent-discovery {url}",
|
|
223
240
|
"description": "Discover RSS feeds from a website"
|
|
224
241
|
}
|
|
225
242
|
```
|
|
@@ -229,7 +246,7 @@ Cursor can integrate this as a custom tool:
|
|
|
229
246
|
// Use in GitHub Actions or workflows
|
|
230
247
|
const { execSync } = require('child_process');
|
|
231
248
|
const result = JSON.parse(
|
|
232
|
-
execSync('npx rss-agent-discovery https://github.com/blog').toString()
|
|
249
|
+
execSync('npx -y rss-agent-discovery https://github.com/blog').toString()
|
|
233
250
|
);
|
|
234
251
|
```
|
|
235
252
|
|
|
@@ -239,7 +256,7 @@ const result = JSON.parse(
|
|
|
239
256
|
import { spawn } from 'child_process';
|
|
240
257
|
|
|
241
258
|
async function discoverRSS(url: string) {
|
|
242
|
-
const proc = spawn('npx', ['rss-agent-discovery', url]);
|
|
259
|
+
const proc = spawn('npx', ['-y', 'rss-agent-discovery', url]);
|
|
243
260
|
const chunks: Buffer[] = [];
|
|
244
261
|
|
|
245
262
|
for await (const chunk of proc.stdout) {
|
|
@@ -252,7 +269,7 @@ async function discoverRSS(url: string) {
|
|
|
252
269
|
|
|
253
270
|
### Why AI Agents Need This Tool
|
|
254
271
|
|
|
255
|
-
AI agents (Claude, Cursor,
|
|
272
|
+
AI agents (Claude, Cursor, ChatGPT Codex) struggle with RSS discovery because:
|
|
256
273
|
- They rely on web search which may miss feeds
|
|
257
274
|
- They don't systematically parse HTML `<link>` tags
|
|
258
275
|
- They give up after trying 2-3 common paths
|