opencode-swarm-plugin 0.12.20 → 0.12.23

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.
@@ -1,5 +1,6 @@
1
1
  {"id":"opencode-swarm-plugin-006","title":"Query test bead","description":"","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-07T19:34:52.500551-08:00","updated_at":"2025-12-07T19:34:54.606061-08:00","closed_at":"2025-12-07T19:34:54.606061-08:00"}
2
2
  {"id":"opencode-swarm-plugin-01ozp","title":"Test bead minimal","description":"","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-10T09:06:05.660762-08:00","updated_at":"2025-12-10T09:06:09.607108-08:00","closed_at":"2025-12-10T09:06:09.607108-08:00"}
3
+ {"id":"opencode-swarm-plugin-01yqg","title":"Skills security hardening from PR review","description":"Address remaining CodeRabbit suggestions from PR #5:\n- skills_execute: Add timeout to prevent scripts hanging indefinitely\n- skills_execute: Consolidate on spawn (remove ctx?.$ branch)\n- skills_read: Harden path traversal for Windows (backslash, absolute paths)\n- skills_init: Tighten script_name validation for Windows separators\n- skills_create: Quote YAML scalars in generateSkillContent (already addressed via gray-matter)\n- Test improvements: Use unique temp dir per test run, make import.meta.url assertion less brittle","status":"closed","priority":2,"issue_type":"chore","created_at":"2025-12-12T21:25:51.328858-08:00","updated_at":"2025-12-12T21:29:53.849155-08:00","closed_at":"2025-12-12T21:29:53.849155-08:00"}
3
4
  {"id":"opencode-swarm-plugin-02bv","title":"High priority ready bead","description":"","status":"closed","priority":0,"issue_type":"task","created_at":"2025-12-08T11:11:23.937484-08:00","updated_at":"2025-12-08T11:11:25.917071-08:00","closed_at":"2025-12-08T11:11:25.917071-08:00"}
4
5
  {"id":"opencode-swarm-plugin-039b","title":"Thread link test bead","description":"[thread:test-thread-123]","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-08T11:11:24.294904-08:00","updated_at":"2025-12-08T11:11:26.065157-08:00","closed_at":"2025-12-08T11:11:26.065157-08:00"}
5
6
  {"id":"opencode-swarm-plugin-044p","title":"Ordered subtasks epic","description":"","status":"closed","priority":1,"issue_type":"epic","created_at":"2025-12-08T11:10:54.454145-08:00","updated_at":"2025-12-08T11:10:56.288996-08:00","closed_at":"2025-12-08T11:10:56.288996-08:00"}
@@ -54,7 +55,6 @@
54
55
  {"id":"opencode-swarm-plugin-19eh","title":"Integration test epic","description":"Testing epic creation","status":"closed","priority":1,"issue_type":"epic","created_at":"2025-12-08T11:11:08.630873-08:00","updated_at":"2025-12-08T11:11:10.570732-08:00","closed_at":"2025-12-08T11:11:10.570732-08:00"}
55
56
  {"id":"opencode-swarm-plugin-19eh.1","title":"Subtask 1","description":"","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-08T11:11:08.667405-08:00","updated_at":"2025-12-08T11:11:10.596193-08:00","closed_at":"2025-12-08T11:11:10.596193-08:00","dependencies":[{"issue_id":"opencode-swarm-plugin-19eh.1","depends_on_id":"opencode-swarm-plugin-19eh","type":"parent-child","created_at":"2025-12-08T11:11:08.667711-08:00","created_by":"daemon"}]}
56
57
  {"id":"opencode-swarm-plugin-19eh.2","title":"Subtask 2","description":"","status":"closed","priority":3,"issue_type":"task","created_at":"2025-12-08T11:11:08.701884-08:00","updated_at":"2025-12-08T11:11:10.620275-08:00","closed_at":"2025-12-08T11:11:10.620275-08:00","dependencies":[{"issue_id":"opencode-swarm-plugin-19eh.2","depends_on_id":"opencode-swarm-plugin-19eh","type":"parent-child","created_at":"2025-12-08T11:11:08.702188-08:00","created_by":"daemon"}]}
