mewkit 1.7.0 → 1.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +76 -0
- package/dist/commands/memory.js +3 -3
- package/dist/commands/memory.js.map +1 -1
- package/dist/commands/orchviz.d.ts +12 -0
- package/dist/commands/orchviz.d.ts.map +1 -0
- package/dist/commands/orchviz.js +160 -0
- package/dist/commands/orchviz.js.map +1 -0
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +7 -5
- package/dist/commands/setup.js.map +1 -1
- package/dist/core/skills-dependencies.js +2 -2
- package/dist/core/skills-dependencies.js.map +1 -1
- package/dist/index.js +50 -1
- package/dist/index.js.map +1 -1
- package/dist/migrate/__tests__/skill-id-utils.test.d.ts +2 -0
- package/dist/migrate/__tests__/skill-id-utils.test.d.ts.map +1 -0
- package/dist/migrate/__tests__/skill-id-utils.test.js +78 -0
- package/dist/migrate/__tests__/skill-id-utils.test.js.map +1 -0
- package/dist/migrate/discovery/skill-id-utils.d.ts +18 -0
- package/dist/migrate/discovery/skill-id-utils.d.ts.map +1 -0
- package/dist/migrate/discovery/skill-id-utils.js +45 -0
- package/dist/migrate/discovery/skill-id-utils.js.map +1 -0
- package/dist/migrate/discovery/skills-discovery.d.ts.map +1 -1
- package/dist/migrate/discovery/skills-discovery.js +5 -1
- package/dist/migrate/discovery/skills-discovery.js.map +1 -1
- package/dist/migrate/reconcile/portable-registry.d.ts +12 -12
- package/dist/migrate/types.d.ts +8 -6
- package/dist/migrate/types.d.ts.map +1 -1
- package/dist/migrate/types.js.map +1 -1
- package/dist/orchviz/constants.d.ts +53 -0
- package/dist/orchviz/constants.d.ts.map +1 -0
- package/dist/orchviz/constants.js +68 -0
- package/dist/orchviz/constants.js.map +1 -0
- package/dist/orchviz/fs-utils.d.ts +24 -0
- package/dist/orchviz/fs-utils.d.ts.map +1 -0
- package/dist/orchviz/fs-utils.js +49 -0
- package/dist/orchviz/fs-utils.js.map +1 -0
- package/dist/orchviz/index.d.ts +29 -0
- package/dist/orchviz/index.d.ts.map +1 -0
- package/dist/orchviz/index.js +28 -0
- package/dist/orchviz/index.js.map +1 -0
- package/dist/orchviz/log-persister.d.ts +22 -0
- package/dist/orchviz/log-persister.d.ts.map +1 -0
- package/dist/orchviz/log-persister.js +96 -0
- package/dist/orchviz/log-persister.js.map +1 -0
- package/dist/orchviz/logger.d.ts +13 -0
- package/dist/orchviz/logger.d.ts.map +1 -0
- package/dist/orchviz/logger.js +47 -0
- package/dist/orchviz/logger.js.map +1 -0
- package/dist/orchviz/open-url.d.ts +11 -0
- package/dist/orchviz/open-url.d.ts.map +1 -0
- package/dist/orchviz/open-url.js +28 -0
- package/dist/orchviz/open-url.js.map +1 -0
- package/dist/orchviz/overlay/collector.d.ts +29 -0
- package/dist/orchviz/overlay/collector.d.ts.map +1 -0
- package/dist/orchviz/overlay/collector.js +38 -0
- package/dist/orchviz/overlay/collector.js.map +1 -0
- package/dist/orchviz/overlay/gate-readers.d.ts +18 -0
- package/dist/orchviz/overlay/gate-readers.d.ts.map +1 -0
- package/dist/orchviz/overlay/gate-readers.js +111 -0
- package/dist/orchviz/overlay/gate-readers.js.map +1 -0
- package/dist/orchviz/overlay/session-state-readers.d.ts +18 -0
- package/dist/orchviz/overlay/session-state-readers.d.ts.map +1 -0
- package/dist/orchviz/overlay/session-state-readers.js +78 -0
- package/dist/orchviz/overlay/session-state-readers.js.map +1 -0
- package/dist/orchviz/parser/handle-progress.d.ts +9 -0
- package/dist/orchviz/parser/handle-progress.d.ts.map +1 -0
- package/dist/orchviz/parser/handle-progress.js +38 -0
- package/dist/orchviz/parser/handle-progress.js.map +1 -0
- package/dist/orchviz/parser/handle-text.d.ts +10 -0
- package/dist/orchviz/parser/handle-text.d.ts.map +1 -0
- package/dist/orchviz/parser/handle-text.js +38 -0
- package/dist/orchviz/parser/handle-text.js.map +1 -0
- package/dist/orchviz/parser/handle-thinking.d.ts +10 -0
- package/dist/orchviz/parser/handle-thinking.d.ts.map +1 -0
- package/dist/orchviz/parser/handle-thinking.js +35 -0
- package/dist/orchviz/parser/handle-thinking.js.map +1 -0
- package/dist/orchviz/parser/handle-tool-result.d.ts +10 -0
- package/dist/orchviz/parser/handle-tool-result.d.ts.map +1 -0
- package/dist/orchviz/parser/handle-tool-result.js +62 -0
- package/dist/orchviz/parser/handle-tool-result.js.map +1 -0
- package/dist/orchviz/parser/handle-tool-use.d.ts +11 -0
- package/dist/orchviz/parser/handle-tool-use.d.ts.map +1 -0
- package/dist/orchviz/parser/handle-tool-use.js +38 -0
- package/dist/orchviz/parser/handle-tool-use.js.map +1 -0
- package/dist/orchviz/parser/index.d.ts +38 -0
- package/dist/orchviz/parser/index.d.ts.map +1 -0
- package/dist/orchviz/parser/index.js +139 -0
- package/dist/orchviz/parser/index.js.map +1 -0
- package/dist/orchviz/parser/label-helpers.d.ts +9 -0
- package/dist/orchviz/parser/label-helpers.d.ts.map +1 -0
- package/dist/orchviz/parser/label-helpers.js +44 -0
- package/dist/orchviz/parser/label-helpers.js.map +1 -0
- package/dist/orchviz/parser/strip-ansi.d.ts +6 -0
- package/dist/orchviz/parser/strip-ansi.d.ts.map +1 -0
- package/dist/orchviz/parser/strip-ansi.js +14 -0
- package/dist/orchviz/parser/strip-ansi.js.map +1 -0
- package/dist/orchviz/parser/utils.d.ts +20 -0
- package/dist/orchviz/parser/utils.d.ts.map +1 -0
- package/dist/orchviz/parser/utils.js +56 -0
- package/dist/orchviz/parser/utils.js.map +1 -0
- package/dist/orchviz/permission-detection.d.ts +18 -0
- package/dist/orchviz/permission-detection.d.ts.map +1 -0
- package/dist/orchviz/permission-detection.js +50 -0
- package/dist/orchviz/permission-detection.js.map +1 -0
- package/dist/orchviz/plan/__tests__/apply-todo-toggle.test.d.ts +15 -0
- package/dist/orchviz/plan/__tests__/apply-todo-toggle.test.d.ts.map +1 -0
- package/dist/orchviz/plan/__tests__/apply-todo-toggle.test.js +165 -0
- package/dist/orchviz/plan/__tests__/apply-todo-toggle.test.js.map +1 -0
- package/dist/orchviz/plan/__tests__/atomic-write.test.d.ts +11 -0
- package/dist/orchviz/plan/__tests__/atomic-write.test.d.ts.map +1 -0
- package/dist/orchviz/plan/__tests__/atomic-write.test.js +89 -0
- package/dist/orchviz/plan/__tests__/atomic-write.test.js.map +1 -0
- package/dist/orchviz/plan/__tests__/end-to-end.test.d.ts +10 -0
- package/dist/orchviz/plan/__tests__/end-to-end.test.d.ts.map +1 -0
- package/dist/orchviz/plan/__tests__/end-to-end.test.js +132 -0
- package/dist/orchviz/plan/__tests__/end-to-end.test.js.map +1 -0
- package/dist/orchviz/plan/__tests__/etag.test.d.ts +11 -0
- package/dist/orchviz/plan/__tests__/etag.test.d.ts.map +1 -0
- package/dist/orchviz/plan/__tests__/etag.test.js +92 -0
- package/dist/orchviz/plan/__tests__/etag.test.js.map +1 -0
- package/dist/orchviz/plan/__tests__/list-plans.test.d.ts +14 -0
- package/dist/orchviz/plan/__tests__/list-plans.test.d.ts.map +1 -0
- package/dist/orchviz/plan/__tests__/list-plans.test.js +154 -0
- package/dist/orchviz/plan/__tests__/list-plans.test.js.map +1 -0
- package/dist/orchviz/plan/apply-todo-toggle.d.ts +29 -0
- package/dist/orchviz/plan/apply-todo-toggle.d.ts.map +1 -0
- package/dist/orchviz/plan/apply-todo-toggle.js +129 -0
- package/dist/orchviz/plan/apply-todo-toggle.js.map +1 -0
- package/dist/orchviz/plan/atomic-write.d.ts +25 -0
- package/dist/orchviz/plan/atomic-write.d.ts.map +1 -0
- package/dist/orchviz/plan/atomic-write.js +85 -0
- package/dist/orchviz/plan/atomic-write.js.map +1 -0
- package/dist/orchviz/plan/collector.d.ts +49 -0
- package/dist/orchviz/plan/collector.d.ts.map +1 -0
- package/dist/orchviz/plan/collector.js +173 -0
- package/dist/orchviz/plan/collector.js.map +1 -0
- package/dist/orchviz/plan/etag.d.ts +24 -0
- package/dist/orchviz/plan/etag.d.ts.map +1 -0
- package/dist/orchviz/plan/etag.js +58 -0
- package/dist/orchviz/plan/etag.js.map +1 -0
- package/dist/orchviz/plan/find-active-plan.d.ts +9 -0
- package/dist/orchviz/plan/find-active-plan.d.ts.map +1 -0
- package/dist/orchviz/plan/find-active-plan.js +90 -0
- package/dist/orchviz/plan/find-active-plan.js.map +1 -0
- package/dist/orchviz/plan/index.d.ts +23 -0
- package/dist/orchviz/plan/index.d.ts.map +1 -0
- package/dist/orchviz/plan/index.js +91 -0
- package/dist/orchviz/plan/index.js.map +1 -0
- package/dist/orchviz/plan/list-plans.d.ts +19 -0
- package/dist/orchviz/plan/list-plans.d.ts.map +1 -0
- package/dist/orchviz/plan/list-plans.js +148 -0
- package/dist/orchviz/plan/list-plans.js.map +1 -0
- package/dist/orchviz/plan/parse-phase-file.d.ts +13 -0
- package/dist/orchviz/plan/parse-phase-file.d.ts.map +1 -0
- package/dist/orchviz/plan/parse-phase-file.js +136 -0
- package/dist/orchviz/plan/parse-phase-file.js.map +1 -0
- package/dist/orchviz/plan/parse-plan-file.d.ts +19 -0
- package/dist/orchviz/plan/parse-plan-file.d.ts.map +1 -0
- package/dist/orchviz/plan/parse-plan-file.js +62 -0
- package/dist/orchviz/plan/parse-plan-file.js.map +1 -0
- package/dist/orchviz/plan/plan-constants.d.ts +17 -0
- package/dist/orchviz/plan/plan-constants.d.ts.map +1 -0
- package/dist/orchviz/plan/plan-constants.js +19 -0
- package/dist/orchviz/plan/plan-constants.js.map +1 -0
- package/dist/orchviz/plan/types.d.ts +46 -0
- package/dist/orchviz/plan/types.d.ts.map +1 -0
- package/dist/orchviz/plan/types.js +6 -0
- package/dist/orchviz/plan/types.js.map +1 -0
- package/dist/orchviz/protocol.d.ts +116 -0
- package/dist/orchviz/protocol.d.ts.map +1 -0
- package/dist/orchviz/protocol.js +23 -0
- package/dist/orchviz/protocol.js.map +1 -0
- package/dist/orchviz/redact.d.ts +10 -0
- package/dist/orchviz/redact.d.ts.map +1 -0
- package/dist/orchviz/redact.js +38 -0
- package/dist/orchviz/redact.js.map +1 -0
- package/dist/orchviz/sanitize.d.ts +11 -0
- package/dist/orchviz/sanitize.d.ts.map +1 -0
- package/dist/orchviz/sanitize.js +38 -0
- package/dist/orchviz/sanitize.js.map +1 -0
- package/dist/orchviz/server/__tests__/security-smoke.test.d.ts +13 -0
- package/dist/orchviz/server/__tests__/security-smoke.test.d.ts.map +1 -0
- package/dist/orchviz/server/__tests__/security-smoke.test.js +207 -0
- package/dist/orchviz/server/__tests__/security-smoke.test.js.map +1 -0
- package/dist/orchviz/server/__tests__/write-handlers.test.d.ts +24 -0
- package/dist/orchviz/server/__tests__/write-handlers.test.d.ts.map +1 -0
- package/dist/orchviz/server/__tests__/write-handlers.test.js +347 -0
- package/dist/orchviz/server/__tests__/write-handlers.test.js.map +1 -0
- package/dist/orchviz/server/api-handlers.d.ts +55 -0
- package/dist/orchviz/server/api-handlers.d.ts.map +1 -0
- package/dist/orchviz/server/api-handlers.js +112 -0
- package/dist/orchviz/server/api-handlers.js.map +1 -0
- package/dist/orchviz/server/index.d.ts +36 -0
- package/dist/orchviz/server/index.d.ts.map +1 -0
- package/dist/orchviz/server/index.js +147 -0
- package/dist/orchviz/server/index.js.map +1 -0
- package/dist/orchviz/server/sse-handler.d.ts +25 -0
- package/dist/orchviz/server/sse-handler.d.ts.map +1 -0
- package/dist/orchviz/server/sse-handler.js +128 -0
- package/dist/orchviz/server/sse-handler.js.map +1 -0
- package/dist/orchviz/server/static-handler.d.ts +9 -0
- package/dist/orchviz/server/static-handler.d.ts.map +1 -0
- package/dist/orchviz/server/static-handler.js +76 -0
- package/dist/orchviz/server/static-handler.js.map +1 -0
- package/dist/orchviz/server/write-handlers.d.ts +20 -0
- package/dist/orchviz/server/write-handlers.d.ts.map +1 -0
- package/dist/orchviz/server/write-handlers.js +167 -0
- package/dist/orchviz/server/write-handlers.js.map +1 -0
- package/dist/orchviz/server/write-utils.d.ts +59 -0
- package/dist/orchviz/server/write-utils.d.ts.map +1 -0
- package/dist/orchviz/server/write-utils.js +161 -0
- package/dist/orchviz/server/write-utils.js.map +1 -0
- package/dist/orchviz/session-discovery.d.ts +19 -0
- package/dist/orchviz/session-discovery.d.ts.map +1 -0
- package/dist/orchviz/session-discovery.js +104 -0
- package/dist/orchviz/session-discovery.js.map +1 -0
- package/dist/orchviz/session-manager.d.ts +17 -0
- package/dist/orchviz/session-manager.d.ts.map +1 -0
- package/dist/orchviz/session-manager.js +62 -0
- package/dist/orchviz/session-manager.js.map +1 -0
- package/dist/orchviz/session-runtime.d.ts +22 -0
- package/dist/orchviz/session-runtime.d.ts.map +1 -0
- package/dist/orchviz/session-runtime.js +135 -0
- package/dist/orchviz/session-runtime.js.map +1 -0
- package/dist/orchviz/session-watcher.d.ts +33 -0
- package/dist/orchviz/session-watcher.d.ts.map +1 -0
- package/dist/orchviz/session-watcher.js +135 -0
- package/dist/orchviz/session-watcher.js.map +1 -0
- package/dist/orchviz/subagent-meta.d.ts +8 -0
- package/dist/orchviz/subagent-meta.d.ts.map +1 -0
- package/dist/orchviz/subagent-meta.js +28 -0
- package/dist/orchviz/subagent-meta.js.map +1 -0
- package/dist/orchviz/subagent-scanner.d.ts +15 -0
- package/dist/orchviz/subagent-scanner.d.ts.map +1 -0
- package/dist/orchviz/subagent-scanner.js +27 -0
- package/dist/orchviz/subagent-scanner.js.map +1 -0
- package/dist/orchviz/subagent-watcher.d.ts +19 -0
- package/dist/orchviz/subagent-watcher.d.ts.map +1 -0
- package/dist/orchviz/subagent-watcher.js +147 -0
- package/dist/orchviz/subagent-watcher.js.map +1 -0
- package/dist/orchviz/test-server-boot.d.ts +28 -0
- package/dist/orchviz/test-server-boot.d.ts.map +1 -0
- package/dist/orchviz/test-server-boot.js +64 -0
- package/dist/orchviz/test-server-boot.js.map +1 -0
- package/dist/orchviz/token-estimator.d.ts +11 -0
- package/dist/orchviz/token-estimator.d.ts.map +1 -0
- package/dist/orchviz/token-estimator.js +38 -0
- package/dist/orchviz/token-estimator.js.map +1 -0
- package/dist/orchviz/tool-input-data.d.ts +11 -0
- package/dist/orchviz/tool-input-data.d.ts.map +1 -0
- package/dist/orchviz/tool-input-data.js +76 -0
- package/dist/orchviz/tool-input-data.js.map +1 -0
- package/dist/orchviz/tool-summarizer.d.ts +16 -0
- package/dist/orchviz/tool-summarizer.d.ts.map +1 -0
- package/dist/orchviz/tool-summarizer.js +131 -0
- package/dist/orchviz/tool-summarizer.js.map +1 -0
- package/dist/orchviz-web/index.css +1 -0
- package/dist/orchviz-web/index.html +18 -0
- package/dist/orchviz-web/index.js +51 -0
- package/package.json +18 -3
- package/dist/logger.d.ts +0 -26
- package/dist/logger.js +0 -70
- package/dist/logger.js.map +0 -1
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
|
|
2
|
+
import { BASE_RE, SKILL_ID_RE, _resetWarnState, parseSkillId, resolveLegacy, } from "../discovery/skill-id-utils.js";
|
|
3
|
+
describe("skill-id-utils", () => {
|
|
4
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
5
|
+
let stderrSpy;
|
|
6
|
+
beforeEach(() => {
|
|
7
|
+
_resetWarnState();
|
|
8
|
+
stderrSpy = vi.spyOn(process.stderr, "write").mockImplementation((() => true));
|
|
9
|
+
});
|
|
10
|
+
afterEach(() => {
|
|
11
|
+
stderrSpy.mockRestore();
|
|
12
|
+
});
|
|
13
|
+
describe("parseSkillId", () => {
|
|
14
|
+
it("returns mk:<base> from valid mk: frontmatter", () => {
|
|
15
|
+
expect(parseSkillId("mk:cook", "cook")).toBe("mk:cook");
|
|
16
|
+
expect(stderrSpy).not.toHaveBeenCalled();
|
|
17
|
+
});
|
|
18
|
+
it("normalizes legacy meow: frontmatter to mk:", () => {
|
|
19
|
+
expect(parseSkillId("meow:cook", "meow:cook")).toBe("mk:cook");
|
|
20
|
+
expect(stderrSpy).toHaveBeenCalledTimes(1);
|
|
21
|
+
});
|
|
22
|
+
it("falls back to mk:<base> when frontmatter is absent (post-rename folder)", () => {
|
|
23
|
+
expect(parseSkillId(undefined, "cook")).toBe("mk:cook");
|
|
24
|
+
});
|
|
25
|
+
it("falls back to mk:<base> when frontmatter is absent (legacy meow: folder)", () => {
|
|
26
|
+
expect(parseSkillId(undefined, "meow:cook")).toBe("mk:cook");
|
|
27
|
+
});
|
|
28
|
+
it("falls back when frontmatter is malformed (template syntax)", () => {
|
|
29
|
+
expect(parseSkillId("meow:{name}", "cook")).toBe("mk:cook");
|
|
30
|
+
});
|
|
31
|
+
it("rejects path-traversal in folder basename", () => {
|
|
32
|
+
expect(() => parseSkillId(undefined, "meow:../../config")).toThrow(/Invalid skill folder basename/);
|
|
33
|
+
});
|
|
34
|
+
it("rejects basenames with uppercase or invalid chars", () => {
|
|
35
|
+
expect(() => parseSkillId(undefined, "Cook")).toThrow();
|
|
36
|
+
expect(() => parseSkillId(undefined, "cook with space")).toThrow();
|
|
37
|
+
});
|
|
38
|
+
});
|
|
39
|
+
describe("resolveLegacy", () => {
|
|
40
|
+
it("maps meow:<x> to mk:<x>", () => {
|
|
41
|
+
expect(resolveLegacy("meow:cook")).toBe("mk:cook");
|
|
42
|
+
});
|
|
43
|
+
it("passes mk:<x> through unchanged", () => {
|
|
44
|
+
expect(resolveLegacy("mk:cook")).toBe("mk:cook");
|
|
45
|
+
expect(stderrSpy).not.toHaveBeenCalled();
|
|
46
|
+
});
|
|
47
|
+
it("emits stderr deprecation warning exactly once per id per session", () => {
|
|
48
|
+
resolveLegacy("meow:cook");
|
|
49
|
+
resolveLegacy("meow:cook");
|
|
50
|
+
resolveLegacy("meow:cook");
|
|
51
|
+
expect(stderrSpy).toHaveBeenCalledTimes(1);
|
|
52
|
+
const call = stderrSpy.mock.calls[0]?.[0];
|
|
53
|
+
expect(call).toContain("meow:cook");
|
|
54
|
+
expect(call).toContain("mk:cook");
|
|
55
|
+
});
|
|
56
|
+
it("warns separately for distinct legacy ids", () => {
|
|
57
|
+
resolveLegacy("meow:cook");
|
|
58
|
+
resolveLegacy("meow:scout");
|
|
59
|
+
expect(stderrSpy).toHaveBeenCalledTimes(2);
|
|
60
|
+
});
|
|
61
|
+
});
|
|
62
|
+
describe("regex exports", () => {
|
|
63
|
+
it("SKILL_ID_RE accepts canonical and legacy forms", () => {
|
|
64
|
+
expect(SKILL_ID_RE.test("mk:cook")).toBe(true);
|
|
65
|
+
expect(SKILL_ID_RE.test("meow:cook")).toBe(true);
|
|
66
|
+
expect(SKILL_ID_RE.test("mk:Cook")).toBe(false);
|
|
67
|
+
expect(SKILL_ID_RE.test("foo:bar")).toBe(false);
|
|
68
|
+
});
|
|
69
|
+
it("BASE_RE rejects path traversal and invalid chars", () => {
|
|
70
|
+
expect(BASE_RE.test("cook")).toBe(true);
|
|
71
|
+
expect(BASE_RE.test("agent-browser")).toBe(true);
|
|
72
|
+
expect(BASE_RE.test("../../config")).toBe(false);
|
|
73
|
+
expect(BASE_RE.test("Cook")).toBe(false);
|
|
74
|
+
expect(BASE_RE.test("a".repeat(64))).toBe(false);
|
|
75
|
+
});
|
|
76
|
+
});
|
|
77
|
+
});
|
|
78
|
+
//# sourceMappingURL=skill-id-utils.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill-id-utils.test.js","sourceRoot":"","sources":["../../../src/migrate/__tests__/skill-id-utils.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
declare const SKILL_ID_RE: RegExp;
|
|
2
|
+
declare const BASE_RE: RegExp;
|
|
3
|
+
/**
|
|
4
|
+
* Derive the canonical skill id from frontmatter and folder name.
|
|
5
|
+
* Primary path: validated frontmatter `name:` field, normalized through resolveLegacy.
|
|
6
|
+
* Fallback: synthesize `mk:<base>` from the folder basename, validated against BASE_RE.
|
|
7
|
+
* Throws on a folder basename that contains illegal characters (path traversal guard).
|
|
8
|
+
*/
|
|
9
|
+
export declare function parseSkillId(frontmatterName: string | undefined, dirName: string): string;
|
|
10
|
+
/**
|
|
11
|
+
* Map legacy `meow:` prefix onto the new `mk:` prefix and emit a one-time stderr warning.
|
|
12
|
+
* Idempotent for already-canonical ids.
|
|
13
|
+
*/
|
|
14
|
+
export declare function resolveLegacy(id: string): string;
|
|
15
|
+
/** Test-only: clear the per-process dedup set so each test asserts cleanly. */
|
|
16
|
+
export declare function _resetWarnState(): void;
|
|
17
|
+
export { SKILL_ID_RE, BASE_RE };
|
|
18
|
+
//# sourceMappingURL=skill-id-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill-id-utils.d.ts","sourceRoot":"","sources":["../../../src/migrate/discovery/skill-id-utils.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,WAAW,QAAgC,CAAC;AAClD,QAAA,MAAM,OAAO,QAA2B,CAAC;AAIzC;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,eAAe,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CASzF;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAOhD;AAQD,+EAA+E;AAC/E,wBAAgB,eAAe,IAAI,IAAI,CAEtC;AAED,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
// Skill identity helpers: parse, validate, and resolve legacy prefixes.
|
|
2
|
+
// Single source of truth for the mk: namespace and the meow: backward-compat alias.
|
|
3
|
+
const SKILL_ID_RE = /^(mk|meow):[a-z][a-z0-9-]*$/;
|
|
4
|
+
const BASE_RE = /^[a-z][a-z0-9-]{0,62}$/;
|
|
5
|
+
const seenDeprecations = new Set();
|
|
6
|
+
/**
|
|
7
|
+
* Derive the canonical skill id from frontmatter and folder name.
|
|
8
|
+
* Primary path: validated frontmatter `name:` field, normalized through resolveLegacy.
|
|
9
|
+
* Fallback: synthesize `mk:<base>` from the folder basename, validated against BASE_RE.
|
|
10
|
+
* Throws on a folder basename that contains illegal characters (path traversal guard).
|
|
11
|
+
*/
|
|
12
|
+
export function parseSkillId(frontmatterName, dirName) {
|
|
13
|
+
if (frontmatterName && SKILL_ID_RE.test(frontmatterName)) {
|
|
14
|
+
return resolveLegacy(frontmatterName);
|
|
15
|
+
}
|
|
16
|
+
const stripped = dirName.startsWith("meow:") ? dirName.slice(5) : dirName;
|
|
17
|
+
if (!BASE_RE.test(stripped)) {
|
|
18
|
+
throw new Error(`Invalid skill folder basename: "${stripped}" (must match ${BASE_RE.source})`);
|
|
19
|
+
}
|
|
20
|
+
return `mk:${stripped}`;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Map legacy `meow:` prefix onto the new `mk:` prefix and emit a one-time stderr warning.
|
|
24
|
+
* Idempotent for already-canonical ids.
|
|
25
|
+
*/
|
|
26
|
+
export function resolveLegacy(id) {
|
|
27
|
+
if (id.startsWith("meow:")) {
|
|
28
|
+
const newId = `mk:${id.slice(5)}`;
|
|
29
|
+
warnDeprecatedOnce(id, newId);
|
|
30
|
+
return newId;
|
|
31
|
+
}
|
|
32
|
+
return id;
|
|
33
|
+
}
|
|
34
|
+
function warnDeprecatedOnce(oldId, newId) {
|
|
35
|
+
if (seenDeprecations.has(oldId))
|
|
36
|
+
return;
|
|
37
|
+
seenDeprecations.add(oldId);
|
|
38
|
+
process.stderr.write(`[mewkit] DEPRECATED: "${oldId}" → use "${newId}".\n`);
|
|
39
|
+
}
|
|
40
|
+
/** Test-only: clear the per-process dedup set so each test asserts cleanly. */
|
|
41
|
+
export function _resetWarnState() {
|
|
42
|
+
seenDeprecations.clear();
|
|
43
|
+
}
|
|
44
|
+
export { SKILL_ID_RE, BASE_RE };
|
|
45
|
+
//# sourceMappingURL=skill-id-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill-id-utils.js","sourceRoot":"","sources":["../../../src/migrate/discovery/skill-id-utils.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,oFAAoF;AAEpF,MAAM,WAAW,GAAG,6BAA6B,CAAC;AAClD,MAAM,OAAO,GAAG,wBAAwB,CAAC;AAEzC,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;AAE3C;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,eAAmC,EAAE,OAAe;IAChF,IAAI,eAAe,IAAI,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;QAC1D,OAAO,aAAa,CAAC,eAAe,CAAC,CAAC;IACvC,CAAC;IACD,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAC1E,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,mCAAmC,QAAQ,iBAAiB,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;IAChG,CAAC;IACD,OAAO,MAAM,QAAQ,EAAE,CAAC;AACzB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,EAAU;IACvC,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAClC,kBAAkB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAC9B,OAAO,KAAK,CAAC;IACd,CAAC;IACD,OAAO,EAAE,CAAC;AACX,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAa,EAAE,KAAa;IACvD,IAAI,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC;QAAE,OAAO;IACxC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC5B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,KAAK,YAAY,KAAK,MAAM,CAAC,CAAC;AAC7E,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,eAAe;IAC9B,gBAAgB,CAAC,KAAK,EAAE,CAAC;AAC1B,CAAC;AAED,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skills-discovery.d.ts","sourceRoot":"","sources":["../../../src/migrate/discovery/skills-discovery.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"skills-discovery.d.ts","sourceRoot":"","sources":["../../../src/migrate/discovery/skills-discovery.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAI7C,4EAA4E;AAC5E,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEzD;AA4CD,wBAAsB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CA2B7E"}
|
|
@@ -4,6 +4,7 @@ import { readFile, readdir, stat } from "node:fs/promises";
|
|
|
4
4
|
import { join } from "node:path";
|
|
5
5
|
import { parseFrontmatter } from "../frontmatter-parser.js";
|
|
6
6
|
import { MEOWKIT_INTERNAL_DIRS } from "./exclusions.js";
|
|
7
|
+
import { parseSkillId } from "./skill-id-utils.js";
|
|
7
8
|
/** Sanitize colon and other illegal-on-Windows characters in skill names */
|
|
8
9
|
export function sanitizeSkillName(dirName) {
|
|
9
10
|
return dirName.replace(/[:<>:"/\\|?*]/g, "-");
|
|
@@ -27,10 +28,13 @@ async function parseSkillMd(skillDir, dirName) {
|
|
|
27
28
|
const version = metadata?.version ?? frontmatter.version;
|
|
28
29
|
const author = metadata?.author;
|
|
29
30
|
const license = frontmatter.license;
|
|
31
|
+
const frontmatterName = typeof frontmatter.name === "string" ? frontmatter.name : undefined;
|
|
32
|
+
const id = parseSkillId(frontmatterName, dirName);
|
|
30
33
|
return {
|
|
34
|
+
id,
|
|
31
35
|
name: sanitizeSkillName(dirName),
|
|
32
36
|
dirName,
|
|
33
|
-
displayName:
|
|
37
|
+
displayName: frontmatterName,
|
|
34
38
|
description: typeof frontmatter.description === "string" ? frontmatter.description : "",
|
|
35
39
|
version: version != null ? String(version) : undefined,
|
|
36
40
|
author: author != null ? String(author) : undefined,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skills-discovery.js","sourceRoot":"","sources":["../../../src/migrate/discovery/skills-discovery.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,+FAA+F;AAC/F,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"skills-discovery.js","sourceRoot":"","sources":["../../../src/migrate/discovery/skills-discovery.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,10 +16,10 @@ declare const PortableInstallationSchemaV3: z.ZodObject<{
|
|
|
16
16
|
ownedSections: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
17
17
|
}, "strip", z.ZodTypeAny, {
|
|
18
18
|
path: string;
|
|
19
|
-
type: "
|
|
19
|
+
type: "skill" | "hooks" | "rules" | "agent" | "command" | "config";
|
|
20
20
|
global: boolean;
|
|
21
|
-
provider: string;
|
|
22
21
|
item: string;
|
|
22
|
+
provider: string;
|
|
23
23
|
installedAt: string;
|
|
24
24
|
sourcePath: string;
|
|
25
25
|
sourceChecksum: string;
|
|
@@ -29,10 +29,10 @@ declare const PortableInstallationSchemaV3: z.ZodObject<{
|
|
|
29
29
|
ownedSections?: string[] | undefined;
|
|
30
30
|
}, {
|
|
31
31
|
path: string;
|
|
32
|
-
type: "
|
|
32
|
+
type: "skill" | "hooks" | "rules" | "agent" | "command" | "config";
|
|
33
33
|
global: boolean;
|
|
34
|
-
provider: string;
|
|
35
34
|
item: string;
|
|
35
|
+
provider: string;
|
|
36
36
|
installedAt: string;
|
|
37
37
|
sourcePath: string;
|
|
38
38
|
sourceChecksum: string;
|
|
@@ -59,10 +59,10 @@ declare const PortableRegistrySchemaV3: z.ZodObject<{
|
|
|
59
59
|
ownedSections: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
60
60
|
}, "strip", z.ZodTypeAny, {
|
|
61
61
|
path: string;
|
|
62
|
-
type: "
|
|
62
|
+
type: "skill" | "hooks" | "rules" | "agent" | "command" | "config";
|
|
63
63
|
global: boolean;
|
|
64
|
-
provider: string;
|
|
65
64
|
item: string;
|
|
65
|
+
provider: string;
|
|
66
66
|
installedAt: string;
|
|
67
67
|
sourcePath: string;
|
|
68
68
|
sourceChecksum: string;
|
|
@@ -72,10 +72,10 @@ declare const PortableRegistrySchemaV3: z.ZodObject<{
|
|
|
72
72
|
ownedSections?: string[] | undefined;
|
|
73
73
|
}, {
|
|
74
74
|
path: string;
|
|
75
|
-
type: "
|
|
75
|
+
type: "skill" | "hooks" | "rules" | "agent" | "command" | "config";
|
|
76
76
|
global: boolean;
|
|
77
|
-
provider: string;
|
|
78
77
|
item: string;
|
|
78
|
+
provider: string;
|
|
79
79
|
installedAt: string;
|
|
80
80
|
sourcePath: string;
|
|
81
81
|
sourceChecksum: string;
|
|
@@ -90,10 +90,10 @@ declare const PortableRegistrySchemaV3: z.ZodObject<{
|
|
|
90
90
|
version: "3.0";
|
|
91
91
|
installations: {
|
|
92
92
|
path: string;
|
|
93
|
-
type: "
|
|
93
|
+
type: "skill" | "hooks" | "rules" | "agent" | "command" | "config";
|
|
94
94
|
global: boolean;
|
|
95
|
-
provider: string;
|
|
96
95
|
item: string;
|
|
96
|
+
provider: string;
|
|
97
97
|
installedAt: string;
|
|
98
98
|
sourcePath: string;
|
|
99
99
|
sourceChecksum: string;
|
|
@@ -108,10 +108,10 @@ declare const PortableRegistrySchemaV3: z.ZodObject<{
|
|
|
108
108
|
version: "3.0";
|
|
109
109
|
installations: {
|
|
110
110
|
path: string;
|
|
111
|
-
type: "
|
|
111
|
+
type: "skill" | "hooks" | "rules" | "agent" | "command" | "config";
|
|
112
112
|
global: boolean;
|
|
113
|
-
provider: string;
|
|
114
113
|
item: string;
|
|
114
|
+
provider: string;
|
|
115
115
|
installedAt: string;
|
|
116
116
|
sourcePath: string;
|
|
117
117
|
sourceChecksum: string;
|
package/dist/migrate/types.d.ts
CHANGED
|
@@ -95,9 +95,11 @@ export interface PortableInstallResult {
|
|
|
95
95
|
}
|
|
96
96
|
/** Skill metadata for directory-based skill items */
|
|
97
97
|
export interface SkillInfo {
|
|
98
|
-
/**
|
|
98
|
+
/** Canonical skill id derived from frontmatter (e.g., "mk:cook"). Required. */
|
|
99
|
+
id: string;
|
|
100
|
+
/** Sanitized canonical name (colon-free) — e.g., "cook" or legacy "meow-cook" */
|
|
99
101
|
name: string;
|
|
100
|
-
/** Original directory name (
|
|
102
|
+
/** Original directory name (post-rename: bare "cook"; pre-rename: "mk:cook") */
|
|
101
103
|
dirName: string;
|
|
102
104
|
/** Display name from frontmatter `name:` field */
|
|
103
105
|
displayName?: string;
|
|
@@ -130,6 +132,8 @@ export declare const MigrateOptionsSchema: z.ZodObject<{
|
|
|
130
132
|
preferAgentsMd: z.ZodOptional<z.ZodBoolean>;
|
|
131
133
|
sourceVersion: z.ZodOptional<z.ZodString>;
|
|
132
134
|
}, "strip", z.ZodTypeAny, {
|
|
135
|
+
force?: boolean | undefined;
|
|
136
|
+
install?: boolean | undefined;
|
|
133
137
|
source?: string | undefined;
|
|
134
138
|
tool?: string | undefined;
|
|
135
139
|
tools?: string[] | undefined;
|
|
@@ -137,18 +141,18 @@ export declare const MigrateOptionsSchema: z.ZodObject<{
|
|
|
137
141
|
global?: boolean | undefined;
|
|
138
142
|
yes?: boolean | undefined;
|
|
139
143
|
dryRun?: boolean | undefined;
|
|
140
|
-
force?: boolean | undefined;
|
|
141
144
|
only?: string | undefined;
|
|
142
145
|
skipConfig?: boolean | undefined;
|
|
143
146
|
skipRules?: boolean | undefined;
|
|
144
147
|
skipHooks?: boolean | undefined;
|
|
145
|
-
install?: boolean | undefined;
|
|
146
148
|
reconcile?: boolean | undefined;
|
|
147
149
|
reinstallEmptyDirs?: boolean | undefined;
|
|
148
150
|
respectDeletions?: boolean | undefined;
|
|
149
151
|
preferAgentsMd?: boolean | undefined;
|
|
150
152
|
sourceVersion?: string | undefined;
|
|
151
153
|
}, {
|
|
154
|
+
force?: boolean | undefined;
|
|
155
|
+
install?: boolean | undefined;
|
|
152
156
|
source?: string | undefined;
|
|
153
157
|
tool?: string | undefined;
|
|
154
158
|
tools?: string[] | undefined;
|
|
@@ -156,12 +160,10 @@ export declare const MigrateOptionsSchema: z.ZodObject<{
|
|
|
156
160
|
global?: boolean | undefined;
|
|
157
161
|
yes?: boolean | undefined;
|
|
158
162
|
dryRun?: boolean | undefined;
|
|
159
|
-
force?: boolean | undefined;
|
|
160
163
|
only?: string | undefined;
|
|
161
164
|
skipConfig?: boolean | undefined;
|
|
162
165
|
skipRules?: boolean | undefined;
|
|
163
166
|
skipHooks?: boolean | undefined;
|
|
164
|
-
install?: boolean | undefined;
|
|
165
167
|
reconcile?: boolean | undefined;
|
|
166
168
|
reinstallEmptyDirs?: boolean | undefined;
|
|
167
169
|
respectDeletions?: boolean | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/migrate/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/migrate/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/migrate/types.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,oFAAoF;AACpF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,kDAAkD;AAClD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC;IAClC,aAAa;IACb,QAAQ;IACR,OAAO;IACP,OAAO;IACP,UAAU;IACV,OAAO;IACP,YAAY;IACZ,aAAa;IACb,gBAAgB;IAChB,KAAK;IACL,MAAM;IACN,MAAM;IACN,KAAK;IACL,UAAU;IACV,OAAO;IACP,WAAW;CACX,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/migrate/types.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,oFAAoF;AACpF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,kDAAkD;AAClD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC;IAClC,aAAa;IACb,QAAQ;IACR,OAAO;IACP,OAAO;IACP,UAAU;IACV,OAAO;IACP,YAAY;IACZ,aAAa;IACb,gBAAgB;IAChB,KAAK;IACL,MAAM;IACN,MAAM;IACN,KAAK;IACL,UAAU;IACV,OAAO;IACP,WAAW;CACX,CAAC,CAAC;AAuIH,yCAAyC;AACzC,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,+FAA+F;IAC/F,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACrC,GAAG,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC3B,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC9B,GAAG,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC3B,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC9B,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC7B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAClC,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACjC,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACjC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC/B,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACjC,kBAAkB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC1C,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACxC,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACtC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACpC,CAAC,CAAC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared constants for the orchviz module.
|
|
3
|
+
*
|
|
4
|
+
* Ported (in part) from patoles/agent-flow @ 59ccf4e
|
|
5
|
+
* Original: extension/src/constants.ts
|
|
6
|
+
* License: Apache-2.0 (see ../../NOTICE)
|
|
7
|
+
*
|
|
8
|
+
* Modifications: dropped VS Code/webview/dev-server constants, color tokens,
|
|
9
|
+
* and hook-server constants; only timing/sizing/display values retained.
|
|
10
|
+
*/
|
|
11
|
+
export declare const INACTIVITY_TIMEOUT_MS: number;
|
|
12
|
+
export declare const SCAN_INTERVAL_MS = 1000;
|
|
13
|
+
export declare const POLL_FALLBACK_MS = 3000;
|
|
14
|
+
export declare const PERMISSION_DETECT_MS = 5000;
|
|
15
|
+
export declare const ACTIVE_SESSION_AGE_S: number;
|
|
16
|
+
export declare const PREVIEW_MAX = 60;
|
|
17
|
+
export declare const ARGS_MAX = 80;
|
|
18
|
+
export declare const RESULT_MAX = 200;
|
|
19
|
+
export declare const MESSAGE_MAX = 2000;
|
|
20
|
+
export declare const SESSION_LABEL_MAX = 14;
|
|
21
|
+
export declare const SESSION_LABEL_TRUNCATED: number;
|
|
22
|
+
export declare const DISCOVERY_LABEL_MAX = 40;
|
|
23
|
+
export declare const DISCOVERY_LABEL_TAIL: number;
|
|
24
|
+
export declare const DISCOVERY_CONTENT_MAX = 100;
|
|
25
|
+
export declare const TASK_MAX = 60;
|
|
26
|
+
export declare const EDIT_CONTENT_MAX = 500;
|
|
27
|
+
export declare const WEB_FETCH_PROMPT_MAX = 200;
|
|
28
|
+
export declare const CHILD_NAME_MAX = 30;
|
|
29
|
+
export declare const SKILL_NAME_MAX = 40;
|
|
30
|
+
export declare const URL_PATH_MAX = 40;
|
|
31
|
+
export declare const SESSION_ID_DISPLAY = 8;
|
|
32
|
+
export declare const FAILED_RESULT_MAX = 100;
|
|
33
|
+
export declare const HASH_PREFIX_MAX = 200;
|
|
34
|
+
export declare const WORKSPACE_HASH_LENGTH = 16;
|
|
35
|
+
export declare const CHARS_PER_TOKEN = 4;
|
|
36
|
+
export declare const MIN_TOKEN_ESTIMATE = 10;
|
|
37
|
+
export declare const FALLBACK_TOKEN_ESTIMATE = 200;
|
|
38
|
+
export declare const GREP_TOKEN_MULTIPLIER = 0.5;
|
|
39
|
+
export declare const DEFAULT_TOKEN_MULTIPLIER = 0.3;
|
|
40
|
+
export declare const SYSTEM_PROMPT_BASE_TOKENS = 5000;
|
|
41
|
+
export declare const ORCHESTRATOR_NAME = "orchestrator";
|
|
42
|
+
export declare const FILE_TOOLS: readonly ["Read", "Edit", "Write", "Glob", "Grep"];
|
|
43
|
+
export declare const PATTERN_TOOLS: readonly ["Glob", "Grep"];
|
|
44
|
+
export declare const SUBAGENT_ID_SUFFIX_LENGTH = 6;
|
|
45
|
+
export declare function generateSubagentFallbackName(id: string, index: number): string;
|
|
46
|
+
export declare function resolveSubagentChildName(input: Record<string, unknown>): string;
|
|
47
|
+
export declare const BIND_HOST = "127.0.0.1";
|
|
48
|
+
export declare const MAX_SSE_BUFFER = 200;
|
|
49
|
+
export declare const SSE_HEARTBEAT_MS = 30000;
|
|
50
|
+
export declare const MAX_SSE_CLIENTS = 50;
|
|
51
|
+
export declare const SSE_DRAIN_GRACE_MS = 5000;
|
|
52
|
+
export declare const SYSTEM_CONTENT_PREFIXES: readonly ["This session is being continued", "<ide_", "<system-reminder", "<available-deferred-tools", "<command-name"];
|
|
53
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/orchviz/constants.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,eAAO,MAAM,qBAAqB,QAAgB,CAAC;AACnD,eAAO,MAAM,gBAAgB,OAAO,CAAC;AACrC,eAAO,MAAM,gBAAgB,OAAO,CAAC;AACrC,eAAO,MAAM,oBAAoB,OAAO,CAAC;AACzC,eAAO,MAAM,oBAAoB,QAAU,CAAC;AAI5C,eAAO,MAAM,WAAW,KAAK,CAAC;AAC9B,eAAO,MAAM,QAAQ,KAAK,CAAC;AAC3B,eAAO,MAAM,UAAU,MAAM,CAAC;AAC9B,eAAO,MAAM,WAAW,OAAO,CAAC;AAChC,eAAO,MAAM,iBAAiB,KAAK,CAAC;AACpC,eAAO,MAAM,uBAAuB,QAAwB,CAAC;AAC7D,eAAO,MAAM,mBAAmB,KAAK,CAAC;AACtC,eAAO,MAAM,oBAAoB,QAA0B,CAAC;AAC5D,eAAO,MAAM,qBAAqB,MAAM,CAAC;AACzC,eAAO,MAAM,QAAQ,KAAK,CAAC;AAC3B,eAAO,MAAM,gBAAgB,MAAM,CAAC;AACpC,eAAO,MAAM,oBAAoB,MAAM,CAAC;AACxC,eAAO,MAAM,cAAc,KAAK,CAAC;AACjC,eAAO,MAAM,cAAc,KAAK,CAAC;AACjC,eAAO,MAAM,YAAY,KAAK,CAAC;AAC/B,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,iBAAiB,MAAM,CAAC;AACrC,eAAO,MAAM,eAAe,MAAM,CAAC;AACnC,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAIxC,eAAO,MAAM,eAAe,IAAI,CAAC;AACjC,eAAO,MAAM,kBAAkB,KAAK,CAAC;AACrC,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAC3C,eAAO,MAAM,qBAAqB,MAAM,CAAC;AACzC,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAC5C,eAAO,MAAM,yBAAyB,OAAO,CAAC;AAI9C,eAAO,MAAM,iBAAiB,iBAAiB,CAAC;AAEhD,eAAO,MAAM,UAAU,oDAAqD,CAAC;AAC7E,eAAO,MAAM,aAAa,2BAA4B,CAAC;AAEvD,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAE3C,wBAAgB,4BAA4B,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAE9E;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAE/E;AAID,eAAO,MAAM,SAAS,cAAc,CAAC;AACrC,eAAO,MAAM,cAAc,MAAM,CAAC;AAClC,eAAO,MAAM,gBAAgB,QAAS,CAAC;AACvC,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,eAAO,MAAM,kBAAkB,OAAQ,CAAC;AAExC,eAAO,MAAM,uBAAuB,yHAM1B,CAAC"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared constants for the orchviz module.
|
|
3
|
+
*
|
|
4
|
+
* Ported (in part) from patoles/agent-flow @ 59ccf4e
|
|
5
|
+
* Original: extension/src/constants.ts
|
|
6
|
+
* License: Apache-2.0 (see ../../NOTICE)
|
|
7
|
+
*
|
|
8
|
+
* Modifications: dropped VS Code/webview/dev-server constants, color tokens,
|
|
9
|
+
* and hook-server constants; only timing/sizing/display values retained.
|
|
10
|
+
*/
|
|
11
|
+
// ─── Timing ──────────────────────────────────────────────────────────────────
|
|
12
|
+
export const INACTIVITY_TIMEOUT_MS = 5 * 60 * 1000;
|
|
13
|
+
export const SCAN_INTERVAL_MS = 1000;
|
|
14
|
+
export const POLL_FALLBACK_MS = 3000;
|
|
15
|
+
export const PERMISSION_DETECT_MS = 5000;
|
|
16
|
+
export const ACTIVE_SESSION_AGE_S = 10 * 60;
|
|
17
|
+
// ─── Sizing limits ───────────────────────────────────────────────────────────
|
|
18
|
+
export const PREVIEW_MAX = 60;
|
|
19
|
+
export const ARGS_MAX = 80;
|
|
20
|
+
export const RESULT_MAX = 200;
|
|
21
|
+
export const MESSAGE_MAX = 2000;
|
|
22
|
+
export const SESSION_LABEL_MAX = 14;
|
|
23
|
+
export const SESSION_LABEL_TRUNCATED = SESSION_LABEL_MAX - 2;
|
|
24
|
+
export const DISCOVERY_LABEL_MAX = 40;
|
|
25
|
+
export const DISCOVERY_LABEL_TAIL = DISCOVERY_LABEL_MAX - 3;
|
|
26
|
+
export const DISCOVERY_CONTENT_MAX = 100;
|
|
27
|
+
export const TASK_MAX = 60;
|
|
28
|
+
export const EDIT_CONTENT_MAX = 500;
|
|
29
|
+
export const WEB_FETCH_PROMPT_MAX = 200;
|
|
30
|
+
export const CHILD_NAME_MAX = 30;
|
|
31
|
+
export const SKILL_NAME_MAX = 40;
|
|
32
|
+
export const URL_PATH_MAX = 40;
|
|
33
|
+
export const SESSION_ID_DISPLAY = 8;
|
|
34
|
+
export const FAILED_RESULT_MAX = 100;
|
|
35
|
+
export const HASH_PREFIX_MAX = 200;
|
|
36
|
+
export const WORKSPACE_HASH_LENGTH = 16;
|
|
37
|
+
// ─── Token estimation ───────────────────────────────────────────────────────
|
|
38
|
+
export const CHARS_PER_TOKEN = 4;
|
|
39
|
+
export const MIN_TOKEN_ESTIMATE = 10;
|
|
40
|
+
export const FALLBACK_TOKEN_ESTIMATE = 200;
|
|
41
|
+
export const GREP_TOKEN_MULTIPLIER = 0.5;
|
|
42
|
+
export const DEFAULT_TOKEN_MULTIPLIER = 0.3;
|
|
43
|
+
export const SYSTEM_PROMPT_BASE_TOKENS = 5000;
|
|
44
|
+
// ─── Display strings ────────────────────────────────────────────────────────
|
|
45
|
+
export const ORCHESTRATOR_NAME = "orchestrator";
|
|
46
|
+
export const FILE_TOOLS = ["Read", "Edit", "Write", "Glob", "Grep"];
|
|
47
|
+
export const PATTERN_TOOLS = ["Glob", "Grep"];
|
|
48
|
+
export const SUBAGENT_ID_SUFFIX_LENGTH = 6;
|
|
49
|
+
export function generateSubagentFallbackName(id, index) {
|
|
50
|
+
return `subagent-${id.length > SUBAGENT_ID_SUFFIX_LENGTH ? id.slice(-SUBAGENT_ID_SUFFIX_LENGTH) : index}`;
|
|
51
|
+
}
|
|
52
|
+
export function resolveSubagentChildName(input) {
|
|
53
|
+
return String(input.description || input.subagent_type || "subagent").slice(0, CHILD_NAME_MAX);
|
|
54
|
+
}
|
|
55
|
+
// ─── HTTP/SSE server ────────────────────────────────────────────────────────
|
|
56
|
+
export const BIND_HOST = "127.0.0.1";
|
|
57
|
+
export const MAX_SSE_BUFFER = 200;
|
|
58
|
+
export const SSE_HEARTBEAT_MS = 30_000;
|
|
59
|
+
export const MAX_SSE_CLIENTS = 50;
|
|
60
|
+
export const SSE_DRAIN_GRACE_MS = 5_000;
|
|
61
|
+
export const SYSTEM_CONTENT_PREFIXES = [
|
|
62
|
+
"This session is being continued",
|
|
63
|
+
"<ide_",
|
|
64
|
+
"<system-reminder",
|
|
65
|
+
"<available-deferred-tools",
|
|
66
|
+
"<command-name",
|
|
67
|
+
];
|
|
68
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/orchviz/constants.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* File-system tail helpers for JSONL transcript watching.
|
|
3
|
+
*
|
|
4
|
+
* Ported from patoles/agent-flow @ 59ccf4e
|
|
5
|
+
* Original: extension/src/fs-utils.ts
|
|
6
|
+
* License: Apache-2.0 (see ../../NOTICE)
|
|
7
|
+
*
|
|
8
|
+
* Modifications: switched to `node:fs` import; otherwise verbatim.
|
|
9
|
+
*/
|
|
10
|
+
export declare function readFileChunk(filePath: string, offset: number, length: number): string;
|
|
11
|
+
export interface ReadNewLinesResult {
|
|
12
|
+
lines: string[];
|
|
13
|
+
newSize: number;
|
|
14
|
+
tail: string;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Read new lines appended since `lastSize` bytes.
|
|
18
|
+
* `lastTail` is any partial trailing line returned by the previous call —
|
|
19
|
+
* pass it back to reassemble lines split across reads.
|
|
20
|
+
* Returns null when the file is gone or unchanged.
|
|
21
|
+
* On truncation (file shrunk), returns { lines: [], newSize: 0, tail: '' }.
|
|
22
|
+
*/
|
|
23
|
+
export declare function readNewFileLines(filePath: string, lastSize: number, lastTail?: string): ReadNewLinesResult | null;
|
|
24
|
+
//# sourceMappingURL=fs-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fs-utils.d.ts","sourceRoot":"","sources":["../../src/orchviz/fs-utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAStF;AAED,MAAM,WAAW,kBAAkB;IAClC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACb;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC/B,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,QAAQ,SAAK,GACX,kBAAkB,GAAG,IAAI,CAoB3B"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* File-system tail helpers for JSONL transcript watching.
|
|
3
|
+
*
|
|
4
|
+
* Ported from patoles/agent-flow @ 59ccf4e
|
|
5
|
+
* Original: extension/src/fs-utils.ts
|
|
6
|
+
* License: Apache-2.0 (see ../../NOTICE)
|
|
7
|
+
*
|
|
8
|
+
* Modifications: switched to `node:fs` import; otherwise verbatim.
|
|
9
|
+
*/
|
|
10
|
+
import * as fs from "node:fs";
|
|
11
|
+
export function readFileChunk(filePath, offset, length) {
|
|
12
|
+
const fd = fs.openSync(filePath, "r");
|
|
13
|
+
try {
|
|
14
|
+
const buffer = Buffer.alloc(length);
|
|
15
|
+
fs.readSync(fd, buffer, 0, length, offset);
|
|
16
|
+
return buffer.toString("utf-8");
|
|
17
|
+
}
|
|
18
|
+
finally {
|
|
19
|
+
fs.closeSync(fd);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Read new lines appended since `lastSize` bytes.
|
|
24
|
+
* `lastTail` is any partial trailing line returned by the previous call —
|
|
25
|
+
* pass it back to reassemble lines split across reads.
|
|
26
|
+
* Returns null when the file is gone or unchanged.
|
|
27
|
+
* On truncation (file shrunk), returns { lines: [], newSize: 0, tail: '' }.
|
|
28
|
+
*/
|
|
29
|
+
export function readNewFileLines(filePath, lastSize, lastTail = "") {
|
|
30
|
+
let stat;
|
|
31
|
+
try {
|
|
32
|
+
stat = fs.statSync(filePath);
|
|
33
|
+
}
|
|
34
|
+
catch {
|
|
35
|
+
return null;
|
|
36
|
+
}
|
|
37
|
+
if (stat.size < lastSize) {
|
|
38
|
+
return { lines: [], newSize: 0, tail: "" };
|
|
39
|
+
}
|
|
40
|
+
if (stat.size <= lastSize) {
|
|
41
|
+
return null;
|
|
42
|
+
}
|
|
43
|
+
const newContent = lastTail + readFileChunk(filePath, lastSize, stat.size - lastSize);
|
|
44
|
+
const parts = newContent.split(/\r?\n/);
|
|
45
|
+
const tail = parts.pop() ?? "";
|
|
46
|
+
const lines = parts.filter(Boolean);
|
|
47
|
+
return { lines, newSize: stat.size, tail };
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=fs-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fs-utils.js","sourceRoot":"","sources":["../../src/orchviz/fs-utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAE9B,MAAM,UAAU,aAAa,CAAC,QAAgB,EAAE,MAAc,EAAE,MAAc;IAC7E,MAAM,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IACtC,IAAI,CAAC;QACJ,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACpC,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAC3C,OAAO,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;YAAS,CAAC;QACV,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;AACF,CAAC;AAQD;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAC/B,QAAgB,EAChB,QAAgB,EAChB,QAAQ,GAAG,EAAE;IAEb,IAAI,IAAc,CAAC;IACnB,IAAI,CAAC;QACJ,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,GAAG,QAAQ,EAAE,CAAC;QAC1B,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IAC5C,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC;IACb,CAAC;IAED,MAAM,UAAU,GAAG,QAAQ,GAAG,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC,CAAC;IACtF,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;IAC/B,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACpC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;AAC5C,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export * from "./protocol.js";
|
|
2
|
+
export * from "./constants.js";
|
|
3
|
+
export * from "./fs-utils.js";
|
|
4
|
+
export * from "./session-discovery.js";
|
|
5
|
+
export * from "./session-watcher.js";
|
|
6
|
+
export * from "./session-manager.js";
|
|
7
|
+
export * from "./session-runtime.js";
|
|
8
|
+
export * from "./tool-summarizer.js";
|
|
9
|
+
export * from "./token-estimator.js";
|
|
10
|
+
export * from "./logger.js";
|
|
11
|
+
export * from "./redact.js";
|
|
12
|
+
export * from "./plan/index.js";
|
|
13
|
+
export * from "./permission-detection.js";
|
|
14
|
+
export * from "./subagent-meta.js";
|
|
15
|
+
export * from "./subagent-watcher.js";
|
|
16
|
+
export * from "./subagent-scanner.js";
|
|
17
|
+
export * from "./sanitize.js";
|
|
18
|
+
export * from "./open-url.js";
|
|
19
|
+
export * from "./log-persister.js";
|
|
20
|
+
export * from "./overlay/gate-readers.js";
|
|
21
|
+
export * from "./overlay/session-state-readers.js";
|
|
22
|
+
export * from "./overlay/collector.js";
|
|
23
|
+
export * from "./server/index.js";
|
|
24
|
+
export * from "./server/sse-handler.js";
|
|
25
|
+
export * from "./server/static-handler.js";
|
|
26
|
+
export * from "./server/api-handlers.js";
|
|
27
|
+
export { TranscriptParser } from "./parser/index.js";
|
|
28
|
+
export type { TranscriptParserDelegate } from "./parser/index.js";
|
|
29
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/orchviz/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oCAAoC,CAAC;AACnD,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,YAAY,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC"}
|