major-ai-skills 2.4.0 → 2.4.2
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 +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/CHANGELOG.md +10 -0
- package/README.md +3 -2
- package/gemini-extension.json +1 -1
- package/package.json +5 -1
- package/plugins/mas-3d-games/.claude-plugin/plugin.json +1 -1
- package/plugins/mas-3d-games/.codex-plugin/plugin.json +1 -1
- package/plugins/mas-ai-workflows/.claude-plugin/plugin.json +1 -1
- package/plugins/mas-ai-workflows/.codex-plugin/plugin.json +1 -1
- package/plugins/mas-cad-studio/.claude-plugin/plugin.json +1 -1
- package/plugins/mas-cad-studio/.codex-plugin/plugin.json +1 -1
- package/plugins/mas-common-sense-pack/.claude-plugin/plugin.json +1 -1
- package/plugins/mas-common-sense-pack/.codex-plugin/plugin.json +1 -1
- package/plugins/mas-design-knowledge/.claude-plugin/plugin.json +1 -1
- package/plugins/mas-design-knowledge/.codex-plugin/plugin.json +1 -1
- package/plugins/mas-desktop-ops/.claude-plugin/plugin.json +1 -1
- package/plugins/mas-desktop-ops/.codex-plugin/plugin.json +1 -1
- package/plugins/mas-efficiency-pack/.claude-plugin/plugin.json +1 -1
- package/plugins/mas-efficiency-pack/.codex-plugin/plugin.json +1 -1
- package/plugins/mas-video-lab/.claude-plugin/plugin.json +1 -1
- package/plugins/mas-video-lab/.codex-plugin/plugin.json +1 -1
- package/tools/bin/install.js +41 -25
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 2.4.2 - 2026-10-06
|
|
4
|
+
|
|
5
|
+
- Point terminal tip, npm `funding`, and README at the live Whop product: https://whop.com/major-ai-skills/products/buy-ali-a-coffee/
|
|
6
|
+
- Drop Buy Me a Coffee / `bmc.link` (not available for Pakistan payouts)
|
|
7
|
+
|
|
8
|
+
## 2.4.1 - 2026-10-06
|
|
9
|
+
|
|
10
|
+
- Terminal tip after install/search/list: Buy Ali a coffee → https://whop.com/major-ai-skills/products/buy-ali-a-coffee/
|
|
11
|
+
- npm `funding` field and README community link for the same Whop product URL (Pakistan-friendly payouts)
|
|
12
|
+
|
|
3
13
|
## 2.4.0 - 2026-10-06
|
|
4
14
|
|
|
5
15
|
- Deepened **50 high-impact skills** across Days 1–5 of the skill improvement backlog (AI workflow stubs, core DevOps, data platforms, app/automation stack, and creative/CAD/video tools).
|
package/README.md
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **Installable GitHub library of agentic skills / AI agent skills (`SKILL.md` playbooks) for Claude Code, Cursor, Codex CLI, Gemini CLI, Antigravity, and more - focused on professional apps, token efficiency, and practical prompting habits.**
|
|
10
10
|
|
|
11
|
-
**Current release: [V2.4.
|
|
11
|
+
**Current release: [V2.4.2](https://github.com/alivirgo/Major-AI-Skills/releases/latest) · 412 Canonical Skills · Zero-Config Agent Discovery**
|
|
12
12
|
|
|
13
13
|
---
|
|
14
14
|
|
|
@@ -185,7 +185,7 @@ npx major-ai-skills@latest --search "JSON schema business rules" --json --limit
|
|
|
185
185
|
| **npm** (primary) | `npx major-ai-skills --<host> --skills <ids>` | Direct interactive/scripted CLI installer · [npmjs.com/package/major-ai-skills](https://www.npmjs.com/package/major-ai-skills) |
|
|
186
186
|
| **jsDelivr CDN** | `https://cdn.jsdelivr.net/npm/major-ai-skills@latest/` | Instant global CDN mirror & raw skill access · [jsdelivr.com/package/npm/major-ai-skills](https://www.jsdelivr.com/package/npm/major-ai-skills) |
|
|
187
187
|
| **GitHub Packages** | `@alivirgo/major-ai-skills` | Scoped package [`@alivirgo/major-ai-skills`](https://github.com/alivirgo/Major-AI-Skills/pkgs/npm/major-ai-skills) (fills repo sidebar) |
|
|
188
|
-
| **GitHub Release** | Download `major-ai-skills-2.4.
|
|
188
|
+
| **GitHub Release** | Download `major-ai-skills-2.4.2.tgz` | Verified tarball from [V2.4.2 Release](https://github.com/alivirgo/Major-AI-Skills/releases/latest) |
|
|
189
189
|
| **skills.sh / Vercel** | `npx skills add alivirgo/Major-AI-Skills` | Discovery via install telemetry |
|
|
190
190
|
| **Claude Code Marketplace** | `.claude-plugin/marketplace.json` | Add this repo as a marketplace, then install a specialized plugin |
|
|
191
191
|
| **Gemini CLI Extension** | `gemini extensions install https://github.com/alivirgo/Major-AI-Skills` | [Gallery listing verified September 11, 2026](https://geminicli.com/extensions) |
|
|
@@ -435,6 +435,7 @@ Machine-readable discovery for answer engines and agents:
|
|
|
435
435
|
|
|
436
436
|
## 👥 Community
|
|
437
437
|
|
|
438
|
+
- ☕ **Buy Ali a coffee** → [whop.com/major-ai-skills/products/buy-ali-a-coffee](https://whop.com/major-ai-skills/products/buy-ali-a-coffee/) (also shown after `npx major-ai-skills` installs)
|
|
438
439
|
- 💬 [Discussions](https://github.com/alivirgo/Major-AI-Skills/discussions) for ideas
|
|
439
440
|
- 🐛 [Issues](https://github.com/alivirgo/Major-AI-Skills/issues) for bugs
|
|
440
441
|
- 📝 [Medium Article](https://medium.com/@alithetechguy/what-are-ai-agent-skills-claude-code-cursor-skill-md-explained-plus-392-skill-library-to-instal-a4218fa6f0b5) - Agent skills FAQ for SEO / GEO / AI
|
package/gemini-extension.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "major-ai-skills",
|
|
3
|
-
"version": "2.4.
|
|
3
|
+
"version": "2.4.2",
|
|
4
4
|
"description": "412+ installable agent skills (SKILL.md) for professional apps, token efficiency, and common-sense prompting. Compatible with Gemini CLI skills discovery.",
|
|
5
5
|
"contextFileName": "GEMINI.md"
|
|
6
6
|
}
|
package/package.json
CHANGED
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "major-ai-skills",
|
|
3
|
-
"version": "2.4.
|
|
3
|
+
"version": "2.4.2",
|
|
4
4
|
"description": "Installable agentic skills / AI agent skills (SKILL.md) for Claude Code, Cursor, Codex CLI, Gemini CLI & Antigravity - 412+ professional app, token-efficiency, and common-sense skills. SEO/GEO ready.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "Ali Virgo",
|
|
8
8
|
"url": "https://github.com/alivirgo"
|
|
9
9
|
},
|
|
10
|
+
"funding": {
|
|
11
|
+
"type": "whop",
|
|
12
|
+
"url": "https://whop.com/major-ai-skills/products/buy-ali-a-coffee/"
|
|
13
|
+
},
|
|
10
14
|
"homepage": "https://alivirgo.github.io/Major-AI-Skills/",
|
|
11
15
|
"bugs": {
|
|
12
16
|
"url": "https://github.com/alivirgo/Major-AI-Skills/issues"
|
package/tools/bin/install.js
CHANGED
|
@@ -10,6 +10,14 @@ const os = require("os");
|
|
|
10
10
|
const root = path.resolve(__dirname, "..", "..");
|
|
11
11
|
const skillsRoot = path.join(root, "skills");
|
|
12
12
|
|
|
13
|
+
/** Short memorable support link (Whop — Pakistan-friendly payouts). */
|
|
14
|
+
const SUPPORT_URL = "https://whop.com/major-ai-skills/products/buy-ali-a-coffee/";
|
|
15
|
+
|
|
16
|
+
function printSupportTip() {
|
|
17
|
+
console.log("");
|
|
18
|
+
console.log("☕ Enjoying Major AI Skills? Buy Ali a coffee → " + SUPPORT_URL);
|
|
19
|
+
}
|
|
20
|
+
|
|
13
21
|
const TARGETS = {
|
|
14
22
|
antigravity: path.join(os.homedir(), ".agents", "skills"),
|
|
15
23
|
cursor: path.join(os.homedir(), ".cursor", "skills"),
|
|
@@ -33,10 +41,10 @@ function parseArgs(argv) {
|
|
|
33
41
|
help: false,
|
|
34
42
|
};
|
|
35
43
|
for (let i = 2; i < argv.length; i++) {
|
|
36
|
-
const a = argv[i];
|
|
37
|
-
if (["--search", "--limit"].includes(a) && (!argv[i + 1] || argv[i + 1].startsWith("--"))) {
|
|
38
|
-
throw new Error(`${a} requires a value`);
|
|
39
|
-
}
|
|
44
|
+
const a = argv[i];
|
|
45
|
+
if (["--search", "--limit"].includes(a) && (!argv[i + 1] || argv[i + 1].startsWith("--"))) {
|
|
46
|
+
throw new Error(`${a} requires a value`);
|
|
47
|
+
}
|
|
40
48
|
if (a === "--help" || a === "-h") args.help = true;
|
|
41
49
|
else if (a === "--dry-run") args.dryRun = true;
|
|
42
50
|
else if (a === "--all") args.all = true;
|
|
@@ -51,10 +59,10 @@ function parseArgs(argv) {
|
|
|
51
59
|
else if (a === "--opencode") args.target = "opencode";
|
|
52
60
|
else if (a === "--path") args.path = argv[++i];
|
|
53
61
|
else if (a === "--skills") args.skills = argv[++i];
|
|
54
|
-
else if (a === "--category") args.category = argv[++i];
|
|
55
|
-
else if (a === "--search") args.search = argv[++i];
|
|
56
|
-
else if (a === "--json") args.json = true;
|
|
57
|
-
else if (a === "--limit") args.limit = Number(argv[++i]);
|
|
62
|
+
else if (a === "--category") args.category = argv[++i];
|
|
63
|
+
else if (a === "--search") args.search = argv[++i];
|
|
64
|
+
else if (a === "--json") args.json = true;
|
|
65
|
+
else if (a === "--limit") args.limit = Number(argv[++i]);
|
|
58
66
|
}
|
|
59
67
|
return args;
|
|
60
68
|
}
|
|
@@ -111,10 +119,13 @@ Filters:
|
|
|
111
119
|
--category x,y category filter (AND with --skills when both set)
|
|
112
120
|
--all install every skill (explicit consent)
|
|
113
121
|
--dry-run preview only
|
|
114
|
-
--list print catalog summary
|
|
115
|
-
--search "task" find relevant skills without installing anything
|
|
116
|
-
--json machine-readable search results
|
|
117
|
-
--limit 5 maximum search results (1-20)
|
|
122
|
+
--list print catalog summary
|
|
123
|
+
--search "task" find relevant skills without installing anything
|
|
124
|
+
--json machine-readable search results
|
|
125
|
+
--limit 5 maximum search results (1-20)
|
|
126
|
+
|
|
127
|
+
Support:
|
|
128
|
+
☕ ${SUPPORT_URL}
|
|
118
129
|
`);
|
|
119
130
|
}
|
|
120
131
|
|
|
@@ -122,18 +133,21 @@ function main() {
|
|
|
122
133
|
const args = parseArgs(process.argv);
|
|
123
134
|
if (args.help) return printHelp();
|
|
124
135
|
|
|
125
|
-
const index = loadIndex();
|
|
126
|
-
if (args.search !== undefined) {
|
|
127
|
-
if (!args.search.trim()) throw new Error("Search query must not be empty");
|
|
128
|
-
const limit = args.limit === undefined ? 5 : args.limit;
|
|
129
|
-
if (!Number.isInteger(limit) || limit < 1 || limit > 20) throw new Error("--limit must be an integer from 1 to 20");
|
|
130
|
-
if (args.all || args.skills) throw new Error("Search cannot be combined with --all or --skills");
|
|
131
|
-
const results = require("./search").searchSkills(index, args.search, limit, args.category);
|
|
132
|
-
if (args.json) console.log(JSON.stringify({ schemaVersion: 1, query: args.search, results }, null, 2));
|
|
133
|
-
else
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
136
|
+
const index = loadIndex();
|
|
137
|
+
if (args.search !== undefined) {
|
|
138
|
+
if (!args.search.trim()) throw new Error("Search query must not be empty");
|
|
139
|
+
const limit = args.limit === undefined ? 5 : args.limit;
|
|
140
|
+
if (!Number.isInteger(limit) || limit < 1 || limit > 20) throw new Error("--limit must be an integer from 1 to 20");
|
|
141
|
+
if (args.all || args.skills) throw new Error("Search cannot be combined with --all or --skills");
|
|
142
|
+
const results = require("./search").searchSkills(index, args.search, limit, args.category);
|
|
143
|
+
if (args.json) console.log(JSON.stringify({ schemaVersion: 1, query: args.search, results }, null, 2));
|
|
144
|
+
else {
|
|
145
|
+
console.log(results.length ? results.map(s => `${s.id}: ${s.description}\n${s.install}`).join("\n\n") : "No matching skills.");
|
|
146
|
+
printSupportTip();
|
|
147
|
+
}
|
|
148
|
+
return;
|
|
149
|
+
}
|
|
150
|
+
if (args.json || args.limit !== undefined) throw new Error("--json and --limit require --search");
|
|
137
151
|
if (args.list) {
|
|
138
152
|
const byCat = {};
|
|
139
153
|
for (const s of index) (byCat[s.category] ||= []).push(s.id);
|
|
@@ -142,6 +156,7 @@ function main() {
|
|
|
142
156
|
console.log(byCat[cat].sort().join(", "));
|
|
143
157
|
}
|
|
144
158
|
console.log(`\nTotal: ${index.length}`);
|
|
159
|
+
printSupportTip();
|
|
145
160
|
return;
|
|
146
161
|
}
|
|
147
162
|
|
|
@@ -205,6 +220,7 @@ function main() {
|
|
|
205
220
|
|
|
206
221
|
console.log(args.dryRun ? "Dry-run complete." : "Install complete.");
|
|
207
222
|
console.log(`Try: @${selected[0]?.id || "skill-id"} help me with ...`);
|
|
223
|
+
if (!args.dryRun) printSupportTip();
|
|
208
224
|
}
|
|
209
225
|
|
|
210
|
-
try { main(); } catch (error) { console.error(error.message); process.exitCode = 1; }
|
|
226
|
+
try { main(); } catch (error) { console.error(error.message); process.exitCode = 1; }
|