57
- {"id":"opencode-swarm-plugin-19eh.3","title":"Subtask 3","description":"","status":"closed","priority":1,"issue_type":"task","created_at":"2025-12-08T11:11:08.739124-08:00","updated_at":"2025-12-08T11:11:10.645081-08:00","closed_at":"2025-12-08T11:11:10.645081-08:00","dependencies":[{"issue_id":"opencode-swarm-plugin-19eh.3","depends_on_id":"opencode-swarm-plugin-19eh","type":"parent-child","created_at":"2025-12-08T11:11:08.739487-08:00","created_by":"daemon"}]}
58
58
  {"id":"opencode-swarm-plugin-19wa","title":"Thread link test bead","description":"Important context here\n\n[thread:test-thread-789]","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-07T19:57:07.462796-08:00","updated_at":"2025-12-07T19:57:08.958826-08:00","closed_at":"2025-12-07T19:57:08.958826-08:00"}
59
59
  {"id":"opencode-swarm-plugin-1ai2","title":"Update test bead","description":"Original description","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-07T19:56:43.094034-08:00","updated_at":"2025-12-07T19:56:45.031937-08:00","closed_at":"2025-12-07T19:56:45.031937-08:00"}
60
60
  {"id":"opencode-swarm-plugin-1cgv","title":"Limit test bead 4","description":"","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-08T07:46:49.149467-08:00","updated_at":"2025-12-08T07:46:51.764291-08:00","closed_at":"2025-12-08T07:46:51.764291-08:00"}
@@ -749,6 +749,11 @@
749
749
  {"id":"opencode-swarm-plugin-enbl","title":"Update test bead","description":"Original description","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-08T08:21:27.783674-08:00","updated_at":"2025-12-08T08:21:30.206569-08:00","closed_at":"2025-12-08T08:21:30.206569-08:00"}
750
750
  {"id":"opencode-swarm-plugin-enxw","title":"Limit test bead 0","description":"","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-07T19:41:10.932192-08:00","updated_at":"2025-12-07T19:41:13.424375-08:00","closed_at":"2025-12-07T19:41:13.424375-08:00"}
751
751
  {"id":"opencode-swarm-plugin-esh5","title":"High priority ready bead","description":"","status":"closed","priority":0,"issue_type":"task","created_at":"2025-12-08T08:25:10.383101-08:00","updated_at":"2025-12-08T08:25:12.512699-08:00","closed_at":"2025-12-08T08:25:12.512699-08:00"}
752
+ {"id":"opencode-swarm-plugin-evr9p","title":"Fix skill-builder PR issues","description":"Fix critical bugs and improvements identified in skill-builder branch review: __dirname bug, path traversal validation, code duplication, global-skills quality","status":"closed","priority":1,"issue_type":"epic","created_at":"2025-12-12T21:14:01.993571-08:00","updated_at":"2025-12-12T21:25:08.600282-08:00","closed_at":"2025-12-12T21:25:08.600282-08:00"}
753
+ {"id":"opencode-swarm-plugin-evr9p.1","title":"Fix __dirname ES module bug in skills.ts","description":"","status":"closed","priority":0,"issue_type":"task","created_at":"2025-12-12T21:14:02.045699-08:00","updated_at":"2025-12-12T21:14:30.779437-08:00","closed_at":"2025-12-12T21:14:30.779437-08:00","dependencies":[{"issue_id":"opencode-swarm-plugin-evr9p.1","depends_on_id":"opencode-swarm-plugin-evr9p","type":"parent-child","created_at":"2025-12-12T21:14:02.046676-08:00","created_by":"daemon"}]}
754
+ {"id":"opencode-swarm-plugin-evr9p.2","title":"Add path traversal validation to skills_execute","description":"","status":"closed","priority":0,"issue_type":"task","created_at":"2025-12-12T21:14:02.094421-08:00","updated_at":"2025-12-12T21:17:27.357522-08:00","closed_at":"2025-12-12T21:17:27.357522-08:00","dependencies":[{"issue_id":"opencode-swarm-plugin-evr9p.2","depends_on_id":"opencode-swarm-plugin-evr9p","type":"parent-child","created_at":"2025-12-12T21:14:02.095826-08:00","created_by":"daemon"}]}
755
+ {"id":"opencode-swarm-plugin-evr9p.3","title":"Deduplicate YAML parser in scripts","description":"","status":"closed","priority":1,"issue_type":"task","created_at":"2025-12-12T21:14:02.144137-08:00","updated_at":"2025-12-12T21:19:54.453324-08:00","closed_at":"2025-12-12T21:19:54.453324-08:00","dependencies":[{"issue_id":"opencode-swarm-plugin-evr9p.3","depends_on_id":"opencode-swarm-plugin-evr9p","type":"parent-child","created_at":"2025-12-12T21:14:02.145641-08:00","created_by":"daemon"}]}
756
+ {"id":"opencode-swarm-plugin-evr9p.4","title":"Improve global-skills quality","description":"","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-12T21:14:02.192572-08:00","updated_at":"2025-12-12T21:22:50.299557-08:00","closed_at":"2025-12-12T21:22:50.299557-08:00","dependencies":[{"issue_id":"opencode-swarm-plugin-evr9p.4","depends_on_id":"opencode-swarm-plugin-evr9p","type":"parent-child","created_at":"2025-12-12T21:14:02.19349-08:00","created_by":"daemon"}]}
752
757
  {"id":"opencode-swarm-plugin-ewj","title":"Thread link test bead","description":"","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-07T19:36:07.981146-08:00","updated_at":"2025-12-07T19:36:09.265125-08:00","closed_at":"2025-12-07T19:36:09.265125-08:00"}
