vskill 1.0.19 → 1.0.21
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 +58 -7
- package/agents.json +1 -1
- package/dist/agents/agents-registry.d.ts +7 -0
- package/dist/agents/agents-registry.js +4 -0
- package/dist/agents/agents-registry.js.map +1 -1
- package/dist/commands/add-lockfile.d.ts +6 -0
- package/dist/commands/add-lockfile.js +10 -0
- package/dist/commands/add-lockfile.js.map +1 -1
- package/dist/commands/add.js +146 -33
- package/dist/commands/add.js.map +1 -1
- package/dist/commands/remove.js +46 -0
- package/dist/commands/remove.js.map +1 -1
- package/dist/commands/update.js +15 -2
- package/dist/commands/update.js.map +1 -1
- package/dist/discovery/github-tree.d.ts +23 -3
- package/dist/discovery/github-tree.js +172 -24
- package/dist/discovery/github-tree.js.map +1 -1
- package/dist/eval-server/api-routes.js +16 -10
- package/dist/eval-server/api-routes.js.map +1 -1
- package/dist/eval-server/git-routes.js +132 -2
- package/dist/eval-server/git-routes.js.map +1 -1
- package/dist/eval-server/plugin-cli-routes.js +4 -1
- package/dist/eval-server/plugin-cli-routes.js.map +1 -1
- package/dist/eval-server/plugin-cli.js +4 -1
- package/dist/eval-server/plugin-cli.js.map +1 -1
- package/dist/eval-server/source-link.js +3 -0
- package/dist/eval-server/source-link.js.map +1 -1
- package/dist/eval-server/utils/which.js +7 -1
- package/dist/eval-server/utils/which.js.map +1 -1
- package/dist/eval-ui/assets/{CreateSkillPage-Cv93Croj.js → CreateSkillPage-ENMve2K8.js} +5 -5
- package/dist/eval-ui/assets/{FindSkillsPalette-BY9DAhHh.js → FindSkillsPalette-BMVKCk6E.js} +2 -2
- package/dist/eval-ui/assets/{SearchPaletteCore-DMVcq7UB.js → SearchPaletteCore-C9G-ySXc.js} +1 -1
- package/dist/eval-ui/assets/SkillDetailPanel-BCJj8p79.js +1 -0
- package/dist/eval-ui/assets/{UpdateDropdown-4AbjZLpq.js → UpdateDropdown-C4BH7W_M.js} +1 -1
- package/dist/eval-ui/assets/main-tzMA8J07.js +87 -0
- package/dist/eval-ui/index.html +1 -1
- package/dist/installer/canonical.js +14 -0
- package/dist/installer/canonical.js.map +1 -1
- package/dist/installer/multi-install.d.ts +47 -1
- package/dist/installer/multi-install.js +141 -28
- package/dist/installer/multi-install.js.map +1 -1
- package/dist/installer/transformers/aider.js +9 -3
- package/dist/installer/transformers/aider.js.map +1 -1
- package/dist/installer/transformers/github-copilot.js +4 -2
- package/dist/installer/transformers/github-copilot.js.map +1 -1
- package/dist/installer/transformers/index.d.ts +7 -1
- package/dist/lib/github-fetch.d.ts +1 -0
- package/dist/lib/github-fetch.js +11 -1
- package/dist/lib/github-fetch.js.map +1 -1
- package/dist/lib/keychain.js +12 -5
- package/dist/lib/keychain.js.map +1 -1
- package/dist/lib/skill-lifecycle.d.ts +7 -1
- package/dist/lib/skill-lifecycle.js +13 -1
- package/dist/lib/skill-lifecycle.js.map +1 -1
- package/dist/lockfile/types.d.ts +8 -0
- package/dist/updater/source-fetcher.d.ts +6 -0
- package/dist/updater/source-fetcher.js +6 -4
- package/dist/updater/source-fetcher.js.map +1 -1
- package/dist/utils/resolve-binary.d.ts +3 -0
- package/dist/utils/resolve-binary.js +24 -0
- package/dist/utils/resolve-binary.js.map +1 -1
- package/dist/utils/validation.d.ts +12 -5
- package/dist/utils/validation.js +33 -2
- package/dist/utils/validation.js.map +1 -1
- package/package.json +1 -1
- package/dist/eval-ui/assets/SkillDetailPanel-B_lbhK6q.js +0 -1
- package/dist/eval-ui/assets/main-tpOyw9SC.js +0 -87
package/README.md
CHANGED
|
@@ -173,7 +173,8 @@ private catalog.
|
|
|
173
173
|
```bash
|
|
174
174
|
npx vskill@latest auth login # interactive Device Flow — copy code, visit URL
|
|
175
175
|
npx vskill@latest auth status # show the current GitHub identity
|
|
176
|
-
npx vskill@latest auth logout # forget
|
|
176
|
+
npx vskill@latest auth logout # forget all stored tokens
|
|
177
|
+
npx vskill@latest whoami # combined identity + active tenant snapshot
|
|
177
178
|
```
|
|
178
179
|
|
|
179
180
|
How it works:
|
|
@@ -181,31 +182,81 @@ How it works:
|
|
|
181
182
|
1. `vskill auth login` requests a device + user code from `github.com/login/device/code`.
|
|
182
183
|
2. You visit `https://github.com/login/device` and enter the 8-character code (rendered as `XXXX-XXXX`).
|
|
183
184
|
3. The CLI polls `github.com/login/oauth/access_token` until you authorize, then validates against `api.github.com/user`.
|
|
184
|
-
4. The
|
|
185
|
-
|
|
185
|
+
4. The CLI calls `POST /api/v1/auth/github/exchange-for-vsk-token` to mint a verified-skill API token (`vsk_…`) scoped to the same identity.
|
|
186
|
+
5. **Both** tokens are stored in your **OS keychain** (macOS Keychain / Windows DPAPI / libsecret) under distinct service names:
|
|
187
|
+
- `com.verifiedskill.desktop` / `github-oauth-token` → `gho_…` (raw GitHub OAuth)
|
|
188
|
+
- `com.verifiedskill.desktop` / `vskill-token` → `vsk_…` (verified-skill API token)
|
|
186
189
|
|
|
187
|
-
|
|
190
|
+
On systems without a keyring daemon, both fall back to `~/.vskill/keys.env` with mode `0600` and a startup warning.
|
|
188
191
|
|
|
192
|
+
If the exchange step fails (network error, 5xx), login still succeeds with just the `gho_…` token and the CLI prints `Logged in (legacy mode — some features unavailable)`. Re-run `vskill auth login` later to mint the `vsk_…` token without losing your session.
|
|
193
|
+
|
|
194
|
+
Where the tokens are used:
|
|
195
|
+
|
|
196
|
+
- **`vskill add <skill>`, `vskill list`, `vskill marketplace`** — every request to `verified-skill.com` carries `Authorization: Bearer <vsk_… or gho_…>` (preferring `vsk_` when present). Anonymous requests for public skills still work when no token is stored.
|
|
189
197
|
- **`vskill install <github-url>`** — added as `Authorization: Bearer …` on every fetch to `api.github.com` and `raw.githubusercontent.com`. Public skills still install anonymously.
|
|
190
198
|
- **`vskill studio`** — the local eval-server proxies private routes (`/api/v1/private/*`, `/api/v1/tenants/*`) to verified-skill.com with the bearer header injected at the proxy boundary. Your browser never holds the token.
|
|
191
199
|
|
|
192
200
|
Configuration:
|
|
193
201
|
|
|
194
202
|
- `VSKILL_GITHUB_CLIENT_ID` — the OAuth/App `client_id` used during Device Flow. Defaults are baked in for the public Skill Studio App; set this only if you are running a self-hosted variant.
|
|
203
|
+
- `VSKILL_TENANT` — overrides the active tenant for a single invocation (CI / scripted use). See "Tenant resolution priority" below.
|
|
195
204
|
|
|
196
205
|
Inspect status of all credentials in one place:
|
|
197
206
|
|
|
198
207
|
```bash
|
|
199
208
|
npx vskill@latest keys list # shows AI provider keys + the github slot
|
|
209
|
+
npx vskill@latest whoami # email, token prefix, active tenant, all tenants
|
|
200
210
|
```
|
|
201
211
|
|
|
212
|
+
### Tenants and `vskill orgs`
|
|
213
|
+
|
|
214
|
+
When your GitHub identity belongs to multiple organizations that have the Skill Studio App installed, each org is a **tenant** in verified-skill.com. The CLI calls them "orgs" for symmetry with `gh org`, `gcloud config configurations`, and `kubectl config use-context`.
|
|
215
|
+
|
|
216
|
+
```bash
|
|
217
|
+
npx vskill@latest orgs list # table: slug | name | role | active (* marks the active tenant)
|
|
218
|
+
npx vskill@latest orgs use <slug> # write currentTenant to ~/.vskill/config.json
|
|
219
|
+
npx vskill@latest orgs current # print the active tenant slug, or `(none)`
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
`orgs` and `whoami` are anonymous-safe — running them without a stored token prints `Not logged in. Run \`vskill auth login\`.` and exits non-zero (orgs returns 0; whoami returns 1) without crashing.
|
|
223
|
+
|
|
224
|
+
#### Tenant resolution priority
|
|
225
|
+
|
|
226
|
+
When a tenant-scoped command (`vskill add`, `vskill install` for a private skill, etc.) needs to pick an active tenant, it walks this list in order — first match wins:
|
|
227
|
+
|
|
228
|
+
1. **`--tenant <slug>` flag** — per-command override (highest precedence).
|
|
229
|
+
2. **`VSKILL_TENANT` env var** — non-interactive / CI use.
|
|
230
|
+
3. **`currentTenant` in `~/.vskill/config.json`** — the persistent active tenant set by `vskill orgs use` or the Studio sidebar picker.
|
|
231
|
+
4. **Auto-pick when N=1** — if you belong to exactly one tenant, that one is used silently.
|
|
232
|
+
5. **Error** — if you belong to N>1 tenants and none of (1)–(3) is set, the CLI prints `Multiple tenants available — set one with \`vskill orgs use <slug>\`.` and exits non-zero. The CLI never silently picks one of N>1.
|
|
233
|
+
|
|
234
|
+
The same `~/.vskill/config.json` is shared with Skill Studio — switching tenants in Studio's sidebar picker updates the same file the CLI reads, so the two surfaces stay in sync.
|
|
235
|
+
|
|
236
|
+
#### `vskill add` resolution order (private skills)
|
|
237
|
+
|
|
238
|
+
When you run `vskill add <skill>`, the resolver tries:
|
|
239
|
+
|
|
240
|
+
1. The public registry.
|
|
241
|
+
2. The active tenant's scoped registry (resolved via the priority above).
|
|
242
|
+
3. Other tenants you belong to, in parallel HEAD requests — first match wins.
|
|
243
|
+
|
|
244
|
+
If a `--tenant <slug>` flag is set, only the public registry and that tenant are tried.
|
|
245
|
+
|
|
246
|
+
Common error messages:
|
|
247
|
+
|
|
248
|
+
- `Skill found in multiple tenants: acme, contoso. Re-run with --tenant <slug> or set an active tenant: vskill orgs use <slug>.` — ambiguity guard for N>1 with no active tenant.
|
|
249
|
+
- `Authentication failed. Run \`vskill auth login\` to re-authenticate.` — the registry returned 401. The keychain is **not** auto-cleared (you might be on a flaky network).
|
|
250
|
+
- `Upgrade required: <message> (<upgradeUrl>)` — the registry returned 402: skill exists in this tenant but you lack entitlement.
|
|
251
|
+
|
|
202
252
|
### Private skill workflow
|
|
203
253
|
|
|
204
|
-
Once authenticated, installing a private org skill is identical to a public one — the CLI silently attaches the keychain token to every
|
|
254
|
+
Once authenticated, installing a private org skill is identical to a public one — the CLI silently attaches the keychain token to every request:
|
|
205
255
|
|
|
206
256
|
```bash
|
|
207
|
-
npx vskill@latest auth login # one-time setup
|
|
208
|
-
npx vskill@latest
|
|
257
|
+
npx vskill@latest auth login # one-time setup (mints gho_ + vsk_)
|
|
258
|
+
npx vskill@latest orgs use acme # pick a tenant if you belong to multiple
|
|
259
|
+
npx vskill@latest add private-skill # private skill installs same as public
|
|
209
260
|
```
|
|
210
261
|
|
|
211
262
|
The local skill bundle on disk **never contains** your GitHub token — the token is used only at fetch time. Your project's `vskill.lock` records `source: "private"` and the org name so future updates re-authenticate correctly.
|
package/agents.json
CHANGED
|
@@ -86,6 +86,13 @@ export interface AgentDefinition {
|
|
|
86
86
|
* SKILL.md into the list of files to write under the agent's
|
|
87
87
|
* install root. Only set for Tier 2 agents. */
|
|
88
88
|
formatTransformer?: FormatTransformer;
|
|
89
|
+
/** F7: project-scope Tier-2 install-root override, relative to
|
|
90
|
+
* projectRoot. Used when the tool reads transformed output from a
|
|
91
|
+
* directory that is NOT the parent of `localSkillsDir` — VS Code
|
|
92
|
+
* Copilot reads `.github/instructions/`, but `localSkillsDir` is
|
|
93
|
+
* `.github/copilot/skills`. Ignored for user scope. Subject to the
|
|
94
|
+
* same path-traversal guard as `localSkillsDir`. */
|
|
95
|
+
localInstallRoot?: string;
|
|
89
96
|
/** 0845 T-001 (AC-US4-01): Tier 3 only — URL of the tool's docs page
|
|
90
97
|
* explaining how to paste the exported blob. */
|
|
91
98
|
pasteInstructionsUrl?: string;
|
|
@@ -139,9 +139,13 @@ export const AGENTS_REGISTRY = [
|
|
|
139
139
|
parentCompany: 'GitHub (Microsoft)',
|
|
140
140
|
featureSupport: { slashCommands: true, hooks: false, mcp: true, customSystemPrompt: true },
|
|
141
141
|
// 0845 T-003: Tier 2 — emits `.github/instructions/<name>.instructions.md`.
|
|
142
|
+
// F7: VS Code reads workspace instructions from `.github/instructions/`,
|
|
143
|
+
// so the project-scope install root is `.github` — NOT the parent of
|
|
144
|
+
// localSkillsDir (`.github/copilot`).
|
|
142
145
|
tier: 2,
|
|
143
146
|
installMode: 'filesystem',
|
|
144
147
|
formatTransformer: githubCopilotTransformer,
|
|
148
|
+
localInstallRoot: '.github',
|
|
145
149
|
},
|
|
146
150
|
{
|
|
147
151
|
id: 'kimi-cli',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agents-registry.js","sourceRoot":"","sources":["../../src/agents/agents-registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agents-registry.js","sourceRoot":"","sources":["../../src/agents/agents-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,yCAAyC;AACzC,kEAAkE;AAClE,6EAA6E;AAC7E,2EAA2E;AAC3E,+EAA+E;AAC/E,OAAO,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,UAAU,IAAI,YAAY,EAAE,WAAW,IAAI,aAAa,EAAE,MAAM,SAAS,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,qEAAqE;AACrE,gEAAgE;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;AACvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAqGtE;;6EAE6E;AAC7E,MAAM,CAAC,MAAM,gBAAgB,GAAqC,MAAM,CAAC,MAAM,CAAC;IAC9E,uEAAuE;IACvE,wEAAwE;IACxE,gBAAgB,EAAE,oBAAoB;CACvC,CAAC,CAAC;AAEH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,eAAe,GAAsB;IAChD,mEAAmE;IACnE,uBAAuB;IACvB,mEAAmE;IACnE;QACE,EAAE,EAAE,KAAK;QACT,WAAW,EAAE,KAAK;QAClB,cAAc,EAAE,aAAa;QAC7B,eAAe,EAAE,yBAAyB;QAC1C,WAAW,EAAE,IAAI;QACjB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC;QAC1C,aAAa,EAAE,aAAa;QAC5B,cAAc,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC3F;IACD;QACE,EAAE,EAAE,OAAO;QACX,WAAW,EAAE,OAAO;QACpB,cAAc,EAAE,eAAe;QAC/B,eAAe,EAAE,iBAAiB;QAClC,WAAW,EAAE,IAAI;QACjB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC;QAC5C,aAAa,EAAE,OAAO;QACtB,cAAc,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC3F;IACD;QACE,EAAE,EAAE,OAAO;QACX,WAAW,EAAE,WAAW;QACxB,cAAc,EAAE,eAAe;QAC/B,eAAe,EAAE,iBAAiB;QAClC,WAAW,EAAE,IAAI;QACjB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC;QAC5C,aAAa,EAAE,QAAQ;QACvB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;QAC5F,sEAAsE;QACtE,0EAA0E;QAC1E,0EAA0E;QAC1E,8BAA8B;QAC9B,IAAI,EAAE,CAAC;QACP,WAAW,EAAE,YAAY;KAC1B;IACD;QACE,EAAE,EAAE,QAAQ;QACZ,WAAW,EAAE,QAAQ;QACrB,cAAc,EAAE,gBAAgB;QAChC,eAAe,EAAE,kBAAkB;QACnC,WAAW,EAAE,IAAI;QACjB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC;QAC7C,aAAa,EAAE,WAAW;QAC1B,cAAc,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE;QAC1F,yEAAyE;QACzE,IAAI,EAAE,CAAC;QACP,WAAW,EAAE,YAAY;QACzB,iBAAiB,EAAE,iBAAiB;KACrC;IACD;QACE,EAAE,EAAE,YAAY;QAChB,WAAW,EAAE,YAAY;QACzB,cAAc,EAAE,gBAAgB;QAChC,eAAe,EAAE,kBAAkB;QACnC,WAAW,EAAE,IAAI;QACjB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC;QAC7C,aAAa,EAAE,QAAQ;QACvB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE;QAC3F,IAAI,EAAE,CAAC;QACP,WAAW,EAAE,YAAY;KAC1B;IACD;QACE,yEAAyE;QACzE,wEAAwE;QACxE,2EAA2E;QAC3E,sEAAsE;QACtE,mDAAmD;QACnD,EAAE,EAAE,oBAAoB;QACxB,WAAW,EAAE,0BAA0B;QACvC,cAAc,EAAE,wBAAwB;QACxC,eAAe,EAAE,iCAAiC;QAClD,WAAW,EAAE,IAAI;QACjB,uDAAuD;QACvD,yEAAyE;QACzE,gEAAgE;QAChE,qEAAqE;QACrE,oEAAoE;QACpE,eAAe,EAAE,KAAK,IAAI,EAAE;YAC1B,IAAI,CAAC,CAAC,MAAM,YAAY,CAAC,MAAM,CAAC,CAAC;gBAAE,OAAO,KAAK,CAAC;YAChD,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;YAC9D,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;gBAAE,OAAO,KAAK,CAAC;YACxC,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;gBACtC,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAC9D,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QACD,aAAa,EAAE,oBAAoB;QACnC,cAAc,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE;QAC1F,4EAA4E;QAC5E,yEAAyE;QACzE,qEAAqE;QACrE,sCAAsC;QACtC,IAAI,EAAE,CAAC;QACP,WAAW,EAAE,YAAY;QACzB,iBAAiB,EAAE,wBAAwB;QAC3C,gBAAgB,EAAE,SAAS;KAC5B;IACD;QACE,EAAE,EAAE,UAAU;QACd,WAAW,EAAE,UAAU;QACvB,cAAc,EAAE,cAAc;QAC9B,eAAe,EAAE,yBAAyB;QAC1C,WAAW,EAAE,IAAI;QACjB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC;QAC3C,aAAa,EAAE,aAAa;QAC5B,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC7F;IACD;QACE,EAAE,EAAE,UAAU;QACd,WAAW,EAAE,UAAU;QACvB,cAAc,EAAE,kBAAkB;QAClC,eAAe,EAAE,2BAA2B;QAC5C,WAAW,EAAE,IAAI;QACjB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC;QAC/C,aAAa,EAAE,WAAW;QAC1B,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE;QAC3F,IAAI,EAAE,CAAC;QACP,WAAW,EAAE,YAAY;KAC1B;IAED,mEAAmE;IACnE,4BAA4B;IAC5B,mEAAmE;IACnE;QACE,EAAE,EAAE,aAAa;QACjB,WAAW,EAAE,aAAa;QAC1B,cAAc,EAAE,eAAe;QAC/B,eAAe,EAAE,8BAA8B;QAC/C,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC;QAClD,aAAa,EAAE,QAAQ;QACvB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;QAC5F,4EAA4E;QAC5E,wEAAwE;QACxE,IAAI,EAAE,CAAC;QACP,WAAW,EAAE,YAAY;KAC1B;IACD;QACE,EAAE,EAAE,SAAS;QACb,WAAW,EAAE,cAAc;QAC3B,cAAc,EAAE,iBAAiB;QACjC,eAAe,EAAE,mBAAmB;QACpC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC;QAC9C,aAAa,EAAE,SAAS;QACxB,cAAc,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC3F;IACD;QACE,EAAE,EAAE,aAAa;QACjB,WAAW,EAAE,aAAa;QAC1B,cAAc,EAAE,gBAAgB;QAChC,eAAe,EAAE,kBAAkB;QACnC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC;QAC7C,aAAa,EAAE,WAAW;QAC1B,cAAc,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE;QACzF,cAAc,EAAE,yBAAyB;QACzC,oBAAoB,EAAE,gCAAgC;QACtD,IAAI,EAAE,CAAC;QACP,WAAW,EAAE,YAAY;KAC1B;IACD;QACE,EAAE,EAAE,UAAU;QACd,WAAW,EAAE,UAAU;QACvB,cAAc,EAAE,kBAAkB;QAClC,eAAe,EAAE,oBAAoB;QACrC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC;QAC/C,aAAa,EAAE,WAAW;QAC1B,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;QAC5F,IAAI,EAAE,CAAC;QACP,WAAW,EAAE,YAAY;KAC1B;IACD;QACE,EAAE,EAAE,QAAQ;QACZ,WAAW,EAAE,cAAc;QAC3B,cAAc,EAAE,gBAAgB;QAChC,eAAe,EAAE,yBAAyB;QAC1C,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC;QAC7C,aAAa,EAAE,QAAQ;QACvB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;QAC5F,YAAY,EAAE,IAAI;KACnB;IACD;QACE,EAAE,EAAE,WAAW;QACf,WAAW,EAAE,WAAW;QACxB,cAAc,EAAE,mBAAmB;QACnC,eAAe,EAAE,qBAAqB;QACtC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC;QAChD,aAAa,EAAE,WAAW;QAC1B,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC7F;IACD;QACE,EAAE,EAAE,cAAc;QAClB,WAAW,EAAE,cAAc;QAC3B,cAAc,EAAE,qBAAqB;QACrC,eAAe,EAAE,uBAAuB;QACxC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,cAAc,CAAC;QACnD,aAAa,EAAE,SAAS;QACxB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC7F;IACD;QACE,EAAE,EAAE,UAAU;QACd,WAAW,EAAE,UAAU;QACvB,cAAc,EAAE,kBAAkB;QAClC,eAAe,EAAE,oBAAoB;QACrC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC;QAC/C,aAAa,EAAE,UAAU;QACzB,cAAc,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE;QAC1F,2EAA2E;QAC3E,IAAI,EAAE,CAAC;QACP,WAAW,EAAE,YAAY;QACzB,iBAAiB,EAAE,sBAAsB;KAC1C;IACD;QACE,EAAE,EAAE,OAAO;QACX,WAAW,EAAE,OAAO;QACpB,cAAc,EAAE,eAAe;QAC/B,eAAe,EAAE,wBAAwB;QACzC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC;QAC5C,aAAa,EAAE,OAAO;QACtB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC7F;IACD;QACE,EAAE,EAAE,OAAO;QACX,WAAW,EAAE,iBAAiB;QAC9B,cAAc,EAAE,iBAAiB;QACjC,eAAe,EAAE,mBAAmB;QACpC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC;QAC5C,aAAa,EAAE,SAAS;QACxB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC7F;IACD;QACE,EAAE,EAAE,OAAO;QACX,WAAW,EAAE,OAAO;QACpB,cAAc,EAAE,eAAe;QAC/B,eAAe,EAAE,wBAAwB;QACzC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC;QAC5C,aAAa,EAAE,OAAO;QACtB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC5F;IACD;QACE,EAAE,EAAE,OAAO;QACX,WAAW,EAAE,OAAO;QACpB,cAAc,EAAE,eAAe;QAC/B,eAAe,EAAE,iBAAiB;QAClC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC;QAC5C,aAAa,EAAE,WAAW;QAC1B,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;QAC5F,wEAAwE;QACxE,IAAI,EAAE,CAAC;QACP,WAAW,EAAE,YAAY;QACzB,iBAAiB,EAAE,gBAAgB;KACpC;IACD;QACE,EAAE,EAAE,WAAW;QACf,WAAW,EAAE,WAAW;QACxB,cAAc,EAAE,eAAe;QAC/B,eAAe,EAAE,iBAAiB;QAClC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC;QAC5C,aAAa,EAAE,OAAO;QACtB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC7F;IACD;QACE,EAAE,EAAE,MAAM;QACV,WAAW,EAAE,WAAW;QACxB,cAAc,EAAE,kBAAkB;QAClC,eAAe,EAAE,oBAAoB;QACrC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC;QAC/C,aAAa,EAAE,WAAW;QAC1B,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC7F;IACD;QACE,EAAE,EAAE,UAAU;QACd,WAAW,EAAE,UAAU;QACvB,cAAc,EAAE,cAAc;QAC9B,eAAe,EAAE,gBAAgB;QACjC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC;QAC3C,aAAa,EAAE,KAAK;QACpB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;QAC5F,0EAA0E;QAC1E,IAAI,EAAE,CAAC;QACP,WAAW,EAAE,YAAY;QACzB,iBAAiB,EAAE,eAAe;KACnC;IACD;QACE,EAAE,EAAE,MAAM;QACV,WAAW,EAAE,MAAM;QACnB,cAAc,EAAE,cAAc;QAC9B,eAAe,EAAE,gBAAgB;QACjC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC;QAC3C,aAAa,EAAE,MAAM;QACrB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC7F;IACD;QACE,EAAE,EAAE,QAAQ;QACZ,WAAW,EAAE,QAAQ;QACrB,cAAc,EAAE,gBAAgB;QAChC,eAAe,EAAE,kBAAkB;QACnC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC;QAC7C,aAAa,EAAE,QAAQ;QACvB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE;KAC7F;IACD;QACE,EAAE,EAAE,cAAc;QAClB,WAAW,EAAE,cAAc;QAC3B,cAAc,EAAE,cAAc;QAC9B,eAAe,EAAE,gBAAgB;QACjC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC;QAC3C,aAAa,EAAE,YAAY;QAC3B,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC7F;IACD;QACE,EAAE,EAAE,KAAK;QACT,WAAW,EAAE,KAAK;QAClB,cAAc,EAAE,aAAa;QAC7B,eAAe,EAAE,eAAe;QAChC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC;QAC1C,aAAa,EAAE,KAAK;QACpB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC7F;IACD;QACE,EAAE,EAAE,WAAW;QACf,WAAW,EAAE,WAAW;QACxB,cAAc,EAAE,mBAAmB;QACnC,eAAe,EAAE,qBAAqB;QACtC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC;QAChD,aAAa,EAAE,cAAc;QAC7B,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC7F;IACD;QACE,EAAE,EAAE,IAAI;QACR,WAAW,EAAE,IAAI;QACjB,cAAc,EAAE,YAAY;QAC5B,eAAe,EAAE,oBAAoB;QACrC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC;QACzC,aAAa,EAAE,IAAI;QACnB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC7F;IACD;QACE,EAAE,EAAE,OAAO;QACX,WAAW,EAAE,OAAO;QACpB,cAAc,EAAE,eAAe;QAC/B,eAAe,EAAE,iBAAiB;QAClC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC;QAC5C,aAAa,EAAE,OAAO;QACtB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC7F;IACD;QACE,EAAE,EAAE,WAAW;QACf,WAAW,EAAE,WAAW;QACxB,cAAc,EAAE,cAAc;QAC9B,eAAe,EAAE,gBAAgB;QACjC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC;QAChD,aAAa,EAAE,SAAS;QACxB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC7F;IACD;QACE,EAAE,EAAE,KAAK;QACT,WAAW,EAAE,UAAU;QACvB,cAAc,EAAE,aAAa;QAC7B,eAAe,EAAE,eAAe;QAChC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC;QAC1C,aAAa,EAAE,KAAK;QACpB,cAAc,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC3F;IACD;QACE,EAAE,EAAE,MAAM;QACV,WAAW,EAAE,MAAM;QACnB,cAAc,EAAE,cAAc;QAC9B,eAAe,EAAE,gBAAgB;QACjC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC;QAC3C,aAAa,EAAE,WAAW;QAC1B,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE;QAC3F,iEAAiE;QACjE,IAAI,EAAE,CAAC;QACP,WAAW,EAAE,YAAY;QACzB,iBAAiB,EAAE,eAAe;KACnC;IACD;QACE,EAAE,EAAE,SAAS;QACb,WAAW,EAAE,SAAS;QACtB,cAAc,EAAE,iBAAiB;QACjC,eAAe,EAAE,mBAAmB;QACpC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC;QAC9C,aAAa,EAAE,WAAW;QAC1B,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC5F;IACD;QACE,EAAE,EAAE,UAAU;QACd,WAAW,EAAE,UAAU;QACvB,cAAc,EAAE,kBAAkB;QAClC,eAAe,EAAE,4BAA4B;QAC7C,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC;QAC/C,aAAa,EAAE,SAAS;QACxB,cAAc,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE;QAC1F,2EAA2E;QAC3E,IAAI,EAAE,CAAC;QACP,WAAW,EAAE,YAAY;QACzB,iBAAiB,EAAE,mBAAmB;KACvC;IACD;QACE,EAAE,EAAE,UAAU;QACd,WAAW,EAAE,UAAU;QACvB,cAAc,EAAE,kBAAkB;QAClC,eAAe,EAAE,oBAAoB;QACrC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC;QAC/C,aAAa,EAAE,UAAU;QACzB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC7F;IACD;QACE,EAAE,EAAE,SAAS;QACb,WAAW,EAAE,SAAS;QACtB,cAAc,EAAE,iBAAiB;QACjC,eAAe,EAAE,mBAAmB;QACpC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC;QAC9C,aAAa,EAAE,SAAS;QACxB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC7F;IACD;QACE,EAAE,EAAE,OAAO;QACX,WAAW,EAAE,OAAO;QACpB,cAAc,EAAE,eAAe;QAC/B,eAAe,EAAE,iBAAiB;QAClC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC;QAC5C,aAAa,EAAE,OAAO;QACtB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC7F;IACD;QACE,EAAE,EAAE,MAAM;QACV,WAAW,EAAE,MAAM;QACnB,cAAc,EAAE,cAAc;QAC9B,eAAe,EAAE,gBAAgB;QACjC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC;QAC3C,aAAa,EAAE,MAAM;QACrB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC7F;IACD;QACE,EAAE,EAAE,QAAQ;QACZ,WAAW,EAAE,QAAQ;QACrB,cAAc,EAAE,gBAAgB;QAChC,eAAe,EAAE,4BAA4B;QAC7C,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC;QAC7C,aAAa,EAAE,QAAQ;QACvB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC7F;IACD;QACE,EAAE,EAAE,OAAO;QACX,WAAW,EAAE,OAAO;QACpB,cAAc,EAAE,eAAe;QAC/B,eAAe,EAAE,iBAAiB;QAClC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC;QAC5C,aAAa,EAAE,OAAO;QACtB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;QAC5F,8EAA8E;QAC9E,IAAI,EAAE,CAAC;QACP,WAAW,EAAE,YAAY;QACzB,iBAAiB,EAAE,gBAAgB;KACpC;IACD;QACE,EAAE,EAAE,SAAS;QACb,WAAW,EAAE,cAAc;QAC3B,cAAc,EAAE,iBAAiB;QACjC,eAAe,EAAE,mBAAmB;QACpC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC;QAC9C,aAAa,EAAE,SAAS;QACxB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC7F;IACD;QACE,uEAAuE;QACvE,wEAAwE;QACxE,uEAAuE;QACvE,EAAE,EAAE,OAAO;QACX,WAAW,EAAE,OAAO;QACpB,cAAc,EAAE,eAAe;QAC/B,eAAe,EAAE,iBAAiB;QAClC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC;QAC5C,aAAa,EAAE,WAAW;QAC1B,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;QAC5F,YAAY,EAAE,IAAI;KACnB;IACD;QACE,0EAA0E;QAC1E,gFAAgF;QAChF,4EAA4E;QAC5E,2EAA2E;QAC3E,EAAE,EAAE,UAAU;QACd,WAAW,EAAE,UAAU;QACvB,cAAc,EAAE,cAAc;QAC9B,eAAe,EAAE,gBAAgB;QACjC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC;QAC3C,aAAa,EAAE,YAAY;QAC3B,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;QAC5F,YAAY,EAAE,IAAI;QAClB,IAAI,EAAE,CAAC;QACP,WAAW,EAAE,WAAW;QACxB,oBAAoB,EAAE,mBAAmB;QACzC,OAAO,EAAE,mBAAmB;KAC7B;IACD;QACE,wEAAwE;QACxE,oEAAoE;QACpE,qEAAqE;QACrE,sEAAsE;QACtE,uEAAuE;QACvE,uEAAuE;QACvE,EAAE,EAAE,SAAS;QACb,WAAW,EAAE,SAAS;QACtB,cAAc,EAAE,iBAAiB;QACjC,eAAe,EAAE,mBAAmB;QACpC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK;QAClC,aAAa,EAAE,QAAQ;QACvB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;QAC5F,YAAY,EAAE,IAAI;QAClB,IAAI,EAAE,CAAC;QACP,WAAW,EAAE,WAAW;QACxB,oBAAoB,EAAE,yEAAyE;QAC/F,OAAO,EAAE,+CAA+C;KACzD;IACD;QACE,0EAA0E;QAC1E,wEAAwE;QACxE,mCAAmC;QACnC,EAAE,EAAE,IAAI;QACR,WAAW,EAAE,IAAI;QACjB,cAAc,EAAE,YAAY;QAC5B,eAAe,EAAE,cAAc;QAC/B,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC;QACzC,aAAa,EAAE,QAAQ;QACvB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;QAC5F,YAAY,EAAE,IAAI;QAClB,IAAI,EAAE,CAAC;QACP,WAAW,EAAE,WAAW;QACxB,oBAAoB,EAAE,qBAAqB;QAC3C,OAAO,EAAE,iBAAiB;KAC3B;IACD;QACE,EAAE,EAAE,WAAW;QACf,WAAW,EAAE,WAAW;QACxB,cAAc,EAAE,mBAAmB;QACnC,eAAe,EAAE,qBAAqB;QACtC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC;QAChD,aAAa,EAAE,WAAW;QAC1B,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC7F;IACD;QACE,EAAE,EAAE,SAAS;QACb,WAAW,EAAE,SAAS;QACtB,cAAc,EAAE,iBAAiB;QACjC,eAAe,EAAE,mBAAmB;QACpC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC;QAC9C,aAAa,EAAE,SAAS;QACxB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC7F;IACD;QACE,EAAE,EAAE,OAAO;QACX,WAAW,EAAE,OAAO;QACpB,cAAc,EAAE,eAAe;QAC/B,eAAe,EAAE,iBAAiB;QAClC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC;QAC5C,aAAa,EAAE,UAAU;QACzB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC7F;IACD;QACE,EAAE,EAAE,QAAQ;QACZ,WAAW,EAAE,QAAQ;QACrB,cAAc,EAAE,gBAAgB;QAChC,eAAe,EAAE,kBAAkB;QACnC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC;QAC7C,aAAa,EAAE,UAAU;QACzB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC7F;IAED,mEAAmE;IACnE,6DAA6D;IAC7D,mEAAmE;IACnE;QACE,sEAAsE;QACtE,qDAAqD;QACrD,EAAE,EAAE,aAAa;QACjB,WAAW,EAAE,oBAAoB;QACjC,cAAc,EAAE,iBAAiB;QACjC,eAAe,EAAE,mBAAmB;QACpC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC;QAC9C,aAAa,EAAE,oBAAoB;QACnC,cAAc,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC3F;IACD;QACE,0DAA0D;QAC1D,uEAAuE;QACvE,yEAAyE;QACzE,mEAAmE;QACnE,EAAE,EAAE,MAAM;QACV,WAAW,EAAE,MAAM;QACnB,cAAc,EAAE,cAAc;QAC9B,eAAe,EAAE,gBAAgB;QACjC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC;QAC3C,aAAa,EAAE,MAAM;QACrB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC5F;IACD;QACE,gEAAgE;QAChE,oEAAoE;QACpE,uEAAuE;QACvE,0EAA0E;QAC1E,EAAE,EAAE,cAAc;QAClB,WAAW,EAAE,cAAc;QAC3B,cAAc,EAAE,iBAAiB;QACjC,eAAe,EAAE,uBAAuB;QACxC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC;QACxC,aAAa,EAAE,KAAK;QACpB,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC5F;IACD;QACE,mDAAmD;QACnD,oEAAoE;QACpE,sEAAsE;QACtE,gEAAgE;QAChE,6CAA6C;QAC7C,EAAE,EAAE,KAAK;QACT,WAAW,EAAE,KAAK;QAClB,cAAc,EAAE,aAAa;QAC7B,eAAe,EAAE,sBAAsB;QACvC,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC;QAC1C,aAAa,EAAE,gBAAgB;QAC/B,cAAc,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC5F;CACF,CAAC;AAEF,wCAAwC;AACxC,MAAM,CAAC,MAAM,YAAY,GAAG,eAAe,CAAC,MAAM,CAAC;AAEnD,8EAA8E;AAC9E,kEAAkE;AAClE,gEAAgE;AAChE,EAAE;AACF,2EAA2E;AAC3E,kEAAkE;AAClE,yEAAyE;AACzE,+CAA+C;AAC/C,8EAA8E;AAC9E,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC;IACjD,YAAY;IACZ,SAAS;IACT,OAAO;IACP,MAAM;IACN,eAAe;IACf,SAAS;IACT,SAAS;IACT,QAAQ;CACA,CAAC,CAAC;AAiBZ,8EAA8E;AAC9E,MAAM,mBAAmB,GAAG;IAC1B,gBAAgB;IAChB,eAAe;IACf,OAAO;IACP,eAAe;IACf,SAAS;CACV,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CACpC,YAAqC;IAErC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,YAAY,CAAsC,CAAC;IAClF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,GAAG,eAAe,CAAC,CAAC;IACtD,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CACtC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,CACrE,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAe;IACrD,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;IAC5D,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAE7B,MAAM,EAAE,cAAc,EAAE,GAAG,KAAK,CAAC;IAEjC,yEAAyE;IACzE,IAAI,KAAK,CAAC,EAAE,KAAK,aAAa,EAAE,CAAC;QAC/B,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,cAAc,EAAE,CAAC;IACrE,CAAC;IAED,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC;QAClC,WAAW,CAAC,IAAI,CAAC,sEAAsE,CAAC,CAAC;IAC3F,CAAC;IACD,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QAC1B,WAAW,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;IACjF,CAAC;IACD,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC;QACxB,WAAW,CAAC,IAAI,CAAC,mEAAmE,CAAC,CAAC;IACxF,CAAC;IACD,IAAI,CAAC,cAAc,CAAC,kBAAkB,EAAE,CAAC;QACvC,WAAW,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC;IAC1F,CAAC;IAED,OAAO;QACL,KAAK;QACL,WAAW,EAAE,mBAAmB;QAChC,WAAW;QACX,cAAc;KACf,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB;IAChC,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;AACtD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB;IACnC,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;AACvD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,QAAQ,CAAC,EAAU;IACjC,MAAM,SAAS,GAAG,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;IAC7C,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB;IAClC,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC;AAChE,CAAC;AAED;;GAEG;AACH,SAAS,UAAU,CAAC,CAAS;IAC3B,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;QAC/D,OAAO,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB;IACzC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;IACpD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;IAChD,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;IAC/C,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAElC,MAAM,OAAO,GAAsB,EAAE,CAAC;IAEtC,MAAM,OAAO,CAAC,UAAU,CACtB,eAAe,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QAClC,yEAAyE;QACzE,wEAAwE;QACxE,4EAA4E;QAC5E,IAAI,KAAK,CAAC,YAAY,KAAK,IAAI;YAAE,OAAO;QAExC,gCAAgC;QAChC,EAAE;QACF,mEAAmE;QACnE,wEAAwE;QACxE,oEAAoE;QACpE,uEAAuE;QACvE,gEAAgE;QAChE,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,KAAK,CAAC,eAAe,CAAC;YACvC,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE,CAAC;gBACnC,MAAM,EAAE,GAAG,MAAM,QAAQ,EAAE,CAAC;gBAC5B,IAAI,EAAE,EAAE,CAAC;oBACP,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBACpB,OAAO;gBACT,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC;gBAC1B,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACpB,OAAO;YACT,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,4CAA4C;QAC9C,CAAC;QAED,qCAAqC;QACrC,6DAA6D;QAC7D,oFAAoF;QACpF,mEAAmE;QACnE,sFAAsF;QACtF,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YACpD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;YAC/D,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;YACrC,iEAAiE;YACjE,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,GAAG,IAAI,UAAU,EAAE,CAAC;gBAC1D,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC1B,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACtB,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,oBAAoB;QACtB,CAAC;IACH,CAAC,CAAC,CACH,CAAC;IAEF,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC1D,CAAC;AAiCD;;;;;GAKG;AACH,SAAS,wBAAwB,CAAC,KAAsB;IACtD,IAAI,KAAK,CAAC,EAAE,KAAK,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,6BAA6B,EAAE,CAAC;QAC5E,OAAO,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC;IACnD,CAAC;IACD,OAAO,UAAU,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,kBAAkB,CAAC,KAAsB;IACtD,uEAAuE;IACvE,uEAAuE;IACvE,uCAAuC;IACvC,IAAI,KAAK,CAAC,YAAY,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAE9C,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,KAAK,CAAC,eAAe,CAAC;QACvC,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE,CAAC;YACnC,IAAI,MAAM,QAAQ,EAAE;gBAAE,OAAO,IAAI,CAAC;QACpC,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;YACpD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;YAChD,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,CAAC;gBACH,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC;gBAC1B,OAAO,IAAI,CAAC;YACd,CAAC;YAAC,MAAM,CAAC;gBACP,+BAA+B;YACjC,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,+BAA+B;IACjC,CAAC;IAED,IAAI,CAAC;QACH,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/C,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAC9C,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;QAC/D,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;QACrC,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,GAAG,IAAI,UAAU,EAAE,CAAC;YAC1D,IAAI,UAAU,CAAC,SAAS,CAAC;gBAAE,OAAO,IAAI,CAAC;QACzC,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,sCAAsC;IACxC,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACtC,MAAM,UAAU,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QAC9C,IAAI,CAAC,CAAC,WAAW,KAAK,WAAW;YAAE,OAAO,IAAI,CAAC;QAC/C,IAAI,CAAC,CAAC,WAAW,KAAK,YAAY;YAAE,OAAO,IAAI,CAAC;QAChD,kEAAkE;QAClE,sEAAsE;QACtE,OAAO,CAAC,CAAC,YAAY,KAAK,IAAI,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,UAAU,CAC5C,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAC7C,CAAC;IAEF,MAAM,SAAS,GAAqB,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;QAC5D,MAAM,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;QAC7B,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;QAC5D,MAAM,MAAM,GAAmB;YAC7B,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,QAAQ;YACR,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAc;YAChC,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,YAAY;YAC1C,iBAAiB,EAAE,wBAAwB,CAAC,CAAC,CAAC;YAC9C,gBAAgB,EAAE,CAAC,CAAC,cAAc;SACnC,CAAC;QACF,IAAI,CAAC,CAAC,oBAAoB;YAAE,MAAM,CAAC,oBAAoB,GAAG,CAAC,CAAC,oBAAoB,CAAC;QACjF,IAAI,CAAC,CAAC,OAAO;YAAE,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;QAC1C,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC5D,CAAC"}
|
|
@@ -17,6 +17,12 @@ export interface BuildGitHubInstallLockEntryArgs {
|
|
|
17
17
|
* (likely-wrong) GitHub blob URL.
|
|
18
18
|
*/
|
|
19
19
|
sourceSkillPath: string | null;
|
|
20
|
+
/** Branch/ref used when installing from GitHub. */
|
|
21
|
+
branch?: string | null;
|
|
22
|
+
/** Commit SHA at install time. */
|
|
23
|
+
commitSha?: string | null;
|
|
24
|
+
/** Plugin namespace that owns this skill, if discovered from plugins/<name>/skills/. */
|
|
25
|
+
pluginName?: string | null;
|
|
20
26
|
/** Whether this is a user-global install (`--global`) vs project-local. */
|
|
21
27
|
global: boolean;
|
|
22
28
|
/** ISO timestamp; injected for deterministic tests, defaults to `now`. */
|
|
@@ -7,11 +7,21 @@ export function buildGitHubInstallLockEntry(args) {
|
|
|
7
7
|
source: `github:${args.owner}/${args.repo}`,
|
|
8
8
|
scope: args.global ? "user" : "project",
|
|
9
9
|
files: ["SKILL.md"],
|
|
10
|
+
sourceType: "github",
|
|
10
11
|
sourceRepoUrl: `https://github.com/${args.owner}/${args.repo}`,
|
|
11
12
|
};
|
|
12
13
|
if (args.sourceSkillPath) {
|
|
13
14
|
entry.sourceSkillPath = args.sourceSkillPath;
|
|
14
15
|
}
|
|
16
|
+
if (args.branch) {
|
|
17
|
+
entry.sourceBranch = args.branch;
|
|
18
|
+
}
|
|
19
|
+
if (args.commitSha) {
|
|
20
|
+
entry.sourceCommitSha = args.commitSha;
|
|
21
|
+
}
|
|
22
|
+
if (args.pluginName) {
|
|
23
|
+
entry.sourcePluginName = args.pluginName;
|
|
24
|
+
}
|
|
15
25
|
return entry;
|
|
16
26
|
}
|
|
17
27
|
//# sourceMappingURL=add-lockfile.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add-lockfile.js","sourceRoot":"","sources":["../../src/commands/add-lockfile.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"add-lockfile.js","sourceRoot":"","sources":["../../src/commands/add-lockfile.ts"],"names":[],"mappings":"AAyCA,MAAM,UAAU,2BAA2B,CACzC,IAAqC;IAErC,MAAM,KAAK,GAAmB;QAC5B,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACzD,MAAM,EAAE,UAAU,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,EAAE;QAC3C,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;QACvC,KAAK,EAAE,CAAC,UAAU,CAAC;QACnB,UAAU,EAAE,QAAQ;QACpB,aAAa,EAAE,sBAAsB,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,EAAE;KAC/D,CAAC;IACF,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;QACzB,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;IAC/C,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC;IACnC,CAAC;IACD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC;IACzC,CAAC;IACD,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC,UAAU,CAAC;IAC3C,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
|
package/dist/commands/add.js
CHANGED
|
@@ -16,13 +16,13 @@ import { getAvailablePlugins, getPluginSource, getPluginVersion, hasPlugin, disc
|
|
|
16
16
|
import { checkInstallSafety } from "../blocklist/blocklist.js";
|
|
17
17
|
import { getSkill, searchSkills } from "../api/client.js";
|
|
18
18
|
import { checkPlatformSecurity } from "../security/index.js";
|
|
19
|
-
import { discoverSkills, getDefaultBranch, checkRepoExists, warnRateLimitOnce } from "../discovery/github-tree.js";
|
|
19
|
+
import { discoverSkills, getDefaultBranch, getBranchHeadSha, checkRepoExists, warnRateLimitOnce } from "../discovery/github-tree.js";
|
|
20
20
|
import { githubFetch } from "../lib/github-fetch.js";
|
|
21
21
|
import { parseGitHubSource } from "../utils/validation.js";
|
|
22
22
|
import { parseSkillsShUrl, isCompleteParsed, isIncompleteParsed, } from "../resolvers/url-resolver.js";
|
|
23
23
|
import { bold, green, red, yellow, dim, cyan, spinner, link, formatInstalls, } from "../utils/output.js";
|
|
24
24
|
import { isTTY, createPrompter } from "../utils/prompts.js";
|
|
25
|
-
import {
|
|
25
|
+
import { installSkillToAgents } from "../installer/multi-install.js";
|
|
26
26
|
import { ensureFrontmatter } from "../installer/frontmatter.js";
|
|
27
27
|
import { ensureSkillMdNaming, cleanStaleNesting } from "../installer/migrate.js";
|
|
28
28
|
import { getMarketplaceName } from "../marketplace/index.js";
|
|
@@ -46,6 +46,12 @@ function isGitHubDownloadUrl(url) {
|
|
|
46
46
|
return false;
|
|
47
47
|
}
|
|
48
48
|
}
|
|
49
|
+
function pluginNameFromSkillPath(path) {
|
|
50
|
+
if (!path)
|
|
51
|
+
return null;
|
|
52
|
+
const match = path.match(/^plugins\/([^/]+)\/skills\/[^/]+\/SKILL\.md$/);
|
|
53
|
+
return match?.[1] ?? null;
|
|
54
|
+
}
|
|
49
55
|
async function parseManifestFromContentsApi(data) {
|
|
50
56
|
// Prefer download_url for raw content — validate URL before fetching (SSRF prevention)
|
|
51
57
|
if (data.download_url && isGitHubDownloadUrl(data.download_url)) {
|
|
@@ -1017,6 +1023,33 @@ function resolvePluginDir(basePath, pluginName) {
|
|
|
1017
1023
|
}
|
|
1018
1024
|
return null;
|
|
1019
1025
|
}
|
|
1026
|
+
/**
|
|
1027
|
+
* List plugin names available under a --plugin-dir root: marketplace.json
|
|
1028
|
+
* entries first, then plugins/ subdirectories (mirrors resolvePluginDir).
|
|
1029
|
+
*/
|
|
1030
|
+
function listPluginDirPlugins(basePath) {
|
|
1031
|
+
const names = new Set();
|
|
1032
|
+
const mktPath = join(basePath, ".claude-plugin", "marketplace.json");
|
|
1033
|
+
if (existsSync(mktPath)) {
|
|
1034
|
+
try {
|
|
1035
|
+
for (const p of getAvailablePlugins(readFileSync(mktPath, "utf-8"))) {
|
|
1036
|
+
names.add(p.name);
|
|
1037
|
+
}
|
|
1038
|
+
}
|
|
1039
|
+
catch { /* unreadable manifest — fall through to plugins/ listing */ }
|
|
1040
|
+
}
|
|
1041
|
+
const pluginsRoot = join(basePath, "plugins");
|
|
1042
|
+
if (existsSync(pluginsRoot)) {
|
|
1043
|
+
try {
|
|
1044
|
+
for (const d of readdirSync(pluginsRoot, { withFileTypes: true })) {
|
|
1045
|
+
if (d.isDirectory())
|
|
1046
|
+
names.add(d.name);
|
|
1047
|
+
}
|
|
1048
|
+
}
|
|
1049
|
+
catch { /* best-effort */ }
|
|
1050
|
+
}
|
|
1051
|
+
return [...names];
|
|
1052
|
+
}
|
|
1020
1053
|
/**
|
|
1021
1054
|
* Collect all file contents from a plugin directory for security scanning.
|
|
1022
1055
|
* Concatenates content from all readable files.
|
|
@@ -1142,10 +1175,12 @@ async function installPluginDir(basePath, pluginName, opts, repoUrl) {
|
|
|
1142
1175
|
const selectedAgents = selections.agents;
|
|
1143
1176
|
if (selections.global)
|
|
1144
1177
|
opts.global = true;
|
|
1145
|
-
// Read version from marketplace.json
|
|
1178
|
+
// Read version from marketplace.json — absent when the plugin resolved via
|
|
1179
|
+
// the plugins/<name>/ fallback, so default instead of crashing with ENOENT
|
|
1146
1180
|
const mktPath = join(basePath, ".claude-plugin", "marketplace.json");
|
|
1147
|
-
const
|
|
1148
|
-
|
|
1181
|
+
const version = existsSync(mktPath)
|
|
1182
|
+
? getPluginVersion(pluginName, readFileSync(mktPath, "utf-8")) || "0.0.0"
|
|
1183
|
+
: "0.0.0";
|
|
1149
1184
|
// Extract git remote URL for install tracking
|
|
1150
1185
|
let gitUrl;
|
|
1151
1186
|
try {
|
|
@@ -1295,16 +1330,21 @@ sourceSkillPath) {
|
|
|
1295
1330
|
if (Object.keys(agentFiles).length === 0)
|
|
1296
1331
|
agentFiles = undefined;
|
|
1297
1332
|
}
|
|
1298
|
-
// Install to each agent
|
|
1333
|
+
// Install to each agent. F9: route through the SAME per-agent dispatch as
|
|
1334
|
+
// Studio so Tier-2 agents (cursor/windsurf/aider/copilot) get their real
|
|
1335
|
+
// artifact instead of a dead-letter <agent>/skills/<name>/SKILL.md. Tier-1
|
|
1336
|
+
// agents keep the canonical symlink/copy batch behaviour.
|
|
1299
1337
|
const sha = computeSha(content);
|
|
1300
|
-
const installOpts = { global: !!opts.global, projectRoot };
|
|
1301
1338
|
try {
|
|
1302
|
-
|
|
1303
|
-
|
|
1304
|
-
|
|
1305
|
-
|
|
1306
|
-
|
|
1307
|
-
|
|
1339
|
+
installSkillToAgents({
|
|
1340
|
+
skillName,
|
|
1341
|
+
rawContent: content,
|
|
1342
|
+
agents: agents,
|
|
1343
|
+
scope: opts.global ? "user" : "project",
|
|
1344
|
+
projectRoot,
|
|
1345
|
+
copy: !!opts.copy,
|
|
1346
|
+
bundleFiles: agentFiles,
|
|
1347
|
+
});
|
|
1308
1348
|
}
|
|
1309
1349
|
catch (err) {
|
|
1310
1350
|
console.error(red(` Failed to install skill "${skillName}": ${err.message}`));
|
|
@@ -1384,31 +1424,31 @@ async function installRepoPlugin(ownerRepo, pluginName, opts, overrideSource) {
|
|
|
1384
1424
|
if (!owner || !repo) {
|
|
1385
1425
|
throw new Error("--repo must be in owner/repo format (e.g. anton-abyzov/vskill)");
|
|
1386
1426
|
}
|
|
1387
|
-
// Fetch marketplace.json from GitHub
|
|
1427
|
+
// Fetch marketplace.json from GitHub. A missing manifest is NOT fatal:
|
|
1428
|
+
// the --plugin help text promises "checks marketplace.json, then plugins/
|
|
1429
|
+
// folder", so we fall through to the plugins/<name>/ probe below (F3).
|
|
1388
1430
|
const branch = await getDefaultBranch(owner, repo);
|
|
1389
1431
|
const manifestUrl = `https://raw.githubusercontent.com/${owner}/${repo}/${branch}/.claude-plugin/marketplace.json`;
|
|
1390
1432
|
const manifestSpin = spinner("Fetching marketplace.json");
|
|
1391
|
-
let manifestContent;
|
|
1433
|
+
let manifestContent = null;
|
|
1392
1434
|
try {
|
|
1393
1435
|
const res = await githubFetch(manifestUrl);
|
|
1394
|
-
if (
|
|
1395
|
-
|
|
1396
|
-
|
|
1397
|
-
|
|
1436
|
+
if (res.ok) {
|
|
1437
|
+
manifestContent = await res.text();
|
|
1438
|
+
manifestSpin.stop(green("Found marketplace.json"));
|
|
1439
|
+
}
|
|
1440
|
+
else {
|
|
1441
|
+
manifestSpin.stop(yellow(`No marketplace.json at ${owner}/${repo} — checking plugins/ folder`));
|
|
1398
1442
|
}
|
|
1399
|
-
manifestContent = await res.text();
|
|
1400
|
-
manifestSpin.stop(green("Found marketplace.json"));
|
|
1401
1443
|
}
|
|
1402
1444
|
catch (err) {
|
|
1403
1445
|
manifestSpin.stop();
|
|
1404
|
-
if (err instanceof Error && err.message.startsWith("marketplace.json not found"))
|
|
1405
|
-
throw err;
|
|
1406
1446
|
throw new Error(`Network error: ${err.message}`);
|
|
1407
1447
|
}
|
|
1408
1448
|
// Find the plugin in the marketplace (or use override for unregistered plugins)
|
|
1409
|
-
let pluginSource = overrideSource || getPluginSource(pluginName, manifestContent);
|
|
1449
|
+
let pluginSource = overrideSource || (manifestContent ? getPluginSource(pluginName, manifestContent) : null);
|
|
1410
1450
|
if (!pluginSource) {
|
|
1411
|
-
// Not in marketplace.json — probe plugins/<name>/
|
|
1451
|
+
// Not in marketplace.json (or no manifest at all) — probe plugins/<name>/
|
|
1412
1452
|
const probeSpin = spinner(`Looking for "${pluginName}" folder in repo`);
|
|
1413
1453
|
try {
|
|
1414
1454
|
const probeRes = await githubFetch(`https://api.github.com/repos/${owner}/${repo}/contents/plugins/${pluginName}`, { headers: { "User-Agent": "vskill-cli" } });
|
|
@@ -1423,12 +1463,18 @@ async function installRepoPlugin(ownerRepo, pluginName, opts, overrideSource) {
|
|
|
1423
1463
|
catch { /* network error — fall through */ }
|
|
1424
1464
|
if (!pluginSource) {
|
|
1425
1465
|
probeSpin.stop();
|
|
1466
|
+
if (!manifestContent) {
|
|
1467
|
+
throw new Error(`"${pluginName}" not found at ${owner}/${repo}: the repo has no ` +
|
|
1468
|
+
`.claude-plugin/marketplace.json and no plugins/${pluginName}/ folder.`);
|
|
1469
|
+
}
|
|
1426
1470
|
const available = getAvailablePlugins(manifestContent).map((p) => p.name);
|
|
1427
1471
|
throw new Error(`"${pluginName}" not found in marketplace.json or as a folder in the repo.\n` +
|
|
1428
1472
|
`Available plugins: ${available.join(", ")}`);
|
|
1429
1473
|
}
|
|
1430
1474
|
}
|
|
1431
|
-
const pluginVersion = overrideSource
|
|
1475
|
+
const pluginVersion = overrideSource || !manifestContent
|
|
1476
|
+
? "0.0.0"
|
|
1477
|
+
: getPluginVersion(pluginName, manifestContent) || "0.0.0";
|
|
1432
1478
|
const pluginPath = pluginSource.replace(/^\.\//, "");
|
|
1433
1479
|
// Blocklist + rejection check BEFORE fetching content
|
|
1434
1480
|
const repoUrl = `https://github.com/${ownerRepo}`;
|
|
@@ -1600,6 +1646,30 @@ async function installRepoPlugin(ownerRepo, pluginName, opts, overrideSource) {
|
|
|
1600
1646
|
};
|
|
1601
1647
|
lock.agents = [...new Set([...(lock.agents || []), ...selectedAgents.map((a) => a.id)])];
|
|
1602
1648
|
writeLockfile(lock, lockDir);
|
|
1649
|
+
// 0724 T-006 / 0826 parity: the claude-plugin enable gate previously lived
|
|
1650
|
+
// only in installMarketplaceRepo, so --scope/--global/--dry-run/--no-enable
|
|
1651
|
+
// were silently ignored on the --repo --plugin path. Repo-plugin installs
|
|
1652
|
+
// write SKILL.md straight into each agent's skills dir and the lockfile
|
|
1653
|
+
// entry carries no `marketplace`, so resolvePluginId() is null and
|
|
1654
|
+
// enableAfterInstall never shells out to the claude CLI (it cannot throw,
|
|
1655
|
+
// hence no rollback wiring here) — the gate only surfaces the same
|
|
1656
|
+
// acknowledgement + per-agent report as the marketplace path. The identical
|
|
1657
|
+
// opt-in condition keeps the default flow unchanged (NFR-005).
|
|
1658
|
+
const userOptedIn = opts.scope !== undefined ||
|
|
1659
|
+
opts.global === true ||
|
|
1660
|
+
opts.dryRun === true ||
|
|
1661
|
+
opts.enable === false;
|
|
1662
|
+
if (userOptedIn) {
|
|
1663
|
+
const enableResult = enableAfterInstall(pluginName, lock.skills[pluginName], opts);
|
|
1664
|
+
const report = buildPerAgentReport({
|
|
1665
|
+
skill: pluginName,
|
|
1666
|
+
scope: enableResult.scope,
|
|
1667
|
+
action: enableResult.invoked ? "enabled" : "not-applicable",
|
|
1668
|
+
agents: selectedAgents,
|
|
1669
|
+
});
|
|
1670
|
+
for (const line of report)
|
|
1671
|
+
console.log(` ${dim(">")} ${line.line}`);
|
|
1672
|
+
}
|
|
1603
1673
|
// Summary
|
|
1604
1674
|
console.log(green(`\nInstalled ${bold(pluginName)} (${skills.length} skills, ${commands.length} commands) ` +
|
|
1605
1675
|
`to ${locations.length} agent${locations.length === 1 ? "" : "s"}:\n`));
|
|
@@ -1696,6 +1766,17 @@ async function addCommandInner(source, opts) {
|
|
|
1696
1766
|
if (opts.pluginDir && opts.plugin) {
|
|
1697
1767
|
return installPluginDir(opts.pluginDir, opts.plugin, opts);
|
|
1698
1768
|
}
|
|
1769
|
+
// --plugin-dir without --plugin: explain what's needed and list what the
|
|
1770
|
+
// directory offers, instead of the misleading "provide a source" error.
|
|
1771
|
+
if (opts.pluginDir) {
|
|
1772
|
+
const names = listPluginDirPlugins(opts.pluginDir);
|
|
1773
|
+
console.error(red("--plugin-dir requires --plugin <name> to select which plugin to install.") +
|
|
1774
|
+
(names.length > 0
|
|
1775
|
+
? `\nAvailable plugins in ${opts.pluginDir}: ${names.map((n) => bold(n)).join(", ")}`
|
|
1776
|
+
: dim(`\nNo plugins found in ${opts.pluginDir} (checked .claude-plugin/marketplace.json and plugins/).`)));
|
|
1777
|
+
process.exit(1);
|
|
1778
|
+
return;
|
|
1779
|
+
}
|
|
1699
1780
|
// All other modes require source
|
|
1700
1781
|
if (!source) {
|
|
1701
1782
|
console.error(red("Please provide a source (owner/repo, URL, or local path)"));
|
|
@@ -1733,6 +1814,17 @@ async function addCommandInner(source, opts) {
|
|
|
1733
1814
|
// Normalize full GitHub URLs to owner/repo shorthand
|
|
1734
1815
|
const parsed = parseGitHubSource(source);
|
|
1735
1816
|
if (parsed) {
|
|
1817
|
+
// F1: a deep link (/tree/<ref>/<dir> or /blob/<ref>/.../SKILL.md) pins a
|
|
1818
|
+
// single skill — install ONLY that one instead of discovering the repo.
|
|
1819
|
+
if (parsed.skillPath !== undefined) {
|
|
1820
|
+
const skillName = parsed.skillPath
|
|
1821
|
+
? parsed.skillPath.split("/").pop()
|
|
1822
|
+
: undefined;
|
|
1823
|
+
const subpath = parsed.skillPath
|
|
1824
|
+
? `${parsed.skillPath}/SKILL.md`
|
|
1825
|
+
: "SKILL.md";
|
|
1826
|
+
return installSingleSkillLegacy(parsed.owner, parsed.repo, skillName, opts, subpath, undefined, parsed.ref);
|
|
1827
|
+
}
|
|
1736
1828
|
source = `${parsed.owner}/${parsed.repo}`;
|
|
1737
1829
|
}
|
|
1738
1830
|
// GitHub mode: owner/repo or owner/repo/skill
|
|
@@ -1865,6 +1957,8 @@ async function addCommandInner(source, opts) {
|
|
|
1865
1957
|
// `sourceSkillPath` are persisted alongside the legacy `source` string.
|
|
1866
1958
|
const lockDir = lockfileRoot(opts);
|
|
1867
1959
|
const lock = ensureLockfile(lockDir);
|
|
1960
|
+
const sourceBranch = await getDefaultBranch(owner, repo);
|
|
1961
|
+
const sourceCommitSha = await getBranchHeadSha(owner, repo, sourceBranch);
|
|
1868
1962
|
for (const r of results) {
|
|
1869
1963
|
if (r.installed && r.sha) {
|
|
1870
1964
|
lock.skills[r.skillName] = buildGitHubInstallLockEntry({
|
|
@@ -1873,6 +1967,9 @@ async function addCommandInner(source, opts) {
|
|
|
1873
1967
|
owner,
|
|
1874
1968
|
repo,
|
|
1875
1969
|
sourceSkillPath: r.sourceSkillPath ?? null,
|
|
1970
|
+
branch: sourceBranch,
|
|
1971
|
+
commitSha: sourceCommitSha,
|
|
1972
|
+
pluginName: pluginNameFromSkillPath(r.sourceSkillPath),
|
|
1876
1973
|
global: !!opts.global,
|
|
1877
1974
|
});
|
|
1878
1975
|
}
|
|
@@ -2276,7 +2373,7 @@ async function installFromRegistry(skillName, opts) {
|
|
|
2276
2373
|
// ---------------------------------------------------------------------------
|
|
2277
2374
|
// Legacy single-skill install (preserves original behavior exactly)
|
|
2278
2375
|
// ---------------------------------------------------------------------------
|
|
2279
|
-
async function installSingleSkillLegacy(owner, repo, skill, opts, skillSubpathOverride, pluginNamespace) {
|
|
2376
|
+
async function installSingleSkillLegacy(owner, repo, skill, opts, skillSubpathOverride, pluginNamespace, refOverride) {
|
|
2280
2377
|
// Blocklist + rejection check BEFORE fetching (prevents misleading 404)
|
|
2281
2378
|
const skillName = skill || repo;
|
|
2282
2379
|
const repoUrl = `https://github.com/${owner}/${repo}`;
|
|
@@ -2301,7 +2398,8 @@ async function installSingleSkillLegacy(owner, repo, skill, opts, skillSubpathOv
|
|
|
2301
2398
|
dim(`Hint: To search by name, use: vskill install ${skill || repo}`));
|
|
2302
2399
|
return process.exit(1);
|
|
2303
2400
|
}
|
|
2304
|
-
const branch = await getDefaultBranch(owner, repo);
|
|
2401
|
+
const branch = refOverride || (await getDefaultBranch(owner, repo));
|
|
2402
|
+
const sourceCommitSha = await getBranchHeadSha(owner, repo, branch);
|
|
2305
2403
|
const skillSubpath = skillSubpathOverride || (skill ? `skills/${skill}/SKILL.md` : "SKILL.md");
|
|
2306
2404
|
const url = `https://raw.githubusercontent.com/${owner}/${repo}/${branch}/${skillSubpath}`;
|
|
2307
2405
|
// Fetch SKILL.md
|
|
@@ -2313,7 +2411,9 @@ async function installSingleSkillLegacy(owner, repo, skill, opts, skillSubpathOv
|
|
|
2313
2411
|
const agentsBasePath = skillSubpathOverride
|
|
2314
2412
|
? skillSubpathOverride.replace(/\/SKILL\.md$/, "/agents")
|
|
2315
2413
|
: `skills/${skill}/agents`;
|
|
2316
|
-
|
|
2414
|
+
// ?ref= keeps the agents/ listing on the same branch as SKILL.md
|
|
2415
|
+
// (deep links may pin a non-default branch).
|
|
2416
|
+
const agentsDirUrl = `https://api.github.com/repos/${owner}/${repo}/contents/${agentsBasePath}?ref=${encodeURIComponent(branch)}`;
|
|
2317
2417
|
const dirRes = await githubFetch(agentsDirUrl, { headers: { Accept: "application/vnd.github.v3+json" } });
|
|
2318
2418
|
if (dirRes.ok) {
|
|
2319
2419
|
const entries = (await dirRes.json());
|
|
@@ -2426,10 +2526,20 @@ async function installSingleSkillLegacy(owner, repo, skill, opts, skillSubpathOv
|
|
|
2426
2526
|
: content;
|
|
2427
2527
|
const sha = computeSha(content);
|
|
2428
2528
|
const projectRoot = safeProjectRoot();
|
|
2429
|
-
|
|
2430
|
-
|
|
2431
|
-
|
|
2432
|
-
|
|
2529
|
+
// F9: dispatch through the shared per-agent mechanism so Tier-2 agents get
|
|
2530
|
+
// their real format-transformed artifact (cursor → .cursor/rules/<name>.mdc,
|
|
2531
|
+
// windsurf → rules/<name>.md, copilot → instructions, aider → conventions +
|
|
2532
|
+
// conf.yml) instead of a dead-letter skills/<name>/SKILL.md. Tier-1 agents
|
|
2533
|
+
// keep the canonical symlink/copy store + claude-code COPY_FALLBACK.
|
|
2534
|
+
const locations = installSkillToAgents({
|
|
2535
|
+
skillName,
|
|
2536
|
+
rawContent: namespacedContent,
|
|
2537
|
+
agents: selectedAgents,
|
|
2538
|
+
scope: opts.global ? "user" : "project",
|
|
2539
|
+
projectRoot,
|
|
2540
|
+
copy: !!opts.copy,
|
|
2541
|
+
bundleFiles: legacyAgentFiles,
|
|
2542
|
+
});
|
|
2433
2543
|
// Update lockfile (global → ~/.agents/, project → project root).
|
|
2434
2544
|
// 0743: persist `sourceSkillPath` from the locally-derived `skillSubpath`
|
|
2435
2545
|
// so the studio detail-header anchor opens the correct file on GitHub
|
|
@@ -2443,6 +2553,9 @@ async function installSingleSkillLegacy(owner, repo, skill, opts, skillSubpathOv
|
|
|
2443
2553
|
owner,
|
|
2444
2554
|
repo,
|
|
2445
2555
|
sourceSkillPath: skillSubpath,
|
|
2556
|
+
branch,
|
|
2557
|
+
commitSha: sourceCommitSha,
|
|
2558
|
+
pluginName: pluginNamespace ?? pluginNameFromSkillPath(skillSubpath),
|
|
2446
2559
|
global: !!opts.global,
|
|
2447
2560
|
});
|
|
2448
2561
|
lock.agents = [...new Set([...(lock.agents || []), ...selectedAgents.map((a) => a.id)])];
|