opencode-skills-collection 4.1.9 → 4.1.11
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/bundled-skills/.antigravity-install-manifest.json +14 -1
- package/bundled-skills/agent-reels/SKILL.md +96 -0
- package/bundled-skills/ask-human-expert/SKILL.md +141 -0
- package/bundled-skills/assay/SKILL.md +162 -0
- package/bundled-skills/email-marketing-bible/SKILL.md +413 -0
- package/bundled-skills/equibles/SKILL.md +185 -0
- package/bundled-skills/jet-browser/SKILL.md +155 -0
- package/bundled-skills/linkdigest-social-link-reader/SKILL.md +232 -0
- package/bundled-skills/loki-mode/examples/todo-app-generated/backend/package-lock.json +7 -3
- package/bundled-skills/loki-mode/examples/todo-app-generated/backend/package.json +2 -1
- package/bundled-skills/loki-mode/examples/todo-app-generated/frontend/package-lock.json +3 -3
- package/bundled-skills/loki-mode/examples/todo-app-generated/frontend/package.json +2 -1
- package/bundled-skills/looot/SKILL.md +188 -0
- package/bundled-skills/shipvela-publish/SKILL.md +80 -0
- package/bundled-skills/shipvela-publish/references/LICENSE.md +21 -0
- package/bundled-skills/tastegate/SKILL.md +129 -0
- package/bundled-skills/tastegate/references/THIRD_PARTY_NOTICES.md +25 -0
- package/bundled-skills/tastegate/references/craft-floor.md +53 -0
- package/bundled-skills/tastegate/references/direction.md +59 -0
- package/bundled-skills/tastegate/references/impeccable-LICENSE-Apache-2.0.txt +191 -0
- package/bundled-skills/tastegate/references/taste-skill-LICENSE-MIT.txt +21 -0
- package/bundled-skills/tastegate/scripts/gate.py +401 -0
- package/bundled-skills/telegram/assets/boilerplate/nodejs/package-lock.json +7 -3
- package/bundled-skills/telegram/assets/boilerplate/nodejs/package.json +2 -1
- package/bundled-skills/telegram-channel-ads/SKILL.md +139 -0
- package/bundled-skills/url-to-markdown/SKILL.md +74 -0
- package/bundled-skills/what-could-break/SKILL.md +128 -0
- package/bundled-skills/what-could-break/references/LICENSE-pstack.txt +21 -0
- package/bundled-skills/whatsapp-cloud-api/assets/boilerplate/nodejs/package-lock.json +7 -3
- package/bundled-skills/whatsapp-cloud-api/assets/boilerplate/nodejs/package.json +2 -1
- package/package.json +1 -1
- package/skills_index.json +297 -0
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: what-could-break
|
|
3
|
+
description: "Find what a change breaks outside its own diff, then prove the one fact that makes it safe by running real code. Use before any multi-file edit or an edit to a shared path."
|
|
4
|
+
category: development
|
|
5
|
+
risk: safe
|
|
6
|
+
source: community
|
|
7
|
+
source_repo: stas4000/what-could-break
|
|
8
|
+
source_type: community
|
|
9
|
+
date_added: "2026-10-08"
|
|
10
|
+
author: stas4000
|
|
11
|
+
tags: [code-review, refactoring, testing, blast-radius, verification]
|
|
12
|
+
tools: [claude, cursor, gemini]
|
|
13
|
+
license: "MIT"
|
|
14
|
+
license_source: "https://github.com/stas4000/what-could-break/blob/main/LICENSE"
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
# What Could Break
|
|
18
|
+
|
|
19
|
+
## Overview
|
|
20
|
+
|
|
21
|
+
Listing callers is not the job. Grep does that in a second. This skill finds the breakage
|
|
22
|
+
grep will not show you, and produces one proof that the change is safe.
|
|
23
|
+
|
|
24
|
+
Run it before design, not only before merge. Whenever a task asserts something about
|
|
25
|
+
existing code ("X already handles Y", "just make X public"), that assertion is a
|
|
26
|
+
hypothesis, and the census of real consumers decides the design.
|
|
27
|
+
|
|
28
|
+
## When to Use
|
|
29
|
+
|
|
30
|
+
- Use before any multi-file edit, or an edit to a shared path: API payload, config, stored data, a client other apps read, a prompt or policy file
|
|
31
|
+
- Use when the user asks "what could this break" or "blast radius of X"
|
|
32
|
+
- Use for a small diff you do not trust
|
|
33
|
+
- Use when a brief asserts something about existing code, before you design against that assertion
|
|
34
|
+
|
|
35
|
+
## How It Works
|
|
36
|
+
|
|
37
|
+
### Step 1: Do not trust your own writeup
|
|
38
|
+
|
|
39
|
+
A risk analysis that sounds right is worthless: it reads as convincing whether or not it
|
|
40
|
+
is true. Find the one or two facts the whole change depends on, and get each one as far
|
|
41
|
+
down this ladder as is cheap. Say where it stopped.
|
|
42
|
+
|
|
43
|
+
1. **You said so.** Worth nothing on its own.
|
|
44
|
+
2. **You pointed at it.** A real `file:line`, or the library's own source at the pinned version.
|
|
45
|
+
3. **You walked it.** You traced the bad case step by step and it does not reach.
|
|
46
|
+
4. **You ran it.** A script or test calls the real code and fails loud if you are wrong.
|
|
47
|
+
5. **You saw it live.** Reproduced in the running app, service or device.
|
|
48
|
+
|
|
49
|
+
Rung 4 is usually one small script that imports the same module production runs and calls
|
|
50
|
+
the exact function you are worried about, with the input you are worried about.
|
|
51
|
+
|
|
52
|
+
### Step 2: Read the change
|
|
53
|
+
|
|
54
|
+
The diff, the symbols it adds, changes and deletes, and what it now does differently,
|
|
55
|
+
including what the diff does not spell out. `git log -S '<symbol>'` and
|
|
56
|
+
`git log -L :<function>:<file>` show why the old shape exists; a guard that looks
|
|
57
|
+
pointless often has a commit explaining the incident it stopped.
|
|
58
|
+
|
|
59
|
+
### Step 3: Find the one fact it is safe because of
|
|
60
|
+
|
|
61
|
+
Most risky-looking changes are safe because of one fact ("this only drops cache entries
|
|
62
|
+
that are already expired", "no client reads this field"). If it holds, most risks clear at
|
|
63
|
+
once. If you cannot find one, the change is not understood yet.
|
|
64
|
+
|
|
65
|
+
### Step 4: Look where grep stops
|
|
66
|
+
|
|
67
|
+
Search for the literal value, the field name, the error text and the old behavior, not
|
|
68
|
+
only the symbol you renamed. Then check each of these by hand:
|
|
69
|
+
|
|
70
|
+
- **The same rule living twice.** A second config file, a fallback path that hardcodes the old default, a copy synced into another repo, a constant duplicated in a migration or test fixture, a feature flag default.
|
|
71
|
+
- **Prompts and agent files that restate the rule.** System prompts, agent and skill files, `AGENTS.md`, `CLAUDE.md`, runbooks. An agent obeys the stale sentence, not your code.
|
|
72
|
+
- **Every other client.** Web, iOS, Android, desktop, CLI, extensions, partner integrations. Mobile clients in users' hands stay on the old version for weeks: what does an old client do with the new shape, and a new client with the old server?
|
|
73
|
+
- **Wire formats.** JSON field names and types, enum values, null versus missing, date formats, pagination shape, error codes, webhook payloads, queue schemas, GraphQL and protobuf contracts.
|
|
74
|
+
- **Stored state.** Columns and their defaults, rows written under the old shape, cache entries, files on disk, append-only logs, session and cookie contents, search indexes. Old data outlives the deploy.
|
|
75
|
+
- **Environment and secrets.** An env var renamed in code but not in the deploy config, CI, the image, or the second service that reads it.
|
|
76
|
+
- **Processes that restart separately.** Web server, workers, cron jobs, serverless functions, the mobile app, a sidecar. During a rollout one runs new code while another runs old code against the same data. Can both coexist for an hour?
|
|
77
|
+
- **Timing and concurrency.** Two writers on the same row or key, a retry that now fires twice, ordering that only held because one step was slow.
|
|
78
|
+
- **Library source at its pinned version.** Read the dependency's code at the lockfile version, not your memory of its docs.
|
|
79
|
+
- **Generated and vendored code.** Clients generated from a schema, vendored copies, committed build artifacts, bundles whose cache-busting key did not change.
|
|
80
|
+
- **Tests and fixtures that encode the old behavior.** A test that passes because its fixture still has the old shape proves nothing about the new one.
|
|
81
|
+
- **Observability.** Dashboards, alerts and log parsers matching a message or metric name you changed.
|
|
82
|
+
|
|
83
|
+
### Step 5: Prove the one fact
|
|
84
|
+
|
|
85
|
+
Write the script or test that runs the real code, run it, and paste what happened. If you
|
|
86
|
+
cannot run it, write "unproven" next to the fact. For a wide change, repeat steps 3 to 5
|
|
87
|
+
per subsystem instead of stretching one writeup across everything.
|
|
88
|
+
|
|
89
|
+
## Examples
|
|
90
|
+
|
|
91
|
+
### Example 1: A field removed from an API response
|
|
92
|
+
|
|
93
|
+
The one fact: no client reads `legacy_total`. Rung 2 is a search across every client repo.
|
|
94
|
+
Rung 4 is a script that replays yesterday's real requests against the new serializer and
|
|
95
|
+
asserts no response shrinks a field a stored client build still parses. The report names
|
|
96
|
+
the iOS build still in users' hands and the cleared web and admin clients.
|
|
97
|
+
|
|
98
|
+
### Example 2: "Just make this helper public"
|
|
99
|
+
|
|
100
|
+
The brief asserts the helper is already side-effect free. Treat that as a hypothesis:
|
|
101
|
+
read it, then run it twice in one process and compare state. If it caches, the assertion
|
|
102
|
+
is false and the design changes before any code is written.
|
|
103
|
+
|
|
104
|
+
## Best Practices
|
|
105
|
+
|
|
106
|
+
- ✅ State the rung each fact reached, and the command that proved it
|
|
107
|
+
- ✅ List cleared risks separately from confirmed ones, with the search you ran
|
|
108
|
+
- ✅ Cite a real `file:line` for every risk
|
|
109
|
+
- ❌ Don't invent a caller, an API or a config key
|
|
110
|
+
- ❌ Don't ship a convincing essay in place of one run script
|
|
111
|
+
|
|
112
|
+
## Limitations
|
|
113
|
+
|
|
114
|
+
- A risk needs a real chance and a real cost, or it does not belong on the list.
|
|
115
|
+
- A search that found nothing is still an answer: write the search down rather than claiming the risk does not exist.
|
|
116
|
+
- This skill does not replace environment-specific testing or expert review.
|
|
117
|
+
- Keep secrets and private data out of the report and out of any script left behind.
|
|
118
|
+
|
|
119
|
+
## Security & Safety Notes
|
|
120
|
+
|
|
121
|
+
- The proof scripts this skill writes run real production code paths. Run them in a local or authorized test environment, never against production data stores.
|
|
122
|
+
- Read-only by design: it inspects a diff and runs checks. It does not mutate state, and it should not be used to apply fixes.
|
|
123
|
+
|
|
124
|
+
## Credits
|
|
125
|
+
|
|
126
|
+
Adapted from [stas4000/what-could-break](https://github.com/stas4000/what-could-break) (MIT).
|
|
127
|
+
Includes material adapted from pstack by Lauren Tan (MIT); its notice ships here in
|
|
128
|
+
[references/LICENSE-pstack.txt](references/LICENSE-pstack.txt).
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Lauren Tan
|
|
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.
|
|
@@ -1336,9 +1336,9 @@
|
|
|
1336
1336
|
}
|
|
1337
1337
|
},
|
|
1338
1338
|
"node_modules/proxy-addr": {
|
|
1339
|
-
"version": "2.0.
|
|
1340
|
-
"resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.
|
|
1341
|
-
"integrity": "sha512-
|
|
1339
|
+
"version": "2.0.8",
|
|
1340
|
+
"resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.8.tgz",
|
|
1341
|
+
"integrity": "sha512-5nnx0yGyVUcY6t9RnWcARWtwT9F1D8O9rt08htPvnd49W1IgZtmLkhu9WfMzQj1cFxjHIO6connUNVW5k7AVyQ==",
|
|
1342
1342
|
"license": "MIT",
|
|
1343
1343
|
"dependencies": {
|
|
1344
1344
|
"forwarded": "0.2.0",
|
|
@@ -1346,6 +1346,10 @@
|
|
|
1346
1346
|
},
|
|
1347
1347
|
"engines": {
|
|
1348
1348
|
"node": ">= 0.10"
|
|
1349
|
+
},
|
|
1350
|
+
"funding": {
|
|
1351
|
+
"type": "opencollective",
|
|
1352
|
+
"url": "https://opencollective.com/express"
|
|
1349
1353
|
}
|
|
1350
1354
|
},
|
|
1351
1355
|
"node_modules/proxy-from-env": {
|
package/package.json
CHANGED
package/skills_index.json
CHANGED
|
@@ -5294,6 +5294,42 @@
|
|
|
5294
5294
|
"prompt"
|
|
5295
5295
|
]
|
|
5296
5296
|
},
|
|
5297
|
+
{
|
|
5298
|
+
"id": "ask-human-expert",
|
|
5299
|
+
"path": "skills/ask-human-expert",
|
|
5300
|
+
"category": "research",
|
|
5301
|
+
"name": "ask-human-expert",
|
|
5302
|
+
"description": "Ask real executives and domain experts a question through Instant Expert for a written answer or short call: practitioner knowledge, customer discovery. Free test mode; live sends need approval.",
|
|
5303
|
+
"risk": "critical",
|
|
5304
|
+
"source": "https://github.com/Instant-Expert/skills",
|
|
5305
|
+
"date_added": "2026-10-08",
|
|
5306
|
+
"plugin": {
|
|
5307
|
+
"targets": {
|
|
5308
|
+
"codex": "supported",
|
|
5309
|
+
"claude": "supported"
|
|
5310
|
+
},
|
|
5311
|
+
"setup": {
|
|
5312
|
+
"type": "none",
|
|
5313
|
+
"summary": "",
|
|
5314
|
+
"docs": null
|
|
5315
|
+
},
|
|
5316
|
+
"reasons": []
|
|
5317
|
+
},
|
|
5318
|
+
"source_type": "official",
|
|
5319
|
+
"source_repo": "Instant-Expert/skills",
|
|
5320
|
+
"license": "MIT-0",
|
|
5321
|
+
"license_source": "https://github.com/Instant-Expert/skills/blob/main/LICENSE",
|
|
5322
|
+
"tags": [
|
|
5323
|
+
"experts",
|
|
5324
|
+
"expert-network",
|
|
5325
|
+
"human-in-the-loop",
|
|
5326
|
+
"customer-discovery",
|
|
5327
|
+
"user-research",
|
|
5328
|
+
"interviews",
|
|
5329
|
+
"mcp",
|
|
5330
|
+
"paid-api"
|
|
5331
|
+
]
|
|
5332
|
+
},
|
|
5297
5333
|
{
|
|
5298
5334
|
"id": "ask-matt",
|
|
5299
5335
|
"path": "skills/ask-matt",
|
|
@@ -5347,6 +5383,40 @@
|
|
|
5347
5383
|
"reasons": []
|
|
5348
5384
|
}
|
|
5349
5385
|
},
|
|
5386
|
+
{
|
|
5387
|
+
"id": "assay",
|
|
5388
|
+
"path": "skills/assay",
|
|
5389
|
+
"category": "testing",
|
|
5390
|
+
"name": "assay",
|
|
5391
|
+
"description": "Run assay on a web page you just wrote or changed. It opens the page in a real browser, drives every control, and reports where the page contradicts itself. Deterministic, no API key, no network.",
|
|
5392
|
+
"risk": "safe",
|
|
5393
|
+
"source": "https://github.com/awss1i/assay",
|
|
5394
|
+
"date_added": "2026-10-08",
|
|
5395
|
+
"plugin": {
|
|
5396
|
+
"targets": {
|
|
5397
|
+
"codex": "supported",
|
|
5398
|
+
"claude": "supported"
|
|
5399
|
+
},
|
|
5400
|
+
"setup": {
|
|
5401
|
+
"type": "none",
|
|
5402
|
+
"summary": "",
|
|
5403
|
+
"docs": null
|
|
5404
|
+
},
|
|
5405
|
+
"reasons": []
|
|
5406
|
+
},
|
|
5407
|
+
"source_type": "community",
|
|
5408
|
+
"source_repo": "awss1i/assay",
|
|
5409
|
+
"license": "MIT",
|
|
5410
|
+
"license_source": "https://github.com/awss1i/assay/blob/main/LICENSE",
|
|
5411
|
+
"tags": [
|
|
5412
|
+
"testing",
|
|
5413
|
+
"qa",
|
|
5414
|
+
"web",
|
|
5415
|
+
"browser",
|
|
5416
|
+
"playwright",
|
|
5417
|
+
"html"
|
|
5418
|
+
]
|
|
5419
|
+
},
|
|
5350
5420
|
{
|
|
5351
5421
|
"id": "asset-inventory",
|
|
5352
5422
|
"path": "skills/asset-inventory",
|
|
@@ -23207,6 +23277,39 @@
|
|
|
23207
23277
|
"electrical-engineering"
|
|
23208
23278
|
]
|
|
23209
23279
|
},
|
|
23280
|
+
{
|
|
23281
|
+
"id": "equibles",
|
|
23282
|
+
"path": "skills/equibles",
|
|
23283
|
+
"category": "finance",
|
|
23284
|
+
"name": "equibles",
|
|
23285
|
+
"description": "Query Equibles for US stock market data: SEC filing search, XBRL financial statements, earnings call transcripts, insider and 13F holdings, and daily prices.",
|
|
23286
|
+
"risk": "safe",
|
|
23287
|
+
"source": "self",
|
|
23288
|
+
"date_added": "2026-10-08",
|
|
23289
|
+
"plugin": {
|
|
23290
|
+
"targets": {
|
|
23291
|
+
"codex": "supported",
|
|
23292
|
+
"claude": "supported"
|
|
23293
|
+
},
|
|
23294
|
+
"setup": {
|
|
23295
|
+
"type": "none",
|
|
23296
|
+
"summary": "",
|
|
23297
|
+
"docs": null
|
|
23298
|
+
},
|
|
23299
|
+
"reasons": []
|
|
23300
|
+
},
|
|
23301
|
+
"source_type": "self",
|
|
23302
|
+
"tags": [
|
|
23303
|
+
"finance",
|
|
23304
|
+
"stocks",
|
|
23305
|
+
"sec-filings",
|
|
23306
|
+
"earnings-calls",
|
|
23307
|
+
"insider-trading",
|
|
23308
|
+
"13f",
|
|
23309
|
+
"rest-api",
|
|
23310
|
+
"mcp"
|
|
23311
|
+
]
|
|
23312
|
+
},
|
|
23210
23313
|
{
|
|
23211
23314
|
"id": "error-debugging-error-analysis",
|
|
23212
23315
|
"path": "skills/error-debugging-error-analysis",
|
|
@@ -34688,6 +34791,40 @@
|
|
|
34688
34791
|
"license": "MIT",
|
|
34689
34792
|
"license_source": "https://github.com/LambdaTest/agent-skills/blob/main/LICENSE"
|
|
34690
34793
|
},
|
|
34794
|
+
{
|
|
34795
|
+
"id": "jet-browser",
|
|
34796
|
+
"path": "skills/jet-browser",
|
|
34797
|
+
"category": "browser-automation",
|
|
34798
|
+
"name": "jet-browser",
|
|
34799
|
+
"description": "Verify or integrate Jet Browser when a project needs isolated WPE WebKit sessions, native input, screenshots, ordered JSONL automation, or reproducible runtime checks.",
|
|
34800
|
+
"risk": "critical",
|
|
34801
|
+
"source": "https://github.com/masakaai/jet-browser",
|
|
34802
|
+
"date_added": "2026-10-09",
|
|
34803
|
+
"plugin": {
|
|
34804
|
+
"targets": {
|
|
34805
|
+
"codex": "supported",
|
|
34806
|
+
"claude": "supported"
|
|
34807
|
+
},
|
|
34808
|
+
"setup": {
|
|
34809
|
+
"type": "none",
|
|
34810
|
+
"summary": "",
|
|
34811
|
+
"docs": null
|
|
34812
|
+
},
|
|
34813
|
+
"reasons": []
|
|
34814
|
+
},
|
|
34815
|
+
"source_type": "official",
|
|
34816
|
+
"source_repo": "masakaai/jet-browser",
|
|
34817
|
+
"license": "Apache-2.0",
|
|
34818
|
+
"license_source": "https://github.com/masakaai/jet-browser/blob/v0.6.7/LICENSE",
|
|
34819
|
+
"tags": [
|
|
34820
|
+
"browser",
|
|
34821
|
+
"wpe-webkit",
|
|
34822
|
+
"automation",
|
|
34823
|
+
"docker",
|
|
34824
|
+
"jsonl",
|
|
34825
|
+
"testing"
|
|
34826
|
+
]
|
|
34827
|
+
},
|
|
34691
34828
|
{
|
|
34692
34829
|
"id": "jev-social",
|
|
34693
34830
|
"path": "skills/jev-social",
|
|
@@ -37936,6 +38073,39 @@
|
|
|
37936
38073
|
"render-loop"
|
|
37937
38074
|
]
|
|
37938
38075
|
},
|
|
38076
|
+
{
|
|
38077
|
+
"id": "looot",
|
|
38078
|
+
"path": "skills/looot",
|
|
38079
|
+
"category": "data",
|
|
38080
|
+
"name": "looot",
|
|
38081
|
+
"description": "Search, price and run 2,500+ data API endpoints (work emails, company search, SERP, web pages) from one prepaid balance via the looot MCP server.",
|
|
38082
|
+
"risk": "critical",
|
|
38083
|
+
"source": "community",
|
|
38084
|
+
"date_added": "2026-10-08",
|
|
38085
|
+
"plugin": {
|
|
38086
|
+
"targets": {
|
|
38087
|
+
"codex": "supported",
|
|
38088
|
+
"claude": "supported"
|
|
38089
|
+
},
|
|
38090
|
+
"setup": {
|
|
38091
|
+
"type": "none",
|
|
38092
|
+
"summary": "",
|
|
38093
|
+
"docs": null
|
|
38094
|
+
},
|
|
38095
|
+
"reasons": []
|
|
38096
|
+
},
|
|
38097
|
+
"source_type": "official",
|
|
38098
|
+
"source_repo": "loootai/looot-skills",
|
|
38099
|
+
"license": "MIT",
|
|
38100
|
+
"license_source": "https://github.com/loootai/looot-skills/blob/main/LICENSE",
|
|
38101
|
+
"tags": [
|
|
38102
|
+
"data-api",
|
|
38103
|
+
"enrichment",
|
|
38104
|
+
"email-finder",
|
|
38105
|
+
"seo",
|
|
38106
|
+
"mcp"
|
|
38107
|
+
]
|
|
38108
|
+
},
|
|
37939
38109
|
{
|
|
37940
38110
|
"id": "loop-library",
|
|
37941
38111
|
"path": "skills/loop-library",
|
|
@@ -59344,6 +59514,39 @@
|
|
|
59344
59514
|
"orchestration"
|
|
59345
59515
|
]
|
|
59346
59516
|
},
|
|
59517
|
+
{
|
|
59518
|
+
"id": "tastegate",
|
|
59519
|
+
"path": "skills/tastegate",
|
|
59520
|
+
"category": "frontend",
|
|
59521
|
+
"name": "tastegate",
|
|
59522
|
+
"description": "Build or fix a frontend so it looks designed, not AI-generated, then prove it in a real browser: renders at phone and desktop width and fails on overlap, low contrast and AI-slop defaults.",
|
|
59523
|
+
"risk": "safe",
|
|
59524
|
+
"source": "community",
|
|
59525
|
+
"date_added": "2026-10-08",
|
|
59526
|
+
"plugin": {
|
|
59527
|
+
"targets": {
|
|
59528
|
+
"codex": "supported",
|
|
59529
|
+
"claude": "supported"
|
|
59530
|
+
},
|
|
59531
|
+
"setup": {
|
|
59532
|
+
"type": "none",
|
|
59533
|
+
"summary": "",
|
|
59534
|
+
"docs": null
|
|
59535
|
+
},
|
|
59536
|
+
"reasons": []
|
|
59537
|
+
},
|
|
59538
|
+
"source_type": "community",
|
|
59539
|
+
"source_repo": "stas4000/tastegate",
|
|
59540
|
+
"license": "MIT",
|
|
59541
|
+
"license_source": "https://github.com/stas4000/tastegate/blob/main/LICENSE",
|
|
59542
|
+
"tags": [
|
|
59543
|
+
"frontend",
|
|
59544
|
+
"design",
|
|
59545
|
+
"ui",
|
|
59546
|
+
"browser-testing",
|
|
59547
|
+
"quality-gate"
|
|
59548
|
+
]
|
|
59549
|
+
},
|
|
59347
59550
|
{
|
|
59348
59551
|
"id": "tavily-web",
|
|
59349
59552
|
"path": "skills/tavily-web",
|
|
@@ -59989,6 +60192,37 @@
|
|
|
59989
60192
|
"approvals"
|
|
59990
60193
|
]
|
|
59991
60194
|
},
|
|
60195
|
+
{
|
|
60196
|
+
"id": "telegram-channel-ads",
|
|
60197
|
+
"path": "skills/telegram-channel-ads",
|
|
60198
|
+
"category": "marketing",
|
|
60199
|
+
"name": "telegram-channel-ads",
|
|
60200
|
+
"description": "Vet and price ad posts in Telegram channels: reach benchmarks by size, topic and language, ad-network and channel-age checks, CPM and deletion-window math.",
|
|
60201
|
+
"risk": "safe",
|
|
60202
|
+
"source": "self",
|
|
60203
|
+
"date_added": "2026-10-07",
|
|
60204
|
+
"plugin": {
|
|
60205
|
+
"targets": {
|
|
60206
|
+
"codex": "supported",
|
|
60207
|
+
"claude": "supported"
|
|
60208
|
+
},
|
|
60209
|
+
"setup": {
|
|
60210
|
+
"type": "none",
|
|
60211
|
+
"summary": "",
|
|
60212
|
+
"docs": null
|
|
60213
|
+
},
|
|
60214
|
+
"reasons": []
|
|
60215
|
+
},
|
|
60216
|
+
"source_type": "self",
|
|
60217
|
+
"tags": [
|
|
60218
|
+
"telegram",
|
|
60219
|
+
"advertising",
|
|
60220
|
+
"influencer-marketing",
|
|
60221
|
+
"media-buying",
|
|
60222
|
+
"cpm",
|
|
60223
|
+
"marketing"
|
|
60224
|
+
]
|
|
60225
|
+
},
|
|
59992
60226
|
{
|
|
59993
60227
|
"id": "telegram-mini-app",
|
|
59994
60228
|
"path": "skills/telegram-mini-app",
|
|
@@ -63146,6 +63380,36 @@
|
|
|
63146
63380
|
"key-value"
|
|
63147
63381
|
]
|
|
63148
63382
|
},
|
|
63383
|
+
{
|
|
63384
|
+
"id": "url-to-markdown",
|
|
63385
|
+
"path": "skills/url-to-markdown",
|
|
63386
|
+
"category": "web",
|
|
63387
|
+
"name": "url-to-markdown",
|
|
63388
|
+
"description": "Fetch a public webpage as clean Markdown for an agent: read, summarize, quote, or cite the page while preserving its source URL.",
|
|
63389
|
+
"risk": "safe",
|
|
63390
|
+
"source": "official",
|
|
63391
|
+
"date_added": "2026-10-09",
|
|
63392
|
+
"plugin": {
|
|
63393
|
+
"targets": {
|
|
63394
|
+
"codex": "supported",
|
|
63395
|
+
"claude": "supported"
|
|
63396
|
+
},
|
|
63397
|
+
"setup": {
|
|
63398
|
+
"type": "none",
|
|
63399
|
+
"summary": "",
|
|
63400
|
+
"docs": null
|
|
63401
|
+
},
|
|
63402
|
+
"reasons": []
|
|
63403
|
+
},
|
|
63404
|
+
"source_type": "official",
|
|
63405
|
+
"source_repo": "replynodes/replynodes-agent-skills",
|
|
63406
|
+
"license": "MIT",
|
|
63407
|
+
"tags": [
|
|
63408
|
+
"web",
|
|
63409
|
+
"markdown",
|
|
63410
|
+
"read-only"
|
|
63411
|
+
]
|
|
63412
|
+
},
|
|
63149
63413
|
{
|
|
63150
63414
|
"id": "us-property-data",
|
|
63151
63415
|
"path": "skills/us-property-data",
|
|
@@ -65800,6 +66064,39 @@
|
|
|
65800
66064
|
"methodology"
|
|
65801
66065
|
]
|
|
65802
66066
|
},
|
|
66067
|
+
{
|
|
66068
|
+
"id": "what-could-break",
|
|
66069
|
+
"path": "skills/what-could-break",
|
|
66070
|
+
"category": "development",
|
|
66071
|
+
"name": "what-could-break",
|
|
66072
|
+
"description": "Find what a change breaks outside its own diff, then prove the one fact that makes it safe by running real code. Use before any multi-file edit or an edit to a shared path.",
|
|
66073
|
+
"risk": "safe",
|
|
66074
|
+
"source": "community",
|
|
66075
|
+
"date_added": "2026-10-08",
|
|
66076
|
+
"plugin": {
|
|
66077
|
+
"targets": {
|
|
66078
|
+
"codex": "supported",
|
|
66079
|
+
"claude": "supported"
|
|
66080
|
+
},
|
|
66081
|
+
"setup": {
|
|
66082
|
+
"type": "none",
|
|
66083
|
+
"summary": "",
|
|
66084
|
+
"docs": null
|
|
66085
|
+
},
|
|
66086
|
+
"reasons": []
|
|
66087
|
+
},
|
|
66088
|
+
"source_type": "community",
|
|
66089
|
+
"source_repo": "stas4000/what-could-break",
|
|
66090
|
+
"license": "MIT",
|
|
66091
|
+
"license_source": "https://github.com/stas4000/what-could-break/blob/main/LICENSE",
|
|
66092
|
+
"tags": [
|
|
66093
|
+
"code-review",
|
|
66094
|
+
"refactoring",
|
|
66095
|
+
"testing",
|
|
66096
|
+
"blast-radius",
|
|
66097
|
+
"verification"
|
|
66098
|
+
]
|
|
66099
|
+
},
|
|
65803
66100
|
{
|
|
65804
66101
|
"id": "whatsapp-automation",
|
|
65805
66102
|
"path": "skills/whatsapp-automation",
|