753
758
  {"id":"opencode-swarm-plugin-ewrdy","title":"Document bead ID regex pattern meaning","description":"src/schemas/bead.ts:45 - Regex pattern `/^[a-z0-9]+(-[a-z0-9]+)+(\\.\\d+)?$/` is not explained. Add inline comment explaining: \"project-slug-hash format (e.g., 'my-project-abc12') with optional subtask index (.1, .2)\"","status":"open","priority":3,"issue_type":"chore","created_at":"2025-12-10T09:06:06.693646-08:00","updated_at":"2025-12-10T09:06:06.693646-08:00"}
754
759
  {"id":"opencode-swarm-plugin-ezaw","title":"New feature request","description":"","status":"closed","priority":1,"issue_type":"feature","created_at":"2025-12-08T11:11:22.419192-08:00","updated_at":"2025-12-08T11:11:25.235336-08:00","closed_at":"2025-12-08T11:11:25.235336-08:00"}
@@ -1642,6 +1647,12 @@
1642
1647
  {"id":"opencode-swarm-plugin-zi7n","title":"Test bug with priority","description":"This is a critical bug","status":"closed","priority":0,"issue_type":"bug","created_at":"2025-12-08T08:36:16.30257-08:00","updated_at":"2025-12-08T08:36:19.014772-08:00","closed_at":"2025-12-08T08:36:19.014772-08:00"}
1643
1648
  {"id":"opencode-swarm-plugin-zj6j9","title":"Thread link test bead","description":"Important context here\n\n[thread:test-thread-789]","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-08T11:12:57.222284-08:00","updated_at":"2025-12-08T11:12:58.884345-08:00","closed_at":"2025-12-08T11:12:58.884345-08:00"}
1644
1649
  {"id":"opencode-swarm-plugin-zjku","title":"Update test bead","description":"Original description","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-08T08:14:29.199507-08:00","updated_at":"2025-12-08T08:14:31.307698-08:00","closed_at":"2025-12-08T08:14:31.307698-08:00"}
