universal-plugin 0.16.3 → 0.17.1
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/plugin.json +1 -1
- package/.codex-plugin/plugin.json +1 -1
- package/.cursor-plugin/plugin.json +1 -1
- package/CHANGELOG.md +24 -0
- package/agents/agentskills-specialist.md +6 -11
- package/com.github.copilot/agents/agentskills-specialist.agent.md +6 -11
- package/dist/cli.mjs +669 -407
- package/package.json +6 -6
- package/plugin.json +5 -1
- package/readme.md +2 -2
- package/references/plugin-design.md +19 -33
- package/references/slash-invocation.md +2 -2
- package/skills/adopt-upx/scripts/rewrite-upx.mjs +1 -1
- package/skills/build-plugin/SKILL.md +2 -3
- package/skills/build-plugin/scripts/build.mjs +1 -1
- package/skills/doctor-universal-plugin/README.md +1 -1
- package/skills/doctor-universal-plugin/SKILL.md +3 -3
- package/skills/doctor-universal-plugin/scripts/doctor.mjs +1 -1
- package/skills/init-universal-plugin/README.md +1 -1
- package/skills/init-universal-plugin/SKILL.md +2 -2
- package/skills/init-universal-plugin/references/create.md +7 -7
- package/skills/init-universal-plugin/references/detection.md +1 -1
- package/skills/init-universal-plugin/references/frontmatter.md +1 -1
- package/skills/init-universal-plugin/references/standard.md +3 -3
- package/skills/init-universal-plugin/references/vendors/copilot-cli.md +3 -0
- package/skills/init-universal-plugin/scripts/init.mjs +1 -1
- package/skills/marketplace/README.md +9 -2
- package/skills/marketplace/SKILL.md +15 -10
- package/skills/marketplace/references/add.md +3 -1
- package/skills/marketplace/references/update.md +75 -0
- package/skills/marketplace/references/validate.md +1 -1
- package/skills/marketplace/scripts/add.mjs +1 -1
- package/skills/marketplace/scripts/install-docs.mjs +1 -1
- package/skills/marketplace/scripts/marketplace.mjs +1 -1
- package/skills/marketplace/scripts/update.mjs +52 -0
- package/skills/marketplace/scripts/validate.mjs +1 -1
- package/skills/migrate-plugin/SKILL.md +1 -2
- package/skills/publish-plugin/SKILL.md +15 -6
- package/skills/version/README.md +2 -2
- package/skills/version/SKILL.md +4 -4
- package/skills/version/scripts/version.mjs +1 -1
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
# Route: update
|
|
2
|
+
|
|
3
|
+
Change one entry the catalogs already list, and keep everything else about it. This is the route
|
|
4
|
+
for an entry that is listed and wrong or stale: a new source, a moved pin, one field.
|
|
5
|
+
|
|
6
|
+
`add --force` is not a substitute. It replaces the entry with what `add` can derive, so it needs
|
|
7
|
+
`--owner` and the other `add` inputs again, and it drops what it cannot derive: `category`,
|
|
8
|
+
`author`, any field a curator wrote by hand. Use `update` whenever the entry already exists.
|
|
9
|
+
|
|
10
|
+
An entry that is not listed yet is `add`'s (`references/add.md`). A plugin this repository holds is
|
|
11
|
+
re-derived by `init` or `plugin build`; reach for `update` there only for a field neither derives,
|
|
12
|
+
such as `category`.
|
|
13
|
+
|
|
14
|
+
## 1. Work out the change
|
|
15
|
+
|
|
16
|
+
Name the entry by the name the catalogs list it under, then say what changes:
|
|
17
|
+
|
|
18
|
+
| The user wants | Flags |
|
|
19
|
+
| --- | --- |
|
|
20
|
+
| Move the entry to another source, such as the `github` shorthand to an https `url` | `--source <spec>` |
|
|
21
|
+
| Bump or change a pin | `--ref <branch-or-tag>`, `--sha <commit>` |
|
|
22
|
+
| Change one field | `--description`, `--version`, `--homepage`, `--repository`, `--license`, `--keywords`, `--category` |
|
|
23
|
+
| Remove a field or a pin | `--unset <field>`, repeatable; `--unset ref`, `--unset sha` |
|
|
24
|
+
|
|
25
|
+
`--source` is read exactly the way `add` reads its spec, so the same collisions apply: write
|
|
26
|
+
`./plugins/alpha` or pass `--path` for a directory, and `--npm`, `--github`, `--url`, and `--subdir`
|
|
27
|
+
shape it the same way. A `<plugin>@<marketplace>` spec is refused; copying an entry is `add`'s job.
|
|
28
|
+
|
|
29
|
+
Two pin rules to state to the user before running:
|
|
30
|
+
|
|
31
|
+
- **A new git source keeps the old pin** unless `--ref` or `--sha` comes with it. Switching how a
|
|
32
|
+
repository is reached does not move which commit installs.
|
|
33
|
+
- **`--ref` alone keeps an existing `sha`.** A sha pinned for the old ref then names a commit the
|
|
34
|
+
new one has moved past. When bumping a ref, pass `--unset sha` too, or pass the new `--sha`.
|
|
35
|
+
|
|
36
|
+
## 2. Preview, then write
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
node scripts/update.mjs repobuddy --source https://github.com/cyberuni/repobuddy.git --dry-run
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
Resolve that path against this skill's own directory; `npx universal-plugin marketplace update` is
|
|
43
|
+
the fallback. Run `--dry-run` first and show the plan. The command never prompts.
|
|
44
|
+
|
|
45
|
+
| Status | Means |
|
|
46
|
+
| --- | --- |
|
|
47
|
+
| `updated` | the entry changed |
|
|
48
|
+
| `unchanged` | already says exactly this |
|
|
49
|
+
| `planned` | `--dry-run` only |
|
|
50
|
+
| `skipped` | that catalog is missing, does not list the entry, or its runtime cannot install the new source; the reason says which |
|
|
51
|
+
|
|
52
|
+
With no target flags all four catalogs are selected, so a `skipped` row for a catalog that never
|
|
53
|
+
listed the entry is normal. Report every skip with its reason anyway. Two deserve a sentence each:
|
|
54
|
+
|
|
55
|
+
- **A runtime that cannot install the new source keeps its old entry.** Moving an entry to `npm`
|
|
56
|
+
leaves Copilot CLI and Cursor on the source they had. Say so; the user may want those entries
|
|
57
|
+
removed, which is a hand decision this skill does not make.
|
|
58
|
+
- **A shield catalog may appear.** Copilot CLI and Cursor read the Claude catalog when they have none
|
|
59
|
+
of their own. If the new source would break them there, their own catalog is written without the
|
|
60
|
+
entry, as `add` does. Tell the user the file appeared and why.
|
|
61
|
+
|
|
62
|
+
The Codex catalog takes only `version` and `category` of the field flags, because that is all its
|
|
63
|
+
entries carry. A description changed everywhere else is not missing from Codex by mistake.
|
|
64
|
+
|
|
65
|
+
## 3. Validate
|
|
66
|
+
|
|
67
|
+
The command checks every catalog it plans to write, with the same checks as `validate`, before it
|
|
68
|
+
writes anything. An update that would introduce an issue stops and writes nothing; fix the input and
|
|
69
|
+
rerun. An issue the catalogs already had does not stop it.
|
|
70
|
+
|
|
71
|
+
So the write is safe, but the repository may still carry older issues. Follow
|
|
72
|
+
`references/validate.md` and report its result, not just the update's.
|
|
73
|
+
|
|
74
|
+
Then state plainly that nothing was published: the change sits in the repository until it is pushed
|
|
75
|
+
and a user refreshes the marketplace.
|
|
@@ -35,7 +35,7 @@ the fix is to run `init` or `add` so the runtime gets a catalog of its own.
|
|
|
35
35
|
|
|
36
36
|
Fix an issue in the source it comes from, then regenerate. An entry's fields are derived, so an
|
|
37
37
|
npm-style `repository` object belongs fixed in the plugin's `plugin.json` (for a discovered plugin)
|
|
38
|
-
or
|
|
38
|
+
or set with `update <name> --repository <url>` (for an added one, `references/update.md`).
|
|
39
39
|
|
|
40
40
|
The top-level `name` and `owner` live in the catalog itself, and `owner` must be an object —
|
|
41
41
|
`{ "name": "…" }`, never the `"Name <email>"` string `package.json` uses.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
// Compiled by `universal-plugin plugin build` from src/skill-scripts/run-cli.ts. Edit the source, not this file.
|
|
3
|
-
globalThis.__SKILL_SCRIPT__ = {"package":"universal-plugin","bin":"universal-plugin","version":"0.
|
|
3
|
+
globalThis.__SKILL_SCRIPT__ = {"package":"universal-plugin","bin":"universal-plugin","version":"0.17.1","entry":"skills/marketplace/scripts/add.mjs","commands":{"marketplace add":"skills/marketplace/scripts/add.mjs","marketplace init":"skills/marketplace/scripts/marketplace.mjs","marketplace update":"skills/marketplace/scripts/update.mjs","marketplace validate":"skills/marketplace/scripts/validate.mjs","plugin build":"skills/build-plugin/scripts/build.mjs","plugin init":"skills/init-universal-plugin/scripts/init.mjs","plugin version":"skills/version/scripts/version.mjs"}};
|
|
4
4
|
import { spawnSync } from "node:child_process";
|
|
5
5
|
//#region src/compile/scripts.ts
|
|
6
6
|
/** The global the header assigns the script data to. Framework-neutral: a script's own code, or the
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
// Compiled by `universal-plugin plugin build` from src/skill-scripts/install-docs.ts. Edit the source, not this file.
|
|
3
|
-
globalThis.__SKILL_SCRIPT__ = {"package":"universal-plugin","bin":"universal-plugin","version":"0.
|
|
3
|
+
globalThis.__SKILL_SCRIPT__ = {"package":"universal-plugin","bin":"universal-plugin","version":"0.17.1","entry":"skills/marketplace/scripts/install-docs.mjs","commands":{"marketplace add":"skills/marketplace/scripts/add.mjs","marketplace init":"skills/marketplace/scripts/marketplace.mjs","marketplace update":"skills/marketplace/scripts/update.mjs","marketplace validate":"skills/marketplace/scripts/validate.mjs","plugin build":"skills/build-plugin/scripts/build.mjs","plugin init":"skills/init-universal-plugin/scripts/init.mjs","plugin version":"skills/version/scripts/version.mjs"}};
|
|
4
4
|
import { execFileSync } from "node:child_process";
|
|
5
5
|
import * as fs from "node:fs";
|
|
6
6
|
import * as path from "node:path";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
// Compiled by `universal-plugin plugin build` from src/skill-scripts/run-cli.ts. Edit the source, not this file.
|
|
3
|
-
globalThis.__SKILL_SCRIPT__ = {"package":"universal-plugin","bin":"universal-plugin","version":"0.
|
|
3
|
+
globalThis.__SKILL_SCRIPT__ = {"package":"universal-plugin","bin":"universal-plugin","version":"0.17.1","entry":"skills/marketplace/scripts/marketplace.mjs","commands":{"marketplace add":"skills/marketplace/scripts/add.mjs","marketplace init":"skills/marketplace/scripts/marketplace.mjs","marketplace update":"skills/marketplace/scripts/update.mjs","marketplace validate":"skills/marketplace/scripts/validate.mjs","plugin build":"skills/build-plugin/scripts/build.mjs","plugin init":"skills/init-universal-plugin/scripts/init.mjs","plugin version":"skills/version/scripts/version.mjs"}};
|
|
4
4
|
import { spawnSync } from "node:child_process";
|
|
5
5
|
//#region src/compile/scripts.ts
|
|
6
6
|
/** The global the header assigns the script data to. Framework-neutral: a script's own code, or the
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
// Compiled by `universal-plugin plugin build` from src/skill-scripts/run-cli.ts. Edit the source, not this file.
|
|
3
|
+
globalThis.__SKILL_SCRIPT__ = {"package":"universal-plugin","bin":"universal-plugin","version":"0.17.1","entry":"skills/marketplace/scripts/update.mjs","commands":{"marketplace add":"skills/marketplace/scripts/add.mjs","marketplace init":"skills/marketplace/scripts/marketplace.mjs","marketplace update":"skills/marketplace/scripts/update.mjs","marketplace validate":"skills/marketplace/scripts/validate.mjs","plugin build":"skills/build-plugin/scripts/build.mjs","plugin init":"skills/init-universal-plugin/scripts/init.mjs","plugin version":"skills/version/scripts/version.mjs"}};
|
|
4
|
+
import { spawnSync } from "node:child_process";
|
|
5
|
+
//#region src/compile/scripts.ts
|
|
6
|
+
/** The global the header assigns the script data to. Framework-neutral: a script's own code, or the
|
|
7
|
+
* library it inlines, reads it; universal-plugin depends on neither. */
|
|
8
|
+
const SCRIPT_GLOBAL = "__SKILL_SCRIPT__";
|
|
9
|
+
//#endregion
|
|
10
|
+
//#region src/skill-scripts/cli-runner.ts
|
|
11
|
+
/** The data `plugin build` embedded in this compiled script. */
|
|
12
|
+
function skillScript() {
|
|
13
|
+
const data = globalThis[SCRIPT_GLOBAL];
|
|
14
|
+
if (data === void 0) throw new Error("this script runs only as compiled by `plugin build`");
|
|
15
|
+
return data;
|
|
16
|
+
}
|
|
17
|
+
/** Runs the universal-plugin CLI. A skill may be copied away from its package, so it never reaches
|
|
18
|
+
* for a CLI beside it: the project's installed CLI first, then the one pinned to this script's
|
|
19
|
+
* version, which `plugin version` stamps. */
|
|
20
|
+
function runCli(args, options = {}) {
|
|
21
|
+
const { bin, package: pkg, version } = skillScript();
|
|
22
|
+
const name = bin ?? "universal-plugin";
|
|
23
|
+
if (spawnSync("pnpm", [
|
|
24
|
+
"exec",
|
|
25
|
+
name,
|
|
26
|
+
"--version"
|
|
27
|
+
], { encoding: "utf8" }).status === 0) return spawnSync("pnpm", [
|
|
28
|
+
"exec",
|
|
29
|
+
name,
|
|
30
|
+
...args
|
|
31
|
+
], {
|
|
32
|
+
encoding: "utf8",
|
|
33
|
+
...options
|
|
34
|
+
});
|
|
35
|
+
const pinned = `${pkg ?? "universal-plugin"}@${version ?? "latest"}`;
|
|
36
|
+
return spawnSync("npx", [pinned, ...args], {
|
|
37
|
+
encoding: "utf8",
|
|
38
|
+
...options
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
//#endregion
|
|
42
|
+
//#region src/skill-scripts/run-cli.ts
|
|
43
|
+
const script = skillScript();
|
|
44
|
+
const command = Object.entries(script.commands).find(([, entry]) => entry === script.entry)?.[0];
|
|
45
|
+
if (command === void 0) {
|
|
46
|
+
process.stderr.write(`${script.entry} declares no command in the scripts map\n`);
|
|
47
|
+
process.exit(1);
|
|
48
|
+
}
|
|
49
|
+
const result = runCli([...command.split(" "), ...process.argv.slice(2)], { stdio: "inherit" });
|
|
50
|
+
process.exit(result.status ?? 1);
|
|
51
|
+
//#endregion
|
|
52
|
+
export {};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
// Compiled by `universal-plugin plugin build` from src/skill-scripts/run-cli.ts. Edit the source, not this file.
|
|
3
|
-
globalThis.__SKILL_SCRIPT__ = {"package":"universal-plugin","bin":"universal-plugin","version":"0.
|
|
3
|
+
globalThis.__SKILL_SCRIPT__ = {"package":"universal-plugin","bin":"universal-plugin","version":"0.17.1","entry":"skills/marketplace/scripts/validate.mjs","commands":{"marketplace add":"skills/marketplace/scripts/add.mjs","marketplace init":"skills/marketplace/scripts/marketplace.mjs","marketplace update":"skills/marketplace/scripts/update.mjs","marketplace validate":"skills/marketplace/scripts/validate.mjs","plugin build":"skills/build-plugin/scripts/build.mjs","plugin init":"skills/init-universal-plugin/scripts/init.mjs","plugin version":"skills/version/scripts/version.mjs"}};
|
|
4
4
|
import { spawnSync } from "node:child_process";
|
|
5
5
|
//#region src/compile/scripts.ts
|
|
6
6
|
/** The global the header assigns the script data to. Framework-neutral: a script's own code, or the
|
|
@@ -87,7 +87,7 @@ configuration is:
|
|
|
87
87
|
}
|
|
88
88
|
```
|
|
89
89
|
|
|
90
|
-
Retain existing package entries such as `bin`, `dist`, and `
|
|
90
|
+
Retain existing package entries such as `bin`, `dist`, and `references`.
|
|
91
91
|
Never replace the allowlist wholesale.
|
|
92
92
|
|
|
93
93
|
## 4. Bundle the CLI with tsdown
|
|
@@ -173,7 +173,6 @@ as a follow-up instead of doing it inside this migration.
|
|
|
173
173
|
|
|
174
174
|
Point every version and build step at the new plugin root:
|
|
175
175
|
|
|
176
|
-
- Set the manifest extension's `packagePath` to `"."`.
|
|
177
176
|
- `universal-plugin plugin version --from-package --root <pkg>` reads `packagePath` from
|
|
178
177
|
`<pkg>/.agents/universal-plugin.json`, not from the manifest extension. With
|
|
179
178
|
no `packagePath` it reads `<pkg>/package.json`, so a package that holds its
|
|
@@ -34,7 +34,8 @@ is the common case.
|
|
|
34
34
|
|
|
35
35
|
### 0a. Identify the marketplace repo
|
|
36
36
|
|
|
37
|
-
Default to `cyberuni/cyberplace` unless the user names another one.
|
|
37
|
+
Default to `cyberuni/cyberplace` unless the user names another one. The commands below call it
|
|
38
|
+
`<marketplace-repo>` (`<owner>/<repo>`), and its repository name `<marketplace-repo-name>`.
|
|
38
39
|
|
|
39
40
|
### 0b. Identify which repo the cwd is
|
|
40
41
|
|
|
@@ -239,6 +240,14 @@ The `source` field supports the same shapes as Claude Code (`url`, `github`, `gi
|
|
|
239
240
|
|
|
240
241
|
If the plugin is already listed (this is an update), find its existing entry, update changed fields, and preserve any curator-added fields not in the standard shape. Do not overwrite `publishedAt` if present — add `"updatedAt": "<today>"` instead.
|
|
241
242
|
|
|
243
|
+
For a change `marketplace update` covers (a new source, a moved `ref` or `sha` pin, or a field such as `description`, `version`, or `category`), run it in the marketplace checkout rather than editing the catalogs by hand. It keeps every field it is not given, curator fields included, and validates each catalog before writing:
|
|
244
|
+
|
|
245
|
+
```bash
|
|
246
|
+
npx universal-plugin marketplace update <plugin-name> --source <spec> --dry-run --root .
|
|
247
|
+
```
|
|
248
|
+
|
|
249
|
+
Drop `--dry-run` once the plan reads right. `updatedAt` and any other field it has no flag for are still set by hand.
|
|
250
|
+
|
|
242
251
|
Show all prepared entries to the user and ask them to confirm before proceeding.
|
|
243
252
|
|
|
244
253
|
### 2f. Resolve the plugin's dependencies
|
|
@@ -309,15 +318,15 @@ Otherwise, the marketplace repo is elsewhere and needs a working copy. If the us
|
|
|
309
318
|
(org member), work directly:
|
|
310
319
|
|
|
311
320
|
```bash
|
|
312
|
-
gh repo clone
|
|
313
|
-
cd
|
|
321
|
+
gh repo clone <marketplace-repo>
|
|
322
|
+
cd <marketplace-repo-name>
|
|
314
323
|
```
|
|
315
324
|
|
|
316
325
|
If a fork is needed:
|
|
317
326
|
|
|
318
327
|
```bash
|
|
319
|
-
gh repo fork
|
|
320
|
-
cd
|
|
328
|
+
gh repo fork <marketplace-repo> --clone --remote
|
|
329
|
+
cd <marketplace-repo-name>
|
|
321
330
|
git fetch upstream && git merge upstream/main
|
|
322
331
|
```
|
|
323
332
|
|
|
@@ -346,7 +355,7 @@ git push origin add-<plugin-name>
|
|
|
346
355
|
|
|
347
356
|
```bash
|
|
348
357
|
gh pr create \
|
|
349
|
-
--repo
|
|
358
|
+
--repo <marketplace-repo> \
|
|
350
359
|
--title "Add <plugin-name> v<version>" \
|
|
351
360
|
--body "$(cat <<'EOF'
|
|
352
361
|
## Plugin
|
package/skills/version/README.md
CHANGED
|
@@ -27,8 +27,8 @@ semantic-release stamps files that exist only in the npm package unless `@semant
|
|
|
27
27
|
commits them back. Git-sourced installs read `plugin.json` from the repository, so they need that
|
|
28
28
|
commit-back.
|
|
29
29
|
|
|
30
|
-
`plugin bundle` and `publish sync-version` are deprecated aliases
|
|
31
|
-
release.
|
|
30
|
+
`plugin bundle` and `publish sync-version` are deprecated aliases. They have warned since 0.14.0 and will be
|
|
31
|
+
removed in a later release.
|
|
32
32
|
|
|
33
33
|
## The part that is not automatable
|
|
34
34
|
|
package/skills/version/SKILL.md
CHANGED
|
@@ -74,7 +74,7 @@ node scripts/version.mjs --from-package
|
|
|
74
74
|
```
|
|
75
75
|
|
|
76
76
|
Resolve that path against this skill's own directory; it runs the project's installed CLI
|
|
77
|
-
(`pnpm exec universal-plugin`), else `npx universal-plugin@0.
|
|
77
|
+
(`pnpm exec universal-plugin`), else `npx universal-plugin@0.17.1` pinned to this skill's version.
|
|
78
78
|
`universal-plugin plugin version` on the `PATH` is the fallback. The command never prompts, so it is safe to run unattended once the
|
|
79
79
|
source is decided.
|
|
80
80
|
|
|
@@ -138,8 +138,8 @@ Every guard resolves before the first write, so a failed run leaves the tree unt
|
|
|
138
138
|
`plugin build`; the bump already re-derived them.
|
|
139
139
|
- **Run `npm version`.** It knows only `package.json` and leaves the canonical manifest and the
|
|
140
140
|
skill pins stale.
|
|
141
|
-
- **Use the deprecated commands.** `plugin bundle` and `publish sync-version` print a
|
|
142
|
-
|
|
141
|
+
- **Use the deprecated commands.** `plugin bundle` and `publish sync-version` print a deprecation
|
|
142
|
+
warning; use `plugin version` instead. `sync-version` now runs `plugin version --from-package`.
|
|
143
143
|
|
|
144
144
|
## Related skills
|
|
145
145
|
|
|
@@ -148,7 +148,7 @@ Every guard resolves before the first write, so a failed run leaves the tree unt
|
|
|
148
148
|
| Create, adopt, or change what the plugin declares | `init-universal-plugin` |
|
|
149
149
|
| Re-derive the vendor manifests by hand | `build-plugin` |
|
|
150
150
|
| Check whether every place agrees (`unstamped`, `version-drift`) | `doctor-universal-plugin` |
|
|
151
|
-
| Add a changeset for the change being released | `
|
|
151
|
+
| Add a changeset for the change being released | `buddy-changesets:changesets` |
|
|
152
152
|
| Refresh the repository's own marketplace catalogs after a bump | `marketplace` |
|
|
153
153
|
| List the released plugin in the shared marketplace | `publish-plugin` |
|
|
154
154
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
// Compiled by `universal-plugin plugin build` from src/skill-scripts/run-cli.ts. Edit the source, not this file.
|
|
3
|
-
globalThis.__SKILL_SCRIPT__ = {"package":"universal-plugin","bin":"universal-plugin","version":"0.
|
|
3
|
+
globalThis.__SKILL_SCRIPT__ = {"package":"universal-plugin","bin":"universal-plugin","version":"0.17.1","entry":"skills/version/scripts/version.mjs","commands":{"marketplace add":"skills/marketplace/scripts/add.mjs","marketplace init":"skills/marketplace/scripts/marketplace.mjs","marketplace update":"skills/marketplace/scripts/update.mjs","marketplace validate":"skills/marketplace/scripts/validate.mjs","plugin build":"skills/build-plugin/scripts/build.mjs","plugin init":"skills/init-universal-plugin/scripts/init.mjs","plugin version":"skills/version/scripts/version.mjs"}};
|
|
4
4
|
import { spawnSync } from "node:child_process";
|
|
5
5
|
//#region src/compile/scripts.ts
|
|
6
6
|
/** The global the header assigns the script data to. Framework-neutral: a script's own code, or the
|