ai-agent-skills 3.5.0 → 4.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/README.md +114 -56
- package/cli.js +724 -132
- package/docs/workflows/add-an-upstream-skill.md +35 -0
- package/docs/workflows/make-a-house-copy.md +15 -0
- package/docs/workflows/organize-shelves.md +24 -0
- package/docs/workflows/refresh-installed-skills.md +25 -0
- package/docs/workflows/start-a-library.md +31 -0
- package/lib/catalog-data.cjs +38 -4
- package/lib/catalog-mutations.cjs +48 -32
- package/lib/dependency-graph.cjs +147 -0
- package/lib/install-state.cjs +114 -0
- package/lib/library-context.cjs +77 -0
- package/lib/render-docs.cjs +71 -26
- package/package.json +3 -2
- package/skills.json +66 -66
- package/tui/catalog.cjs +34 -10
- package/tui/index.mjs +207 -43
package/README.md
CHANGED
|
@@ -1,43 +1,62 @@
|
|
|
1
|
-
|
|
1
|
+
<h1 align="center">AI Agent Skills</h1>
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
<p align="center">
|
|
4
|
+
<strong>My curated library of agent skills, plus the package to build your own.</strong>
|
|
5
|
+
</p>
|
|
4
6
|
|
|
5
|
-
|
|
7
|
+
<p align="center">
|
|
8
|
+
The skills I actually keep around, organized the way I work.
|
|
9
|
+
</p>
|
|
6
10
|
|
|
7
11
|
<!-- GENERATED:library-stats:start -->
|
|
8
|
-
|
|
9
|
-
-
|
|
10
|
-
-
|
|
11
|
-
-
|
|
12
|
+
<p align="center">
|
|
13
|
+
<a href="https://github.com/MoizIbnYousaf/Ai-Agent-Skills"><img alt="GitHub stars" src="https://img.shields.io/github/stars/MoizIbnYousaf/Ai-Agent-Skills?style=for-the-badge&label=stars&labelColor=313244&color=89b4fa&logo=github&logoColor=cdd6f4" /></a>
|
|
14
|
+
<a href="https://www.npmjs.com/package/ai-agent-skills"><img alt="npm version" src="https://img.shields.io/npm/v/ai-agent-skills?style=for-the-badge&label=version&labelColor=313244&color=b4befe&logo=npm&logoColor=cdd6f4" /></a>
|
|
15
|
+
<a href="https://www.npmjs.com/package/ai-agent-skills"><img alt="npm total downloads" src="https://img.shields.io/npm/dt/ai-agent-skills?style=for-the-badge&label=downloads&labelColor=313244&color=f5e0dc&logo=npm&logoColor=cdd6f4" /></a>
|
|
16
|
+
<a href="https://github.com/MoizIbnYousaf/Ai-Agent-Skills#shelves"><img alt="Library structure" src="https://img.shields.io/badge/library-55%20skills%20%C2%B7%205%20shelves-cba6f7?style=for-the-badge&labelColor=313244&logo=bookstack&logoColor=cdd6f4" /></a>
|
|
17
|
+
</p>
|
|
18
|
+
|
|
19
|
+
<p align="center"><sub>8 house copies · 47 cataloged upstream</sub></p>
|
|
12
20
|
<!-- GENERATED:library-stats:end -->
|
|
13
21
|
|
|
14
|
-
|
|
22
|
+
<p align="center"><em>Picked, shelved, and maintained by hand.</em></p>
|
|
15
23
|
|
|
16
|
-
##
|
|
24
|
+
## Library
|
|
17
25
|
|
|
18
|
-
`ai-agent-skills`
|
|
26
|
+
`ai-agent-skills` now does two jobs.
|
|
19
27
|
|
|
20
|
-
|
|
28
|
+
It ships my curated bundled library, and it gives you the CLI and TUI to build a managed library of your own.
|
|
29
|
+
It works with Claude Code, Codex, Cursor, and other SKILL.md-compatible agents.
|
|
30
|
+
|
|
31
|
+
The bundled library is organized the way I work:
|
|
21
32
|
|
|
22
33
|
- Start with a shelf like `frontend` or `workflow`
|
|
23
|
-
-
|
|
24
|
-
- Keep provenance visible
|
|
25
|
-
- Keep
|
|
34
|
+
- Keep the set small enough to browse quickly
|
|
35
|
+
- Keep provenance visible
|
|
36
|
+
- Keep notes that explain why a skill is here
|
|
37
|
+
|
|
38
|
+
Use `skills.sh` when you want the broad ecosystem.
|
|
39
|
+
Use `ai-agent-skills` when you want a kept set, shelves, provenance, and a library you can manage yourself.
|
|
40
|
+
|
|
41
|
+
## What's New in 4.0.0
|
|
26
42
|
|
|
27
|
-
|
|
28
|
-
|
|
43
|
+
- Managed library workspaces with `init-library`
|
|
44
|
+
- `add <source>` for bringing bundled picks, upstream repo skills, or house copies into your own library
|
|
45
|
+
- `sync [name]` as the main refresh command, with `update` kept as an alias
|
|
46
|
+
- Dependency-aware installs with `requires` and `--no-deps`
|
|
47
|
+
- Installed-state visibility across the CLI and the TUI
|
|
29
48
|
|
|
30
|
-
## Why
|
|
49
|
+
## Why Keep It
|
|
31
50
|
|
|
32
51
|
I launched this on December 17, 2025, before `skills.sh` existed and before the ecosystem had a clear default universal installer.
|
|
33
52
|
|
|
34
|
-
Originally this repo was that
|
|
53
|
+
Originally this repo was that installer. That part still matters.
|
|
35
54
|
|
|
36
|
-
|
|
55
|
+
I keep it because the library itself has become useful: shelves, provenance, and notes that make the curation legible.
|
|
37
56
|
|
|
38
|
-
##
|
|
57
|
+
## How It Works
|
|
39
58
|
|
|
40
|
-
|
|
59
|
+
Each skill here is either a house copy or a cataloged upstream pick.
|
|
41
60
|
|
|
42
61
|
- `House copies`
|
|
43
62
|
Local folders under `skills/<name>/`.
|
|
@@ -47,10 +66,12 @@ Every skill in the library is one of two things:
|
|
|
47
66
|
Metadata in `skills.json` with no local folder.
|
|
48
67
|
These stay upstream and install live from the source repo when you ask for them.
|
|
49
68
|
|
|
50
|
-
|
|
69
|
+
Upstream work stays upstream. That keeps the library lean.
|
|
51
70
|
|
|
52
71
|
## Quick Start
|
|
53
72
|
|
|
73
|
+
### Use The Bundled Library
|
|
74
|
+
|
|
54
75
|
```bash
|
|
55
76
|
# Open the terminal browser
|
|
56
77
|
npx ai-agent-skills
|
|
@@ -84,16 +105,54 @@ Default install targets:
|
|
|
84
105
|
|
|
85
106
|
Legacy agent-specific targets still work through `--agent <name>`.
|
|
86
107
|
|
|
87
|
-
|
|
108
|
+
### Start Your Own Library
|
|
109
|
+
|
|
110
|
+
```bash
|
|
111
|
+
# Create a managed workspace
|
|
112
|
+
npx ai-agent-skills init-library my-library
|
|
113
|
+
cd my-library
|
|
114
|
+
|
|
115
|
+
# Add a bundled pick, refresh it, and rebuild the docs
|
|
116
|
+
npx ai-agent-skills add frontend-design --area frontend --branch Implementation --why "I want this on my shelf."
|
|
117
|
+
npx ai-agent-skills sync frontend-design -p
|
|
118
|
+
npx ai-agent-skills add anthropics/skills --skill webapp-testing --area workflow --branch Testing --why "I use this when I want browser-level checks in the workspace."
|
|
119
|
+
npx ai-agent-skills build-docs
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
## Workspace Mode
|
|
123
|
+
|
|
124
|
+
Workspace mode is now part of the main product surface.
|
|
125
|
+
|
|
126
|
+
Start with a managed workspace, pull in a few skills, then keep your own shelves current with `add`, `catalog`, `vendor`, `sync`, and `build-docs`.
|
|
88
127
|
|
|
89
|
-
|
|
128
|
+
```bash
|
|
129
|
+
npx ai-agent-skills init-library my-library
|
|
130
|
+
cd my-library
|
|
131
|
+
|
|
132
|
+
npx ai-agent-skills add frontend-design --area frontend --branch Implementation --why "I want this on my shelf."
|
|
133
|
+
npx ai-agent-skills add anthropics/skills --skill webapp-testing --area workflow --branch Testing --why "I use this when I want browser-level checks in the workspace."
|
|
134
|
+
npx ai-agent-skills sync frontend-design -p
|
|
135
|
+
npx ai-agent-skills build-docs
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
Workflow guides:
|
|
139
|
+
|
|
140
|
+
- [Start a library](./docs/workflows/start-a-library.md)
|
|
141
|
+
- [Add an upstream skill](./docs/workflows/add-an-upstream-skill.md)
|
|
142
|
+
- [Make a house copy](./docs/workflows/make-a-house-copy.md)
|
|
143
|
+
- [Organize shelves](./docs/workflows/organize-shelves.md)
|
|
144
|
+
- [Refresh installed skills](./docs/workflows/refresh-installed-skills.md)
|
|
145
|
+
|
|
146
|
+
## Browse
|
|
147
|
+
|
|
148
|
+
Most browsing starts in one of two places:
|
|
90
149
|
|
|
91
150
|
| View | Why it exists | Start here |
|
|
92
151
|
| --- | --- | --- |
|
|
93
152
|
| Shelves | The main way to understand the library: start with the kind of work, then drill into the small set of picks on that shelf. | `npx ai-agent-skills list` |
|
|
94
153
|
| Sources | The provenance view: see which publishers feed which shelves and branches. | `npx ai-agent-skills info frontend-design` |
|
|
95
154
|
|
|
96
|
-
|
|
155
|
+
The other views are still there. They are just secondary:
|
|
97
156
|
|
|
98
157
|
- `npx ai-agent-skills browse` for the TUI
|
|
99
158
|
- `npx ai-agent-skills list --collection my-picks` for a cross-shelf starter stack
|
|
@@ -102,7 +161,7 @@ Secondary surfaces still exist, but they are not the main taxonomy:
|
|
|
102
161
|
|
|
103
162
|
## Shelves
|
|
104
163
|
|
|
105
|
-
|
|
164
|
+
The shelves are the main structure.
|
|
106
165
|
|
|
107
166
|
<!-- GENERATED:shelf-table:start -->
|
|
108
167
|
| Shelf | Skills | What it covers |
|
|
@@ -118,22 +177,25 @@ The full map lives in [WORK_AREAS.md](./WORK_AREAS.md).
|
|
|
118
177
|
|
|
119
178
|
## Collections
|
|
120
179
|
|
|
121
|
-
Collections
|
|
180
|
+
Collections are smaller sets. Useful, but secondary to the shelves.
|
|
122
181
|
|
|
123
182
|
<!-- GENERATED:collection-table:start -->
|
|
124
183
|
| Collection | Why it exists | Start here |
|
|
125
184
|
| --- | --- | --- |
|
|
126
|
-
| `my-picks` |
|
|
127
|
-
| `build-apps` | Frontend and design
|
|
128
|
-
| `swift-agent-skills` |
|
|
129
|
-
| `build-systems` |
|
|
130
|
-
| `test-and-debug` |
|
|
131
|
-
| `docs-and-research` |
|
|
185
|
+
| `my-picks` | A short starter stack. These are the skills I reach for first. | `frontend-design`, `mcp-builder`, `pdf` |
|
|
186
|
+
| `build-apps` | Frontend, UI, and design work for shipping polished apps. | `frontend-design`, `frontend-skill`, `shadcn` |
|
|
187
|
+
| `swift-agent-skills` | The main Swift and Apple-platform set in this library. Install it all at once or pick from it. | `swiftui-pro`, `swiftui-ui-patterns`, `swiftui-design-principles` |
|
|
188
|
+
| `build-systems` | Backend, architecture, MCP, and security work. | `mcp-builder`, `backend-development`, `database-design` |
|
|
189
|
+
| `test-and-debug` | QA, debugging, CI cleanup, and observability. | `playwright`, `webapp-testing`, `gh-fix-ci` |
|
|
190
|
+
| `docs-and-research` | Docs, files, research, and writing work. | `pdf`, `doc-coauthoring`, `docx` |
|
|
132
191
|
<!-- GENERATED:collection-table:end -->
|
|
133
192
|
|
|
134
|
-
## Catalog
|
|
193
|
+
## Curating The Catalog
|
|
194
|
+
|
|
195
|
+
Use `catalog` when you want to add an upstream skill without vendoring it.
|
|
135
196
|
|
|
136
|
-
|
|
197
|
+
In a managed workspace, `add` is the simpler front door.
|
|
198
|
+
`catalog` and `vendor` are still the explicit power-user verbs.
|
|
137
199
|
|
|
138
200
|
```bash
|
|
139
201
|
npx ai-agent-skills catalog openai/skills --list
|
|
@@ -143,15 +205,15 @@ npx ai-agent-skills catalog conorluddy/ios-simulator-skill --skill ios-simulator
|
|
|
143
205
|
npx ai-agent-skills catalog shadcn-ui/ui --skill shadcn --area frontend --branch Components
|
|
144
206
|
```
|
|
145
207
|
|
|
146
|
-
|
|
147
|
-
It adds metadata and
|
|
208
|
+
It does not create a local copy.
|
|
209
|
+
It adds metadata and placement in the active library:
|
|
148
210
|
|
|
149
211
|
- which shelf it belongs on
|
|
150
212
|
- what branch it lives under
|
|
151
213
|
- why it earned a place
|
|
152
214
|
- how it should install later
|
|
153
215
|
|
|
154
|
-
For existing picks, `curate` is the
|
|
216
|
+
For existing picks, `curate` is the quick loop:
|
|
155
217
|
|
|
156
218
|
```bash
|
|
157
219
|
npx ai-agent-skills curate frontend-design --branch Implementation
|
|
@@ -161,7 +223,7 @@ npx ai-agent-skills curate frontend-design --why "A stronger note that matches h
|
|
|
161
223
|
npx ai-agent-skills curate review
|
|
162
224
|
```
|
|
163
225
|
|
|
164
|
-
When I
|
|
226
|
+
When I want a local copy, I use `vendor`:
|
|
165
227
|
|
|
166
228
|
```bash
|
|
167
229
|
npx ai-agent-skills vendor <repo-or-path> --skill <name> --area <shelf> --branch <branch> --why "Why this deserves a local copy."
|
|
@@ -170,7 +232,7 @@ npx ai-agent-skills vendor <repo-or-path> --skill <name> --area mobile --branch
|
|
|
170
232
|
|
|
171
233
|
## Source Repos
|
|
172
234
|
|
|
173
|
-
Current
|
|
235
|
+
Current upstream mix:
|
|
174
236
|
|
|
175
237
|
<!-- GENERATED:source-table:start -->
|
|
176
238
|
| Source repo | Skills |
|
|
@@ -204,8 +266,8 @@ Current source mix:
|
|
|
204
266
|
| `vanab/swiftdata-agent-skill` | 1 |
|
|
205
267
|
<!-- GENERATED:source-table:end -->
|
|
206
268
|
|
|
207
|
-
The two
|
|
208
|
-
I
|
|
269
|
+
The two biggest upstream publishers in this library are Anthropic and OpenAI.
|
|
270
|
+
I browse, pick, and shelve. I do not mirror everything they publish.
|
|
209
271
|
|
|
210
272
|
## Commands
|
|
211
273
|
|
|
@@ -234,7 +296,7 @@ npx ai-agent-skills install ./local-path
|
|
|
234
296
|
npx ai-agent-skills install <skill-name> --dry-run
|
|
235
297
|
|
|
236
298
|
# Maintain
|
|
237
|
-
npx ai-agent-skills
|
|
299
|
+
npx ai-agent-skills sync [name]
|
|
238
300
|
npx ai-agent-skills uninstall <name>
|
|
239
301
|
npx ai-agent-skills check
|
|
240
302
|
npx ai-agent-skills doctor
|
|
@@ -250,18 +312,16 @@ npx ai-agent-skills vendor <repo-or-path> --skill <name> --area <shelf> --branch
|
|
|
250
312
|
|
|
251
313
|
## Testing
|
|
252
314
|
|
|
253
|
-
There are two layers on purpose:
|
|
254
|
-
|
|
255
315
|
- `npm test`
|
|
256
316
|
Fast regression coverage for CLI behavior, schema rules, routing, and local install flows.
|
|
257
317
|
- `npm run test:live`
|
|
258
|
-
No-mock live verification. Clones the real upstream repos, captures raw `SKILL.md` frontmatter and file manifests, runs real install/
|
|
318
|
+
No-mock live verification. Clones the real upstream repos, captures raw `SKILL.md` frontmatter and file manifests, runs real install/sync/uninstall flows in isolated temp homes and projects, drives the TUI through a real PTY, and writes a report to `tmp/live-test-report.json`.
|
|
259
319
|
- `npm run test:live:quick`
|
|
260
320
|
Smaller live matrix for faster iteration while keeping the same no-mock pipeline.
|
|
261
321
|
|
|
262
322
|
## Legacy Agent Support
|
|
263
323
|
|
|
264
|
-
|
|
324
|
+
Still supported through `--agent <name>`:
|
|
265
325
|
|
|
266
326
|
- `claude`
|
|
267
327
|
- `cursor`
|
|
@@ -276,19 +336,17 @@ These still work through `--agent <name>`:
|
|
|
276
336
|
- `kilocode`
|
|
277
337
|
- `project`
|
|
278
338
|
|
|
279
|
-
##
|
|
280
|
-
|
|
281
|
-
This repo is opinionated on purpose.
|
|
339
|
+
## What I Care About
|
|
282
340
|
|
|
283
|
-
- Small shelves
|
|
284
|
-
-
|
|
285
|
-
-
|
|
286
|
-
- Upstream repos
|
|
287
|
-
- A
|
|
341
|
+
- Small shelves
|
|
342
|
+
- Clear provenance
|
|
343
|
+
- Notes that explain the keep
|
|
344
|
+
- Upstream repos staying upstream
|
|
345
|
+
- A library that looks maintained
|
|
288
346
|
|
|
289
347
|
## Contributing
|
|
290
348
|
|
|
291
|
-
This is a curated library
|
|
349
|
+
This is a curated library.
|
|
292
350
|
|
|
293
351
|
Read [CURATION.md](./CURATION.md) before opening a PR.
|
|
294
352
|
|