1650
+ {"id":"opencode-swarm-plugin-zn4of","title":"Review skill-builder PR branch","description":"Analyze skill-builder PR branch for errors, omissions, improvements, oversights, gaps, and ideas. READ-ONLY code review - no modifications.","status":"closed","priority":1,"issue_type":"epic","created_at":"2025-12-12T21:05:18.645731-08:00","updated_at":"2025-12-12T21:17:59.05899-08:00","closed_at":"2025-12-12T21:17:59.05899-08:00"}
1651
+ {"id":"opencode-swarm-plugin-zn4of.1","title":"Review src/skills.ts core module","description":"READ-ONLY review of src/skills.ts (1356 lines). Analyzing: security (path traversal, script execution), bugs (__dirname in ES modules, iteration errors), missing features, code quality. Found critical __dirname bug and TypeScript config issue.","status":"closed","priority":1,"issue_type":"task","created_at":"2025-12-12T21:05:18.691442-08:00","updated_at":"2025-12-12T21:08:55.61161-08:00","closed_at":"2025-12-12T21:08:55.61161-08:00","dependencies":[{"issue_id":"opencode-swarm-plugin-zn4of.1","depends_on_id":"opencode-swarm-plugin-zn4of","type":"parent-child","created_at":"2025-12-12T21:05:18.693109-08:00","created_by":"daemon"}]}
1652
+ {"id":"opencode-swarm-plugin-zn4of.2","title":"Review global-skills definitions","description":"","status":"closed","priority":1,"issue_type":"task","created_at":"2025-12-12T21:05:18.739019-08:00","updated_at":"2025-12-12T21:07:06.557236-08:00","closed_at":"2025-12-12T21:07:06.557236-08:00","dependencies":[{"issue_id":"opencode-swarm-plugin-zn4of.2","depends_on_id":"opencode-swarm-plugin-zn4of","type":"parent-child","created_at":"2025-12-12T21:05:18.740085-08:00","created_by":"daemon"}]}
1653
+ {"id":"opencode-swarm-plugin-zn4of.3","title":"Review TypeScript scripts","description":"Analyzing init-skill.ts and validate-skill.ts for type safety, error handling, and code quality issues","status":"closed","priority":1,"issue_type":"task","created_at":"2025-12-12T21:05:18.791905-08:00","updated_at":"2025-12-12T21:07:35.163562-08:00","closed_at":"2025-12-12T21:07:35.163562-08:00","dependencies":[{"issue_id":"opencode-swarm-plugin-zn4of.3","depends_on_id":"opencode-swarm-plugin-zn4of","type":"parent-child","created_at":"2025-12-12T21:05:18.793516-08:00","created_by":"daemon"}]}
1654
+ {"id":"opencode-swarm-plugin-zn4of.4","title":"Review swarm/beads integration","description":"READ-ONLY review of swarm/beads integration for skills support. Analyzing: custom ID support (beads.ts +24 lines), skills integration (swarm.ts +286 lines), exports (index.ts +38 lines), schema changes (bead.ts). Found well-structured integration with one potential circular dependency concern in swarm_learn.","status":"closed","priority":1,"issue_type":"task","created_at":"2025-12-12T21:05:18.841231-08:00","updated_at":"2025-12-12T21:17:57.068655-08:00","closed_at":"2025-12-12T21:17:57.068655-08:00","dependencies":[{"issue_id":"opencode-swarm-plugin-zn4of.4","depends_on_id":"opencode-swarm-plugin-zn4of","type":"parent-child","created_at":"2025-12-12T21:05:18.842555-08:00","created_by":"daemon"}]}
1655
+ {"id":"opencode-swarm-plugin-zn4of.5","title":"Synthesize findings and recommendations","description":"","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-12T21:05:18.898997-08:00","updated_at":"2025-12-12T21:17:58.04489-08:00","closed_at":"2025-12-12T21:17:58.04489-08:00","dependencies":[{"issue_id":"opencode-swarm-plugin-zn4of.5","depends_on_id":"opencode-swarm-plugin-zn4of","type":"parent-child","created_at":"2025-12-12T21:05:18.900293-08:00","created_by":"daemon"}]}
1645
1656
  {"id":"opencode-swarm-plugin-zn5x","title":"Thread link test bead","description":"[thread:test-thread-123]","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-08T07:49:10.896543-08:00","updated_at":"2025-12-08T07:49:12.722733-08:00","closed_at":"2025-12-08T07:49:12.722733-08:00"}
1646
1657
  {"id":"opencode-swarm-plugin-znu","title":"Query test bead","description":"","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-07T19:37:33.942962-08:00","updated_at":"2025-12-07T19:37:36.098353-08:00","closed_at":"2025-12-07T19:37:36.098353-08:00"}
1647
1658
  {"id":"opencode-swarm-plugin-zp1h","title":"High priority ready bead","description":"","status":"closed","priority":0,"issue_type":"task","created_at":"2025-12-08T11:10:25.748023-08:00","updated_at":"2025-12-08T11:10:27.732005-08:00","closed_at":"2025-12-08T11:10:27.732005-08:00"}
