@framers/agentos-skills-registry 0.2.0 → 0.2.1

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 (62) hide show
  1. package/CONTRIBUTING.md +225 -0
  2. package/README.md +120 -49
  3. package/dist/catalog.d.ts +5 -6
  4. package/dist/catalog.d.ts.map +1 -1
  5. package/dist/catalog.js +36 -206
  6. package/dist/catalog.js.map +1 -1
  7. package/dist/index.d.ts +12 -4
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +16 -14
  10. package/dist/index.js.map +1 -1
  11. package/dist/schema-types.d.ts +79 -0
  12. package/dist/schema-types.d.ts.map +1 -0
  13. package/dist/schema-types.js +11 -0
  14. package/dist/schema-types.js.map +1 -0
  15. package/dist/workspace-discovery.d.ts +84 -0
  16. package/dist/workspace-discovery.d.ts.map +1 -0
  17. package/dist/workspace-discovery.js +211 -0
  18. package/dist/workspace-discovery.js.map +1 -0
  19. package/package.json +18 -8
  20. package/registry/community/.gitkeep +0 -0
  21. package/registry/curated/1password/SKILL.md +53 -0
  22. package/registry/curated/account-manager/SKILL.md +60 -0
  23. package/registry/curated/apple-notes/SKILL.md +45 -0
  24. package/registry/curated/apple-reminders/SKILL.md +46 -0
  25. package/registry/curated/blog-publisher/SKILL.md +110 -0
  26. package/registry/curated/bluesky-bot/SKILL.md +93 -0
  27. package/registry/curated/cloud-ops/SKILL.md +124 -0
  28. package/registry/curated/coding-agent/SKILL.md +40 -0
  29. package/registry/curated/content-creator/SKILL.md +53 -0
  30. package/registry/curated/deep-research/SKILL.md +56 -0
  31. package/registry/curated/discord-helper/SKILL.md +43 -0
  32. package/registry/curated/facebook-bot/SKILL.md +94 -0
  33. package/registry/curated/git/SKILL.md +39 -0
  34. package/registry/curated/github/SKILL.md +54 -0
  35. package/registry/curated/healthcheck/SKILL.md +43 -0
  36. package/registry/curated/image-gen/SKILL.md +44 -0
  37. package/registry/curated/instagram-bot/SKILL.md +60 -0
  38. package/registry/curated/linkedin-bot/SKILL.md +86 -0
  39. package/registry/curated/mastodon-bot/SKILL.md +104 -0
  40. package/registry/curated/notion/SKILL.md +43 -0
  41. package/registry/curated/obsidian/SKILL.md +42 -0
  42. package/registry/curated/pinterest-bot/SKILL.md +45 -0
  43. package/registry/curated/reddit-bot/SKILL.md +62 -0
  44. package/registry/curated/seo-campaign/SKILL.md +51 -0
  45. package/registry/curated/site-deploy/SKILL.md +119 -0
  46. package/registry/curated/slack-helper/SKILL.md +43 -0
  47. package/registry/curated/social-broadcast/SKILL.md +145 -0
  48. package/registry/curated/spotify-player/SKILL.md +45 -0
  49. package/registry/curated/summarize/SKILL.md +40 -0
  50. package/registry/curated/threads-bot/SKILL.md +82 -0
  51. package/registry/curated/tiktok-bot/SKILL.md +104 -0
  52. package/registry/curated/trello/SKILL.md +44 -0
  53. package/registry/curated/twitter-bot/SKILL.md +63 -0
  54. package/registry/curated/weather/SKILL.md +37 -0
  55. package/registry/curated/web-scraper/SKILL.md +60 -0
  56. package/registry/curated/web-search/SKILL.md +49 -0
  57. package/registry/curated/whisper-transcribe/SKILL.md +58 -0
  58. package/registry/curated/youtube-bot/SKILL.md +104 -0
  59. package/registry.json +1426 -0
  60. package/scripts/update-registry.mjs +126 -0
  61. package/scripts/validate-skill.mjs +298 -0
  62. package/types.d.ts +77 -0
