@heyditto/cli 2.43.0 → 3.0.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 +18 -1
- package/dist/remote/plugin-server.d.ts +11 -0
- package/dist/remote/plugin-server.js +77 -0
- package/dist/remote/plugin-server.js.map +1 -0
- package/dist/remote/session-link.d.ts +5 -0
- package/dist/remote/session-link.js +7 -0
- package/dist/remote/session-link.js.map +1 -0
- package/dist/teleport/api.d.ts +2 -2
- package/dist/teleport/archive.d.ts +88 -0
- package/dist/teleport/archive.js +280 -0
- package/dist/teleport/archive.js.map +1 -0
- package/dist/teleport/commands.d.ts +9 -0
- package/dist/teleport/commands.js +71 -0
- package/dist/teleport/commands.js.map +1 -1
- package/dist/update-lock.json +1 -1
- package/package.json +2 -1
package/README.md
CHANGED
|
@@ -46,7 +46,7 @@ npm install -g @heyditto/cli
|
|
|
46
46
|
npx -y --package @heyditto/cli heyditto search "what did I say about X"
|
|
47
47
|
```
|
|
48
48
|
|
|
49
|
-
The package installs the `heyditto` command. On macOS, `ditto` is Apple’s file-copy utility and is not installed by this package.
|
|
49
|
+
The package installs the `heyditto` command. On macOS, `ditto` is Apple’s file-copy utility and is not installed by this package. Scripts that used the older `ditto` alias must switch to `heyditto`.
|
|
50
50
|
|
|
51
51
|
The published npm package is **`@heyditto/cli`**. Use the installed `heyditto`
|
|
52
52
|
binary or the scoped `npx --package` form above; the unscoped `heyditto` npm name
|
|
@@ -1088,6 +1088,23 @@ Recover any time with `heyditto teleport pull <capsule> <path>`.
|
|
|
1088
1088
|
After pulling, reinstall Node dependencies that were removed during offload;
|
|
1089
1089
|
`node_modules` is not stored in the capsule.
|
|
1090
1090
|
|
|
1091
|
+
## Archive
|
|
1092
|
+
|
|
1093
|
+
Coding-agent session history and local recovery data only grow, and they
|
|
1094
|
+
usually live on one laptop with no backup. `teleport archive` backs them up to
|
|
1095
|
+
an archive capsule. It uses no capsule slot and no Teleport quota, and its bytes
|
|
1096
|
+
are billed as storage on your plan.
|
|
1097
|
+
|
|
1098
|
+
```sh
|
|
1099
|
+
heyditto teleport archive # ~/.claude/projects, ~/.codex/sessions, infinite-disk recovery data
|
|
1100
|
+
heyditto teleport archive --source notes=~/notes --name my-archive
|
|
1101
|
+
heyditto teleport archive-restore claude-code ./restored # never overwrites
|
|
1102
|
+
```
|
|
1103
|
+
|
|
1104
|
+
Each source is one tar stream cut into content-defined chunks, with each chunk
|
|
1105
|
+
compressed on its own. Re-running uploads only the chunks that changed, so a
|
|
1106
|
+
nightly run after appending to a few sessions sends a few megabytes.
|
|
1107
|
+
|
|
1091
1108
|
## Storage mirrors
|
|
1092
1109
|
|
|
1093
1110
|
Ditto stores capsules redundantly on its own storage. You can also bring your
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
export declare function pluginStartupMessage(error: unknown): string;
|
|
3
|
+
/** A plain `claude` plugin launch has no Ditto wrapper to register its shell.
|
|
4
|
+
* Resolve existing read-only configuration; never create endpoints or keys,
|
|
5
|
+
* change native inference, or open an interactive picker on the MCP stream.
|
|
6
|
+
*/
|
|
7
|
+
export declare function preparePluginSession(cwd?: string): Promise<{
|
|
8
|
+
sessionId: string;
|
|
9
|
+
cwd: string;
|
|
10
|
+
}>;
|
|
11
|
+
export declare function runPluginServer(): Promise<void>;
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { randomUUID } from "node:crypto";
|
|
3
|
+
import { realpathSync } from "node:fs";
|
|
4
|
+
import path from "node:path";
|
|
5
|
+
import { fileURLToPath } from "node:url";
|
|
6
|
+
import { apiFetch, findEndpoint, listEndpoints } from "../api.js";
|
|
7
|
+
import { resolveApiKey } from "../config.js";
|
|
8
|
+
import { findProfileEndpoint, repoDefaultProfile } from "../dittoconfig/profiles.js";
|
|
9
|
+
import { readStoredAuth } from "../store.js";
|
|
10
|
+
import { runChannelServer } from "./channel-server.js";
|
|
11
|
+
import { remoteSessionURL } from "./session-link.js";
|
|
12
|
+
/** Only these locally constructed setup errors may be shown verbatim. API,
|
|
13
|
+
* configuration-parser and transport causes can contain private information.
|
|
14
|
+
*/
|
|
15
|
+
class PluginSetupError extends Error {
|
|
16
|
+
}
|
|
17
|
+
export function pluginStartupMessage(error) {
|
|
18
|
+
return error instanceof PluginSetupError ? error.message : "Ditto Remote could not start. Check `heyditto status` and your endpoint configuration, then restart the MCP server.";
|
|
19
|
+
}
|
|
20
|
+
/** A plain `claude` plugin launch has no Ditto wrapper to register its shell.
|
|
21
|
+
* Resolve existing read-only configuration; never create endpoints or keys,
|
|
22
|
+
* change native inference, or open an interactive picker on the MCP stream.
|
|
23
|
+
*/
|
|
24
|
+
export async function preparePluginSession(cwd = process.env.DITTO_REMOTE_CWD ?? process.cwd()) {
|
|
25
|
+
if (!(await resolveApiKey()).key)
|
|
26
|
+
throw new PluginSetupError("Sign in with `heyditto login`, then restart the Ditto Remote MCP server.");
|
|
27
|
+
// The CLI wrapper already registered this exact launch and chosen its endpoint.
|
|
28
|
+
if (process.env.DITTO_REMOTE_SESSION_ID)
|
|
29
|
+
return { sessionId: process.env.DITTO_REMOTE_SESSION_ID, cwd };
|
|
30
|
+
const catalog = await listEndpoints();
|
|
31
|
+
const explicit = process.env.DITTO_REMOTE_ENDPOINT?.trim();
|
|
32
|
+
const profile = explicit ? undefined : await repoDefaultProfile(cwd);
|
|
33
|
+
const selected = explicit ?? (await readStoredAuth())?.defaultEndpoint;
|
|
34
|
+
const endpoint = profile
|
|
35
|
+
? await findProfileEndpoint(profile, catalog.endpoints)
|
|
36
|
+
: selected ? findEndpoint(catalog.endpoints, selected) : catalog.endpoints.length === 1 ? catalog.endpoints[0] : undefined;
|
|
37
|
+
if (!endpoint)
|
|
38
|
+
throw new PluginSetupError(explicit
|
|
39
|
+
? "Check DITTO_REMOTE_ENDPOINT. Unset it or select an existing endpoint slug, then restart Ditto Remote."
|
|
40
|
+
: "Select an existing endpoint with `heyditto endpoints use <slug>` or apply this repository's .ditto profile, then restart Ditto Remote.");
|
|
41
|
+
const sessionId = randomUUID();
|
|
42
|
+
const registration = await apiFetch("/api/v5/sessions/register", { method: "POST", body: {
|
|
43
|
+
sessionId, endpointId: endpoint.id, harness: "claude-code", inference: "native", transport: "channels",
|
|
44
|
+
title: `${path.basename(cwd)} · ${sessionId.slice(0, 8)}`,
|
|
45
|
+
} });
|
|
46
|
+
process.stderr.write(`Ditto Remote: ${remoteSessionURL(registration)}\n`);
|
|
47
|
+
return { sessionId, cwd };
|
|
48
|
+
}
|
|
49
|
+
export async function runPluginServer() {
|
|
50
|
+
// Claude starts installed MCP servers even when their Channel is not opted
|
|
51
|
+
// in, and does not expose registration in the MCP handshake. Never create
|
|
52
|
+
// an apparently controllable session just because the plugin was installed.
|
|
53
|
+
if (process.env.DITTO_REMOTE_CHANNELS_ENABLED !== "1") {
|
|
54
|
+
throw new PluginSetupError("Enable this review plugin explicitly with DITTO_REMOTE_CHANNELS_ENABLED=1 and Claude's matching Channels flag.");
|
|
55
|
+
}
|
|
56
|
+
const session = await preparePluginSession();
|
|
57
|
+
// Reuse the released adapter's existing launcher contract without changing it.
|
|
58
|
+
process.env.DITTO_REMOTE_SESSION_ID = session.sessionId;
|
|
59
|
+
process.env.DITTO_REMOTE_CWD = session.cwd;
|
|
60
|
+
await runChannelServer();
|
|
61
|
+
}
|
|
62
|
+
function isEntryPoint() {
|
|
63
|
+
try {
|
|
64
|
+
return !!process.argv[1] && realpathSync(process.argv[1]) === realpathSync(fileURLToPath(import.meta.url));
|
|
65
|
+
}
|
|
66
|
+
catch {
|
|
67
|
+
return false;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
if (isEntryPoint()) {
|
|
71
|
+
runPluginServer().catch((error) => {
|
|
72
|
+
// Do not print request bodies, credentials or server cause text onto MCP stderr.
|
|
73
|
+
process.stderr.write(`${pluginStartupMessage(error)}\n`);
|
|
74
|
+
process.exitCode = 1;
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=plugin-server.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-server.js","sourceRoot":"","sources":["../../src/remote/plugin-server.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { appBaseURL } from "../config.js";
|
|
2
|
+
/** The app's graph selector takes its public alias, not a storage KG ID. */
|
|
3
|
+
export function remoteSessionURL(session) {
|
|
4
|
+
const base = `${appBaseURL()}/chat/${encodeURIComponent(session.threadId)}`;
|
|
5
|
+
return session.graphAlias ? `${base}?graph=${encodeURIComponent(session.graphAlias)}` : base;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=session-link.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-link.js","sourceRoot":"","sources":["../../src/remote/session-link.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,4EAA4E;AAC5E,MAAM,UAAU,gBAAgB,CAAC,OAAkD;IACjF,MAAM,IAAI,GAAG,GAAG,UAAU,EAAE,SAAS,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC5E,OAAO,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,UAAU,kBAAkB,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC/F,CAAC"}
|
package/dist/teleport/api.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import type { Manifest } from "./types.js";
|
|
|
2
2
|
export interface Capsule {
|
|
3
3
|
id: string;
|
|
4
4
|
name: string;
|
|
5
|
-
rootKind: "repo" | "folder";
|
|
5
|
+
rootKind: "repo" | "folder" | "archive";
|
|
6
6
|
harnessKind?: string;
|
|
7
7
|
harnessSessionId?: string | null;
|
|
8
8
|
headGeneration: number;
|
|
@@ -96,7 +96,7 @@ export type CommittedBy = "cli" | "runner";
|
|
|
96
96
|
export declare function listCapsules(): Promise<Capsule[]>;
|
|
97
97
|
export declare function createCapsule(input: {
|
|
98
98
|
name: string;
|
|
99
|
-
rootKind: "repo" | "folder";
|
|
99
|
+
rootKind: "repo" | "folder" | "archive";
|
|
100
100
|
harnessKind?: string;
|
|
101
101
|
harnessSessionId?: string;
|
|
102
102
|
mirrorPolicy?: Capsule["mirrorPolicy"];
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { type ChunkRef } from "./types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Archive capsules back up trees that only grow: coding-agent session
|
|
4
|
+
* history and local recovery data. Each source is one tar stream, cut into
|
|
5
|
+
* content-defined chunks (gear rolling hash) so an append or an edit only
|
|
6
|
+
* changes the chunks around it, and every chunk is zstd-compressed on its own
|
|
7
|
+
* so it dedupes by content and restores without its neighbours. The manifest
|
|
8
|
+
* lists the chunks in order; restore decompresses and concatenates them.
|
|
9
|
+
*/
|
|
10
|
+
export interface ArchiveSource {
|
|
11
|
+
/** Unique name in the capsule, e.g. "claude-code". */
|
|
12
|
+
name: string;
|
|
13
|
+
/** Directory whose contents are archived (paths stored relative to it). */
|
|
14
|
+
dir: string;
|
|
15
|
+
}
|
|
16
|
+
export interface ArchiveEntry {
|
|
17
|
+
name: string;
|
|
18
|
+
format: "tar";
|
|
19
|
+
chunkCompression: "zstd";
|
|
20
|
+
chunks: ChunkRef[];
|
|
21
|
+
entries: number;
|
|
22
|
+
bytes: number;
|
|
23
|
+
}
|
|
24
|
+
export interface ArchiveManifest {
|
|
25
|
+
v: number;
|
|
26
|
+
capsuleId: string;
|
|
27
|
+
generation: number;
|
|
28
|
+
parentGeneration: number;
|
|
29
|
+
createdAt: string;
|
|
30
|
+
machine: Record<string, unknown>;
|
|
31
|
+
root: {
|
|
32
|
+
kind: "archive";
|
|
33
|
+
name: string;
|
|
34
|
+
};
|
|
35
|
+
repos: [];
|
|
36
|
+
archives: ArchiveEntry[];
|
|
37
|
+
harness: {
|
|
38
|
+
kind: "none";
|
|
39
|
+
chunks: [];
|
|
40
|
+
};
|
|
41
|
+
totals: {
|
|
42
|
+
chunks: number;
|
|
43
|
+
bytes: number;
|
|
44
|
+
dedupedBytes?: number;
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Content-defined boundaries over a buffer: a cut where the rolling hash's low
|
|
49
|
+
* bits are zero, bounded by MIN_CHUNK and MAX_CHUNK. Exported for tests.
|
|
50
|
+
*/
|
|
51
|
+
export declare function cdcBoundaries(buf: Buffer): number[];
|
|
52
|
+
export interface BuiltArchive {
|
|
53
|
+
entry: ArchiveEntry;
|
|
54
|
+
/** sha256 → compressed bytes on disk, for upload. */
|
|
55
|
+
files: Map<string, string>;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Tars `src.dir` and writes each compressed chunk into `outDir`. The tar is
|
|
59
|
+
* read through a window of at most MAX_CHUNK + one read, so memory stays
|
|
60
|
+
* bounded however large the source grows; boundaries match cdcBoundaries.
|
|
61
|
+
*/
|
|
62
|
+
export declare function buildArchive(src: ArchiveSource, outDir: string): Promise<BuiltArchive>;
|
|
63
|
+
export interface ArchivePushOutput {
|
|
64
|
+
generation: number;
|
|
65
|
+
logicalBytes: number;
|
|
66
|
+
storedBytes: number;
|
|
67
|
+
uploadedBytes: number;
|
|
68
|
+
uploaded: number;
|
|
69
|
+
reused: number;
|
|
70
|
+
archives: {
|
|
71
|
+
name: string;
|
|
72
|
+
entries: number;
|
|
73
|
+
bytes: number;
|
|
74
|
+
chunks: number;
|
|
75
|
+
}[];
|
|
76
|
+
}
|
|
77
|
+
/** Builds every source, uploads only chunks the server lacks, commits a generation. */
|
|
78
|
+
export declare function pushArchive(capsuleId: string, rootName: string, sources: ArchiveSource[], parentGeneration: number): Promise<ArchivePushOutput>;
|
|
79
|
+
/**
|
|
80
|
+
* Restores one archive of a generation into `dest` (which must not exist):
|
|
81
|
+
* downloads each chunk, checks its sha256, decompresses and untars.
|
|
82
|
+
*/
|
|
83
|
+
export declare function restoreArchive(capsuleId: string, name: string, dest: string, generation?: number): Promise<{
|
|
84
|
+
entries: number;
|
|
85
|
+
bytes: number;
|
|
86
|
+
}>;
|
|
87
|
+
/** Default sources: agent session history and infinite-disk's retained recovery data. */
|
|
88
|
+
export declare function defaultArchiveSources(home?: string): ArchiveSource[];
|
|
@@ -0,0 +1,280 @@
|
|
|
1
|
+
import { spawn } from "node:child_process";
|
|
2
|
+
import { createHash } from "node:crypto";
|
|
3
|
+
import { createReadStream, createWriteStream } from "node:fs";
|
|
4
|
+
import { mkdir, mkdtemp, open, readFile, rm, stat, writeFile } from "node:fs/promises";
|
|
5
|
+
import os from "node:os";
|
|
6
|
+
import path from "node:path";
|
|
7
|
+
import { zstdCompressSync, zstdDecompressSync } from "node:zlib";
|
|
8
|
+
import { packageVersion } from "../config.js";
|
|
9
|
+
import * as tapi from "./api.js";
|
|
10
|
+
import { CHUNK_BYTES, MANIFEST_VERSION, machineInfo } from "./types.js";
|
|
11
|
+
const MIN_CHUNK = 512 * 1024;
|
|
12
|
+
const AVG_BITS = 21; // ~2 MiB average
|
|
13
|
+
const MAX_CHUNK = 8 * 1024 * 1024;
|
|
14
|
+
const MASK = (1 << AVG_BITS) - 1;
|
|
15
|
+
const NEGOTIATE_BATCH = 200;
|
|
16
|
+
const PUT_CONCURRENCY = 4;
|
|
17
|
+
/** Deterministic gear table: chunk boundaries must match across machines. */
|
|
18
|
+
const GEAR = (() => {
|
|
19
|
+
const t = new Uint32Array(256);
|
|
20
|
+
for (let i = 0; i < 256; i++) {
|
|
21
|
+
t[i] = createHash("sha256").update(`ditto-archive-gear-${i}`).digest().readUInt32LE(0);
|
|
22
|
+
}
|
|
23
|
+
return t;
|
|
24
|
+
})();
|
|
25
|
+
/**
|
|
26
|
+
* Content-defined boundaries over a buffer: a cut where the rolling hash's low
|
|
27
|
+
* bits are zero, bounded by MIN_CHUNK and MAX_CHUNK. Exported for tests.
|
|
28
|
+
*/
|
|
29
|
+
export function cdcBoundaries(buf) {
|
|
30
|
+
const cuts = [];
|
|
31
|
+
let start = 0;
|
|
32
|
+
while (start < buf.length) {
|
|
33
|
+
const end = Math.min(buf.length, start + MAX_CHUNK);
|
|
34
|
+
let cut = end;
|
|
35
|
+
let h = 0;
|
|
36
|
+
for (let i = start + MIN_CHUNK; i < end; i++) {
|
|
37
|
+
h = ((h << 1) + GEAR[buf[i]]) >>> 0;
|
|
38
|
+
if ((h & MASK) === 0) {
|
|
39
|
+
cut = i + 1;
|
|
40
|
+
break;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
cuts.push(cut);
|
|
44
|
+
start = cut;
|
|
45
|
+
}
|
|
46
|
+
return cuts;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Tars `src.dir` and writes each compressed chunk into `outDir`. The tar is
|
|
50
|
+
* read through a window of at most MAX_CHUNK + one read, so memory stays
|
|
51
|
+
* bounded however large the source grows; boundaries match cdcBoundaries.
|
|
52
|
+
*/
|
|
53
|
+
export async function buildArchive(src, outDir) {
|
|
54
|
+
const tarFile = path.join(outDir, `${safe(src.name)}.tar`);
|
|
55
|
+
const entries = await tarDirectory(src.dir, tarFile);
|
|
56
|
+
const chunks = [];
|
|
57
|
+
const files = new Map();
|
|
58
|
+
let bytes = 0;
|
|
59
|
+
const emit = async (piece) => {
|
|
60
|
+
const z = zstdCompressSync(piece);
|
|
61
|
+
if (z.length > CHUNK_BYTES)
|
|
62
|
+
throw new Error(`compressed chunk exceeds ${CHUNK_BYTES} bytes`);
|
|
63
|
+
const sha = createHash("sha256").update(z).digest("hex");
|
|
64
|
+
chunks.push({ sha256: sha, size: z.length });
|
|
65
|
+
if (!files.has(sha)) {
|
|
66
|
+
const file = path.join(outDir, sha);
|
|
67
|
+
await writeFile(file, z);
|
|
68
|
+
files.set(sha, file);
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
try {
|
|
72
|
+
let pending = Buffer.alloc(0);
|
|
73
|
+
for await (const piece of createReadStream(tarFile, { highWaterMark: 1 << 20 })) {
|
|
74
|
+
const buf = piece;
|
|
75
|
+
bytes += buf.length;
|
|
76
|
+
pending = pending.length === 0 ? buf : Buffer.concat([pending, buf]);
|
|
77
|
+
// A cut is final once MAX_CHUNK bytes follow its start: later data
|
|
78
|
+
// can't move it. Keep the unfinished tail.
|
|
79
|
+
while (pending.length >= MAX_CHUNK) {
|
|
80
|
+
const cut = cdcBoundaries(pending.subarray(0, MAX_CHUNK))[0];
|
|
81
|
+
await emit(Buffer.from(pending.subarray(0, cut)));
|
|
82
|
+
pending = Buffer.from(pending.subarray(cut));
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
// The tail is under MAX_CHUNK; its cuts are offsets into this buffer.
|
|
86
|
+
let start = 0;
|
|
87
|
+
for (const cut of cdcBoundaries(pending)) {
|
|
88
|
+
await emit(Buffer.from(pending.subarray(start, cut)));
|
|
89
|
+
start = cut;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
finally {
|
|
93
|
+
await rm(tarFile, { force: true });
|
|
94
|
+
}
|
|
95
|
+
return { entry: { name: src.name, format: "tar", chunkCompression: "zstd", chunks, entries, bytes }, files };
|
|
96
|
+
}
|
|
97
|
+
/** tar with paths relative to `dir`; returns the entry count. */
|
|
98
|
+
async function tarDirectory(dir, outFile) {
|
|
99
|
+
const info = await stat(dir);
|
|
100
|
+
if (!info.isDirectory())
|
|
101
|
+
throw new Error(`${dir} is not a directory`);
|
|
102
|
+
const list = await run("tar", ["-c", "-f", outFile, "-C", dir, "."]);
|
|
103
|
+
if (list.code !== 0)
|
|
104
|
+
throw new Error(`tar failed for ${dir}: ${list.stderr.trim()}`);
|
|
105
|
+
const count = await run("tar", ["-t", "-f", outFile]);
|
|
106
|
+
return count.stdout.split("\n").filter((l) => l && !l.endsWith("/")).length;
|
|
107
|
+
}
|
|
108
|
+
/** Builds every source, uploads only chunks the server lacks, commits a generation. */
|
|
109
|
+
export async function pushArchive(capsuleId, rootName, sources, parentGeneration) {
|
|
110
|
+
const tmp = await mkdtemp(path.join(os.tmpdir(), "teleport-archive-"));
|
|
111
|
+
try {
|
|
112
|
+
const archives = [];
|
|
113
|
+
const files = new Map();
|
|
114
|
+
for (const src of sources) {
|
|
115
|
+
const built = await buildArchive(src, tmp);
|
|
116
|
+
archives.push(built.entry);
|
|
117
|
+
for (const [sha, file] of built.files)
|
|
118
|
+
files.set(sha, file);
|
|
119
|
+
}
|
|
120
|
+
const all = archives.flatMap((a) => a.chunks);
|
|
121
|
+
const distinct = new Map();
|
|
122
|
+
for (const c of all)
|
|
123
|
+
distinct.set(c.sha256, c);
|
|
124
|
+
const generation = parentGeneration + 1;
|
|
125
|
+
const manifest = {
|
|
126
|
+
v: MANIFEST_VERSION,
|
|
127
|
+
capsuleId,
|
|
128
|
+
generation,
|
|
129
|
+
parentGeneration,
|
|
130
|
+
createdAt: new Date().toISOString(),
|
|
131
|
+
machine: machineInfo(packageVersion),
|
|
132
|
+
root: { kind: "archive", name: rootName },
|
|
133
|
+
repos: [],
|
|
134
|
+
archives,
|
|
135
|
+
harness: { kind: "none", chunks: [] },
|
|
136
|
+
totals: { chunks: distinct.size, bytes: [...distinct.values()].reduce((n, c) => n + c.size, 0) },
|
|
137
|
+
};
|
|
138
|
+
const manifestBytes = Buffer.from(JSON.stringify(manifest));
|
|
139
|
+
const manifestSha = createHash("sha256").update(manifestBytes).digest("hex");
|
|
140
|
+
const manifestFile = path.join(tmp, "manifest.json");
|
|
141
|
+
const fh = await open(manifestFile, "w");
|
|
142
|
+
await fh.writeFile(manifestBytes);
|
|
143
|
+
await fh.close();
|
|
144
|
+
files.set(manifestSha, manifestFile);
|
|
145
|
+
distinct.set(manifestSha, { sha256: manifestSha, size: manifestBytes.length });
|
|
146
|
+
const wanted = [...distinct.values()];
|
|
147
|
+
let uploaded = 0;
|
|
148
|
+
let uploadedBytes = 0;
|
|
149
|
+
for (let i = 0; i < wanted.length; i += NEGOTIATE_BATCH) {
|
|
150
|
+
const neg = await tapi.negotiate(capsuleId, wanted.slice(i, i + NEGOTIATE_BATCH));
|
|
151
|
+
await uploadAll(neg.missing, files);
|
|
152
|
+
uploaded += neg.missing.length;
|
|
153
|
+
for (const m of neg.missing)
|
|
154
|
+
uploadedBytes += m.size;
|
|
155
|
+
}
|
|
156
|
+
const committed = await tapi.commit(capsuleId, { manifest: manifest, manifestSha256: manifestSha, committedBy: "cli" });
|
|
157
|
+
return {
|
|
158
|
+
generation: committed.generation?.generation ?? generation,
|
|
159
|
+
logicalBytes: archives.reduce((n, a) => n + a.bytes, 0),
|
|
160
|
+
storedBytes: manifest.totals.bytes,
|
|
161
|
+
uploadedBytes,
|
|
162
|
+
uploaded,
|
|
163
|
+
reused: wanted.length - uploaded,
|
|
164
|
+
archives: archives.map((a) => ({ name: a.name, entries: a.entries, bytes: a.bytes, chunks: a.chunks.length })),
|
|
165
|
+
};
|
|
166
|
+
}
|
|
167
|
+
finally {
|
|
168
|
+
await rm(tmp, { recursive: true, force: true });
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Restores one archive of a generation into `dest` (which must not exist):
|
|
173
|
+
* downloads each chunk, checks its sha256, decompresses and untars.
|
|
174
|
+
*/
|
|
175
|
+
export async function restoreArchive(capsuleId, name, dest, generation) {
|
|
176
|
+
const res = await tapi.resolveGeneration(capsuleId, generation);
|
|
177
|
+
const manifest = res.manifest;
|
|
178
|
+
const archive = manifest.archives?.find((a) => a.name === name);
|
|
179
|
+
if (!archive)
|
|
180
|
+
throw new Error(`generation ${res.generation} has no archive named "${name}"`);
|
|
181
|
+
const urls = new Map(res.chunks.map((c) => [c.sha256, c.getUrl]));
|
|
182
|
+
// Claim the destination atomically: a non-recursive mkdir fails if it exists.
|
|
183
|
+
await mkdir(path.dirname(dest), { recursive: true });
|
|
184
|
+
try {
|
|
185
|
+
await mkdir(dest);
|
|
186
|
+
}
|
|
187
|
+
catch (e) {
|
|
188
|
+
if (e.code === "EEXIST")
|
|
189
|
+
throw new Error(`${dest} already exists; restore never overwrites`);
|
|
190
|
+
throw e;
|
|
191
|
+
}
|
|
192
|
+
const tmp = await mkdtemp(path.join(os.tmpdir(), "teleport-archive-restore-"));
|
|
193
|
+
try {
|
|
194
|
+
const tarFile = path.join(tmp, "archive.tar");
|
|
195
|
+
const out = createWriteStream(tarFile);
|
|
196
|
+
const finished = new Promise((resolve, reject) => {
|
|
197
|
+
out.once("error", reject);
|
|
198
|
+
out.once("finish", resolve);
|
|
199
|
+
});
|
|
200
|
+
finished.catch(() => undefined);
|
|
201
|
+
let bytes = 0;
|
|
202
|
+
for (const c of archive.chunks) {
|
|
203
|
+
const url = urls.get(c.sha256);
|
|
204
|
+
if (!url)
|
|
205
|
+
throw new Error(`no download URL for chunk ${c.sha256.slice(0, 12)}`);
|
|
206
|
+
const body = Buffer.from(await (await fetchOk(url)).arrayBuffer());
|
|
207
|
+
if (createHash("sha256").update(body).digest("hex") !== c.sha256)
|
|
208
|
+
throw new Error(`chunk ${c.sha256.slice(0, 12)} failed its checksum`);
|
|
209
|
+
const plain = zstdDecompressSync(body);
|
|
210
|
+
bytes += plain.length;
|
|
211
|
+
if (!out.write(plain))
|
|
212
|
+
await Promise.race([new Promise((r) => out.once("drain", r)), finished]);
|
|
213
|
+
}
|
|
214
|
+
out.end();
|
|
215
|
+
await finished;
|
|
216
|
+
const x = await run("tar", ["-x", "-k", "-f", tarFile, "-C", dest]);
|
|
217
|
+
if (x.code !== 0)
|
|
218
|
+
throw new Error(`tar extract failed: ${x.stderr.trim()}`);
|
|
219
|
+
return { entries: archive.entries, bytes };
|
|
220
|
+
}
|
|
221
|
+
finally {
|
|
222
|
+
await rm(tmp, { recursive: true, force: true });
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
async function uploadAll(missing, files) {
|
|
226
|
+
let cursor = 0;
|
|
227
|
+
const workers = Array.from({ length: Math.min(PUT_CONCURRENCY, missing.length) }, async () => {
|
|
228
|
+
for (;;) {
|
|
229
|
+
const i = cursor++;
|
|
230
|
+
if (i >= missing.length)
|
|
231
|
+
return;
|
|
232
|
+
const file = files.get(missing[i].sha256);
|
|
233
|
+
if (!file)
|
|
234
|
+
throw new Error(`server asked for an unknown chunk ${missing[i].sha256}`);
|
|
235
|
+
const body = await readFile(file);
|
|
236
|
+
let delay = 400;
|
|
237
|
+
for (let attempt = 1;; attempt++) {
|
|
238
|
+
const r = await fetch(missing[i].putUrl, { method: "PUT", body });
|
|
239
|
+
if (r.ok)
|
|
240
|
+
break;
|
|
241
|
+
await r.body?.cancel().catch(() => undefined);
|
|
242
|
+
if (attempt >= 4 || (r.status < 500 && r.status !== 429))
|
|
243
|
+
throw new Error(`chunk upload failed: HTTP ${r.status}`);
|
|
244
|
+
await new Promise((s) => setTimeout(s, delay));
|
|
245
|
+
delay *= 2;
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
});
|
|
249
|
+
await Promise.all(workers);
|
|
250
|
+
}
|
|
251
|
+
async function fetchOk(url) {
|
|
252
|
+
const r = await fetch(url);
|
|
253
|
+
if (!r.ok)
|
|
254
|
+
throw new Error(`chunk download failed: HTTP ${r.status}`);
|
|
255
|
+
return r;
|
|
256
|
+
}
|
|
257
|
+
function run(cmd, args) {
|
|
258
|
+
return new Promise((resolve, reject) => {
|
|
259
|
+
const p = spawn(cmd, args, { stdio: ["ignore", "pipe", "pipe"] });
|
|
260
|
+
let stdout = "";
|
|
261
|
+
let stderr = "";
|
|
262
|
+
p.stdout.on("data", (d) => (stdout += d));
|
|
263
|
+
p.stderr.on("data", (d) => (stderr += d));
|
|
264
|
+
p.on("error", reject);
|
|
265
|
+
p.on("close", (code) => resolve({ code: code ?? 1, stdout, stderr }));
|
|
266
|
+
});
|
|
267
|
+
}
|
|
268
|
+
function safe(name) {
|
|
269
|
+
return name.replace(/[^A-Za-z0-9._-]/g, "_") || "archive";
|
|
270
|
+
}
|
|
271
|
+
/** Default sources: agent session history and infinite-disk's retained recovery data. */
|
|
272
|
+
export function defaultArchiveSources(home = os.homedir()) {
|
|
273
|
+
return [
|
|
274
|
+
{ name: "claude-code", dir: path.join(home, ".claude", "projects") },
|
|
275
|
+
{ name: "codex", dir: path.join(home, ".codex", "sessions") },
|
|
276
|
+
{ name: "infinite-disk-recovery", dir: path.join(home, ".local", "share", "infinite-disk", "recovery-consolidated") },
|
|
277
|
+
{ name: "infinite-disk-sessions", dir: path.join(home, ".local", "share", "infinite-disk", "session-backups") },
|
|
278
|
+
];
|
|
279
|
+
}
|
|
280
|
+
//# sourceMappingURL=archive.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"archive.js","sourceRoot":"","sources":["../../src/teleport/archive.ts"],"names":[],"mappings":"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"}
|
|
@@ -75,6 +75,15 @@ export declare function cmdStorageList(options: OutputOptions): Promise<void>;
|
|
|
75
75
|
export declare function cmdStorageTest(ref: string, options: OutputOptions): Promise<void>;
|
|
76
76
|
export declare function cmdStorageRemove(ref: string): Promise<void>;
|
|
77
77
|
export declare function cmdStorageMirror(ref: string, targetsArg: string): Promise<void>;
|
|
78
|
+
interface ArchiveOptions extends OutputOptions {
|
|
79
|
+
name?: string;
|
|
80
|
+
source?: string[];
|
|
81
|
+
}
|
|
82
|
+
export declare function cmdTeleportArchive(options: ArchiveOptions): Promise<void>;
|
|
83
|
+
export declare function cmdTeleportArchiveRestore(archiveName: string, dest: string, options: {
|
|
84
|
+
name?: string;
|
|
85
|
+
generation?: string;
|
|
86
|
+
}): Promise<void>;
|
|
78
87
|
export declare function registerTeleportCommands(program: Command, addExamples: (c: Command, ex: string) => Command): void;
|
|
79
88
|
/**
|
|
80
89
|
* Remote Control checkpoint: push the session's root as a new generation and
|
|
@@ -14,6 +14,8 @@ import { discoverRepos } from "../teleport/discover.js";
|
|
|
14
14
|
import { offloadBlockers, planCapture } from "../teleport/workspace.js";
|
|
15
15
|
import { formatCapturePlan } from "../dittoconfig/commands.js";
|
|
16
16
|
import { formatBytes } from "../teleport/types.js";
|
|
17
|
+
import { defaultArchiveSources, pushArchive, restoreArchive } from "../teleport/archive.js";
|
|
18
|
+
import { stat } from "node:fs/promises";
|
|
17
19
|
function out(line) {
|
|
18
20
|
process.stdout.write(`${line}\n`);
|
|
19
21
|
}
|
|
@@ -438,6 +440,63 @@ function jsonAlias() {
|
|
|
438
440
|
function withOutput(c) {
|
|
439
441
|
return c.addOption(outputOption()).addOption(jsonAlias());
|
|
440
442
|
}
|
|
443
|
+
/** Parses repeatable --source name=dir; defaults to agent history and infinite-disk recovery data. */
|
|
444
|
+
async function archiveSources(options) {
|
|
445
|
+
const names = new Set();
|
|
446
|
+
const sources = options.source?.length
|
|
447
|
+
? options.source.map((s) => {
|
|
448
|
+
const at = s.indexOf("=");
|
|
449
|
+
const dir = s.slice(at + 1);
|
|
450
|
+
if (at <= 0 || !dir)
|
|
451
|
+
throw new Error(`--source must be name=dir, got "${s}"`);
|
|
452
|
+
const name = s.slice(0, at);
|
|
453
|
+
if (names.has(name))
|
|
454
|
+
throw new Error(`duplicate --source name "${name}"`);
|
|
455
|
+
names.add(name);
|
|
456
|
+
return { name, dir: path.resolve(dir) };
|
|
457
|
+
})
|
|
458
|
+
: defaultArchiveSources();
|
|
459
|
+
const present = [];
|
|
460
|
+
for (const src of sources) {
|
|
461
|
+
const info = await stat(src.dir).catch(() => undefined);
|
|
462
|
+
if (info?.isDirectory())
|
|
463
|
+
present.push(src);
|
|
464
|
+
else if (options.source?.length)
|
|
465
|
+
throw new Error(`${src.dir} is not a directory`);
|
|
466
|
+
}
|
|
467
|
+
if (present.length === 0)
|
|
468
|
+
throw new Error("nothing to archive: no source directory exists");
|
|
469
|
+
return present;
|
|
470
|
+
}
|
|
471
|
+
export async function cmdTeleportArchive(options) {
|
|
472
|
+
const name = options.name ?? "agent-traces";
|
|
473
|
+
const sources = await archiveSources(options);
|
|
474
|
+
let capsule = (await tapi.listCapsules()).find((c) => c.name === name && c.status !== "deleted");
|
|
475
|
+
if (capsule && capsule.rootKind !== "archive") {
|
|
476
|
+
throw new Error(`capsule "${name}" is a ${capsule.rootKind} capsule; choose another --name for the archive`);
|
|
477
|
+
}
|
|
478
|
+
if (!capsule)
|
|
479
|
+
capsule = await tapi.createCapsule({ name, rootKind: "archive" });
|
|
480
|
+
if (!json(options)) {
|
|
481
|
+
err(`Archiving ${sources.map((s) => s.name).join(", ")} into "${name}" (generation ${capsule.headGeneration + 1})…`);
|
|
482
|
+
}
|
|
483
|
+
const res = await pushArchive(capsule.id, name, sources, capsule.headGeneration);
|
|
484
|
+
if (json(options)) {
|
|
485
|
+
out(JSON.stringify({ capsule: capsule.id, ...res }));
|
|
486
|
+
return;
|
|
487
|
+
}
|
|
488
|
+
for (const a of res.archives)
|
|
489
|
+
out(` ${pad(a.name, 24)} ${pad(String(a.entries), 7)} files ${formatBytes(a.bytes)}`);
|
|
490
|
+
out(`Generation ${res.generation}: ${formatBytes(res.logicalBytes)} archived, ${formatBytes(res.storedBytes)} stored compressed, ${formatBytes(res.uploadedBytes)} uploaded (${res.reused} chunks already stored).`);
|
|
491
|
+
out("Billed as storage on your plan; restore with `heyditto teleport archive-restore`.");
|
|
492
|
+
}
|
|
493
|
+
export async function cmdTeleportArchiveRestore(archiveName, dest, options) {
|
|
494
|
+
const generation = options.generation === undefined ? undefined : Number(options.generation);
|
|
495
|
+
if (generation !== undefined && (!Number.isInteger(generation) || generation < 1))
|
|
496
|
+
throw new Error("--generation must be a positive integer");
|
|
497
|
+
const res = await restoreArchive(options.name ?? "agent-traces", archiveName, path.resolve(dest), generation);
|
|
498
|
+
out(`Restored ${res.entries} files (${formatBytes(res.bytes)}) into ${path.resolve(dest)}.`);
|
|
499
|
+
}
|
|
441
500
|
export function registerTeleportCommands(program, addExamples) {
|
|
442
501
|
const teleport = withOutput(program
|
|
443
502
|
.command("teleport")
|
|
@@ -491,6 +550,18 @@ export function registerTeleportCommands(program, addExamples) {
|
|
|
491
550
|
for (const line of formatCapturePlan(plan))
|
|
492
551
|
out(line);
|
|
493
552
|
}));
|
|
553
|
+
withOutput(teleport
|
|
554
|
+
.command("archive")
|
|
555
|
+
.description("back up agent session history and recovery data as storage (no capsule slot)")
|
|
556
|
+
.option("--name <capsule>", "archive capsule name", "agent-traces")
|
|
557
|
+
.option("--source <name=dir...>", "archive these directories instead of the defaults (~/.claude/projects, ~/.codex/sessions, infinite-disk recovery data)")
|
|
558
|
+
.action(cmdTeleportArchive));
|
|
559
|
+
teleport
|
|
560
|
+
.command("archive-restore <archive> <dest>")
|
|
561
|
+
.description("restore one archive (e.g. claude-code) into a new directory; never overwrites")
|
|
562
|
+
.option("--name <capsule>", "archive capsule name", "agent-traces")
|
|
563
|
+
.option("--generation <n>", "generation to restore (default: latest)")
|
|
564
|
+
.action(cmdTeleportArchiveRestore);
|
|
494
565
|
withOutput(teleport.command("rm <capsule>").description("delete a capsule and its generations").option("--yes", "skip the confirmation").action(cmdTeleportRm));
|
|
495
566
|
addExamples(teleport, ` heyditto teleport push the current directory
|
|
496
567
|
heyditto teleport --cloud --endpoint work push, then resume in Ditto Code
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/teleport/commands.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/teleport/commands.ts"],"names":[],"mappings":"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"}
|
package/dist/update-lock.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":1,"bootstrap":1,"name":"@heyditto/cli","packageVersion":"2.43.0","packages":[{"path":"node_modules/@hono/node-server","name":"@hono/node-server","version":"1.19.14","resolved":"https://registry.npmjs.org/@hono/node-server/-/node-server-1.19.14.tgz","integrity":"sha512-GwtvgtXxnWsucXvbQXkRgqksiH2Qed37H9xHZocE5sA3N8O8O8/8FA3uclQXxXVzc9XBZuEOMK7+r02FmSpHtw=="},{"path":"node_modules/@isaacs/fs-minipass","name":"@isaacs/fs-minipass","version":"4.0.1","resolved":"https://registry.npmjs.org/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz","integrity":"sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w=="},{"path":"node_modules/@lydell/node-pty","name":"@lydell/node-pty","version":"1.2.0-beta.15","resolved":"https://registry.npmjs.org/@lydell/node-pty/-/node-pty-1.2.0-beta.15.tgz","integrity":"sha512-Br8wBxzbxFwdWgk9uQ+rdzE0xfoxOK4QuGH54swhRwc5IxP6H9Y1/bcyazRGvNUs6XkB5qNVkezuKSRxUwZe7A==","optional":true},{"path":"node_modules/@lydell/node-pty-darwin-arm64","name":"@lydell/node-pty-darwin-arm64","version":"1.2.0-beta.15","resolved":"https://registry.npmjs.org/@lydell/node-pty-darwin-arm64/-/node-pty-darwin-arm64-1.2.0-beta.15.tgz","integrity":"sha512-6TSBbzdcLiNTHl1mTuzflqXrkmcC36USVGvERoDgvHk2ItEDaMaFZuAJ1CqPmwYj0DyhCS16TVS8OGK9xZnjyQ==","optional":true,"os":["darwin"],"cpu":["arm64"]},{"path":"node_modules/@lydell/node-pty-darwin-x64","name":"@lydell/node-pty-darwin-x64","version":"1.2.0-beta.15","resolved":"https://registry.npmjs.org/@lydell/node-pty-darwin-x64/-/node-pty-darwin-x64-1.2.0-beta.15.tgz","integrity":"sha512-yDT2oqPqYMBScyuk1U9Rg5VKcrbMOD9o9jWYYamDADA3NSbUISroPChrqYRQ74Y7BQtNH4gqYAiWOZRi5uQZ0Q==","optional":true,"os":["darwin"],"cpu":["x64"]},{"path":"node_modules/@lydell/node-pty-linux-arm64","name":"@lydell/node-pty-linux-arm64","version":"1.2.0-beta.15","resolved":"https://registry.npmjs.org/@lydell/node-pty-linux-arm64/-/node-pty-linux-arm64-1.2.0-beta.15.tgz","integrity":"sha512-wkbNF7dYAmtJv+o2+iztVlNwnUB4B0uX0wh/UD+mwMcmE2gNMnW9GChXO7fEE5XJokD0vB5idiHpGegaN+G/sg==","optional":true,"os":["linux"],"cpu":["arm64"]},{"path":"node_modules/@lydell/node-pty-linux-x64","name":"@lydell/node-pty-linux-x64","version":"1.2.0-beta.15","resolved":"https://registry.npmjs.org/@lydell/node-pty-linux-x64/-/node-pty-linux-x64-1.2.0-beta.15.tgz","integrity":"sha512-+U/5AVvHT6W+8OCYcnJgN0Qgc0ycO3TfD6aaFJHK+WHij797f8gsi5dV1HEO9l6YQmWCD+VL5gaLDhx3mxHwCA==","optional":true,"os":["linux"],"cpu":["x64"]},{"path":"node_modules/@lydell/node-pty-win32-arm64","name":"@lydell/node-pty-win32-arm64","version":"1.2.0-beta.15","resolved":"https://registry.npmjs.org/@lydell/node-pty-win32-arm64/-/node-pty-win32-arm64-1.2.0-beta.15.tgz","integrity":"sha512-pyAk91w7wnnKrD4mrHXtIXRfmzSWV5bEzvRhurXcMCtCc2TJ424ciUskIgWMhAPP6y3KyUnqElj+U6kY3iOt0A==","optional":true,"os":["win32"],"cpu":["arm64"]},{"path":"node_modules/@lydell/node-pty-win32-x64","name":"@lydell/node-pty-win32-x64","version":"1.2.0-beta.15","resolved":"https://registry.npmjs.org/@lydell/node-pty-win32-x64/-/node-pty-win32-x64-1.2.0-beta.15.tgz","integrity":"sha512-2f8twEmDVxZ7drchAXjtevpmSPhFok0avAnzXro4t5gmz0xsPNKkoZvymwtuIS3xo7PzQqZOPQ/YzwEMb7oIzQ==","optional":true,"os":["win32"],"cpu":["x64"]},{"path":"node_modules/@modelcontextprotocol/sdk","name":"@modelcontextprotocol/sdk","version":"1.29.0","resolved":"https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.29.0.tgz","integrity":"sha512-zo37mZA9hJWpULgkRpowewez1y6ML5GsXJPY8FI0tBBCd77HEvza4jDqRKOXgHNn867PVGCyTdzqpz0izu5ZjQ=="},{"path":"node_modules/accepts","name":"accepts","version":"2.0.0","resolved":"https://registry.npmjs.org/accepts/-/accepts-2.0.0.tgz","integrity":"sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng=="},{"path":"node_modules/ajv","name":"ajv","version":"8.20.0","resolved":"https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz","integrity":"sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA=="},{"path":"node_modules/ajv-formats","name":"ajv-formats","version":"3.0.1","resolved":"https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz","integrity":"sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ=="},{"path":"node_modules/body-parser","name":"body-parser","version":"2.2.2","resolved":"https://registry.npmjs.org/body-parser/-/body-parser-2.2.2.tgz","integrity":"sha512-oP5VkATKlNwcgvxi0vM0p/D3n2C3EReYVX+DNYs5TjZFn/oQt2j+4sVJtSMr18pdRr8wjTcBl6LoV+FUwzPmNA=="},{"path":"node_modules/bytes","name":"bytes","version":"3.1.2","resolved":"https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz","integrity":"sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg=="},{"path":"node_modules/call-bind-apply-helpers","name":"call-bind-apply-helpers","version":"1.0.2","resolved":"https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz","integrity":"sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ=="},{"path":"node_modules/call-bound","name":"call-bound","version":"1.0.4","resolved":"https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz","integrity":"sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg=="},{"path":"node_modules/chownr","name":"chownr","version":"3.0.0","resolved":"https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz","integrity":"sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g=="},{"path":"node_modules/commander","name":"commander","version":"15.0.0","resolved":"https://registry.npmjs.org/commander/-/commander-15.0.0.tgz","integrity":"sha512-z67u4ZhzCL/Tydu1lJARtEZYWbWaN7oYLHbsuzocr6y4N6WZAagG3RQ4FW61V1/0+jImpj293XfrcYnd1qxtPg=="},{"path":"node_modules/content-disposition","name":"content-disposition","version":"1.1.0","resolved":"https://registry.npmjs.org/content-disposition/-/content-disposition-1.1.0.tgz","integrity":"sha512-5jRCH9Z/+DRP7rkvY83B+yGIGX96OYdJmzngqnw2SBSxqCFPd0w2km3s5iawpGX8krnwSGmF0FW5Nhr0Hfai3g=="},{"path":"node_modules/content-type","name":"content-type","version":"1.0.5","resolved":"https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz","integrity":"sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA=="},{"path":"node_modules/cookie","name":"cookie","version":"0.7.2","resolved":"https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz","integrity":"sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w=="},{"path":"node_modules/cookie-signature","name":"cookie-signature","version":"1.2.2","resolved":"https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.2.2.tgz","integrity":"sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg=="},{"path":"node_modules/cors","name":"cors","version":"2.8.6","resolved":"https://registry.npmjs.org/cors/-/cors-2.8.6.tgz","integrity":"sha512-tJtZBBHA6vjIAaF6EnIaq6laBBP9aq/Y3ouVJjEfoHbRBcHBAHYcMh/w8LDrk2PvIMMq8gmopa5D4V8RmbrxGw=="},{"path":"node_modules/cross-spawn","name":"cross-spawn","version":"7.0.6","resolved":"https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz","integrity":"sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA=="},{"path":"node_modules/debug","name":"debug","version":"4.4.3","resolved":"https://registry.npmjs.org/debug/-/debug-4.4.3.tgz","integrity":"sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA=="},{"path":"node_modules/depd","name":"depd","version":"2.0.0","resolved":"https://registry.npmjs.org/depd/-/depd-2.0.0.tgz","integrity":"sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw=="},{"path":"node_modules/dunder-proto","name":"dunder-proto","version":"1.0.1","resolved":"https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz","integrity":"sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A=="},{"path":"node_modules/ee-first","name":"ee-first","version":"1.1.1","resolved":"https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz","integrity":"sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow=="},{"path":"node_modules/encodeurl","name":"encodeurl","version":"2.0.0","resolved":"https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz","integrity":"sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg=="},{"path":"node_modules/es-define-property","name":"es-define-property","version":"1.0.1","resolved":"https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz","integrity":"sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g=="},{"path":"node_modules/es-errors","name":"es-errors","version":"1.3.0","resolved":"https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz","integrity":"sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw=="},{"path":"node_modules/es-object-atoms","name":"es-object-atoms","version":"1.1.2","resolved":"https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.2.tgz","integrity":"sha512-HWcBoN6NileqtSydK2FqHbS/LoDd2pqrnQHLyJzBj4kOp/ky2MWMN694xOfkK8/SnUsW2DH7EfyVlydKCsm1Zw=="},{"path":"node_modules/escape-html","name":"escape-html","version":"1.0.3","resolved":"https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz","integrity":"sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow=="},{"path":"node_modules/etag","name":"etag","version":"1.8.1","resolved":"https://registry.npmjs.org/etag/-/etag-1.8.1.tgz","integrity":"sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg=="},{"path":"node_modules/eventsource","name":"eventsource","version":"3.0.7","resolved":"https://registry.npmjs.org/eventsource/-/eventsource-3.0.7.tgz","integrity":"sha512-CRT1WTyuQoD771GW56XEZFQ/ZoSfWid1alKGDYMmkt2yl8UXrVR4pspqWNEcqKvVIzg6PAltWjxcSSPrboA4iA=="},{"path":"node_modules/eventsource-parser","name":"eventsource-parser","version":"3.0.8","resolved":"https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-3.0.8.tgz","integrity":"sha512-70QWGkr4snxr0OXLRWsFLeRBIRPuQOvt4s8QYjmUlmlkyTZkRqS7EDVRZtzU3TiyDbXSzaOeF0XUKy8PchzukQ=="},{"path":"node_modules/express","name":"express","version":"5.2.1","resolved":"https://registry.npmjs.org/express/-/express-5.2.1.tgz","integrity":"sha512-hIS4idWWai69NezIdRt2xFVofaF4j+6INOpJlVOLDO8zXGpUVEVzIYk12UUi2JzjEzWL3IOAxcTubgz9Po0yXw=="},{"path":"node_modules/express-rate-limit","name":"express-rate-limit","version":"8.5.1","resolved":"https://registry.npmjs.org/express-rate-limit/-/express-rate-limit-8.5.1.tgz","integrity":"sha512-5O6KYmyJEpuPJV5hNTXKbAHWRqrzyu+OI3vUnSd2kXFubIVpG7ezpgxQy76Zo5GQZtrQBg86hF+CM/NX+cioiQ=="},{"path":"node_modules/fast-deep-equal","name":"fast-deep-equal","version":"3.1.3","resolved":"https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz","integrity":"sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="},{"path":"node_modules/fast-uri","name":"fast-uri","version":"3.1.2","resolved":"https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.2.tgz","integrity":"sha512-rVjf7ArG3LTk+FS6Yw81V1DLuZl1bRbNrev6Tmd/9RaroeeRRJhAt7jg/6YFxbvAQXUCavSoZhPPj6oOx+5KjQ=="},{"path":"node_modules/finalhandler","name":"finalhandler","version":"2.1.1","resolved":"https://registry.npmjs.org/finalhandler/-/finalhandler-2.1.1.tgz","integrity":"sha512-S8KoZgRZN+a5rNwqTxlZZePjT/4cnm0ROV70LedRHZ0p8u9fRID0hJUZQpkKLzro8LfmC8sx23bY6tVNxv8pQA=="},{"path":"node_modules/forwarded","name":"forwarded","version":"0.2.0","resolved":"https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz","integrity":"sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow=="},{"path":"node_modules/fresh","name":"fresh","version":"2.0.0","resolved":"https://registry.npmjs.org/fresh/-/fresh-2.0.0.tgz","integrity":"sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A=="},{"path":"node_modules/function-bind","name":"function-bind","version":"1.1.2","resolved":"https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz","integrity":"sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA=="},{"path":"node_modules/get-intrinsic","name":"get-intrinsic","version":"1.3.0","resolved":"https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz","integrity":"sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ=="},{"path":"node_modules/get-proto","name":"get-proto","version":"1.0.1","resolved":"https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz","integrity":"sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g=="},{"path":"node_modules/gopd","name":"gopd","version":"1.2.0","resolved":"https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz","integrity":"sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg=="},{"path":"node_modules/has-symbols","name":"has-symbols","version":"1.1.0","resolved":"https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz","integrity":"sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ=="},{"path":"node_modules/hasown","name":"hasown","version":"2.0.4","resolved":"https://registry.npmjs.org/hasown/-/hasown-2.0.4.tgz","integrity":"sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A=="},{"path":"node_modules/hono","name":"hono","version":"4.12.28","resolved":"https://registry.npmjs.org/hono/-/hono-4.12.28.tgz","integrity":"sha512-YwUvVpSF7m1yOblFPrU3Hbo8XhPheBoiyfGuII6z19LnOr6JpDnyyp7LFNrfV56wS8tpvtBFGRISHN02pDdLOA=="},{"path":"node_modules/http-errors","name":"http-errors","version":"2.0.1","resolved":"https://registry.npmjs.org/http-errors/-/http-errors-2.0.1.tgz","integrity":"sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ=="},{"path":"node_modules/iconv-lite","name":"iconv-lite","version":"0.7.2","resolved":"https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.7.2.tgz","integrity":"sha512-im9DjEDQ55s9fL4EYzOAv0yMqmMBSZp6G0VvFyTMPKWxiSBHUj9NW/qqLmXUwXrrM7AvqSlTCfvqRb0cM8yYqw=="},{"path":"node_modules/inherits","name":"inherits","version":"2.0.4","resolved":"https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz","integrity":"sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="},{"path":"node_modules/ip-address","name":"ip-address","version":"10.2.0","resolved":"https://registry.npmjs.org/ip-address/-/ip-address-10.2.0.tgz","integrity":"sha512-/+S6j4E9AHvW9SWMSEY9Xfy66O5PWvVEJ08O0y5JGyEKQpojb0K0GKpz/v5HJ/G0vi3D2sjGK78119oXZeE0qA=="},{"path":"node_modules/ipaddr.js","name":"ipaddr.js","version":"1.9.1","resolved":"https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz","integrity":"sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g=="},{"path":"node_modules/is-promise","name":"is-promise","version":"4.0.0","resolved":"https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz","integrity":"sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ=="},{"path":"node_modules/isexe","name":"isexe","version":"2.0.0","resolved":"https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz","integrity":"sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw=="},{"path":"node_modules/jose","name":"jose","version":"6.2.3","resolved":"https://registry.npmjs.org/jose/-/jose-6.2.3.tgz","integrity":"sha512-YYVDInQKFJfR/xa3ojUTl8c2KoTwiL1R5Wg9YCydwH0x0B9grbzlg5HC7mMjCtUJjbQ/YnGEZIhI5tCgfTb4Hw=="},{"path":"node_modules/json-schema-traverse","name":"json-schema-traverse","version":"1.0.0","resolved":"https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz","integrity":"sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug=="},{"path":"node_modules/json-schema-typed","name":"json-schema-typed","version":"8.0.2","resolved":"https://registry.npmjs.org/json-schema-typed/-/json-schema-typed-8.0.2.tgz","integrity":"sha512-fQhoXdcvc3V28x7C7BMs4P5+kNlgUURe2jmUT1T//oBRMDrqy1QPelJimwZGo7Hg9VPV3EQV5Bnq4hbFy2vetA=="},{"path":"node_modules/math-intrinsics","name":"math-intrinsics","version":"1.1.0","resolved":"https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz","integrity":"sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g=="},{"path":"node_modules/media-typer","name":"media-typer","version":"1.1.0","resolved":"https://registry.npmjs.org/media-typer/-/media-typer-1.1.0.tgz","integrity":"sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw=="},{"path":"node_modules/merge-descriptors","name":"merge-descriptors","version":"2.0.0","resolved":"https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-2.0.0.tgz","integrity":"sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g=="},{"path":"node_modules/mime-db","name":"mime-db","version":"1.54.0","resolved":"https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz","integrity":"sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ=="},{"path":"node_modules/mime-types","name":"mime-types","version":"3.0.2","resolved":"https://registry.npmjs.org/mime-types/-/mime-types-3.0.2.tgz","integrity":"sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A=="},{"path":"node_modules/minipass","name":"minipass","version":"7.1.3","resolved":"https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz","integrity":"sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A=="},{"path":"node_modules/minizlib","name":"minizlib","version":"3.1.0","resolved":"https://registry.npmjs.org/minizlib/-/minizlib-3.1.0.tgz","integrity":"sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw=="},{"path":"node_modules/ms","name":"ms","version":"2.1.3","resolved":"https://registry.npmjs.org/ms/-/ms-2.1.3.tgz","integrity":"sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="},{"path":"node_modules/negotiator","name":"negotiator","version":"1.0.0","resolved":"https://registry.npmjs.org/negotiator/-/negotiator-1.0.0.tgz","integrity":"sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg=="},{"path":"node_modules/object-assign","name":"object-assign","version":"4.1.1","resolved":"https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz","integrity":"sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg=="},{"path":"node_modules/object-inspect","name":"object-inspect","version":"1.13.4","resolved":"https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz","integrity":"sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew=="},{"path":"node_modules/on-finished","name":"on-finished","version":"2.4.1","resolved":"https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz","integrity":"sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg=="},{"path":"node_modules/once","name":"once","version":"1.4.0","resolved":"https://registry.npmjs.org/once/-/once-1.4.0.tgz","integrity":"sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w=="},{"path":"node_modules/parseurl","name":"parseurl","version":"1.3.3","resolved":"https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz","integrity":"sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ=="},{"path":"node_modules/path-key","name":"path-key","version":"3.1.1","resolved":"https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz","integrity":"sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q=="},{"path":"node_modules/path-to-regexp","name":"path-to-regexp","version":"8.4.2","resolved":"https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.4.2.tgz","integrity":"sha512-qRcuIdP69NPm4qbACK+aDogI5CBDMi1jKe0ry5rSQJz8JVLsC7jV8XpiJjGRLLol3N+R5ihGYcrPLTno6pAdBA=="},{"path":"node_modules/pkce-challenge","name":"pkce-challenge","version":"5.0.1","resolved":"https://registry.npmjs.org/pkce-challenge/-/pkce-challenge-5.0.1.tgz","integrity":"sha512-wQ0b/W4Fr01qtpHlqSqspcj3EhBvimsdh0KlHhH8HRZnMsEa0ea2fTULOXOS9ccQr3om+GcGRk4e+isrZWV8qQ=="},{"path":"node_modules/proxy-addr","name":"proxy-addr","version":"2.0.7","resolved":"https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz","integrity":"sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg=="},{"path":"node_modules/qs","name":"qs","version":"6.15.3","resolved":"https://registry.npmjs.org/qs/-/qs-6.15.3.tgz","integrity":"sha512-O9gl3zCl5h5blw1KGUzQKhA5oUXSl8rwUIM5o0S3nCXMliSvy5Dzx7/DJcI+SwgICv+IneSZwhBh1oSyEHA71A=="},{"path":"node_modules/range-parser","name":"range-parser","version":"1.2.1","resolved":"https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz","integrity":"sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg=="},{"path":"node_modules/raw-body","name":"raw-body","version":"3.0.2","resolved":"https://registry.npmjs.org/raw-body/-/raw-body-3.0.2.tgz","integrity":"sha512-K5zQjDllxWkf7Z5xJdV0/B0WTNqx6vxG70zJE4N0kBs4LovmEYWJzQGxC9bS9RAKu3bgM40lrd5zoLJ12MQ5BA=="},{"path":"node_modules/require-from-string","name":"require-from-string","version":"2.0.2","resolved":"https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz","integrity":"sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw=="},{"path":"node_modules/router","name":"router","version":"2.2.0","resolved":"https://registry.npmjs.org/router/-/router-2.2.0.tgz","integrity":"sha512-nLTrUKm2UyiL7rlhapu/Zl45FwNgkZGaCpZbIHajDYgwlJCOzLSk+cIPAnsEqV955GjILJnKbdQC1nVPz+gAYQ=="},{"path":"node_modules/safer-buffer","name":"safer-buffer","version":"2.1.2","resolved":"https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz","integrity":"sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="},{"path":"node_modules/semver","name":"semver","version":"7.8.5","resolved":"https://registry.npmjs.org/semver/-/semver-7.8.5.tgz","integrity":"sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA=="},{"path":"node_modules/send","name":"send","version":"1.2.1","resolved":"https://registry.npmjs.org/send/-/send-1.2.1.tgz","integrity":"sha512-1gnZf7DFcoIcajTjTwjwuDjzuz4PPcY2StKPlsGAQ1+YH20IRVrBaXSWmdjowTJ6u8Rc01PoYOGHXfP1mYcZNQ=="},{"path":"node_modules/serve-static","name":"serve-static","version":"2.2.1","resolved":"https://registry.npmjs.org/serve-static/-/serve-static-2.2.1.tgz","integrity":"sha512-xRXBn0pPqQTVQiC8wyQrKs2MOlX24zQ0POGaj0kultvoOCstBQM5yvOhAVSUwOMjQtTvsPWoNCHfPGwaaQJhTw=="},{"path":"node_modules/setprototypeof","name":"setprototypeof","version":"1.2.0","resolved":"https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz","integrity":"sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw=="},{"path":"node_modules/shebang-command","name":"shebang-command","version":"2.0.0","resolved":"https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz","integrity":"sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA=="},{"path":"node_modules/shebang-regex","name":"shebang-regex","version":"3.0.0","resolved":"https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz","integrity":"sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A=="},{"path":"node_modules/side-channel","name":"side-channel","version":"1.1.1","resolved":"https://registry.npmjs.org/side-channel/-/side-channel-1.1.1.tgz","integrity":"sha512-6x6dK6zJdpTzF4sQeNYxwtvBzf6Eg4GtlesS94HOvTudUeyK2WXAaIfmDgsyslYrRBeFIlsi54AYsFGUuhmvrQ=="},{"path":"node_modules/side-channel-list","name":"side-channel-list","version":"1.0.1","resolved":"https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.1.tgz","integrity":"sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w=="},{"path":"node_modules/side-channel-map","name":"side-channel-map","version":"1.0.1","resolved":"https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz","integrity":"sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA=="},{"path":"node_modules/side-channel-weakmap","name":"side-channel-weakmap","version":"1.0.2","resolved":"https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz","integrity":"sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A=="},{"path":"node_modules/smol-toml","name":"smol-toml","version":"1.8.0","resolved":"https://registry.npmjs.org/smol-toml/-/smol-toml-1.8.0.tgz","integrity":"sha512-kCZr2V3ch9i00x8zXRhjUNVcjG9ijES5dDudkXvUVCT5QlJNQWElSJdZqyPemffHoLNUYwOcou0Fy+ojN0uHSQ=="},{"path":"node_modules/statuses","name":"statuses","version":"2.0.2","resolved":"https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz","integrity":"sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw=="},{"path":"node_modules/tar","name":"tar","version":"7.5.22","resolved":"https://registry.npmjs.org/tar/-/tar-7.5.22.tgz","integrity":"sha512-MFO/QzvtAOmJbkhOaCTvbGcFN9L9b+JunIsDwaKljSOdcLMea3NJ1k9Usz/rjdfSXTq4dfzfeS7W4p4YOAAHeA=="},{"path":"node_modules/toidentifier","name":"toidentifier","version":"1.0.1","resolved":"https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz","integrity":"sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA=="},{"path":"node_modules/type-is","name":"type-is","version":"2.0.1","resolved":"https://registry.npmjs.org/type-is/-/type-is-2.0.1.tgz","integrity":"sha512-OZs6gsjF4vMp32qrCbiVSkrFmXtG/AZhY3t0iAMrMBiAZyV9oALtXO8hsrHbMXF9x6L3grlFuwW2oAz7cav+Gw=="},{"path":"node_modules/unpipe","name":"unpipe","version":"1.0.0","resolved":"https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz","integrity":"sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ=="},{"path":"node_modules/vary","name":"vary","version":"1.1.2","resolved":"https://registry.npmjs.org/vary/-/vary-1.1.2.tgz","integrity":"sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg=="},{"path":"node_modules/which","name":"which","version":"2.0.2","resolved":"https://registry.npmjs.org/which/-/which-2.0.2.tgz","integrity":"sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA=="},{"path":"node_modules/wrappy","name":"wrappy","version":"1.0.2","resolved":"https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz","integrity":"sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="},{"path":"node_modules/yallist","name":"yallist","version":"5.0.0","resolved":"https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz","integrity":"sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw=="},{"path":"node_modules/zod","name":"zod","version":"4.4.3","resolved":"https://registry.npmjs.org/zod/-/zod-4.4.3.tgz","integrity":"sha512-ytENFjIJFl2UwYglde2jchW2Hwm4GJFLDiSXWdTrJQBIN9Fcyp7n4DhxJEiWNAJMV1/BqWfW/kkg71UDcHJyTQ=="},{"path":"node_modules/zod-to-json-schema","name":"zod-to-json-schema","version":"3.25.2","resolved":"https://registry.npmjs.org/zod-to-json-schema/-/zod-to-json-schema-3.25.2.tgz","integrity":"sha512-O/PgfnpT1xKSDeQYSCfRI5Gy3hPf91mKVDuYLUHZJMiDFptvP41MSnWofm8dnCm0256ZNfZIM7DSzuSMAFnjHA=="}]}
|
|
1
|
+
{"version":1,"bootstrap":1,"name":"@heyditto/cli","packageVersion":"3.0.0","packages":[{"path":"node_modules/@hono/node-server","name":"@hono/node-server","version":"1.19.14","resolved":"https://registry.npmjs.org/@hono/node-server/-/node-server-1.19.14.tgz","integrity":"sha512-GwtvgtXxnWsucXvbQXkRgqksiH2Qed37H9xHZocE5sA3N8O8O8/8FA3uclQXxXVzc9XBZuEOMK7+r02FmSpHtw=="},{"path":"node_modules/@isaacs/fs-minipass","name":"@isaacs/fs-minipass","version":"4.0.1","resolved":"https://registry.npmjs.org/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz","integrity":"sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w=="},{"path":"node_modules/@lydell/node-pty","name":"@lydell/node-pty","version":"1.2.0-beta.15","resolved":"https://registry.npmjs.org/@lydell/node-pty/-/node-pty-1.2.0-beta.15.tgz","integrity":"sha512-Br8wBxzbxFwdWgk9uQ+rdzE0xfoxOK4QuGH54swhRwc5IxP6H9Y1/bcyazRGvNUs6XkB5qNVkezuKSRxUwZe7A==","optional":true},{"path":"node_modules/@lydell/node-pty-darwin-arm64","name":"@lydell/node-pty-darwin-arm64","version":"1.2.0-beta.15","resolved":"https://registry.npmjs.org/@lydell/node-pty-darwin-arm64/-/node-pty-darwin-arm64-1.2.0-beta.15.tgz","integrity":"sha512-6TSBbzdcLiNTHl1mTuzflqXrkmcC36USVGvERoDgvHk2ItEDaMaFZuAJ1CqPmwYj0DyhCS16TVS8OGK9xZnjyQ==","optional":true,"os":["darwin"],"cpu":["arm64"]},{"path":"node_modules/@lydell/node-pty-darwin-x64","name":"@lydell/node-pty-darwin-x64","version":"1.2.0-beta.15","resolved":"https://registry.npmjs.org/@lydell/node-pty-darwin-x64/-/node-pty-darwin-x64-1.2.0-beta.15.tgz","integrity":"sha512-yDT2oqPqYMBScyuk1U9Rg5VKcrbMOD9o9jWYYamDADA3NSbUISroPChrqYRQ74Y7BQtNH4gqYAiWOZRi5uQZ0Q==","optional":true,"os":["darwin"],"cpu":["x64"]},{"path":"node_modules/@lydell/node-pty-linux-arm64","name":"@lydell/node-pty-linux-arm64","version":"1.2.0-beta.15","resolved":"https://registry.npmjs.org/@lydell/node-pty-linux-arm64/-/node-pty-linux-arm64-1.2.0-beta.15.tgz","integrity":"sha512-wkbNF7dYAmtJv+o2+iztVlNwnUB4B0uX0wh/UD+mwMcmE2gNMnW9GChXO7fEE5XJokD0vB5idiHpGegaN+G/sg==","optional":true,"os":["linux"],"cpu":["arm64"]},{"path":"node_modules/@lydell/node-pty-linux-x64","name":"@lydell/node-pty-linux-x64","version":"1.2.0-beta.15","resolved":"https://registry.npmjs.org/@lydell/node-pty-linux-x64/-/node-pty-linux-x64-1.2.0-beta.15.tgz","integrity":"sha512-+U/5AVvHT6W+8OCYcnJgN0Qgc0ycO3TfD6aaFJHK+WHij797f8gsi5dV1HEO9l6YQmWCD+VL5gaLDhx3mxHwCA==","optional":true,"os":["linux"],"cpu":["x64"]},{"path":"node_modules/@lydell/node-pty-win32-arm64","name":"@lydell/node-pty-win32-arm64","version":"1.2.0-beta.15","resolved":"https://registry.npmjs.org/@lydell/node-pty-win32-arm64/-/node-pty-win32-arm64-1.2.0-beta.15.tgz","integrity":"sha512-pyAk91w7wnnKrD4mrHXtIXRfmzSWV5bEzvRhurXcMCtCc2TJ424ciUskIgWMhAPP6y3KyUnqElj+U6kY3iOt0A==","optional":true,"os":["win32"],"cpu":["arm64"]},{"path":"node_modules/@lydell/node-pty-win32-x64","name":"@lydell/node-pty-win32-x64","version":"1.2.0-beta.15","resolved":"https://registry.npmjs.org/@lydell/node-pty-win32-x64/-/node-pty-win32-x64-1.2.0-beta.15.tgz","integrity":"sha512-2f8twEmDVxZ7drchAXjtevpmSPhFok0avAnzXro4t5gmz0xsPNKkoZvymwtuIS3xo7PzQqZOPQ/YzwEMb7oIzQ==","optional":true,"os":["win32"],"cpu":["x64"]},{"path":"node_modules/@modelcontextprotocol/sdk","name":"@modelcontextprotocol/sdk","version":"1.29.0","resolved":"https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.29.0.tgz","integrity":"sha512-zo37mZA9hJWpULgkRpowewez1y6ML5GsXJPY8FI0tBBCd77HEvza4jDqRKOXgHNn867PVGCyTdzqpz0izu5ZjQ=="},{"path":"node_modules/accepts","name":"accepts","version":"2.0.0","resolved":"https://registry.npmjs.org/accepts/-/accepts-2.0.0.tgz","integrity":"sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng=="},{"path":"node_modules/ajv","name":"ajv","version":"8.20.0","resolved":"https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz","integrity":"sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA=="},{"path":"node_modules/ajv-formats","name":"ajv-formats","version":"3.0.1","resolved":"https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz","integrity":"sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ=="},{"path":"node_modules/body-parser","name":"body-parser","version":"2.2.2","resolved":"https://registry.npmjs.org/body-parser/-/body-parser-2.2.2.tgz","integrity":"sha512-oP5VkATKlNwcgvxi0vM0p/D3n2C3EReYVX+DNYs5TjZFn/oQt2j+4sVJtSMr18pdRr8wjTcBl6LoV+FUwzPmNA=="},{"path":"node_modules/bytes","name":"bytes","version":"3.1.2","resolved":"https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz","integrity":"sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg=="},{"path":"node_modules/call-bind-apply-helpers","name":"call-bind-apply-helpers","version":"1.0.2","resolved":"https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz","integrity":"sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ=="},{"path":"node_modules/call-bound","name":"call-bound","version":"1.0.4","resolved":"https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz","integrity":"sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg=="},{"path":"node_modules/chownr","name":"chownr","version":"3.0.0","resolved":"https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz","integrity":"sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g=="},{"path":"node_modules/commander","name":"commander","version":"15.0.0","resolved":"https://registry.npmjs.org/commander/-/commander-15.0.0.tgz","integrity":"sha512-z67u4ZhzCL/Tydu1lJARtEZYWbWaN7oYLHbsuzocr6y4N6WZAagG3RQ4FW61V1/0+jImpj293XfrcYnd1qxtPg=="},{"path":"node_modules/content-disposition","name":"content-disposition","version":"1.1.0","resolved":"https://registry.npmjs.org/content-disposition/-/content-disposition-1.1.0.tgz","integrity":"sha512-5jRCH9Z/+DRP7rkvY83B+yGIGX96OYdJmzngqnw2SBSxqCFPd0w2km3s5iawpGX8krnwSGmF0FW5Nhr0Hfai3g=="},{"path":"node_modules/content-type","name":"content-type","version":"1.0.5","resolved":"https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz","integrity":"sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA=="},{"path":"node_modules/cookie","name":"cookie","version":"0.7.2","resolved":"https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz","integrity":"sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w=="},{"path":"node_modules/cookie-signature","name":"cookie-signature","version":"1.2.2","resolved":"https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.2.2.tgz","integrity":"sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg=="},{"path":"node_modules/cors","name":"cors","version":"2.8.6","resolved":"https://registry.npmjs.org/cors/-/cors-2.8.6.tgz","integrity":"sha512-tJtZBBHA6vjIAaF6EnIaq6laBBP9aq/Y3ouVJjEfoHbRBcHBAHYcMh/w8LDrk2PvIMMq8gmopa5D4V8RmbrxGw=="},{"path":"node_modules/cross-spawn","name":"cross-spawn","version":"7.0.6","resolved":"https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz","integrity":"sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA=="},{"path":"node_modules/debug","name":"debug","version":"4.4.3","resolved":"https://registry.npmjs.org/debug/-/debug-4.4.3.tgz","integrity":"sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA=="},{"path":"node_modules/depd","name":"depd","version":"2.0.0","resolved":"https://registry.npmjs.org/depd/-/depd-2.0.0.tgz","integrity":"sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw=="},{"path":"node_modules/dunder-proto","name":"dunder-proto","version":"1.0.1","resolved":"https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz","integrity":"sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A=="},{"path":"node_modules/ee-first","name":"ee-first","version":"1.1.1","resolved":"https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz","integrity":"sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow=="},{"path":"node_modules/encodeurl","name":"encodeurl","version":"2.0.0","resolved":"https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz","integrity":"sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg=="},{"path":"node_modules/es-define-property","name":"es-define-property","version":"1.0.1","resolved":"https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz","integrity":"sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g=="},{"path":"node_modules/es-errors","name":"es-errors","version":"1.3.0","resolved":"https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz","integrity":"sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw=="},{"path":"node_modules/es-object-atoms","name":"es-object-atoms","version":"1.1.2","resolved":"https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.2.tgz","integrity":"sha512-HWcBoN6NileqtSydK2FqHbS/LoDd2pqrnQHLyJzBj4kOp/ky2MWMN694xOfkK8/SnUsW2DH7EfyVlydKCsm1Zw=="},{"path":"node_modules/escape-html","name":"escape-html","version":"1.0.3","resolved":"https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz","integrity":"sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow=="},{"path":"node_modules/etag","name":"etag","version":"1.8.1","resolved":"https://registry.npmjs.org/etag/-/etag-1.8.1.tgz","integrity":"sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg=="},{"path":"node_modules/eventsource","name":"eventsource","version":"3.0.7","resolved":"https://registry.npmjs.org/eventsource/-/eventsource-3.0.7.tgz","integrity":"sha512-CRT1WTyuQoD771GW56XEZFQ/ZoSfWid1alKGDYMmkt2yl8UXrVR4pspqWNEcqKvVIzg6PAltWjxcSSPrboA4iA=="},{"path":"node_modules/eventsource-parser","name":"eventsource-parser","version":"3.0.8","resolved":"https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-3.0.8.tgz","integrity":"sha512-70QWGkr4snxr0OXLRWsFLeRBIRPuQOvt4s8QYjmUlmlkyTZkRqS7EDVRZtzU3TiyDbXSzaOeF0XUKy8PchzukQ=="},{"path":"node_modules/express","name":"express","version":"5.2.1","resolved":"https://registry.npmjs.org/express/-/express-5.2.1.tgz","integrity":"sha512-hIS4idWWai69NezIdRt2xFVofaF4j+6INOpJlVOLDO8zXGpUVEVzIYk12UUi2JzjEzWL3IOAxcTubgz9Po0yXw=="},{"path":"node_modules/express-rate-limit","name":"express-rate-limit","version":"8.5.1","resolved":"https://registry.npmjs.org/express-rate-limit/-/express-rate-limit-8.5.1.tgz","integrity":"sha512-5O6KYmyJEpuPJV5hNTXKbAHWRqrzyu+OI3vUnSd2kXFubIVpG7ezpgxQy76Zo5GQZtrQBg86hF+CM/NX+cioiQ=="},{"path":"node_modules/fast-deep-equal","name":"fast-deep-equal","version":"3.1.3","resolved":"https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz","integrity":"sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="},{"path":"node_modules/fast-uri","name":"fast-uri","version":"3.1.2","resolved":"https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.2.tgz","integrity":"sha512-rVjf7ArG3LTk+FS6Yw81V1DLuZl1bRbNrev6Tmd/9RaroeeRRJhAt7jg/6YFxbvAQXUCavSoZhPPj6oOx+5KjQ=="},{"path":"node_modules/finalhandler","name":"finalhandler","version":"2.1.1","resolved":"https://registry.npmjs.org/finalhandler/-/finalhandler-2.1.1.tgz","integrity":"sha512-S8KoZgRZN+a5rNwqTxlZZePjT/4cnm0ROV70LedRHZ0p8u9fRID0hJUZQpkKLzro8LfmC8sx23bY6tVNxv8pQA=="},{"path":"node_modules/forwarded","name":"forwarded","version":"0.2.0","resolved":"https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz","integrity":"sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow=="},{"path":"node_modules/fresh","name":"fresh","version":"2.0.0","resolved":"https://registry.npmjs.org/fresh/-/fresh-2.0.0.tgz","integrity":"sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A=="},{"path":"node_modules/function-bind","name":"function-bind","version":"1.1.2","resolved":"https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz","integrity":"sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA=="},{"path":"node_modules/get-intrinsic","name":"get-intrinsic","version":"1.3.0","resolved":"https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz","integrity":"sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ=="},{"path":"node_modules/get-proto","name":"get-proto","version":"1.0.1","resolved":"https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz","integrity":"sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g=="},{"path":"node_modules/gopd","name":"gopd","version":"1.2.0","resolved":"https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz","integrity":"sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg=="},{"path":"node_modules/has-symbols","name":"has-symbols","version":"1.1.0","resolved":"https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz","integrity":"sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ=="},{"path":"node_modules/hasown","name":"hasown","version":"2.0.4","resolved":"https://registry.npmjs.org/hasown/-/hasown-2.0.4.tgz","integrity":"sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A=="},{"path":"node_modules/hono","name":"hono","version":"4.12.28","resolved":"https://registry.npmjs.org/hono/-/hono-4.12.28.tgz","integrity":"sha512-YwUvVpSF7m1yOblFPrU3Hbo8XhPheBoiyfGuII6z19LnOr6JpDnyyp7LFNrfV56wS8tpvtBFGRISHN02pDdLOA=="},{"path":"node_modules/http-errors","name":"http-errors","version":"2.0.1","resolved":"https://registry.npmjs.org/http-errors/-/http-errors-2.0.1.tgz","integrity":"sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ=="},{"path":"node_modules/iconv-lite","name":"iconv-lite","version":"0.7.2","resolved":"https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.7.2.tgz","integrity":"sha512-im9DjEDQ55s9fL4EYzOAv0yMqmMBSZp6G0VvFyTMPKWxiSBHUj9NW/qqLmXUwXrrM7AvqSlTCfvqRb0cM8yYqw=="},{"path":"node_modules/inherits","name":"inherits","version":"2.0.4","resolved":"https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz","integrity":"sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="},{"path":"node_modules/ip-address","name":"ip-address","version":"10.2.0","resolved":"https://registry.npmjs.org/ip-address/-/ip-address-10.2.0.tgz","integrity":"sha512-/+S6j4E9AHvW9SWMSEY9Xfy66O5PWvVEJ08O0y5JGyEKQpojb0K0GKpz/v5HJ/G0vi3D2sjGK78119oXZeE0qA=="},{"path":"node_modules/ipaddr.js","name":"ipaddr.js","version":"1.9.1","resolved":"https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz","integrity":"sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g=="},{"path":"node_modules/is-promise","name":"is-promise","version":"4.0.0","resolved":"https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz","integrity":"sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ=="},{"path":"node_modules/isexe","name":"isexe","version":"2.0.0","resolved":"https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz","integrity":"sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw=="},{"path":"node_modules/jose","name":"jose","version":"6.2.3","resolved":"https://registry.npmjs.org/jose/-/jose-6.2.3.tgz","integrity":"sha512-YYVDInQKFJfR/xa3ojUTl8c2KoTwiL1R5Wg9YCydwH0x0B9grbzlg5HC7mMjCtUJjbQ/YnGEZIhI5tCgfTb4Hw=="},{"path":"node_modules/json-schema-traverse","name":"json-schema-traverse","version":"1.0.0","resolved":"https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz","integrity":"sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug=="},{"path":"node_modules/json-schema-typed","name":"json-schema-typed","version":"8.0.2","resolved":"https://registry.npmjs.org/json-schema-typed/-/json-schema-typed-8.0.2.tgz","integrity":"sha512-fQhoXdcvc3V28x7C7BMs4P5+kNlgUURe2jmUT1T//oBRMDrqy1QPelJimwZGo7Hg9VPV3EQV5Bnq4hbFy2vetA=="},{"path":"node_modules/math-intrinsics","name":"math-intrinsics","version":"1.1.0","resolved":"https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz","integrity":"sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g=="},{"path":"node_modules/media-typer","name":"media-typer","version":"1.1.0","resolved":"https://registry.npmjs.org/media-typer/-/media-typer-1.1.0.tgz","integrity":"sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw=="},{"path":"node_modules/merge-descriptors","name":"merge-descriptors","version":"2.0.0","resolved":"https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-2.0.0.tgz","integrity":"sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g=="},{"path":"node_modules/mime-db","name":"mime-db","version":"1.54.0","resolved":"https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz","integrity":"sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ=="},{"path":"node_modules/mime-types","name":"mime-types","version":"3.0.2","resolved":"https://registry.npmjs.org/mime-types/-/mime-types-3.0.2.tgz","integrity":"sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A=="},{"path":"node_modules/minipass","name":"minipass","version":"7.1.3","resolved":"https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz","integrity":"sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A=="},{"path":"node_modules/minizlib","name":"minizlib","version":"3.1.0","resolved":"https://registry.npmjs.org/minizlib/-/minizlib-3.1.0.tgz","integrity":"sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw=="},{"path":"node_modules/ms","name":"ms","version":"2.1.3","resolved":"https://registry.npmjs.org/ms/-/ms-2.1.3.tgz","integrity":"sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="},{"path":"node_modules/negotiator","name":"negotiator","version":"1.0.0","resolved":"https://registry.npmjs.org/negotiator/-/negotiator-1.0.0.tgz","integrity":"sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg=="},{"path":"node_modules/object-assign","name":"object-assign","version":"4.1.1","resolved":"https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz","integrity":"sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg=="},{"path":"node_modules/object-inspect","name":"object-inspect","version":"1.13.4","resolved":"https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz","integrity":"sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew=="},{"path":"node_modules/on-finished","name":"on-finished","version":"2.4.1","resolved":"https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz","integrity":"sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg=="},{"path":"node_modules/once","name":"once","version":"1.4.0","resolved":"https://registry.npmjs.org/once/-/once-1.4.0.tgz","integrity":"sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w=="},{"path":"node_modules/parseurl","name":"parseurl","version":"1.3.3","resolved":"https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz","integrity":"sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ=="},{"path":"node_modules/path-key","name":"path-key","version":"3.1.1","resolved":"https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz","integrity":"sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q=="},{"path":"node_modules/path-to-regexp","name":"path-to-regexp","version":"8.4.2","resolved":"https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.4.2.tgz","integrity":"sha512-qRcuIdP69NPm4qbACK+aDogI5CBDMi1jKe0ry5rSQJz8JVLsC7jV8XpiJjGRLLol3N+R5ihGYcrPLTno6pAdBA=="},{"path":"node_modules/pkce-challenge","name":"pkce-challenge","version":"5.0.1","resolved":"https://registry.npmjs.org/pkce-challenge/-/pkce-challenge-5.0.1.tgz","integrity":"sha512-wQ0b/W4Fr01qtpHlqSqspcj3EhBvimsdh0KlHhH8HRZnMsEa0ea2fTULOXOS9ccQr3om+GcGRk4e+isrZWV8qQ=="},{"path":"node_modules/proxy-addr","name":"proxy-addr","version":"2.0.7","resolved":"https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz","integrity":"sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg=="},{"path":"node_modules/qs","name":"qs","version":"6.15.3","resolved":"https://registry.npmjs.org/qs/-/qs-6.15.3.tgz","integrity":"sha512-O9gl3zCl5h5blw1KGUzQKhA5oUXSl8rwUIM5o0S3nCXMliSvy5Dzx7/DJcI+SwgICv+IneSZwhBh1oSyEHA71A=="},{"path":"node_modules/range-parser","name":"range-parser","version":"1.2.1","resolved":"https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz","integrity":"sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg=="},{"path":"node_modules/raw-body","name":"raw-body","version":"3.0.2","resolved":"https://registry.npmjs.org/raw-body/-/raw-body-3.0.2.tgz","integrity":"sha512-K5zQjDllxWkf7Z5xJdV0/B0WTNqx6vxG70zJE4N0kBs4LovmEYWJzQGxC9bS9RAKu3bgM40lrd5zoLJ12MQ5BA=="},{"path":"node_modules/require-from-string","name":"require-from-string","version":"2.0.2","resolved":"https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz","integrity":"sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw=="},{"path":"node_modules/router","name":"router","version":"2.2.0","resolved":"https://registry.npmjs.org/router/-/router-2.2.0.tgz","integrity":"sha512-nLTrUKm2UyiL7rlhapu/Zl45FwNgkZGaCpZbIHajDYgwlJCOzLSk+cIPAnsEqV955GjILJnKbdQC1nVPz+gAYQ=="},{"path":"node_modules/safer-buffer","name":"safer-buffer","version":"2.1.2","resolved":"https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz","integrity":"sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="},{"path":"node_modules/semver","name":"semver","version":"7.8.5","resolved":"https://registry.npmjs.org/semver/-/semver-7.8.5.tgz","integrity":"sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA=="},{"path":"node_modules/send","name":"send","version":"1.2.1","resolved":"https://registry.npmjs.org/send/-/send-1.2.1.tgz","integrity":"sha512-1gnZf7DFcoIcajTjTwjwuDjzuz4PPcY2StKPlsGAQ1+YH20IRVrBaXSWmdjowTJ6u8Rc01PoYOGHXfP1mYcZNQ=="},{"path":"node_modules/serve-static","name":"serve-static","version":"2.2.1","resolved":"https://registry.npmjs.org/serve-static/-/serve-static-2.2.1.tgz","integrity":"sha512-xRXBn0pPqQTVQiC8wyQrKs2MOlX24zQ0POGaj0kultvoOCstBQM5yvOhAVSUwOMjQtTvsPWoNCHfPGwaaQJhTw=="},{"path":"node_modules/setprototypeof","name":"setprototypeof","version":"1.2.0","resolved":"https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz","integrity":"sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw=="},{"path":"node_modules/shebang-command","name":"shebang-command","version":"2.0.0","resolved":"https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz","integrity":"sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA=="},{"path":"node_modules/shebang-regex","name":"shebang-regex","version":"3.0.0","resolved":"https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz","integrity":"sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A=="},{"path":"node_modules/side-channel","name":"side-channel","version":"1.1.1","resolved":"https://registry.npmjs.org/side-channel/-/side-channel-1.1.1.tgz","integrity":"sha512-6x6dK6zJdpTzF4sQeNYxwtvBzf6Eg4GtlesS94HOvTudUeyK2WXAaIfmDgsyslYrRBeFIlsi54AYsFGUuhmvrQ=="},{"path":"node_modules/side-channel-list","name":"side-channel-list","version":"1.0.1","resolved":"https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.1.tgz","integrity":"sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w=="},{"path":"node_modules/side-channel-map","name":"side-channel-map","version":"1.0.1","resolved":"https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz","integrity":"sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA=="},{"path":"node_modules/side-channel-weakmap","name":"side-channel-weakmap","version":"1.0.2","resolved":"https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz","integrity":"sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A=="},{"path":"node_modules/smol-toml","name":"smol-toml","version":"1.8.0","resolved":"https://registry.npmjs.org/smol-toml/-/smol-toml-1.8.0.tgz","integrity":"sha512-kCZr2V3ch9i00x8zXRhjUNVcjG9ijES5dDudkXvUVCT5QlJNQWElSJdZqyPemffHoLNUYwOcou0Fy+ojN0uHSQ=="},{"path":"node_modules/statuses","name":"statuses","version":"2.0.2","resolved":"https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz","integrity":"sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw=="},{"path":"node_modules/tar","name":"tar","version":"7.5.22","resolved":"https://registry.npmjs.org/tar/-/tar-7.5.22.tgz","integrity":"sha512-MFO/QzvtAOmJbkhOaCTvbGcFN9L9b+JunIsDwaKljSOdcLMea3NJ1k9Usz/rjdfSXTq4dfzfeS7W4p4YOAAHeA=="},{"path":"node_modules/toidentifier","name":"toidentifier","version":"1.0.1","resolved":"https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz","integrity":"sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA=="},{"path":"node_modules/type-is","name":"type-is","version":"2.0.1","resolved":"https://registry.npmjs.org/type-is/-/type-is-2.0.1.tgz","integrity":"sha512-OZs6gsjF4vMp32qrCbiVSkrFmXtG/AZhY3t0iAMrMBiAZyV9oALtXO8hsrHbMXF9x6L3grlFuwW2oAz7cav+Gw=="},{"path":"node_modules/unpipe","name":"unpipe","version":"1.0.0","resolved":"https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz","integrity":"sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ=="},{"path":"node_modules/vary","name":"vary","version":"1.1.2","resolved":"https://registry.npmjs.org/vary/-/vary-1.1.2.tgz","integrity":"sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg=="},{"path":"node_modules/which","name":"which","version":"2.0.2","resolved":"https://registry.npmjs.org/which/-/which-2.0.2.tgz","integrity":"sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA=="},{"path":"node_modules/wrappy","name":"wrappy","version":"1.0.2","resolved":"https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz","integrity":"sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="},{"path":"node_modules/yallist","name":"yallist","version":"5.0.0","resolved":"https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz","integrity":"sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw=="},{"path":"node_modules/zod","name":"zod","version":"4.4.3","resolved":"https://registry.npmjs.org/zod/-/zod-4.4.3.tgz","integrity":"sha512-ytENFjIJFl2UwYglde2jchW2Hwm4GJFLDiSXWdTrJQBIN9Fcyp7n4DhxJEiWNAJMV1/BqWfW/kkg71UDcHJyTQ=="},{"path":"node_modules/zod-to-json-schema","name":"zod-to-json-schema","version":"3.25.2","resolved":"https://registry.npmjs.org/zod-to-json-schema/-/zod-to-json-schema-3.25.2.tgz","integrity":"sha512-O/PgfnpT1xKSDeQYSCfRI5Gy3hPf91mKVDuYLUHZJMiDFptvP41MSnWofm8dnCm0256ZNfZIM7DSzuSMAFnjHA=="}]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@heyditto/cli",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.0.0",
|
|
4
4
|
"description": "Ditto Memory CLI — save, search, fetch, and traverse the Ditto memory graph from the shell.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -20,6 +20,7 @@
|
|
|
20
20
|
"test": "node --test",
|
|
21
21
|
"prepack": "npm run build",
|
|
22
22
|
"release": "semantic-release",
|
|
23
|
+
"plugin:build": "npm run build && node scripts/build-remote-plugin.mjs",
|
|
23
24
|
"verify": "npm run check && npm run build && npm test && npm pack --dry-run"
|
|
24
25
|
},
|
|
25
26
|
"keywords": [
|