@@ -0,0 +1,26 @@
1
+ name: CI
2
+
3
+ on:
4
+ push:
5
+ branches: [main]
6
+ pull_request:
7
+ branches: [main]
8
+
9
+ jobs:
10
+ test:
11
+ runs-on: ubuntu-latest
12
+ steps:
13
+ - uses: actions/checkout@v4
14
+
15
+ - uses: oven-sh/setup-bun@v2
16
+ with:
17
+ bun-version: latest
18
+
19
+ - name: Install dependencies
20
+ run: bun install
21
+
22
+ - name: Type check
23
+ run: bun run typecheck
24
+
25
+ - name: Run tests
26
+ run: bun run test
package/bin/swarm.ts CHANGED
@@ -1106,6 +1106,7 @@ function config() {
1106
1106
  const commandPath = join(configDir, "command", "swarm.md");
1107
1107
  const plannerAgentPath = join(configDir, "agent", "swarm-planner.md");
1108
1108
  const workerAgentPath = join(configDir, "agent", "swarm-worker.md");
1109
+ const globalSkillsPath = join(configDir, "skills");
1109
1110
 
1110
1111
  console.log(yellow(BANNER));
1111
1112
  console.log(dim(" " + TAGLINE + " v" + VERSION));
@@ -1129,6 +1130,60 @@ function config() {
1129
1130
  console.log();
1130
1131
  }
1131
1132
 
1133
+ // Skills section
1134
+ console.log(cyan("Skills:"));
1135
+ console.log();
1136
+
1137
+ // Global skills directory
1138
+ const globalSkillsExists = existsSync(globalSkillsPath);
1139
+ const globalStatus = globalSkillsExists ? "✓" : "✗";
1140
+ const globalColor = globalSkillsExists ? "\x1b[32m" : "\x1b[31m";
1141
+ console.log(` 📚 Global skills directory`);
1142
+ console.log(
1143
+ ` ${globalColor}${globalStatus}\x1b[0m ${dim(globalSkillsPath)}`,
1144
+ );
1145
+
1146
+ // Count skills if directory exists
1147
+ if (globalSkillsExists) {
1148
+ try {
1149
+ const { readdirSync } = require("fs");
1150
+ const skills = readdirSync(globalSkillsPath, { withFileTypes: true })
1151
+ .filter((d: { isDirectory: () => boolean }) => d.isDirectory())
1152
+ .map((d: { name: string }) => d.name);
1153
+ if (skills.length > 0) {
1154
+ console.log(
1155
+ ` ${dim(`Found ${skills.length} skill(s): ${skills.join(", ")}`)}`,
1156
+ );
1157
+ }
1158
+ } catch {
1159
+ // Ignore errors
1160
+ }
1161
+ }
1162
+ console.log();
1163
+
1164
+ // Project skills locations
1165
+ console.log(` 📁 Project skills locations ${dim("(checked in order)")}`);
1166
+ console.log(` ${dim(".opencode/skills/")}`);
1167
+ console.log(` ${dim(".claude/skills/")}`);
1168
+ console.log(` ${dim("skills/")}`);
1169
+ console.log();
1170
+
1171
+ // Bundled skills info
1172
+ const bundledSkillsPath = join(__dirname, "..", "global-skills");
1173
+ if (existsSync(bundledSkillsPath)) {
1174
+ try {
1175
+ const { readdirSync } = require("fs");
1176
+ const bundled = readdirSync(bundledSkillsPath, { withFileTypes: true })
1177
+ .filter((d: { isDirectory: () => boolean }) => d.isDirectory())
1178
+ .map((d: { name: string }) => d.name);
1179
+ console.log(` 🎁 Bundled skills ${dim("(always available)")}`);
1180
+ console.log(` ${dim(bundled.join(", "))}`);
1181
+ console.log();
1182
+ } catch {
1183
+ // Ignore errors
1184
+ }
1185
+ }
1186
+
1132
1187
  console.log(dim("Edit these files to customize swarm behavior."));
1133
1188
  console.log(dim("Run 'swarm setup' to regenerate defaults."));
1134
1189
  console.log();
package/bun.lock CHANGED
@@ -7,6 +7,7 @@
7
7
  "dependencies": {
8
8
  "@clack/prompts": "^0.11.0",
9
9
  "@opencode-ai/plugin": "^1.0.134",
10
+ "gray-matter": "^4.0.3",
10
11
  "ioredis": "^5.4.1",
11
12
  "zod": "4.1.8",
12
13
  },
@@ -155,6 +156,8 @@
155
156
 
156
157
  "@vitest/utils": ["@vitest/utils@4.0.15", "", { "dependencies": { "@vitest/pretty-format": "4.0.15", "tinyrainbow": "^3.0.3" } }, "sha512-HXjPW2w5dxhTD0dLwtYHDnelK3j8sR8cWIaLxr22evTyY6q8pRCjZSmhRWVjBaOVXChQd6AwMzi9pucorXCPZA=="],
157
158
 
159
+ "argparse": ["argparse@1.0.10", "", { "dependencies": { "sprintf-js": "~1.0.2" } }, "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg=="],
160
+
158
161
  "assertion-error": ["assertion-error@2.0.1", "", {}, "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA=="],
159
162
 
160
163
  "bun-types": ["bun-types@1.3.4", "", { "dependencies": { "@types/node": "*" } }, "sha512-5ua817+BZPZOlNaRgGBpZJOSAQ9RQ17pkwPD0yR7CfJg+r8DgIILByFifDTa+IPDDxzf5VNhtNlcKqFzDgJvlQ=="],
@@ -171,16 +174,28 @@
171
174
 
172
175
  "esbuild": ["esbuild@0.25.12", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.25.12", "@esbuild/android-arm": "0.25.12", "@esbuild/android-arm64": "0.25.12", "@esbuild/android-x64": "0.25.12", "@esbuild/darwin-arm64": "0.25.12", "@esbuild/darwin-x64": "0.25.12", "@esbuild/freebsd-arm64": "0.25.12", "@esbuild/freebsd-x64": "0.25.12", "@esbuild/linux-arm": "0.25.12", "@esbuild/linux-arm64": "0.25.12", "@esbuild/linux-ia32": "0.25.12", "@esbuild/linux-loong64": "0.25.12", "@esbuild/linux-mips64el": "0.25.12", "@esbuild/linux-ppc64": "0.25.12", "@esbuild/linux-riscv64": "0.25.12", "@esbuild/linux-s390x": "0.25.12", "@esbuild/linux-x64": "0.25.12", "@esbuild/netbsd-arm64": "0.25.12", "@esbuild/netbsd-x64": "0.25.12", "@esbuild/openbsd-arm64": "0.25.12", "@esbuild/openbsd-x64": "0.25.12", "@esbuild/openharmony-arm64": "0.25.12", "@esbuild/sunos-x64": "0.25.12", "@esbuild/win32-arm64": "0.25.12", "@esbuild/win32-ia32": "0.25.12", "@esbuild/win32-x64": "0.25.12" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg=="],
173
176
 
177
+ "esprima": ["esprima@4.0.1", "", { "bin": { "esparse": "./bin/esparse.js", "esvalidate": "./bin/esvalidate.js" } }, "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A=="],
178
+
174
179
  "estree-walker": ["estree-walker@3.0.3", "", { "dependencies": { "@types/estree": "^1.0.0" } }, "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g=="],
175
180
 
176
181
  "expect-type": ["expect-type@1.2.2", "", {}, "sha512-JhFGDVJ7tmDJItKhYgJCGLOWjuK9vPxiXoUFLwLDc99NlmklilbiQJwoctZtt13+xMw91MCk/REan6MWHqDjyA=="],
177
182
 
183
+ "extend-shallow": ["extend-shallow@2.0.1", "", { "dependencies": { "is-extendable": "^0.1.0" } }, "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug=="],
184
+
178
185
  "fdir": ["fdir@6.5.0", "", { "peerDependencies": { "picomatch": "^3 || ^4" }, "optionalPeers": ["picomatch"] }, "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg=="],
179
186
 
180
187
  "fsevents": ["fsevents@2.3.3", "", { "os": "darwin" }, "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw=="],
181
188
 
189
+ "gray-matter": ["gray-matter@4.0.3", "", { "dependencies": { "js-yaml": "^3.13.1", "kind-of": "^6.0.2", "section-matter": "^1.0.0", "strip-bom-string": "^1.0.0" } }, "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q=="],
190
+
182
191
  "ioredis": ["ioredis@5.8.2", "", { "dependencies": { "@ioredis/commands": "1.4.0", "cluster-key-slot": "^1.1.0", "debug": "^4.3.4", "denque": "^2.1.0", "lodash.defaults": "^4.2.0", "lodash.isarguments": "^3.1.0", "redis-errors": "^1.2.0", "redis-parser": "^3.0.0", "standard-as-callback": "^2.1.0" } }, "sha512-C6uC+kleiIMmjViJINWk80sOQw5lEzse1ZmvD+S/s8p8CWapftSaC+kocGTx6xrbrJ4WmYQGC08ffHLr6ToR6Q=="],
183
192
 
193
+ "is-extendable": ["is-extendable@0.1.1", "", {}, "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw=="],
194
+
195
+ "js-yaml": ["js-yaml@3.14.2", "", { "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" }, "bin": { "js-yaml": "bin/js-yaml.js" } }, "sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg=="],
196
+
197
+ "kind-of": ["kind-of@6.0.3", "", {}, "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw=="],
198
+
184
199
  "lodash.defaults": ["lodash.defaults@4.2.0", "", {}, "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ=="],