package/registry.json ADDED
@@ -0,0 +1,1426 @@
1
+ {
2
+ "version": "1.0.0",
3
+ "updated": "2026-03-05T06:35:42.604Z",
4
+ "categories": {
5
+ "curated": [
6
+ "1password",
7
+ "account-manager",
8
+ "apple-notes",
9
+ "apple-reminders",
10
+ "blog-publisher",
11
+ "bluesky-bot",
12
+ "coding-agent",
13
+ "content-creator",
14
+ "deep-research",
15
+ "discord-helper",
16
+ "facebook-bot",
17
+ "git",
18
+ "github",
19
+ "healthcheck",
20
+ "image-gen",
21
+ "instagram-bot",
22
+ "linkedin-bot",
23
+ "mastodon-bot",
24
+ "notion",
25
+ "obsidian",
26
+ "pinterest-bot",
27
+ "reddit-bot",
28
+ "seo-campaign",
29
+ "slack-helper",
30
+ "social-broadcast",
31
+ "spotify-player",
32
+ "summarize",
33
+ "threads-bot",
34
+ "tiktok-bot",
35
+ "trello",
36
+ "twitter-bot",
37
+ "weather",
38
+ "web-scraper",
39
+ "web-search",
40
+ "whisper-transcribe",
41
+ "youtube-bot",
42
+ "site-deploy",
43
+ "cloud-ops"
44
+ ],
45
+ "community": []
46
+ },
47
+ "skills": {
48
+ "curated": [
49
+ {
50
+ "id": "com.framers.skill.1password",
51
+ "name": "1password",
52
+ "displayName": "1password",
53
+ "version": "1.0.0",
54
+ "path": "registry/curated/1password",
55
+ "description": "Query and retrieve items from 1Password vaults using the 1Password CLI for secure credential access.",
56
+ "category": "security",
57
+ "namespace": "wunderland",
58
+ "verified": true,
59
+ "source": "curated",
60
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
61
+ "keywords": [
62
+ "1password",
63
+ "passwords",
64
+ "secrets",
65
+ "vault",
66
+ "credentials",
67
+ "security"
68
+ ],
69
+ "requiredSecrets": [
70
+ "1password.service_account_token"
71
+ ],
72
+ "metadata": {
73
+ "emoji": "🔐",
74
+ "primaryEnv": "OP_SERVICE_ACCOUNT_TOKEN",
75
+ "homepage": "https://developer.1password.com/docs/cli",
76
+ "requires": {
77
+ "bins": [
78
+ "op"
79
+ ]
80
+ },
81
+ "install": [
82
+ {
83
+ "id": "brew",
84
+ "kind": "brew",
85
+ "formula": "1password-cli",
86
+ "bins": [
87
+ "op"
88
+ ],
89
+ "label": "Install 1Password CLI (brew)"
90
+ }
91
+ ]
92
+ }
93
+ },
94
+ {
95
+ "id": "com.framers.skill.account-manager",
96
+ "name": "account-manager",
97
+ "displayName": "account-manager",
98
+ "version": "1.0.0",
99
+ "path": "registry/curated/account-manager",
100
+ "description": "Social account management — registration flows, profile optimization, credential storage, multi-platform account orchestration.",
101
+ "category": "automation",
102
+ "namespace": "wunderland",
103
+ "verified": true,
104
+ "source": "curated",
105
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
106
+ "keywords": [
107
+ "accounts",
108
+ "credentials",
109
+ "registration",
110
+ "profiles",
111
+ "management",
112
+ "automation"
113
+ ],
114
+ "requiredTools": [
115
+ "credentialsSet",
116
+ "credentialsGet",
117
+ "credentialsList",
118
+ "credentialsImport",
119
+ "browserNavigate",
120
+ "browserClick",
121
+ "browserFill",
122
+ "browserScreenshot",
123
+ "browserSnapshot",
124
+ "browserSession"
125
+ ],
126
+ "metadata": {
127
+ "emoji": "🔑"
128
+ }
129
+ },
130
+ {
131
+ "id": "com.framers.skill.apple-notes",
132
+ "name": "apple-notes",
133
+ "displayName": "apple-notes",
134
+ "version": "1.0.0",
135
+ "path": "registry/curated/apple-notes",
136
+ "description": "Create, read, search, and manage notes in Apple Notes using AppleScript and macOS automation.",
137
+ "category": "productivity",
138
+ "namespace": "wunderland",
139
+ "verified": true,
140
+ "source": "curated",
141
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
142
+ "keywords": [
143
+ "apple-notes",
144
+ "macos",
145
+ "notes",
146
+ "applescript",
147
+ "automation"
148
+ ],
149
+ "requiredTools": [
150
+ "filesystem"
151
+ ],
152
+ "metadata": {
153
+ "emoji": "📱",
154
+ "os": [
155
+ "darwin"
156
+ ],
157
+ "requires": {
158
+ "bins": [
159
+ "osascript"
160
+ ]
161
+ }
162
+ }
163
+ },
164
+ {
165
+ "id": "com.framers.skill.apple-reminders",
166
+ "name": "apple-reminders",
167
+ "displayName": "apple-reminders",
168
+ "version": "1.0.0",
169
+ "path": "registry/curated/apple-reminders",
170
+ "description": "Create, manage, and query reminders and lists in Apple Reminders using AppleScript and macOS automation.",
171
+ "category": "productivity",
172
+ "namespace": "wunderland",
173
+ "verified": true,
174
+ "source": "curated",
175
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
176
+ "keywords": [
177
+ "apple-reminders",
178
+ "macos",
179
+ "reminders",
180
+ "tasks",
181
+ "applescript",
182
+ "automation"
183
+ ],
184
+ "requiredTools": [
185
+ "filesystem"
186
+ ],
187
+ "metadata": {
188
+ "emoji": "✅",
189
+ "os": [
190
+ "darwin"
191
+ ],
192
+ "requires": {
193
+ "bins": [
194
+ "osascript"
195
+ ]
196
+ }
197
+ }
198
+ },
199
+ {
200
+ "id": "com.framers.skill.blog-publisher",
201
+ "name": "blog-publisher",
202
+ "displayName": "blog-publisher",
203
+ "version": "1.0.0",
204
+ "path": "registry/curated/blog-publisher",
205
+ "description": "Blog publishing automation — long-form content creation, SEO optimization, cross-posting with canonical URLs, and multi-platform distribution.",
206
+ "category": "social-automation",
207
+ "namespace": "wunderland",
208
+ "verified": true,
209
+ "source": "curated",
210
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
211
+ "keywords": [
212
+ "blog",
213
+ "publishing",
214
+ "long-form",
215
+ "seo",
216
+ "cross-posting",
217
+ "dev-to",
218
+ "hashnode",
219
+ "medium",
220
+ "wordpress",
221
+ "automation"
222
+ ],
223
+ "requiredSecrets": [
224
+ "blog.devtoApiKey",
225
+ "blog.hashnodeToken",
226
+ "blog.mediumToken",
227
+ "blog.wordpressUrl",
228
+ "blog.wordpressToken"
229
+ ],
230
+ "requiredTools": [
231
+ "blogPublishArticle",
232
+ "blogUpdateArticle",
233
+ "blogListArticles",
234
+ "blogAnalytics",
235
+ "blogSchedule",
236
+ "blogCrossPost"
237
+ ],
238
+ "metadata": {
239
+ "emoji": "✍️",
240
+ "primaryEnv": "BLOG_DEVTO_API_KEY"
241
+ }
242
+ },
243
+ {
244
+ "id": "com.framers.skill.bluesky-bot",
245
+ "name": "bluesky-bot",
246
+ "displayName": "bluesky-bot",
247
+ "version": "1.0.0",
248
+ "path": "registry/curated/bluesky-bot",
249
+ "description": "Bluesky automation — decentralized social engagement, custom feed curation, authentic community building, and AT Protocol interaction.",
250
+ "category": "social-automation",
251
+ "namespace": "wunderland",
252
+ "verified": true,
253
+ "source": "curated",
254
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
255
+ "keywords": [
256
+ "bluesky",
257
+ "social-media",
258
+ "decentralized",
259
+ "atproto",
260
+ "community",
261
+ "feeds",
262
+ "automation"
263
+ ],
264
+ "requiredSecrets": [
265
+ "bluesky.handle",
266
+ "bluesky.appPassword"
267
+ ],
268
+ "requiredTools": [
269
+ "blueskyPost",
270
+ "blueskyReply",
271
+ "blueskyLike",
272
+ "blueskyRepost",
273
+ "blueskySearch",
274
+ "blueskyFeed",
275
+ "blueskyFollow",
276
+ "blueskyAnalytics"
277
+ ],
278
+ "metadata": {
279
+ "emoji": "🦋",
280
+ "primaryEnv": "BLUESKY_APP_PASSWORD"
281
+ }
282
+ },
283
+ {
284
+ "id": "com.framers.skill.coding-agent",
285
+ "name": "coding-agent",
286
+ "displayName": "coding-agent",
287
+ "version": "1.0.0",
288
+ "path": "registry/curated/coding-agent",
289
+ "description": "Write, review, debug, refactor, and explain code across multiple programming languages and frameworks.",
290
+ "category": "developer-tools",
291
+ "namespace": "wunderland",
292
+ "verified": true,
293
+ "source": "curated",
294
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
295
+ "keywords": [
296
+ "coding",
297
+ "programming",
298
+ "code-review",
299
+ "debugging",
300
+ "refactoring",
301
+ "development"
302
+ ],
303
+ "requiredTools": [
304
+ "filesystem"
305
+ ],
306
+ "metadata": {
307
+ "emoji": "💻"
308
+ }
309
+ },
310
+ {
311
+ "id": "com.framers.skill.content-creator",
312
+ "name": "content-creator",
313
+ "displayName": "content-creator",
314
+ "version": "1.0.0",
315
+ "path": "registry/curated/content-creator",
316
+ "description": "AI content creation — blog posts, social captions, video descriptions, newsletter copy, all SEO-optimized and platform-adapted.",
317
+ "category": "content",
318
+ "namespace": "wunderland",
319
+ "verified": true,
320
+ "source": "curated",
321
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
322
+ "keywords": [
323
+ "content",
324
+ "writing",
325
+ "blog",
326
+ "captions",
327
+ "seo",
328
+ "copywriting",
329
+ "creation"
330
+ ],
331
+ "requiredTools": [
332
+ "researchAggregate",
333
+ "researchTrending",
334
+ "extractUrl"
335
+ ],
336
+ "metadata": {
337
+ "emoji": "✍"
338
+ }
339
+ },
340
+ {
341
+ "id": "com.framers.skill.deep-research",
342
+ "name": "deep-research",
343
+ "displayName": "deep-research",
344
+ "version": "1.0.0",
345
+ "path": "registry/curated/deep-research",
346
+ "description": "Multi-source investigation — academic papers, web research, social media, cross-referencing, and comprehensive report generation.",
347
+ "category": "research",
348
+ "namespace": "wunderland",
349
+ "verified": true,
350
+ "source": "curated",
351
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
352
+ "keywords": [
353
+ "research",
354
+ "investigation",
355
+ "academic",
356
+ "fact-checking",
357
+ "cross-referencing",
358
+ "reports"
359
+ ],
360
+ "requiredSecrets": [
361
+ "serper.apiKey"
362
+ ],
363
+ "requiredTools": [
364
+ "researchInvestigate",
365
+ "researchAcademic",
366
+ "researchScrape",
367
+ "researchAggregate",
368
+ "researchTrending",
369
+ "extractUrl",
370
+ "extractYoutube",
371
+ "extractWikipedia"
372
+ ],
373
+ "metadata": {
374
+ "emoji": "🔎",
375
+ "primaryEnv": "SERPER_API_KEY"
376
+ }
377
+ },
378
+ {
379
+ "id": "com.framers.skill.discord-helper",
380
+ "name": "discord-helper",
381
+ "displayName": "discord-helper",
382
+ "version": "1.0.0",
383
+ "path": "registry/curated/discord-helper",
384
+ "description": "Manage Discord servers, channels, roles, and messages through the Discord API.",
385
+ "category": "communication",
386
+ "namespace": "wunderland",
387
+ "verified": true,
388
+ "source": "curated",
389
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
390
+ "keywords": [
391
+ "discord",
392
+ "messaging",
393
+ "server",
394
+ "moderation",
395
+ "community"
396
+ ],
397
+ "requiredSecrets": [
398
+ "discord.bot_token"
399
+ ],
400
+ "metadata": {
401
+ "emoji": "🎮",
402
+ "primaryEnv": "DISCORD_BOT_TOKEN",
403
+ "homepage": "https://discord.com/developers"
404
+ }
405
+ },
406
+ {
407
+ "id": "com.framers.skill.facebook-bot",
408
+ "name": "facebook-bot",
409
+ "displayName": "facebook-bot",
410
+ "version": "1.0.0",
411
+ "path": "registry/curated/facebook-bot",
412
+ "description": "Facebook automation — community engagement, page management, visual content publishing, and audience growth.",
413
+ "category": "social-automation",
414
+ "namespace": "wunderland",
415
+ "verified": true,
416
+ "source": "curated",
417
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
418
+ "keywords": [
419
+ "facebook",
420
+ "social-media",
421
+ "community",
422
+ "pages",
423
+ "groups",
424
+ "visual-content",
425
+ "automation"
426
+ ],
427
+ "requiredSecrets": [
428
+ "facebook.accessToken"
429
+ ],
430
+ "requiredTools": [
431
+ "facebookPost",
432
+ "facebookComment",
433
+ "facebookLike",
434
+ "facebookShare",
435
+ "facebookSearch",
436
+ "facebookAnalytics",
437
+ "facebookSchedule",
438
+ "facebookPagePost"
439
+ ],
440
+ "metadata": {
441
+ "emoji": "📱",
442
+ "primaryEnv": "FACEBOOK_ACCESS_TOKEN"
443
+ }
444
+ },
445
+ {
446
+ "id": "com.framers.skill.git",
447
+ "name": "git",
448
+ "displayName": "git",
449
+ "version": "1.0.0",
450
+ "path": "registry/curated/git",
451
+ "description": "Work with Git repositories from the command line.",
452
+ "category": "developer-tools",
453
+ "namespace": "wunderland",
454
+ "verified": true,
455
+ "source": "curated",
456
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
457
+ "keywords": [
458
+ "git",
459
+ "version-control",
460
+ "vcs",
461
+ "branching",
462
+ "commits"
463
+ ],
464
+ "requiredTools": [
465
+ "filesystem"
466
+ ],
467
+ "metadata": {
468
+ "emoji": "🧰",
469
+ "requires": {
470
+ "bins": [
471
+ "git"
472
+ ]
473
+ },
474
+ "install": [
475
+ {
476
+ "id": "brew",
477
+ "kind": "brew",
478
+ "formula": "git",
479
+ "bins": [
480
+ "git"
481
+ ],
482
+ "label": "Install git (brew)"
483
+ },
484
+ {
485
+ "id": "apt",
486
+ "kind": "apt",
487
+ "package": "git",
488
+ "bins": [
489
+ "git"
490
+ ],
491
+ "os": [
492
+ "linux"
493
+ ],
494
+ "label": "Install git (apt)"
495
+ }
496
+ ]
497
+ }
498
+ },
499
+ {
500
+ "id": "com.framers.skill.github",
501
+ "name": "github",
502
+ "displayName": "github",
503
+ "version": "1.0.0",
504
+ "path": "registry/curated/github",
505
+ "description": "Manage GitHub repositories, issues, pull requests, releases, and Actions workflows using the gh CLI.",
506
+ "category": "developer-tools",
507
+ "namespace": "wunderland",
508
+ "verified": true,
509
+ "source": "curated",
510
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
511
+ "keywords": [
512
+ "github",
513
+ "git",
514
+ "issues",
515
+ "pull-requests",
516
+ "ci-cd",
517
+ "code-review"
518
+ ],
519
+ "requiredSecrets": [
520
+ "github.token"
521
+ ],
522
+ "requiredTools": [
523
+ "filesystem"
524
+ ],
525
+ "metadata": {
526
+ "emoji": "🐙",
527
+ "primaryEnv": "GITHUB_TOKEN",
528
+ "requires": {
529
+ "bins": [
530
+ "gh"
531
+ ]
532
+ },
533
+ "install": [
534
+ {
535
+ "id": "brew",
536
+ "kind": "brew",
537
+ "formula": "gh",
538
+ "bins": [
539
+ "gh"
540
+ ],
541
+ "label": "Install GitHub CLI (brew)"
542
+ },
543
+ {
544
+ "id": "apt",
545
+ "kind": "apt",
546
+ "package": "gh",
547
+ "bins": [
548
+ "gh"
549
+ ],
550
+ "os": [
551
+ "linux"
552
+ ],
553
+ "label": "Install GitHub CLI (apt)"
554
+ }
555
+ ]
556
+ }
557
+ },
558
+ {
559
+ "id": "com.framers.skill.healthcheck",
560
+ "name": "healthcheck",
561
+ "displayName": "healthcheck",
562
+ "version": "1.0.0",
563
+ "path": "registry/curated/healthcheck",
564
+ "description": "Monitor health and availability of systems, services, APIs, and infrastructure endpoints.",
565
+ "category": "devops",
566
+ "namespace": "wunderland",
567
+ "verified": true,
568
+ "source": "curated",
569
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
570
+ "keywords": [
571
+ "monitoring",
572
+ "health",
573
+ "uptime",
574
+ "infrastructure",
575
+ "diagnostics",
576
+ "status"
577
+ ],
578
+ "requiredTools": [
579
+ "web-search"
580
+ ],
581
+ "metadata": {
582
+ "emoji": "🏥",
583
+ "requires": {
584
+ "anyBins": [
585
+ "curl",
586
+ "wget"
587
+ ]
588
+ }
589
+ }
590
+ },
591
+ {
592
+ "id": "com.framers.skill.image-gen",
593
+ "name": "image-gen",
594
+ "displayName": "image-gen",
595
+ "version": "1.0.0",
596
+ "path": "registry/curated/image-gen",
597
+ "description": "Generate images from text prompts using AI image generation APIs like DALL-E, Stable Diffusion, or Midjourney.",
598
+ "category": "creative",
599
+ "namespace": "wunderland",
600
+ "verified": true,
601
+ "source": "curated",
602
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
603
+ "keywords": [
604
+ "image-generation",
605
+ "ai-art",
606
+ "dall-e",
607
+ "stable-diffusion",
608
+ "creative",
609
+ "visual"
610
+ ],
611
+ "requiredSecrets": [
612
+ "openai.api_key"
613
+ ],
614
+ "metadata": {
615
+ "emoji": "🎨",
616
+ "primaryEnv": "OPENAI_API_KEY",
617
+ "homepage": "https://platform.openai.com/docs/guides/images"
618
+ }
619
+ },
620
+ {
621
+ "id": "com.framers.skill.instagram-bot",
622
+ "name": "instagram-bot",
623
+ "displayName": "instagram-bot",
624
+ "version": "1.0.0",
625
+ "path": "registry/curated/instagram-bot",
626
+ "description": "Instagram growth automation — post scheduling, story creation, hashtag strategy, Reel uploads, and engagement analytics.",
627
+ "category": "social-automation",
628
+ "namespace": "wunderland",
629
+ "verified": true,
630
+ "source": "curated",
631
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
632
+ "keywords": [
633
+ "instagram",
634
+ "social-media",
635
+ "growth",
636
+ "reels",
637
+ "stories",
638
+ "hashtags",
639
+ "automation"
640
+ ],
641
+ "requiredSecrets": [
642
+ "instagram.accessToken"
643
+ ],
644
+ "requiredTools": [
645
+ "instagramPost",
646
+ "instagramReel",
647
+ "instagramStory",
648
+ "instagramComment",
649
+ "instagramHashtags",
650
+ "instagramExplore",
651
+ "instagramAnalytics"
652
+ ],
653
+ "metadata": {
654
+ "emoji": "📸",
655
+ "primaryEnv": "INSTAGRAM_ACCESS_TOKEN"
656
+ }
657
+ },
658
+ {
659
+ "id": "com.framers.skill.linkedin-bot",
660
+ "name": "linkedin-bot",
661
+ "displayName": "linkedin-bot",
662
+ "version": "1.0.0",
663
+ "path": "registry/curated/linkedin-bot",
664
+ "description": "LinkedIn automation — professional networking, thought leadership posts, company page management, and engagement.",
665
+ "category": "social-automation",
666
+ "namespace": "wunderland",
667
+ "verified": true,
668
+ "source": "curated",
669
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
670
+ "keywords": [
671
+ "linkedin",
672
+ "social-media",
673
+ "professional",
674
+ "networking",
675
+ "thought-leadership",
676
+ "automation"
677
+ ],
678
+ "requiredSecrets": [
679
+ "linkedin.accessToken"
680
+ ],
681
+ "requiredTools": [
682
+ "linkedinPost",
683
+ "linkedinComment",
684
+ "linkedinLike",
685
+ "linkedinShare",
686
+ "linkedinSearch",
687
+ "linkedinAnalytics",
688
+ "linkedinSchedule",
689
+ "linkedinOrgPost"
690
+ ],
691
+ "metadata": {
692
+ "emoji": "💼",
693
+ "primaryEnv": "LINKEDIN_ACCESS_TOKEN"
694
+ }
695
+ },
696
+ {
697
+ "id": "com.framers.skill.mastodon-bot",
698
+ "name": "mastodon-bot",
699
+ "displayName": "mastodon-bot",
700
+ "version": "1.0.0",
701
+ "path": "registry/curated/mastodon-bot",
702
+ "description": "Mastodon automation — fediverse engagement, content-warned posts, instance-aware community participation, and boost-driven amplification.",
703
+ "category": "social-automation",
704
+ "namespace": "wunderland",
705
+ "verified": true,
706
+ "source": "curated",
707
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
708
+ "keywords": [
709
+ "mastodon",
710
+ "fediverse",
711
+ "social-media",
712
+ "decentralized",
713
+ "activitypub",
714
+ "community",
715
+ "automation"
716
+ ],
717
+ "requiredSecrets": [
718
+ "mastodon.accessToken",
719
+ "mastodon.instanceUrl"
720
+ ],
721
+ "requiredTools": [
722
+ "mastodonPost",
723
+ "mastodonReply",
724
+ "mastodonBoost",
725
+ "mastodonFavourite",
726
+ "mastodonSearch",
727
+ "mastodonTrending",
728
+ "mastodonFollow",
729
+ "mastodonAnalytics"
730
+ ],
731
+ "metadata": {
732
+ "emoji": "🐘",
733
+ "primaryEnv": "MASTODON_ACCESS_TOKEN"
734
+ }
735
+ },
736
+ {
737
+ "id": "com.framers.skill.notion",
738
+ "name": "notion",
739
+ "displayName": "notion",
740
+ "version": "1.0.0",
741
+ "path": "registry/curated/notion",
742
+ "description": "Read, create, and manage pages, databases, and content blocks in Notion workspaces.",
743
+ "category": "productivity",
744
+ "namespace": "wunderland",
745
+ "verified": true,
746
+ "source": "curated",
747
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
748
+ "keywords": [
749
+ "notion",
750
+ "wiki",
751
+ "database",
752
+ "notes",
753
+ "project-management",
754
+ "knowledge-base"
755
+ ],
756
+ "requiredSecrets": [
757
+ "notion.api_key"
758
+ ],
759
+ "metadata": {
760
+ "emoji": "📓",
761
+ "primaryEnv": "NOTION_API_KEY",
762
+ "homepage": "https://developers.notion.com"
763
+ }
764
+ },
765
+ {
766
+ "id": "com.framers.skill.obsidian",
767
+ "name": "obsidian",
768
+ "displayName": "obsidian",
769
+ "version": "1.0.0",
770
+ "path": "registry/curated/obsidian",
771
+ "description": "Read, create, and manage notes, links, and metadata in Obsidian vaults via the local filesystem.",
772
+ "category": "productivity",
773
+ "namespace": "wunderland",
774
+ "verified": true,
775
+ "source": "curated",
776
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
777
+ "keywords": [
778
+ "obsidian",
779
+ "markdown",
780
+ "notes",
781
+ "knowledge-graph",
782
+ "zettelkasten",
783
+ "pkm"
784
+ ],
785
+ "requiredTools": [
786
+ "filesystem"
787
+ ],
788
+ "metadata": {
789
+ "emoji": "💎",
790
+ "homepage": "https://obsidian.md"
791
+ }
792
+ },
793
+ {
794
+ "id": "com.framers.skill.pinterest-bot",
795
+ "name": "pinterest-bot",
796
+ "displayName": "pinterest-bot",
797
+ "version": "1.0.0",
798
+ "path": "registry/curated/pinterest-bot",
799
+ "description": "Pinterest automation — pin creation, board management, trending content discovery, scheduling, and analytics.",
800
+ "category": "social-automation",
801
+ "namespace": "wunderland",
802
+ "verified": true,
803
+ "source": "curated",
804
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
805
+ "keywords": [
806
+ "pinterest",
807
+ "social-media",
808
+ "pins",
809
+ "boards",
810
+ "visual-content",
811
+ "scheduling",
812
+ "automation"
813
+ ],
814
+ "requiredSecrets": [
815
+ "pinterest.accessToken"
816
+ ],
817
+ "requiredTools": [
818
+ "pinterestPin",
819
+ "pinterestBoard",
820
+ "pinterestSearch",
821
+ "pinterestTrending",
822
+ "pinterestAnalytics",
823
+ "pinterestSchedule"
824
+ ],
825
+ "metadata": {
826
+ "emoji": "📌",
827
+ "primaryEnv": "PINTEREST_ACCESS_TOKEN"
828
+ }
829
+ },
830
+ {
831
+ "id": "com.framers.skill.reddit-bot",
832
+ "name": "reddit-bot",
833
+ "displayName": "reddit-bot",
834
+ "version": "1.0.0",
835
+ "path": "registry/curated/reddit-bot",
836
+ "description": "Reddit community engagement — post to relevant subreddits, comment with expertise, vote, and build karma organically.",
837
+ "category": "social-automation",
838
+ "namespace": "wunderland",
839
+ "verified": true,
840
+ "source": "curated",
841
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
842
+ "keywords": [
843
+ "reddit",
844
+ "social-media",
845
+ "community",
846
+ "comments",
847
+ "karma",
848
+ "subreddits",
849
+ "automation"
850
+ ],
851
+ "requiredSecrets": [
852
+ "reddit.clientId",
853
+ "reddit.clientSecret",
854
+ "reddit.username",
855
+ "reddit.password"
856
+ ],
857
+ "requiredTools": [
858
+ "redditSubmitPost",
859
+ "redditComment",
860
+ "redditVote",
861
+ "redditSearch",
862
+ "redditTrending",
863
+ "redditSubscribe",
864
+ "redditAnalytics"
865
+ ],
866
+ "metadata": {
867
+ "emoji": "🤖",
868
+ "primaryEnv": "REDDIT_CLIENT_ID"
869
+ }
870
+ },
871
+ {
872
+ "id": "com.framers.skill.seo-campaign",
873
+ "name": "seo-campaign",
874
+ "displayName": "seo-campaign",
875
+ "version": "1.0.0",
876
+ "path": "registry/curated/seo-campaign",
877
+ "description": "SEO link building and optimization — directory submissions, content optimization, keyword research, and backlink tracking via browser automation.",
878
+ "category": "marketing",
879
+ "namespace": "wunderland",
880
+ "verified": true,
881
+ "source": "curated",
882
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
883
+ "keywords": [
884
+ "seo",
885
+ "link-building",
886
+ "directories",
887
+ "keywords",
888
+ "backlinks",
889
+ "marketing",
890
+ "automation"
891
+ ],
892
+ "requiredTools": [
893
+ "browserNavigate",
894
+ "browserClick",
895
+ "browserFill",
896
+ "browserScreenshot",
897
+ "browserSnapshot",
898
+ "browserWait",
899
+ "researchAggregate",
900
+ "researchTrending"
901
+ ],
902
+ "metadata": {
903
+ "emoji": "📈"
904
+ }
905
+ },
906
+ {
907
+ "id": "com.framers.skill.slack-helper",
908
+ "name": "slack-helper",
909
+ "displayName": "slack-helper",
910
+ "version": "1.0.0",
911
+ "path": "registry/curated/slack-helper",
912
+ "description": "Manage Slack workspaces, channels, messages, and integrations through the Slack API.",
913
+ "category": "communication",
914
+ "namespace": "wunderland",
915
+ "verified": true,
916
+ "source": "curated",
917
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
918
+ "keywords": [
919
+ "slack",
920
+ "messaging",
921
+ "workspace",
922
+ "notifications",
923
+ "team-chat"
924
+ ],
925
+ "requiredSecrets": [
926
+ "slack.bot_token",
927
+ "slack.app_token"
928
+ ],
929
+ "metadata": {
930
+ "emoji": "💬",
931
+ "primaryEnv": "SLACK_BOT_TOKEN",
932
+ "secondaryEnvs": [
933
+ "SLACK_APP_TOKEN"
934
+ ],
935
+ "homepage": "https://api.slack.com"
936
+ }
937
+ },
938
+ {
939
+ "id": "com.framers.skill.social-broadcast",
940
+ "name": "social-broadcast",
941
+ "displayName": "social-broadcast",
942
+ "version": "1.0.0",
943
+ "path": "registry/curated/social-broadcast",
944
+ "description": "Cross-platform content publishing — adapt a single piece of content for all social channels (Twitter, Instagram, Reddit, Pinterest, TikTok, YouTube, LinkedIn, Facebook, Threads, Bluesky, Mastodon, Farcaster, Lemmy, Google Business, and blog platforms).",
945
+ "category": "social-automation",
946
+ "namespace": "wunderland",
947
+ "verified": true,
948
+ "source": "curated",
949
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
950
+ "keywords": [
951
+ "social-media",
952
+ "cross-platform",
953
+ "broadcasting",
954
+ "content-adaptation",
955
+ "multi-channel"
956
+ ],
957
+ "requiredTools": [
958
+ "twitterPost",
959
+ "instagramPost",
960
+ "redditSubmitPost",
961
+ "pinterestPin",
962
+ "tiktokUpload",
963
+ "youtubeUpload",
964
+ "linkedinPost",
965
+ "facebookPost",
966
+ "threadsPost",
967
+ "blueskyPost",
968
+ "mastodonPost",
969
+ "farcasterCast",
970
+ "lemmyPost",
971
+ "gbpCreatePost",
972
+ "blogPublishArticle",
973
+ "multiChannelPost"
974
+ ],
975
+ "metadata": {
976
+ "emoji": "📣"
977
+ }
978
+ },
979
+ {
980
+ "id": "com.framers.skill.spotify-player",
981
+ "name": "spotify-player",
982
+ "displayName": "spotify-player",
983
+ "version": "1.0.0",
984
+ "path": "registry/curated/spotify-player",
985
+ "description": "Control Spotify playback, manage playlists, search music, and get recommendations via the Spotify API.",
986
+ "category": "media",
987
+ "namespace": "wunderland",
988
+ "verified": true,
989
+ "source": "curated",
990
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
991
+ "keywords": [
992
+ "spotify",
993
+ "music",
994
+ "playback",
995
+ "playlists",
996
+ "streaming",
997
+ "audio"
998
+ ],
999
+ "requiredSecrets": [
1000
+ "spotify.client_id",
1001
+ "spotify.client_secret",
1002
+ "spotify.refresh_token"
1003
+ ],
1004
+ "metadata": {
1005
+ "emoji": "🎵",
1006
+ "primaryEnv": "SPOTIFY_CLIENT_ID",
1007
+ "secondaryEnvs": [
1008
+ "SPOTIFY_CLIENT_SECRET",
1009
+ "SPOTIFY_REFRESH_TOKEN"
1010
+ ],
1011
+ "homepage": "https://developer.spotify.com"
1012
+ }
1013
+ },
1014
+ {
1015
+ "id": "com.framers.skill.summarize",
1016
+ "name": "summarize",
1017
+ "displayName": "summarize",
1018
+ "version": "1.0.0",
1019
+ "path": "registry/curated/summarize",
1020
+ "description": "Summarize text content, web pages, documents, and long-form articles into concise, structured summaries.",
1021
+ "category": "information",
1022
+ "namespace": "wunderland",
1023
+ "verified": true,
1024
+ "source": "curated",
1025
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
1026
+ "keywords": [
1027
+ "summarization",
1028
+ "text-processing",
1029
+ "tldr",
1030
+ "reading",
1031
+ "content-analysis"
1032
+ ],
1033
+ "requiredTools": [
1034
+ "web-search"
1035
+ ],
1036
+ "metadata": {
1037
+ "emoji": "📝"
1038
+ }
1039
+ },
1040
+ {
1041
+ "id": "com.framers.skill.threads-bot",
1042
+ "name": "threads-bot",
1043
+ "displayName": "threads-bot",
1044
+ "version": "1.0.0",
1045
+ "path": "registry/curated/threads-bot",
1046
+ "description": "Threads automation — conversational engagement, text-first content, real-time discussions, and community building.",
1047
+ "category": "social-automation",
1048
+ "namespace": "wunderland",
1049
+ "verified": true,
1050
+ "source": "curated",
1051
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
1052
+ "keywords": [
1053
+ "threads",
1054
+ "social-media",
1055
+ "conversational",
1056
+ "text-first",
1057
+ "engagement",
1058
+ "automation"
1059
+ ],
1060
+ "requiredSecrets": [
1061
+ "threads.accessToken"
1062
+ ],
1063
+ "requiredTools": [
1064
+ "threadsPost",
1065
+ "threadsReply",
1066
+ "threadsLike",
1067
+ "threadsSearch",
1068
+ "threadsAnalytics",
1069
+ "threadsQuote"
1070
+ ],
1071
+ "metadata": {
1072
+ "emoji": "🧵",
1073
+ "primaryEnv": "THREADS_ACCESS_TOKEN"
1074
+ }
1075
+ },
1076
+ {
1077
+ "id": "com.framers.skill.tiktok-bot",
1078
+ "name": "tiktok-bot",
1079
+ "displayName": "tiktok-bot",
1080
+ "version": "1.0.0",
1081
+ "path": "registry/curated/tiktok-bot",
1082
+ "description": "TikTok automation — short-form video publishing, trending sound discovery, hashtag challenges, and community engagement.",
1083
+ "category": "social-automation",
1084
+ "namespace": "wunderland",
1085
+ "verified": true,
1086
+ "source": "curated",
1087
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
1088
+ "keywords": [
1089
+ "tiktok",
1090
+ "video",
1091
+ "short-form",
1092
+ "social-media",
1093
+ "trending",
1094
+ "hashtag-challenges",
1095
+ "automation"
1096
+ ],
1097
+ "requiredSecrets": [
1098
+ "tiktok.accessToken"
1099
+ ],
1100
+ "requiredTools": [
1101
+ "tiktokUpload",
1102
+ "tiktokDiscover",
1103
+ "tiktokEngage",
1104
+ "tiktokSearch",
1105
+ "tiktokTrending",
1106
+ "tiktokAnalytics"
1107
+ ],
1108
+ "metadata": {
1109
+ "emoji": "🎵",
1110
+ "primaryEnv": "TIKTOK_ACCESS_TOKEN"
1111
+ }
1112
+ },
1113
+ {
1114
+ "id": "com.framers.skill.trello",
1115
+ "name": "trello",
1116
+ "displayName": "trello",
1117
+ "version": "1.0.0",
1118
+ "path": "registry/curated/trello",
1119
+ "description": "Manage Trello boards, lists, cards, checklists, and team workflows via the Trello API.",
1120
+ "category": "productivity",
1121
+ "namespace": "wunderland",
1122
+ "verified": true,
1123
+ "source": "curated",
1124
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
1125
+ "keywords": [
1126
+ "trello",
1127
+ "kanban",
1128
+ "project-management",
1129
+ "boards",
1130
+ "tasks",
1131
+ "workflow"
1132
+ ],
1133
+ "requiredSecrets": [
1134
+ "trello.api_key",
1135
+ "trello.token"
1136
+ ],
1137
+ "metadata": {
1138
+ "emoji": "📋",
1139
+ "primaryEnv": "TRELLO_API_KEY",
1140
+ "secondaryEnvs": [
1141
+ "TRELLO_TOKEN"
1142
+ ],
1143
+ "homepage": "https://developer.atlassian.com/cloud/trello"
1144
+ }
1145
+ },
1146
+ {
1147
+ "id": "com.framers.skill.twitter-bot",
1148
+ "name": "twitter-bot",
1149
+ "displayName": "twitter-bot",
1150
+ "version": "1.0.0",
1151
+ "path": "registry/curated/twitter-bot",
1152
+ "description": "Automated Twitter/X engagement — personality-driven reply bot, thread creation, trending engagement, and analytics tracking.",
1153
+ "category": "social-automation",
1154
+ "namespace": "wunderland",
1155
+ "verified": true,
1156
+ "source": "curated",
1157
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
1158
+ "keywords": [
1159
+ "twitter",
1160
+ "social-media",
1161
+ "engagement",
1162
+ "reply-bot",
1163
+ "threads",
1164
+ "trending",
1165
+ "automation"
1166
+ ],
1167
+ "requiredSecrets": [
1168
+ "twitter.bearerToken",
1169
+ "twitter.apiKey",
1170
+ "twitter.apiSecret",
1171
+ "twitter.accessToken",
1172
+ "twitter.accessSecret"
1173
+ ],
1174
+ "requiredTools": [
1175
+ "twitterPost",
1176
+ "twitterReply",
1177
+ "twitterSearch",
1178
+ "twitterTrending",
1179
+ "twitterLike",
1180
+ "twitterRetweet",
1181
+ "twitterThread",
1182
+ "twitterAnalytics"
1183
+ ],
1184
+ "metadata": {
1185
+ "emoji": "🐦",
1186
+ "primaryEnv": "TWITTER_BEARER_TOKEN"
1187
+ }
1188
+ },
1189
+ {
1190
+ "id": "com.framers.skill.weather",
1191
+ "name": "weather",
1192
+ "displayName": "weather",
1193
+ "version": "1.0.0",
1194
+ "path": "registry/curated/weather",
1195
+ "description": "Look up current weather conditions, forecasts, and severe weather alerts for any location worldwide.",
1196
+ "category": "information",
1197
+ "namespace": "wunderland",
1198
+ "verified": true,
1199
+ "source": "curated",
1200
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
1201
+ "keywords": [
1202
+ "weather",
1203
+ "forecast",
1204
+ "climate",
1205
+ "location"
1206
+ ],
1207
+ "requiredTools": [
1208
+ "web-search"
1209
+ ],
1210
+ "metadata": {
1211
+ "emoji": "☀️",
1212
+ "homepage": "https://openweathermap.org"
1213
+ }
1214
+ },
1215
+ {
1216
+ "id": "com.framers.skill.web-scraper",
1217
+ "name": "web-scraper",
1218
+ "displayName": "web-scraper",
1219
+ "version": "1.0.0",
1220
+ "path": "registry/curated/web-scraper",
1221
+ "description": "Autonomous web scraping — navigate sites, extract structured data, handle pagination, anti-detection, and proxy rotation.",
1222
+ "category": "automation",
1223
+ "namespace": "wunderland",
1224
+ "verified": true,
1225
+ "source": "curated",
1226
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
1227
+ "keywords": [
1228
+ "scraping",
1229
+ "browser",
1230
+ "extraction",
1231
+ "data",
1232
+ "pagination",
1233
+ "proxy",
1234
+ "automation"
1235
+ ],
1236
+ "requiredTools": [
1237
+ "browserNavigate",
1238
+ "browserClick",
1239
+ "browserFill",
1240
+ "browserExtract",
1241
+ "browserScreenshot",
1242
+ "browserSnapshot",
1243
+ "browserScroll",
1244
+ "browserWait",
1245
+ "browserEvaluate",
1246
+ "browserSession"
1247
+ ],
1248
+ "metadata": {
1249
+ "emoji": "🕸"
1250
+ }
1251
+ },
1252
+ {
1253
+ "id": "com.framers.skill.web-search",
1254
+ "name": "web-search",
1255
+ "displayName": "web-search",
1256
+ "version": "1.0.0",
1257
+ "path": "registry/curated/web-search",
1258
+ "description": "Search the web for up-to-date information, news, documentation, and answers to questions.",
1259
+ "category": "information",
1260
+ "namespace": "wunderland",
1261
+ "verified": true,
1262
+ "source": "curated",
1263
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
1264
+ "keywords": [
1265
+ "search",
1266
+ "web",
1267
+ "research",
1268
+ "information-retrieval",
1269
+ "news",
1270
+ "documentation"
1271
+ ],
1272
+ "requiredTools": [
1273
+ "web-search"
1274
+ ],
1275
+ "metadata": {
1276
+ "emoji": "🔍"
1277
+ }
1278
+ },
1279
+ {
1280
+ "id": "com.framers.skill.whisper-transcribe",
1281
+ "name": "whisper-transcribe",
1282
+ "displayName": "whisper-transcribe",
1283
+ "version": "1.0.0",
1284
+ "path": "registry/curated/whisper-transcribe",
1285
+ "description": "Transcribe audio and video files to text using OpenAI Whisper or compatible speech-to-text APIs.",
1286
+ "category": "media",
1287
+ "namespace": "wunderland",
1288
+ "verified": true,
1289
+ "source": "curated",
1290
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
1291
+ "keywords": [
1292
+ "transcription",
1293
+ "whisper",
1294
+ "speech-to-text",
1295
+ "audio",
1296
+ "stt",
1297
+ "voice"
1298
+ ],
1299
+ "requiredSecrets": [
1300
+ "openai.api_key"
1301
+ ],
1302
+ "requiredTools": [
1303
+ "filesystem"
1304
+ ],
1305
+ "metadata": {
1306
+ "emoji": "🎙️",
1307
+ "primaryEnv": "OPENAI_API_KEY",
1308
+ "homepage": "https://platform.openai.com/docs/guides/speech-to-text",
1309
+ "requires": {
1310
+ "anyBins": [
1311
+ "ffmpeg",
1312
+ "ffprobe"
1313
+ ]
1314
+ },
1315
+ "install": [
1316
+ {
1317
+ "id": "brew-ffmpeg",
1318
+ "kind": "brew",
1319
+ "formula": "ffmpeg",
1320
+ "bins": [
1321
+ "ffmpeg",
1322
+ "ffprobe"
1323
+ ],
1324
+ "label": "Install ffmpeg (brew)"
1325
+ },
1326
+ {
1327
+ "id": "apt-ffmpeg",
1328
+ "kind": "apt",
1329
+ "package": "ffmpeg",
1330
+ "bins": [
1331
+ "ffmpeg",
1332
+ "ffprobe"
1333
+ ],
1334
+ "os": [
1335
+ "linux"
1336
+ ],
1337
+ "label": "Install ffmpeg (apt)"
1338
+ }
1339
+ ]
1340
+ }
1341
+ },
1342
+ {
1343
+ "id": "com.framers.skill.youtube-bot",
1344
+ "name": "youtube-bot",
1345
+ "displayName": "youtube-bot",
1346
+ "version": "1.0.0",
1347
+ "path": "registry/curated/youtube-bot",
1348
+ "description": "YouTube automation — video publishing, Shorts creation, community engagement, playlist management, and channel growth analytics.",
1349
+ "category": "social-automation",
1350
+ "namespace": "wunderland",
1351
+ "verified": true,
1352
+ "source": "curated",
1353
+ "verifiedAt": "2026-03-05T06:35:42.604Z",
1354
+ "keywords": [
1355
+ "youtube",
1356
+ "video",
1357
+ "shorts",
1358
+ "social-media",
1359
+ "content-creation",
1360
+ "playlists",
1361
+ "automation"
1362
+ ],
1363
+ "requiredSecrets": [
1364
+ "youtube.apiKey",
1365
+ "youtube.oauth2Token"
1366
+ ],
1367
+ "requiredTools": [
1368
+ "youtubeUpload",
1369
+ "youtubeShort",
1370
+ "youtubeComment",
1371
+ "youtubeSearch",
1372
+ "youtubeTrending",
1373
+ "youtubePlaylist",
1374
+ "youtubeAnalytics",
1375
+ "youtubeSchedule"
1376
+ ],
1377
+ "metadata": {
1378
+ "emoji": "🎬",
1379
+ "primaryEnv": "YOUTUBE_API_KEY"
1380
+ }
1381
+ },
1382
+ {
1383
+ "id": "com.framers.skill.site-deploy",
1384
+ "name": "site-deploy",
1385
+ "displayName": "Site Deploy",
1386
+ "version": "1.0.0",
1387
+ "path": "registry/curated/site-deploy",
1388
+ "description": "Deploy websites and applications to cloud providers with automatic domain registration and DNS configuration.",
1389
+ "category": "infrastructure",
1390
+ "namespace": "wunderland",
1391
+ "verified": true,
1392
+ "source": "curated",
1393
+ "keywords": ["deploy", "cloud", "hosting", "domain", "dns", "devops", "vercel", "cloudflare", "aws", "digitalocean", "netlify", "heroku", "railway", "flyio"],
1394
+ "requiredSecrets": [],
1395
+ "requiredTools": ["siteDeployOrchestrate"],
1396
+ "metadata": {
1397
+ "emoji": "🚀"
1398
+ }
1399
+ },
1400
+ {
1401
+ "id": "com.framers.skill.cloud-ops",
1402
+ "name": "cloud-ops",
1403
+ "displayName": "Cloud Operations",
1404
+ "version": "1.0.0",
1405
+ "path": "registry/curated/cloud-ops",
1406
+ "description": "Manage cloud infrastructure — monitor deployments, scale resources, manage databases, and handle domain operations across all supported providers.",
1407
+ "category": "infrastructure",
1408
+ "namespace": "wunderland",
1409
+ "verified": true,
1410
+ "source": "curated",
1411
+ "keywords": ["cloud", "devops", "infrastructure", "monitoring", "scaling", "database", "dns", "ops"],
1412
+ "requiredSecrets": [],
1413
+ "requiredTools": [],
1414
+ "metadata": {
1415
+ "emoji": "☁️"
1416
+ }
1417
+ }
1418
+ ],
1419
+ "community": []
1420
+ },
1421
+ "stats": {
1422
+ "totalSkills": 38,
1423
+ "curatedCount": 38,
1424
+ "communityCount": 0
1425
+ }
1426
+ }