@anytio/pspm 0.3.0 → 0.3.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/CHANGELOG.md +16 -10
- package/CLI_GUIDE.md +24 -6
- package/README.md +20 -26
- package/dist/index.js +634 -238
- package/dist/index.js.map +1 -1
- package/package.json +9 -9
package/CHANGELOG.md
CHANGED
|
@@ -9,16 +9,22 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
9
9
|
|
|
10
10
|
### Added
|
|
11
11
|
|
|
12
|
-
-
|
|
13
|
-
-
|
|
14
|
-
-
|
|
15
|
-
-
|
|
16
|
-
-
|
|
17
|
-
|
|
18
|
-
-
|
|
19
|
-
-
|
|
20
|
-
|
|
21
|
-
|
|
12
|
+
- **Local directory support**: Install skills directly from local directories using the `file:` protocol
|
|
13
|
+
- `pspm add file:../my-skill` - Install from relative path
|
|
14
|
+
- `pspm add file:/absolute/path/to/skill` - Install from absolute path
|
|
15
|
+
- `pspm add ../my-skill` - Auto-detected as `file:../my-skill`
|
|
16
|
+
- Local packages are symlinked (not copied) for instant updates during development
|
|
17
|
+
- `localDependencies` section in `pspm.json`
|
|
18
|
+
- `localPackages` section in lockfile (version 5)
|
|
19
|
+
- Local packages stored as symlinks in `.pspm/skills/_local/{name}/`
|
|
20
|
+
|
|
21
|
+
- **Enhanced `list` command**: Shows local packages with `[local]` indicator and path
|
|
22
|
+
|
|
23
|
+
### Changed
|
|
24
|
+
|
|
25
|
+
- Lockfile version bumped to 5 to support `localPackages`
|
|
26
|
+
- `install` command now processes local dependencies (Phase 2.5 resolve, Phase 4.5 install)
|
|
27
|
+
- `remove` command now handles local package removal
|
|
22
28
|
|
|
23
29
|
## [0.2.0] - 2026-01-23
|
|
24
30
|
|
package/CLI_GUIDE.md
CHANGED
|
@@ -158,6 +158,11 @@ pspm add github:owner/repo@main # Entire repo, specific branch
|
|
|
158
158
|
pspm add github:owner/repo/path/to/skill # Subdirectory, default branch
|
|
159
159
|
pspm add github:owner/repo/path@v1.0.0 # Subdirectory with tag/ref
|
|
160
160
|
|
|
161
|
+
# Local specifier formats:
|
|
162
|
+
pspm add file:../my-skill # Relative path (symlinked)
|
|
163
|
+
pspm add file:/absolute/path/to/skill # Absolute path
|
|
164
|
+
pspm add ../my-skill # Auto-detected as file:../my-skill
|
|
165
|
+
|
|
161
166
|
# Add multiple skills at once:
|
|
162
167
|
pspm add @user/alice/skill1 @user/bob/skill2
|
|
163
168
|
|
|
@@ -196,7 +201,10 @@ pspm list --json
|
|
|
196
201
|
# github:owner/repo/skills/react-tips (main@abc1234)
|
|
197
202
|
# -> .claude/skills/react-tips, .cursor/skills/react-tips
|
|
198
203
|
#
|
|
199
|
-
#
|
|
204
|
+
# my-local-skill [local] <- ../my-local-skill
|
|
205
|
+
# -> .claude/skills/my-local-skill
|
|
206
|
+
#
|
|
207
|
+
# Total: 3 skill(s) (1 registry, 1 github, 1 local)
|
|
200
208
|
```
|
|
201
209
|
|
|
202
210
|
### Install Skills
|
|
@@ -353,7 +361,7 @@ Package manifest file (created with `pspm init`):
|
|
|
353
361
|
|
|
354
362
|
```json
|
|
355
363
|
{
|
|
356
|
-
"lockfileVersion":
|
|
364
|
+
"lockfileVersion": 5,
|
|
357
365
|
"registryUrl": "https://pspm.dev",
|
|
358
366
|
"packages": {
|
|
359
367
|
"@user/bsheng/vite_slides": {
|
|
@@ -370,6 +378,14 @@ Package manifest file (created with `pspm init`):
|
|
|
370
378
|
"gitCommit": "abc1234567890...",
|
|
371
379
|
"gitRef": "main"
|
|
372
380
|
}
|
|
381
|
+
},
|
|
382
|
+
"localPackages": {
|
|
383
|
+
"file:../my-skill": {
|
|
384
|
+
"version": "local",
|
|
385
|
+
"path": "../my-skill",
|
|
386
|
+
"resolvedPath": "/absolute/path/to/my-skill",
|
|
387
|
+
"name": "my-skill"
|
|
388
|
+
}
|
|
373
389
|
}
|
|
374
390
|
}
|
|
375
391
|
```
|
|
@@ -402,10 +418,12 @@ project/
|
|
|
402
418
|
│ ├── skills/ # Installed skills
|
|
403
419
|
│ │ ├── {username}/ # Registry skills
|
|
404
420
|
│ │ │ └── {skillname}/
|
|
405
|
-
│ │
|
|
406
|
-
│ │
|
|
407
|
-
│ │
|
|
408
|
-
│ │
|
|
421
|
+
│ │ ├── _github/ # GitHub skills
|
|
422
|
+
│ │ │ └── {owner}/
|
|
423
|
+
│ │ │ └── {repo}/
|
|
424
|
+
│ │ │ └── {path}/
|
|
425
|
+
│ │ └── _local/ # Local skills (symlinks)
|
|
426
|
+
│ │ └── {name} -> /path/to/source
|
|
409
427
|
│ └── cache/ # Tarball cache
|
|
410
428
|
├── .claude/
|
|
411
429
|
│ └── skills/ # Symlinks for claude-code agent
|
package/README.md
CHANGED
|
@@ -100,9 +100,10 @@ pspm install # Install all from lockfile
|
|
|
100
100
|
- `github:owner/repo/path/to/skill` - Subdirectory within repo
|
|
101
101
|
- `github:owner/repo/path/to/skill@v1.0.0` - Subdirectory with tag
|
|
102
102
|
|
|
103
|
-
**Local
|
|
104
|
-
- `file:../
|
|
105
|
-
- `file
|
|
103
|
+
**Local specifier formats:**
|
|
104
|
+
- `file:../my-skill` - Relative path (symlinked, not copied)
|
|
105
|
+
- `file:/absolute/path/to/skill` - Absolute path
|
|
106
|
+
- `../my-skill` - Auto-detected as `file:../my-skill`
|
|
106
107
|
|
|
107
108
|
**Agent symlink options:**
|
|
108
109
|
```bash
|
|
@@ -165,7 +166,7 @@ registry = https://custom-registry.example.com
|
|
|
165
166
|
|
|
166
167
|
```json
|
|
167
168
|
{
|
|
168
|
-
"lockfileVersion":
|
|
169
|
+
"lockfileVersion": 5,
|
|
169
170
|
"registryUrl": "https://pspm.dev",
|
|
170
171
|
"packages": {
|
|
171
172
|
"@user/username/skillname": {
|
|
@@ -182,6 +183,14 @@ registry = https://custom-registry.example.com
|
|
|
182
183
|
"gitCommit": "abc1234567890...",
|
|
183
184
|
"gitRef": "main"
|
|
184
185
|
}
|
|
186
|
+
},
|
|
187
|
+
"localPackages": {
|
|
188
|
+
"file:../my-skill": {
|
|
189
|
+
"version": "local",
|
|
190
|
+
"path": "../my-skill",
|
|
191
|
+
"resolvedPath": "/absolute/path/to/my-skill",
|
|
192
|
+
"name": "my-skill"
|
|
193
|
+
}
|
|
185
194
|
}
|
|
186
195
|
}
|
|
187
196
|
```
|
|
@@ -206,11 +215,13 @@ project/
|
|
|
206
215
|
│ │ ├── username/ # Registry skills
|
|
207
216
|
│ │ │ └── skillname/
|
|
208
217
|
│ │ │ └── SKILL.md
|
|
209
|
-
│ │
|
|
210
|
-
│ │
|
|
211
|
-
│ │
|
|
212
|
-
│ │
|
|
213
|
-
│ │
|
|
218
|
+
│ │ ├── _github/ # GitHub skills
|
|
219
|
+
│ │ │ └── owner/
|
|
220
|
+
│ │ │ └── repo/
|
|
221
|
+
│ │ │ └── path/
|
|
222
|
+
│ │ │ └── SKILL.md
|
|
223
|
+
│ │ └── _local/ # Local skills (symlinks)
|
|
224
|
+
│ │ └── my-skill -> /absolute/path/to/my-skill
|
|
214
225
|
│ └── cache/ # Tarball cache
|
|
215
226
|
├── .claude/
|
|
216
227
|
│ └── skills/ # Symlinks for claude-code agent
|
|
@@ -223,23 +234,6 @@ project/
|
|
|
223
234
|
└── .pspmrc # User config
|
|
224
235
|
```
|
|
225
236
|
|
|
226
|
-
## Ignoring Files (.pspmignore)
|
|
227
|
-
|
|
228
|
-
Control which files are excluded when publishing with a `.pspmignore` file:
|
|
229
|
-
|
|
230
|
-
```
|
|
231
|
-
# .pspmignore - exclude files from publish
|
|
232
|
-
*.test.ts
|
|
233
|
-
__tests__/
|
|
234
|
-
.env*
|
|
235
|
-
*.log
|
|
236
|
-
```
|
|
237
|
-
|
|
238
|
-
**Behavior:**
|
|
239
|
-
- If `.pspmignore` exists, use it for ignore patterns
|
|
240
|
-
- Otherwise, fall back to `.gitignore` if present
|
|
241
|
-
- Always ignores `node_modules`, `.git`, and `.pspm-publish` regardless
|
|
242
|
-
|
|
243
237
|
## Creating a Skill
|
|
244
238
|
|
|
245
239
|
A skill is a directory containing at minimum a `pspm.json` and `SKILL.md`:
|