185
200
 
186
201
  "lodash.isarguments": ["lodash.isarguments@3.1.0", "", {}, "sha512-chi4NHZlZqZD18a0imDHnZPrDeBbTtVN7GXMwuGdRH9qotxAjYs3aVLKc7zNOG9eddR5Ksd8rvFEBc9SsggPpg=="],
@@ -207,18 +222,24 @@
207
222
 
208
223
  "rollup": ["rollup@4.53.3", "", { "dependencies": { "@types/estree": "1.0.8" }, "optionalDependencies": { "@rollup/rollup-android-arm-eabi": "4.53.3", "@rollup/rollup-android-arm64": "4.53.3", "@rollup/rollup-darwin-arm64": "4.53.3", "@rollup/rollup-darwin-x64": "4.53.3", "@rollup/rollup-freebsd-arm64": "4.53.3", "@rollup/rollup-freebsd-x64": "4.53.3", "@rollup/rollup-linux-arm-gnueabihf": "4.53.3", "@rollup/rollup-linux-arm-musleabihf": "4.53.3", "@rollup/rollup-linux-arm64-gnu": "4.53.3", "@rollup/rollup-linux-arm64-musl": "4.53.3", "@rollup/rollup-linux-loong64-gnu": "4.53.3", "@rollup/rollup-linux-ppc64-gnu": "4.53.3", "@rollup/rollup-linux-riscv64-gnu": "4.53.3", "@rollup/rollup-linux-riscv64-musl": "4.53.3", "@rollup/rollup-linux-s390x-gnu": "4.53.3", "@rollup/rollup-linux-x64-gnu": "4.53.3", "@rollup/rollup-linux-x64-musl": "4.53.3", "@rollup/rollup-openharmony-arm64": "4.53.3", "@rollup/rollup-win32-arm64-msvc": "4.53.3", "@rollup/rollup-win32-ia32-msvc": "4.53.3", "@rollup/rollup-win32-x64-gnu": "4.53.3", "@rollup/rollup-win32-x64-msvc": "4.53.3", "fsevents": "~2.3.2" }, "bin": { "rollup": "dist/bin/rollup" } }, "sha512-w8GmOxZfBmKknvdXU1sdM9NHcoQejwF/4mNgj2JuEEdRaHwwF12K7e9eXn1nLZ07ad+du76mkVsyeb2rKGllsA=="],
