@synapsync/synk 1.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 +480 -0
- package/ThirdPartyNoticeText.txt +125 -0
- package/bin/cli.mjs +14 -0
- package/dist/_chunks/libs/@clack/core.mjs +767 -0
- package/dist/_chunks/libs/@clack/prompts.mjs +196 -0
- package/dist/_chunks/libs/@kwsites/file-exists.mjs +562 -0
- package/dist/_chunks/libs/@kwsites/promise-deferred.mjs +37 -0
- package/dist/_chunks/libs/ansi-regex.mjs +4 -0
- package/dist/_chunks/libs/chalk.mjs +399 -0
- package/dist/_chunks/libs/cli-cursor.mjs +257 -0
- package/dist/_chunks/libs/cli-spinners.mjs +1656 -0
- package/dist/_chunks/libs/esprima.mjs +5338 -0
- package/dist/_chunks/libs/extend-shallow.mjs +31 -0
- package/dist/_chunks/libs/get-east-asian-width.mjs +18 -0
- package/dist/_chunks/libs/gray-matter.mjs +2596 -0
- package/dist/_chunks/libs/is-interactive.mjs +4 -0
- package/dist/_chunks/libs/is-unicode-supported.mjs +8 -0
- package/dist/_chunks/libs/log-symbols.mjs +70 -0
- package/dist/_chunks/libs/ora.mjs +460 -0
- package/dist/_chunks/libs/simple-git.mjs +3584 -0
- package/dist/_chunks/libs/xdg-basedir.mjs +14 -0
- package/dist/_chunks/rolldown-runtime.mjs +24 -0
- package/dist/cli.d.mts +1 -0
- package/dist/cli.mjs +4066 -0
- package/package.json +116 -0
package/README.md
ADDED
|
@@ -0,0 +1,480 @@
|
|
|
1
|
+
```
|
|
2
|
+
███████╗██╗ ██╗███╗ ██╗██╗ ██╗
|
|
3
|
+
██╔════╝╚██╗ ██╔╝████╗ ██║██║ ██╔╝
|
|
4
|
+
███████╗ ╚████╔╝ ██╔██╗ ██║█████╔╝
|
|
5
|
+
╚════██║ ╚██╔╝ ██║╚██╗██║██╔═██╗
|
|
6
|
+
███████║ ██║ ██║ ╚████║██║ ██╗
|
|
7
|
+
╚══════╝ ╚═╝ ╚═╝ ╚═══╝╚═╝ ╚═╝
|
|
8
|
+
```
|
|
9
|
+
|
|
10
|
+
The CLI for the open cognitive ecosystem for AI agents.
|
|
11
|
+
|
|
12
|
+
synk is a fork/extension of the [skills](https://github.com/vercel-labs/skills) ecosystem that adds support for **cognitive types**: skills, agents, and prompts -- defined via `SKILL.md`, `AGENT.md`, and `PROMPT.md` files.
|
|
13
|
+
|
|
14
|
+
<!-- agent-list:start -->
|
|
15
|
+
|
|
16
|
+
Supports **OpenCode**, **Claude Code**, **Codex**, **Cursor**, and [35 more](#available-agents).
|
|
17
|
+
|
|
18
|
+
<!-- agent-list:end -->
|
|
19
|
+
|
|
20
|
+
## Install a Cognitive
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
npx synk add vercel-labs/agent-skills
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
### Source Formats
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
# GitHub shorthand (owner/repo)
|
|
30
|
+
npx synk add vercel-labs/agent-skills
|
|
31
|
+
|
|
32
|
+
# Full GitHub URL
|
|
33
|
+
npx synk add https://github.com/vercel-labs/agent-skills
|
|
34
|
+
|
|
35
|
+
# Direct path to a skill in a repo
|
|
36
|
+
npx synk add https://github.com/vercel-labs/agent-skills/tree/main/skills/web-design-guidelines
|
|
37
|
+
|
|
38
|
+
# GitLab URL
|
|
39
|
+
npx synk add https://gitlab.com/org/repo
|
|
40
|
+
|
|
41
|
+
# Any git URL
|
|
42
|
+
npx synk add git@github.com:vercel-labs/agent-skills.git
|
|
43
|
+
|
|
44
|
+
# Local path
|
|
45
|
+
npx synk add ./my-local-skills
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
### Options
|
|
49
|
+
|
|
50
|
+
| Option | Description |
|
|
51
|
+
| ------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
52
|
+
| `-g, --global` | Install to user directory instead of project |
|
|
53
|
+
| `-a, --agent <agents...>` | <!-- agent-names:start -->Target specific agents (e.g., `claude-code`, `codex`). See [Available Agents](#available-agents)<!-- agent-names:end --> |
|
|
54
|
+
| `-s, --skill <skills...>` | Install specific cognitives by name (use `'*'` for all) |
|
|
55
|
+
| `-t, --type <type>` | Cognitive type: `skill` (default), `agent`, or `prompt` |
|
|
56
|
+
| `-l, --list` | List available cognitives without installing |
|
|
57
|
+
| `-y, --yes` | Skip all confirmation prompts |
|
|
58
|
+
| `--all` | Install all cognitives to all agents without prompts |
|
|
59
|
+
| `--full-depth` | Search all directories recursively for cognitives |
|
|
60
|
+
|
|
61
|
+
### Examples
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
# List cognitives in a repository
|
|
65
|
+
npx synk add vercel-labs/agent-skills --list
|
|
66
|
+
|
|
67
|
+
# Install specific cognitives
|
|
68
|
+
npx synk add vercel-labs/agent-skills --skill frontend-design --skill skill-creator
|
|
69
|
+
|
|
70
|
+
# Install a cognitive with spaces in the name (must be quoted)
|
|
71
|
+
npx synk add owner/repo --skill "Convex Best Practices"
|
|
72
|
+
|
|
73
|
+
# Install to specific agents
|
|
74
|
+
npx synk add vercel-labs/agent-skills -a claude-code -a opencode
|
|
75
|
+
|
|
76
|
+
# Non-interactive installation (CI/CD friendly)
|
|
77
|
+
npx synk add vercel-labs/agent-skills --skill frontend-design -g -a claude-code -y
|
|
78
|
+
|
|
79
|
+
# Install all cognitives from a repo to all agents
|
|
80
|
+
npx synk add vercel-labs/agent-skills --all
|
|
81
|
+
|
|
82
|
+
# Install all cognitives to specific agents
|
|
83
|
+
npx synk add vercel-labs/agent-skills --skill '*' -a claude-code
|
|
84
|
+
|
|
85
|
+
# Install specific cognitives to all agents
|
|
86
|
+
npx synk add vercel-labs/agent-skills --agent '*' --skill frontend-design
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### Installation Scope
|
|
90
|
+
|
|
91
|
+
| Scope | Flag | Location | Use Case |
|
|
92
|
+
| ----------- | --------- | ------------------- | --------------------------------------------- |
|
|
93
|
+
| **Project** | (default) | `./<agent>/skills/` | Committed with your project, shared with team |
|
|
94
|
+
| **Global** | `-g` | `~/<agent>/skills/` | Available across all projects |
|
|
95
|
+
|
|
96
|
+
### Installation Methods
|
|
97
|
+
|
|
98
|
+
When installing interactively, you can choose:
|
|
99
|
+
|
|
100
|
+
| Method | Description |
|
|
101
|
+
| ------------------------- | ------------------------------------------------------------------------------------------- |
|
|
102
|
+
| **Symlink** (Recommended) | Creates symlinks from each agent to a canonical copy. Single source of truth, easy updates. |
|
|
103
|
+
| **Copy** | Creates independent copies for each agent. Use when symlinks aren't supported. |
|
|
104
|
+
|
|
105
|
+
## Other Commands
|
|
106
|
+
|
|
107
|
+
| Command | Description |
|
|
108
|
+
| ------------------------- | ------------------------------------------------------ |
|
|
109
|
+
| `npx synk list` | List installed cognitives (alias: `ls`) |
|
|
110
|
+
| `npx synk find [query]` | Search for cognitives interactively or by keyword |
|
|
111
|
+
| `npx synk remove [names]` | Remove installed cognitives from agents |
|
|
112
|
+
| `npx synk check` | Check for available cognitive updates |
|
|
113
|
+
| `npx synk update` | Update all installed cognitives to latest versions |
|
|
114
|
+
| `npx synk init [name]` | Create a new SKILL.md, AGENT.md, or PROMPT.md template |
|
|
115
|
+
|
|
116
|
+
### `synk list`
|
|
117
|
+
|
|
118
|
+
List all installed cognitives. Similar to `npm ls`.
|
|
119
|
+
|
|
120
|
+
```bash
|
|
121
|
+
# List all installed cognitives (project and global)
|
|
122
|
+
npx synk list
|
|
123
|
+
|
|
124
|
+
# List only global cognitives
|
|
125
|
+
npx synk ls -g
|
|
126
|
+
|
|
127
|
+
# Filter by specific agents
|
|
128
|
+
npx synk ls -a claude-code -a cursor
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
### `synk find`
|
|
132
|
+
|
|
133
|
+
Search for cognitives interactively or by keyword.
|
|
134
|
+
|
|
135
|
+
```bash
|
|
136
|
+
# Interactive search (fzf-style)
|
|
137
|
+
npx synk find
|
|
138
|
+
|
|
139
|
+
# Search by keyword
|
|
140
|
+
npx synk find typescript
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
### `synk check` / `synk update`
|
|
144
|
+
|
|
145
|
+
```bash
|
|
146
|
+
# Check if any installed cognitives have updates
|
|
147
|
+
npx synk check
|
|
148
|
+
|
|
149
|
+
# Update all cognitives to latest versions
|
|
150
|
+
npx synk update
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
### `synk init`
|
|
154
|
+
|
|
155
|
+
```bash
|
|
156
|
+
# Create SKILL.md in current directory
|
|
157
|
+
npx synk init
|
|
158
|
+
|
|
159
|
+
# Create a new skill in a subdirectory
|
|
160
|
+
npx synk init my-skill
|
|
161
|
+
|
|
162
|
+
# Create an AGENT.md or PROMPT.md instead
|
|
163
|
+
npx synk init my-agent -t agent
|
|
164
|
+
npx synk init my-prompt -t prompt
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
### `synk remove`
|
|
168
|
+
|
|
169
|
+
Remove installed cognitives from agents.
|
|
170
|
+
|
|
171
|
+
```bash
|
|
172
|
+
# Remove interactively (select from installed cognitives)
|
|
173
|
+
npx synk remove
|
|
174
|
+
|
|
175
|
+
# Remove specific cognitive by name
|
|
176
|
+
npx synk remove web-design-guidelines
|
|
177
|
+
|
|
178
|
+
# Remove multiple cognitives
|
|
179
|
+
npx synk remove frontend-design web-design-guidelines
|
|
180
|
+
|
|
181
|
+
# Remove from global scope
|
|
182
|
+
npx synk remove --global web-design-guidelines
|
|
183
|
+
|
|
184
|
+
# Remove from specific agents only
|
|
185
|
+
npx synk remove --agent claude-code cursor my-skill
|
|
186
|
+
|
|
187
|
+
# Remove all installed cognitives without confirmation
|
|
188
|
+
npx synk remove --all
|
|
189
|
+
|
|
190
|
+
# Remove all cognitives from a specific agent
|
|
191
|
+
npx synk remove --skill '*' -a cursor
|
|
192
|
+
|
|
193
|
+
# Remove a specific cognitive from all agents
|
|
194
|
+
npx synk remove my-skill --agent '*'
|
|
195
|
+
|
|
196
|
+
# Use 'rm' alias
|
|
197
|
+
npx synk rm my-skill
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
| Option | Description |
|
|
201
|
+
| -------------- | ------------------------------------------------ |
|
|
202
|
+
| `-g, --global` | Remove from global scope (~/) instead of project |
|
|
203
|
+
| `-a, --agent` | Remove from specific agents (use `'*'` for all) |
|
|
204
|
+
| `-s, --skill` | Specify cognitives to remove (use `'*'` for all) |
|
|
205
|
+
| `-y, --yes` | Skip confirmation prompts |
|
|
206
|
+
| `--all` | Shorthand for `--skill '*' --agent '*' -y` |
|
|
207
|
+
|
|
208
|
+
## What are Cognitives?
|
|
209
|
+
|
|
210
|
+
Cognitives are reusable instruction sets that extend your coding agent's capabilities. synk supports three cognitive types:
|
|
211
|
+
|
|
212
|
+
- **Skills** (`SKILL.md`) -- Task-oriented instructions that teach agents how to perform specific tasks
|
|
213
|
+
- **Agents** (`AGENT.md`) -- Persona and behavior definitions that shape how an agent operates
|
|
214
|
+
- **Prompts** (`PROMPT.md`) -- Reusable prompt templates for common workflows
|
|
215
|
+
|
|
216
|
+
Each cognitive is defined in its respective markdown file with YAML frontmatter containing a `name` and `description`.
|
|
217
|
+
|
|
218
|
+
Cognitives let agents perform specialized tasks like:
|
|
219
|
+
|
|
220
|
+
- Generating release notes from git history
|
|
221
|
+
- Creating PRs following your team's conventions
|
|
222
|
+
- Integrating with external tools (Linear, Notion, etc.)
|
|
223
|
+
|
|
224
|
+
Discover skills at **[skills.sh](https://skills.sh)** (compatible with synk)
|
|
225
|
+
|
|
226
|
+
## Supported Agents
|
|
227
|
+
|
|
228
|
+
Cognitives can be installed to any of these agents:
|
|
229
|
+
|
|
230
|
+
<!-- supported-agents:start -->
|
|
231
|
+
|
|
232
|
+
| Agent | `--agent` | Project Path | Global Path |
|
|
233
|
+
| -------------------------- | --------------------------- | ---------------------- | ------------------------------- |
|
|
234
|
+
| Amp, Kimi Code CLI, Replit | `amp`, `kimi-cli`, `replit` | `.agents/skills/` | `~/.config/agents/skills/` |
|
|
235
|
+
| Antigravity | `antigravity` | `.agent/skills/` | `~/.gemini/antigravity/skills/` |
|
|
236
|
+
| Augment | `augment` | `.augment/skills/` | `~/.augment/skills/` |
|
|
237
|
+
| Claude Code | `claude-code` | `.claude/skills/` | `~/.claude/skills/` |
|
|
238
|
+
| OpenClaw | `openclaw` | `skills/` | `~/.moltbot/skills/` |
|
|
239
|
+
| Cline | `cline` | `.cline/skills/` | `~/.cline/skills/` |
|
|
240
|
+
| CodeBuddy | `codebuddy` | `.codebuddy/skills/` | `~/.codebuddy/skills/` |
|
|
241
|
+
| Codex | `codex` | `.agents/skills/` | `~/.codex/skills/` |
|
|
242
|
+
| Command Code | `command-code` | `.commandcode/skills/` | `~/.commandcode/skills/` |
|
|
243
|
+
| Continue | `continue` | `.continue/skills/` | `~/.continue/skills/` |
|
|
244
|
+
| Crush | `crush` | `.crush/skills/` | `~/.config/crush/skills/` |
|
|
245
|
+
| Cursor | `cursor` | `.cursor/skills/` | `~/.cursor/skills/` |
|
|
246
|
+
| Droid | `droid` | `.factory/skills/` | `~/.factory/skills/` |
|
|
247
|
+
| Gemini CLI | `gemini-cli` | `.agents/skills/` | `~/.gemini/skills/` |
|
|
248
|
+
| GitHub Copilot | `github-copilot` | `.agents/skills/` | `~/.copilot/skills/` |
|
|
249
|
+
| Goose | `goose` | `.goose/skills/` | `~/.config/goose/skills/` |
|
|
250
|
+
| Junie | `junie` | `.junie/skills/` | `~/.junie/skills/` |
|
|
251
|
+
| iFlow CLI | `iflow-cli` | `.iflow/skills/` | `~/.iflow/skills/` |
|
|
252
|
+
| Kilo Code | `kilo` | `.kilocode/skills/` | `~/.kilocode/skills/` |
|
|
253
|
+
| Kiro CLI | `kiro-cli` | `.kiro/skills/` | `~/.kiro/skills/` |
|
|
254
|
+
| Kode | `kode` | `.kode/skills/` | `~/.kode/skills/` |
|
|
255
|
+
| MCPJam | `mcpjam` | `.mcpjam/skills/` | `~/.mcpjam/skills/` |
|
|
256
|
+
| Mistral Vibe | `mistral-vibe` | `.vibe/skills/` | `~/.vibe/skills/` |
|
|
257
|
+
| Mux | `mux` | `.mux/skills/` | `~/.mux/skills/` |
|
|
258
|
+
| OpenCode | `opencode` | `.agents/skills/` | `~/.config/opencode/skills/` |
|
|
259
|
+
| OpenHands | `openhands` | `.openhands/skills/` | `~/.openhands/skills/` |
|
|
260
|
+
| Pi | `pi` | `.pi/skills/` | `~/.pi/agent/skills/` |
|
|
261
|
+
| Qoder | `qoder` | `.qoder/skills/` | `~/.qoder/skills/` |
|
|
262
|
+
| Qwen Code | `qwen-code` | `.qwen/skills/` | `~/.qwen/skills/` |
|
|
263
|
+
| Roo Code | `roo` | `.roo/skills/` | `~/.roo/skills/` |
|
|
264
|
+
| Trae | `trae` | `.trae/skills/` | `~/.trae/skills/` |
|
|
265
|
+
| Trae CN | `trae-cn` | `.trae/skills/` | `~/.trae-cn/skills/` |
|
|
266
|
+
| Windsurf | `windsurf` | `.windsurf/skills/` | `~/.codeium/windsurf/skills/` |
|
|
267
|
+
| Zencoder | `zencoder` | `.zencoder/skills/` | `~/.zencoder/skills/` |
|
|
268
|
+
| Neovate | `neovate` | `.neovate/skills/` | `~/.neovate/skills/` |
|
|
269
|
+
| Pochi | `pochi` | `.pochi/skills/` | `~/.pochi/skills/` |
|
|
270
|
+
| AdaL | `adal` | `.adal/skills/` | `~/.adal/skills/` |
|
|
271
|
+
|
|
272
|
+
<!-- supported-agents:end -->
|
|
273
|
+
|
|
274
|
+
> [!NOTE]
|
|
275
|
+
> **Kiro CLI users:** After installing skills, manually add them to your custom agent's `resources` in
|
|
276
|
+
> `.kiro/agents/<agent>.json`:
|
|
277
|
+
>
|
|
278
|
+
> ```json
|
|
279
|
+
> {
|
|
280
|
+
> "resources": ["skill://.kiro/skills/**/SKILL.md"]
|
|
281
|
+
> }
|
|
282
|
+
> ```
|
|
283
|
+
|
|
284
|
+
The CLI automatically detects which coding agents you have installed. If none are detected, you'll be prompted to select
|
|
285
|
+
which agents to install to.
|
|
286
|
+
|
|
287
|
+
## Creating Cognitives
|
|
288
|
+
|
|
289
|
+
Cognitives are directories containing a `SKILL.md`, `AGENT.md`, or `PROMPT.md` file with YAML frontmatter:
|
|
290
|
+
|
|
291
|
+
```markdown
|
|
292
|
+
---
|
|
293
|
+
name: my-skill
|
|
294
|
+
description: What this skill does and when to use it
|
|
295
|
+
---
|
|
296
|
+
|
|
297
|
+
# My Skill
|
|
298
|
+
|
|
299
|
+
Instructions for the agent to follow when this skill is activated.
|
|
300
|
+
|
|
301
|
+
## When to Use
|
|
302
|
+
|
|
303
|
+
Describe the scenarios where this skill should be used.
|
|
304
|
+
|
|
305
|
+
## Steps
|
|
306
|
+
|
|
307
|
+
1. First, do this
|
|
308
|
+
2. Then, do that
|
|
309
|
+
```
|
|
310
|
+
|
|
311
|
+
### Required Fields
|
|
312
|
+
|
|
313
|
+
- `name`: Unique identifier (lowercase, hyphens allowed)
|
|
314
|
+
- `description`: Brief explanation of what the skill does
|
|
315
|
+
|
|
316
|
+
### Optional Fields
|
|
317
|
+
|
|
318
|
+
- `metadata.internal`: Set to `true` to hide the cognitive from normal discovery. Internal cognitives are only visible and
|
|
319
|
+
installable when `INSTALL_INTERNAL_SKILLS=1` is set. Useful for work-in-progress cognitives or those meant only for
|
|
320
|
+
internal tooling.
|
|
321
|
+
|
|
322
|
+
```markdown
|
|
323
|
+
---
|
|
324
|
+
name: my-internal-skill
|
|
325
|
+
description: An internal skill not shown by default
|
|
326
|
+
metadata:
|
|
327
|
+
internal: true
|
|
328
|
+
---
|
|
329
|
+
```
|
|
330
|
+
|
|
331
|
+
### Cognitive Discovery
|
|
332
|
+
|
|
333
|
+
The CLI searches for cognitives (`SKILL.md`, `AGENT.md`, `PROMPT.md`) in these locations within a repository:
|
|
334
|
+
|
|
335
|
+
<!-- skill-discovery:start -->
|
|
336
|
+
|
|
337
|
+
- Root directory (if it contains `SKILL.md`)
|
|
338
|
+
- `skills/`
|
|
339
|
+
- `skills/.curated/`
|
|
340
|
+
- `skills/.experimental/`
|
|
341
|
+
- `skills/.system/`
|
|
342
|
+
- `.agents/skills/`
|
|
343
|
+
- `.agent/skills/`
|
|
344
|
+
- `.augment/skills/`
|
|
345
|
+
- `.claude/skills/`
|
|
346
|
+
- `./skills/`
|
|
347
|
+
- `.cline/skills/`
|
|
348
|
+
- `.codebuddy/skills/`
|
|
349
|
+
- `.commandcode/skills/`
|
|
350
|
+
- `.continue/skills/`
|
|
351
|
+
- `.crush/skills/`
|
|
352
|
+
- `.cursor/skills/`
|
|
353
|
+
- `.factory/skills/`
|
|
354
|
+
- `.goose/skills/`
|
|
355
|
+
- `.junie/skills/`
|
|
356
|
+
- `.iflow/skills/`
|
|
357
|
+
- `.kilocode/skills/`
|
|
358
|
+
- `.kiro/skills/`
|
|
359
|
+
- `.kode/skills/`
|
|
360
|
+
- `.mcpjam/skills/`
|
|
361
|
+
- `.vibe/skills/`
|
|
362
|
+
- `.mux/skills/`
|
|
363
|
+
- `.openhands/skills/`
|
|
364
|
+
- `.pi/skills/`
|
|
365
|
+
- `.qoder/skills/`
|
|
366
|
+
- `.qwen/skills/`
|
|
367
|
+
- `.roo/skills/`
|
|
368
|
+
- `.trae/skills/`
|
|
369
|
+
- `.windsurf/skills/`
|
|
370
|
+
- `.zencoder/skills/`
|
|
371
|
+
- `.neovate/skills/`
|
|
372
|
+
- `.pochi/skills/`
|
|
373
|
+
- `.adal/skills/`
|
|
374
|
+
<!-- skill-discovery:end -->
|
|
375
|
+
|
|
376
|
+
### Plugin Manifest Discovery
|
|
377
|
+
|
|
378
|
+
If `.claude-plugin/marketplace.json` or `.claude-plugin/plugin.json` exists, cognitives declared in those files are also discovered:
|
|
379
|
+
|
|
380
|
+
```json
|
|
381
|
+
// .claude-plugin/marketplace.json
|
|
382
|
+
{
|
|
383
|
+
"metadata": { "pluginRoot": "./plugins" },
|
|
384
|
+
"plugins": [
|
|
385
|
+
{
|
|
386
|
+
"name": "my-plugin",
|
|
387
|
+
"source": "my-plugin",
|
|
388
|
+
"skills": ["./skills/review", "./skills/test"]
|
|
389
|
+
}
|
|
390
|
+
]
|
|
391
|
+
}
|
|
392
|
+
```
|
|
393
|
+
|
|
394
|
+
This enables compatibility with the [Claude Code plugin marketplace](https://code.claude.com/docs/en/plugin-marketplaces) ecosystem.
|
|
395
|
+
|
|
396
|
+
If no cognitives are found in standard locations, a recursive search is performed. Use `--full-depth` to force a full recursive search.
|
|
397
|
+
|
|
398
|
+
## Compatibility
|
|
399
|
+
|
|
400
|
+
Cognitives are generally compatible across agents since they follow a
|
|
401
|
+
shared [Agent Skills specification](https://agentskills.io). However, some features may be agent-specific:
|
|
402
|
+
|
|
403
|
+
| Feature | OpenCode | OpenHands | Claude Code | Cline | CodeBuddy | Codex | Command Code | Kiro CLI | Cursor | Antigravity | Roo Code | Github Copilot | Amp | Clawdbot | Neovate | Pi | Qoder | Zencoder |
|
|
404
|
+
| --------------- | -------- | --------- | ----------- | ----- | --------- | ----- | ------------ | -------- | ------ | ----------- | -------- | -------------- | --- | -------- | ------- | --- | ----- | -------- |
|
|
405
|
+
| Basic skills | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
|
|
406
|
+
| `allowed-tools` | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No |
|
|
407
|
+
| `context: fork` | No | No | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No |
|
|
408
|
+
| Hooks | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | No |
|
|
409
|
+
|
|
410
|
+
## Troubleshooting
|
|
411
|
+
|
|
412
|
+
### "No cognitives found"
|
|
413
|
+
|
|
414
|
+
Ensure the repository contains valid `SKILL.md`, `AGENT.md`, or `PROMPT.md` files with both `name` and `description` in the frontmatter.
|
|
415
|
+
|
|
416
|
+
### Cognitive not loading in agent
|
|
417
|
+
|
|
418
|
+
- Verify the cognitive was installed to the correct path
|
|
419
|
+
- Check the agent's documentation for skill/cognitive loading requirements
|
|
420
|
+
- Ensure the frontmatter is valid YAML
|
|
421
|
+
|
|
422
|
+
### Permission errors
|
|
423
|
+
|
|
424
|
+
Ensure you have write access to the target directory.
|
|
425
|
+
|
|
426
|
+
## Environment Variables
|
|
427
|
+
|
|
428
|
+
| Variable | Description |
|
|
429
|
+
| ------------------------- | ------------------------------------------------------------------------------ |
|
|
430
|
+
| `INSTALL_INTERNAL_SKILLS` | Set to `1` or `true` to show and install cognitives marked as `internal: true` |
|
|
431
|
+
| `DISABLE_TELEMETRY` | Set to disable anonymous usage telemetry |
|
|
432
|
+
| `DO_NOT_TRACK` | Alternative way to disable telemetry |
|
|
433
|
+
|
|
434
|
+
```bash
|
|
435
|
+
# Install internal cognitives
|
|
436
|
+
INSTALL_INTERNAL_SKILLS=1 npx synk add vercel-labs/agent-skills --list
|
|
437
|
+
```
|
|
438
|
+
|
|
439
|
+
## Telemetry
|
|
440
|
+
|
|
441
|
+
This CLI collects anonymous usage data to help improve the tool. No personal information is collected.
|
|
442
|
+
|
|
443
|
+
Telemetry is automatically disabled in CI environments.
|
|
444
|
+
|
|
445
|
+
## Related Links
|
|
446
|
+
|
|
447
|
+
> **Note:** synk is a fork/extension of the [Vercel Agent Skills](https://github.com/vercel-labs/skills) ecosystem, adding support for multiple cognitive types (skills, agents, prompts). All skills-compatible repositories work with synk.
|
|
448
|
+
|
|
449
|
+
- [Agent Skills Specification](https://agentskills.io)
|
|
450
|
+
- [Skills Directory](https://skills.sh)
|
|
451
|
+
- [Amp Skills Documentation](https://ampcode.com/manual#agent-skills)
|
|
452
|
+
- [Antigravity Skills Documentation](https://antigravity.google/docs/skills)
|
|
453
|
+
- [Factory AI / Droid Skills Documentation](https://docs.factory.ai/cli/configuration/skills)
|
|
454
|
+
- [Claude Code Skills Documentation](https://code.claude.com/docs/en/skills)
|
|
455
|
+
- [Clawdbot Skills Documentation](https://docs.clawd.bot/tools/skills)
|
|
456
|
+
- [Cline Skills Documentation](https://docs.cline.bot/features/skills)
|
|
457
|
+
- [CodeBuddy Skills Documentation](https://www.codebuddy.ai/docs/ide/Features/Skills)
|
|
458
|
+
- [Codex Skills Documentation](https://developers.openai.com/codex/skills)
|
|
459
|
+
- [Command Code Skills Documentation](https://commandcode.ai/docs/skills)
|
|
460
|
+
- [Crush Skills Documentation](https://github.com/charmbracelet/crush?tab=readme-ov-file#agent-skills)
|
|
461
|
+
- [Cursor Skills Documentation](https://cursor.com/docs/context/skills)
|
|
462
|
+
- [Gemini CLI Skills Documentation](https://geminicli.com/docs/cli/skills/)
|
|
463
|
+
- [GitHub Copilot Agent Skills](https://docs.github.com/en/copilot/concepts/agents/about-agent-skills)
|
|
464
|
+
- [iFlow CLI Skills Documentation](https://platform.iflow.cn/en/cli/examples/skill)
|
|
465
|
+
- [Kimi Code CLI Skills Documentation](https://moonshotai.github.io/kimi-cli/en/customization/skills.html)
|
|
466
|
+
- [Kiro CLI Skills Documentation](https://kiro.dev/docs/cli/custom-agents/configuration-reference/#skill-resources)
|
|
467
|
+
- [Kode Skills Documentation](https://github.com/shareAI-lab/kode/blob/main/docs/skills.md)
|
|
468
|
+
- [OpenCode Skills Documentation](https://opencode.ai/docs/skills)
|
|
469
|
+
- [Qwen Code Skills Documentation](https://qwenlm.github.io/qwen-code-docs/en/users/features/skills/)
|
|
470
|
+
- [OpenHands Skills Documentation](https://docs.openhands.ai/modules/usage/how-to/using-skills)
|
|
471
|
+
- [Pi Skills Documentation](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/docs/skills.md)
|
|
472
|
+
- [Qoder Skills Documentation](https://docs.qoder.com/cli/Skills)
|
|
473
|
+
- [Replit Skills Documentation](https://docs.replit.com/replitai/skills)
|
|
474
|
+
- [Roo Code Skills Documentation](https://docs.roocode.com/features/skills)
|
|
475
|
+
- [Trae Skills Documentation](https://docs.trae.ai/ide/skills)
|
|
476
|
+
- [Vercel Agent Skills Repository](https://github.com/vercel-labs/agent-skills)
|
|
477
|
+
|
|
478
|
+
## License
|
|
479
|
+
|
|
480
|
+
MIT
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
/*!----------------- Skills CLI ThirdPartyNotices -------------------------------------------------------
|
|
2
|
+
|
|
3
|
+
The Skills CLI incorporates third party material from the projects listed below.
|
|
4
|
+
The original copyright notice and the license under which this material was received
|
|
5
|
+
are set forth below. These licenses and notices are provided for informational purposes only.
|
|
6
|
+
|
|
7
|
+
---------------------------------------------
|
|
8
|
+
Third Party Code Components
|
|
9
|
+
--------------------------------------------
|
|
10
|
+
|
|
11
|
+
================================================================================
|
|
12
|
+
Package: @clack/prompts@0.11.0
|
|
13
|
+
License: MIT
|
|
14
|
+
Repository: https://github.com/bombshell-dev/clack
|
|
15
|
+
--------------------------------------------------------------------------------
|
|
16
|
+
|
|
17
|
+
MIT License
|
|
18
|
+
|
|
19
|
+
Copyright (c) Nate Moore
|
|
20
|
+
|
|
21
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
|
22
|
+
|
|
23
|
+
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
|
24
|
+
|
|
25
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
================================================================================
|
|
29
|
+
Package: gray-matter@4.0.3
|
|
30
|
+
License: MIT
|
|
31
|
+
Repository: https://github.com/jonschlinkert/gray-matter
|
|
32
|
+
--------------------------------------------------------------------------------
|
|
33
|
+
|
|
34
|
+
The MIT License (MIT)
|
|
35
|
+
|
|
36
|
+
Copyright (c) 2014-2018, Jon Schlinkert.
|
|
37
|
+
|
|
38
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
39
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
40
|
+
in the Software without restriction, including without limitation the rights
|
|
41
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
42
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
43
|
+
furnished to do so, subject to the following conditions:
|
|
44
|
+
|
|
45
|
+
The above copyright notice and this permission notice shall be included in
|
|
46
|
+
all copies or substantial portions of the Software.
|
|
47
|
+
|
|
48
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
49
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
50
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
51
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
52
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
53
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
54
|
+
THE SOFTWARE.
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
================================================================================
|
|
58
|
+
Package: picocolors@1.1.1
|
|
59
|
+
License: ISC
|
|
60
|
+
Repository: https://github.com/alexeyraspopov/picocolors
|
|
61
|
+
--------------------------------------------------------------------------------
|
|
62
|
+
|
|
63
|
+
ISC License
|
|
64
|
+
|
|
65
|
+
Copyright (c) 2021-2024 Oleksii Raspopov, Kostiantyn Denysov, Anton Verinov
|
|
66
|
+
|
|
67
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
68
|
+
purpose with or without fee is hereby granted, provided that the above
|
|
69
|
+
copyright notice and this permission notice appear in all copies.
|
|
70
|
+
|
|
71
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
72
|
+
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
73
|
+
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
74
|
+
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
75
|
+
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
76
|
+
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
77
|
+
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
================================================================================
|
|
81
|
+
Package: simple-git@3.30.0
|
|
82
|
+
License: MIT
|
|
83
|
+
Repository: https://github.com/steveukx/git-js
|
|
84
|
+
--------------------------------------------------------------------------------
|
|
85
|
+
|
|
86
|
+
MIT License
|
|
87
|
+
|
|
88
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
89
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
90
|
+
in the Software without restriction, including without limitation the rights
|
|
91
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
92
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
93
|
+
furnished to do so, subject to the following conditions:
|
|
94
|
+
|
|
95
|
+
The above copyright notice and this permission notice shall be included in all
|
|
96
|
+
copies or substantial portions of the Software.
|
|
97
|
+
|
|
98
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
99
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
100
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
101
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
102
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
103
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
104
|
+
SOFTWARE.
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
================================================================================
|
|
108
|
+
Package: xdg-basedir@5.1.0
|
|
109
|
+
License: MIT
|
|
110
|
+
Repository: https://github.com/sindresorhus/xdg-basedir
|
|
111
|
+
--------------------------------------------------------------------------------
|
|
112
|
+
|
|
113
|
+
MIT License
|
|
114
|
+
|
|
115
|
+
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
|
|
116
|
+
|
|
117
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
|
118
|
+
|
|
119
|
+
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
|
120
|
+
|
|
121
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
================================================================================
|
|
125
|
+
*/
|
package/bin/cli.mjs
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
import module from 'node:module';
|
|
4
|
+
|
|
5
|
+
// https://nodejs.org/api/module.html#module-compile-cache
|
|
6
|
+
if (module.enableCompileCache && !process.env.NODE_DISABLE_COMPILE_CACHE) {
|
|
7
|
+
try {
|
|
8
|
+
module.enableCompileCache();
|
|
9
|
+
} catch {
|
|
10
|
+
// Ignore errors
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
await import('../dist/cli.mjs');
|