@anysiteio/agent-skills 1.3.0 → 2.0.0
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/.claude-plugin/marketplace.json +61 -1
- package/.claude-plugin/plugin.json +5 -1
- package/README.md +27 -33
- package/bin/install.js +186 -135
- package/bundles.json +19 -0
- package/package.json +3 -2
- package/skills/anysite-audience-analysis/SKILL.md +110 -38
- package/skills/anysite-audience-analysis/references/PLATFORM_COVERAGE.md +38 -19
- package/skills/anysite-audience-analysis/references/TOOL_MAPPING.md +16 -11
- package/skills/anysite-brand-reputation/SKILL.md +105 -43
- package/skills/anysite-competitor-analyzer/SKILL.md +170 -111
- package/skills/anysite-competitor-intelligence/SKILL.md +201 -116
- package/skills/anysite-competitor-intelligence/references/ANALYSIS_PATTERNS.md +17 -13
- package/skills/anysite-content-analytics/SKILL.md +101 -33
- package/skills/anysite-crm-account-brief/SKILL.md +71 -0
- package/skills/anysite-crm-audit/SKILL.md +59 -0
- package/skills/anysite-crm-champions/SKILL.md +76 -0
- package/skills/anysite-crm-competitor-intel/SKILL.md +74 -0
- package/skills/anysite-crm-enrich/SKILL.md +84 -0
- package/skills/anysite-crm-lookalikes/SKILL.md +64 -0
- package/skills/anysite-crm-prospect/SKILL.md +90 -0
- package/skills/anysite-crm-score/SKILL.md +72 -0
- package/skills/anysite-crm-setup/SKILL.md +147 -0
- package/skills/anysite-crm-signals/SKILL.md +96 -0
- package/skills/anysite-influencer-discovery/SKILL.md +123 -71
- package/skills/anysite-lead-generation/SKILL.md +288 -256
- package/skills/anysite-lead-generation/references/LINKEDIN_STRATEGIES.md +79 -71
- package/skills/anysite-lead-generation/references/WEB_SCRAPING.md +121 -87
- package/skills/anysite-market-research/SKILL.md +117 -68
- package/skills/anysite-mcp/SKILL.md +128 -0
- package/skills/anysite-mcp-migration/SKILL.md +290 -0
- package/skills/anysite-person-analyzer/SKILL.md +86 -53
- package/skills/anysite-trend-analysis/SKILL.md +119 -55
- package/skills/anysite-vc-analyst/SKILL.md +12 -2
- package/skills/competitor-discovery/SKILL.md +350 -0
- package/skills/customer-pain-mining/SKILL.md +318 -0
- package/skills/positioning-map/SKILL.md +314 -0
|
@@ -19,25 +19,42 @@ Discover emerging trends and track viral content across social platforms using a
|
|
|
19
19
|
|
|
20
20
|
## Supported Platforms
|
|
21
21
|
|
|
22
|
-
-
|
|
23
|
-
-
|
|
24
|
-
-
|
|
25
|
-
-
|
|
26
|
-
-
|
|
22
|
+
- **Twitter/X**: Trending topics, viral tweets, hashtag tracking
|
|
23
|
+
- **Reddit**: Trending posts, subreddit activity, upvote velocity
|
|
24
|
+
- **YouTube**: Trending videos, search trends, rising channels
|
|
25
|
+
- **LinkedIn**: Professional trends, industry discussions
|
|
26
|
+
- **Instagram**: Trending hashtags, viral content
|
|
27
|
+
|
|
28
|
+
## v2 Tool Interface
|
|
29
|
+
|
|
30
|
+
All data fetching uses the universal `execute()` meta-tool. Always call `discover(source, category)` first if you need to verify endpoint names or available parameters.
|
|
31
|
+
|
|
32
|
+
**Core tools**:
|
|
33
|
+
- `execute(source, category, endpoint, params)` - Fetch data. Returns first page + `cache_key`.
|
|
34
|
+
- `get_page(cache_key, offset, limit)` - Load more results from a previous execute.
|
|
35
|
+
- `query_cache(cache_key, conditions, sort_by, aggregate, group_by)` - Filter, sort, or aggregate cached data without new API calls.
|
|
36
|
+
- `export_data(cache_key, format)` - Export full dataset as CSV, JSON, or JSONL.
|
|
37
|
+
|
|
38
|
+
**Error handling**: If execute() returns an error with `llm_hint`, follow the hint to fix the request (e.g., correcting a parameter name or adjusting the query).
|
|
27
39
|
|
|
28
40
|
## Quick Start
|
|
29
41
|
|
|
30
42
|
**Step 1: Search for Trending Content**
|
|
31
43
|
|
|
32
44
|
By platform:
|
|
33
|
-
- Twitter: `
|
|
34
|
-
- Reddit: `
|
|
35
|
-
- YouTube: `
|
|
36
|
-
- LinkedIn: `
|
|
37
|
-
- Instagram: `
|
|
45
|
+
- Twitter: `execute("twitter", "search", "search_tweets", {"query": "<topic>", "count": 100})` sorted by engagement
|
|
46
|
+
- Reddit: `execute("reddit", "search", "search", {"query": "<topic>"})` sorted by upvotes
|
|
47
|
+
- YouTube: `execute("youtube", "search", "search_videos", {"query": "<topic>", "count": 50})` by recent
|
|
48
|
+
- LinkedIn: `execute("linkedin", "post", "search_posts", {"keywords": "<topic>"})` by engagement
|
|
49
|
+
- Instagram: `execute("instagram", "search", "search_users", {"query": "<topic>"})` for hashtag/topic discovery
|
|
38
50
|
|
|
39
51
|
**Step 2: Analyze Momentum**
|
|
40
52
|
|
|
53
|
+
Use `query_cache()` to filter and sort cached results:
|
|
54
|
+
```
|
|
55
|
+
query_cache(cache_key, sort_by="engagement_desc", conditions=[{"field": "date", "op": ">", "value": "2024-01-01"}])
|
|
56
|
+
```
|
|
57
|
+
|
|
41
58
|
Check indicators:
|
|
42
59
|
- Engagement velocity (growth rate)
|
|
43
60
|
- Cross-platform presence
|
|
@@ -54,6 +71,8 @@ Monitor changes:
|
|
|
54
71
|
|
|
55
72
|
**Step 4: Report Insights**
|
|
56
73
|
|
|
74
|
+
Use `export_data(cache_key, "csv")` to generate downloadable reports.
|
|
75
|
+
|
|
57
76
|
Deliver:
|
|
58
77
|
- Trending topics list
|
|
59
78
|
- Momentum indicators
|
|
@@ -71,23 +90,46 @@ Deliver:
|
|
|
71
90
|
1. **Search Across Platforms**
|
|
72
91
|
```
|
|
73
92
|
# Twitter
|
|
74
|
-
|
|
75
|
-
Filter for: Posted within 24-48h, high engagement
|
|
93
|
+
execute("twitter", "search", "search_tweets", {"query": "AI OR artificial intelligence", "count": 100})
|
|
94
|
+
→ Filter for: Posted within 24-48h, high engagement
|
|
95
|
+
→ Save cache_key as twitter_cache
|
|
76
96
|
|
|
77
97
|
# Reddit
|
|
78
|
-
|
|
79
|
-
Filter: r/technology, r/MachineLearning, r/singularity
|
|
98
|
+
execute("reddit", "search", "search", {"query": "artificial intelligence"})
|
|
99
|
+
→ Filter: r/technology, r/MachineLearning, r/singularity
|
|
100
|
+
→ Save cache_key as reddit_cache
|
|
80
101
|
|
|
81
102
|
# YouTube
|
|
82
|
-
|
|
83
|
-
Filter: Published this week, views >10k
|
|
103
|
+
execute("youtube", "search", "search_videos", {"query": "AI news", "count": 50})
|
|
104
|
+
→ Filter: Published this week, views >10k
|
|
105
|
+
→ Save cache_key as youtube_cache
|
|
84
106
|
|
|
85
107
|
# LinkedIn
|
|
86
|
-
|
|
87
|
-
Filter: High engagement, recent
|
|
108
|
+
execute("linkedin", "post", "search_posts", {"keywords": "artificial intelligence"})
|
|
109
|
+
→ Filter: High engagement, recent
|
|
110
|
+
→ Save cache_key as linkedin_cache
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
2. **Use query_cache to Filter Results**
|
|
88
114
|
```
|
|
115
|
+
# Filter Twitter for high-engagement posts
|
|
116
|
+
query_cache(twitter_cache, sort_by="engagement_desc", conditions=[{"field": "likes", "op": ">", "value": 100}])
|
|
117
|
+
|
|
118
|
+
# Filter Reddit for specific subreddits
|
|
119
|
+
query_cache(reddit_cache, conditions=[{"field": "subreddit", "op": "contains", "value": "technology"}])
|
|
89
120
|
|
|
90
|
-
|
|
121
|
+
# Aggregate YouTube view counts
|
|
122
|
+
query_cache(youtube_cache, aggregate={"field": "views", "op": "avg"})
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
3. **Load More Results if Needed**
|
|
126
|
+
```
|
|
127
|
+
# If execute() returned next_offset, paginate
|
|
128
|
+
get_page(twitter_cache, offset=10, limit=50)
|
|
129
|
+
get_page(reddit_cache, offset=10, limit=50)
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
4. **Extract Common Themes**
|
|
91
133
|
```
|
|
92
134
|
Analyze content for recurring:
|
|
93
135
|
- Keywords and phrases
|
|
@@ -96,7 +138,7 @@ Analyze content for recurring:
|
|
|
96
138
|
- Questions or concerns
|
|
97
139
|
```
|
|
98
140
|
|
|
99
|
-
|
|
141
|
+
5. **Calculate Trend Score**
|
|
100
142
|
```
|
|
101
143
|
For each theme:
|
|
102
144
|
- Platform count (how many platforms)
|
|
@@ -105,7 +147,7 @@ For each theme:
|
|
|
105
147
|
- Sentiment distribution
|
|
106
148
|
```
|
|
107
149
|
|
|
108
|
-
|
|
150
|
+
6. **Identify Breakout Trends**
|
|
109
151
|
```
|
|
110
152
|
Trends with:
|
|
111
153
|
- Presence on 3+ platforms
|
|
@@ -128,21 +170,27 @@ Trends with:
|
|
|
128
170
|
|
|
129
171
|
1. **Search by Hashtag**
|
|
130
172
|
```
|
|
131
|
-
# Instagram
|
|
132
|
-
|
|
133
|
-
|
|
173
|
+
# Instagram - discover users/content around the hashtag
|
|
174
|
+
execute("instagram", "search", "search_users", {"query": "sustainability"})
|
|
175
|
+
→ Save cache_key as ig_cache
|
|
134
176
|
|
|
135
177
|
# Twitter
|
|
136
|
-
|
|
137
|
-
Track tweet volume over time
|
|
178
|
+
execute("twitter", "search", "search_tweets", {"query": "#sustainability", "count": 100})
|
|
179
|
+
→ Track tweet volume over time
|
|
180
|
+
→ Save cache_key as tw_cache
|
|
138
181
|
|
|
139
182
|
# LinkedIn
|
|
140
|
-
|
|
141
|
-
Check professional adoption
|
|
183
|
+
execute("linkedin", "post", "search_posts", {"keywords": "sustainability"})
|
|
184
|
+
→ Check professional adoption
|
|
185
|
+
→ Save cache_key as li_cache
|
|
142
186
|
```
|
|
143
187
|
|
|
144
|
-
2. **Calculate Velocity**
|
|
188
|
+
2. **Calculate Velocity with query_cache**
|
|
145
189
|
```
|
|
190
|
+
# Sort by recency and engagement
|
|
191
|
+
query_cache(tw_cache, sort_by="date_desc")
|
|
192
|
+
query_cache(ig_cache, sort_by="followers_desc")
|
|
193
|
+
|
|
146
194
|
Hashtag velocity:
|
|
147
195
|
- Posts in last 24h vs. previous 24h
|
|
148
196
|
- Engagement rate change
|
|
@@ -159,7 +207,14 @@ Compare early vs. recent posts:
|
|
|
159
207
|
- Commercial adoption
|
|
160
208
|
```
|
|
161
209
|
|
|
162
|
-
4. **
|
|
210
|
+
4. **Export Results**
|
|
211
|
+
```
|
|
212
|
+
export_data(tw_cache, "csv")
|
|
213
|
+
export_data(ig_cache, "json")
|
|
214
|
+
→ Share downloadable reports
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
5. **Predict Peak**
|
|
163
218
|
```
|
|
164
219
|
Based on growth curve:
|
|
165
220
|
- Early stage (accelerating)
|
|
@@ -181,18 +236,22 @@ Based on growth curve:
|
|
|
181
236
|
|
|
182
237
|
1. **Search Target Subreddits**
|
|
183
238
|
```
|
|
184
|
-
|
|
185
|
-
query="",
|
|
186
|
-
subreddit="technology"
|
|
187
|
-
)
|
|
239
|
+
execute("reddit", "posts", "get", {"subreddit": "technology"})
|
|
188
240
|
→ Get top posts from last week
|
|
241
|
+
→ Save cache_key as reddit_tech_cache
|
|
189
242
|
```
|
|
190
243
|
|
|
191
244
|
2. **Analyze Post Momentum**
|
|
192
245
|
```
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
246
|
+
# Sort cached posts by engagement
|
|
247
|
+
query_cache(reddit_tech_cache, sort_by="upvotes_desc")
|
|
248
|
+
|
|
249
|
+
# Aggregate engagement metrics
|
|
250
|
+
query_cache(reddit_tech_cache, aggregate={"field": "upvotes", "op": "avg"})
|
|
251
|
+
|
|
252
|
+
For each high-momentum post:
|
|
253
|
+
execute("reddit", "search", "search", {"query": "<post topic>"})
|
|
254
|
+
→ Deeper analysis
|
|
196
255
|
|
|
197
256
|
Calculate:
|
|
198
257
|
- Upvotes per hour
|
|
@@ -213,9 +272,9 @@ From high-momentum posts:
|
|
|
213
272
|
4. **Track Cross-Pollination**
|
|
214
273
|
```
|
|
215
274
|
Check if trending Reddit topics appear on:
|
|
216
|
-
- Twitter (
|
|
217
|
-
- LinkedIn (
|
|
218
|
-
- YouTube (
|
|
275
|
+
- Twitter: execute("twitter", "search", "search_tweets", {"query": "<topic>"})
|
|
276
|
+
- LinkedIn: execute("linkedin", "post", "search_posts", {"keywords": "<topic>"})
|
|
277
|
+
- YouTube: execute("youtube", "search", "search_videos", {"query": "<topic>"})
|
|
219
278
|
```
|
|
220
279
|
|
|
221
280
|
**Expected Output**:
|
|
@@ -224,29 +283,34 @@ Check if trending Reddit topics appear on:
|
|
|
224
283
|
- Mainstream potential
|
|
225
284
|
- Early mover opportunities
|
|
226
285
|
|
|
227
|
-
## MCP Tools Reference
|
|
286
|
+
## MCP Tools Reference (v2)
|
|
228
287
|
|
|
229
288
|
### Twitter/X
|
|
230
|
-
- `
|
|
231
|
-
- `
|
|
289
|
+
- `execute("twitter", "search", "search_tweets", {"query": ..., "count": N})` - Find tweets, filter by engagement
|
|
290
|
+
- `execute("twitter", "user", "get", {"username": ...})` - Check influencer adoption
|
|
232
291
|
|
|
233
292
|
### Reddit
|
|
234
|
-
- `
|
|
235
|
-
- `
|
|
236
|
-
- `
|
|
293
|
+
- `execute("reddit", "search", "search", {"query": ...,})` - Find discussions
|
|
294
|
+
- `execute("reddit", "posts", "get", {"subreddit": ...})` - Get subreddit posts and momentum
|
|
295
|
+
- `execute("reddit", "user", "get", {"username": ...})` - Get user details
|
|
237
296
|
|
|
238
297
|
### YouTube
|
|
239
|
-
- `
|
|
240
|
-
- `
|
|
241
|
-
- `
|
|
298
|
+
- `execute("youtube", "search", "search_videos", {"query": ..., "count": N})` - Find trending videos
|
|
299
|
+
- `execute("youtube", "video", "video", {"video": ...})` - Track view velocity
|
|
300
|
+
- `execute("youtube", "video", "video_comments", {"video": ..., "count": N})` - Gauge interest
|
|
242
301
|
|
|
243
302
|
### LinkedIn
|
|
244
|
-
- `
|
|
245
|
-
- `
|
|
303
|
+
- `execute("linkedin", "post", "search_posts", {"keywords": ...})` - Professional trends
|
|
304
|
+
- `execute("linkedin", "company", "get", {"company": ...})` - Company details
|
|
246
305
|
|
|
247
306
|
### Instagram
|
|
248
|
-
- `
|
|
249
|
-
- `
|
|
307
|
+
- `execute("instagram", "search", "search_users", {"query": ...})` - Discover users/hashtags
|
|
308
|
+
- `execute("instagram", "post", "post", {"post": ...})` - Engagement metrics
|
|
309
|
+
|
|
310
|
+
### Pagination & Analysis
|
|
311
|
+
- `get_page(cache_key, offset, limit)` - Load additional results from any execute() call
|
|
312
|
+
- `query_cache(cache_key, conditions, sort_by, aggregate, group_by)` - Filter, sort, aggregate cached data
|
|
313
|
+
- `export_data(cache_key, "csv"|"json"|"jsonl")` - Export datasets for reporting
|
|
250
314
|
|
|
251
315
|
## Trend Identification Framework
|
|
252
316
|
|
|
@@ -291,12 +355,12 @@ Check if trending Reddit topics appear on:
|
|
|
291
355
|
- Platform breakdown
|
|
292
356
|
- Strategic recommendations
|
|
293
357
|
|
|
294
|
-
**CSV Export
|
|
358
|
+
**CSV Export** (via `export_data(cache_key, "csv")`):
|
|
295
359
|
- Trend name, platforms, volume
|
|
296
360
|
- Growth rate, sentiment
|
|
297
361
|
- Key influencers mentioning
|
|
298
362
|
|
|
299
|
-
**JSON Export
|
|
363
|
+
**JSON Export** (via `export_data(cache_key, "json")`):
|
|
300
364
|
- Complete trend data
|
|
301
365
|
- Time-series metrics
|
|
302
366
|
- Cross-platform correlations
|
|
@@ -28,7 +28,7 @@ AskUserQuestion:
|
|
|
28
28
|
|
|
29
29
|
### Step 2: Fetch & Analyze Project
|
|
30
30
|
|
|
31
|
-
1. **Website**: Use `
|
|
31
|
+
1. **Website**: Use `execute("webparser", "parse", "parse", {"url": website})` to understand:
|
|
32
32
|
- Product/service description
|
|
33
33
|
- Target market
|
|
34
34
|
- Key features
|
|
@@ -163,11 +163,13 @@ After onboarding, analyze investors from CSV or list.
|
|
|
163
163
|
### 1. Fetch LinkedIn Profile (ALWAYS FIRST)
|
|
164
164
|
|
|
165
165
|
```
|
|
166
|
-
|
|
166
|
+
execute("linkedin", "user", "get", {"user": "linkedin-url-or-username"})
|
|
167
167
|
```
|
|
168
168
|
|
|
169
169
|
CSV data has ~20% error rate. Always verify actual role before scoring.
|
|
170
170
|
|
|
171
|
+
> **v2 tip:** The `execute()` call returns a `cache_key`. Use `query_cache(cache_key, ...)` to filter/sort results without re-fetching. Use `get_page(cache_key, offset, limit)` if paginated results exist. Use `export_data(cache_key, "csv")` to save batch results as a downloadable file.
|
|
172
|
+
|
|
171
173
|
### 2. Score Investor (0-100)
|
|
172
174
|
|
|
173
175
|
| Factor | Weight | Check |
|
|
@@ -253,6 +255,14 @@ Best,
|
|
|
253
255
|
}
|
|
254
256
|
```
|
|
255
257
|
|
|
258
|
+
### v2 Batch Features
|
|
259
|
+
|
|
260
|
+
- **Pagination**: When `execute()` returns `next_offset`, use `get_page(cache_key, offset, limit)` to fetch additional results without re-running the query.
|
|
261
|
+
- **Filtering & Sorting**: Use `query_cache(cache_key, conditions=[{"field": "score", "op": ">", "value": 70}], sort_by=[{"field": "score", "order": "desc"}])` to filter high-scoring investors from cached results.
|
|
262
|
+
- **Aggregation**: Use `query_cache(cache_key, aggregate=[{"op": "avg", "field": "score"}])` to compute batch statistics.
|
|
263
|
+
- **Export**: Use `export_data(cache_key, "csv")` to generate a downloadable CSV of all analyzed investors.
|
|
264
|
+
- **Error handling**: If `execute()` returns an error with `llm_hint`, follow the hint to fix params. Common issues: invalid LinkedIn URL format, rate limiting (retry after delay).
|
|
265
|
+
|
|
256
266
|
---
|
|
257
267
|
|
|
258
268
|
## Quick Commands
|