209
224
 
225
+ "section-matter": ["section-matter@1.0.0", "", { "dependencies": { "extend-shallow": "^2.0.1", "kind-of": "^6.0.0" } }, "sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA=="],
226
+
210
227
  "siginfo": ["siginfo@2.0.0", "", {}, "sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g=="],
211
228
 
212
229
  "sisteransi": ["sisteransi@1.0.5", "", {}, "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg=="],
213
230
 
214
231
  "source-map-js": ["source-map-js@1.2.1", "", {}, "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA=="],
215
232
 
233
+ "sprintf-js": ["sprintf-js@1.0.3", "", {}, "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g=="],
234
+
216
235
  "stackback": ["stackback@0.0.2", "", {}, "sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw=="],
217
236
 
218
237
  "standard-as-callback": ["standard-as-callback@2.1.0", "", {}, "sha512-qoRRSyROncaz1z0mvYqIE4lCd9p2R90i6GxW3uZv5ucSu8tU7B5HXUP1gG8pVZsYNVaXjk8ClXHPttLyxAL48A=="],
219
238
 
220
239
  "std-env": ["std-env@3.10.0", "", {}, "sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg=="],
221
240
 
241
+ "strip-bom-string": ["strip-bom-string@1.0.0", "", {}, "sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g=="],
242
+
222
243
  "tinybench": ["tinybench@2.9.0", "", {}, "sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg=="],
223
244
 
224
245
  "tinyexec": ["tinyexec@1.0.2", "", {}, "sha512-W/KYk+NFhkmsYpuHq5JykngiOCnxeVL8v8dFnqxSD8qEEdRfXk1SDM6JzNqcERbcGYj9tMrDQBYV9cjgnunFIg=="],