visionclaw 0.1.194-beta.0 → 0.1.194-dev.feat-backup-progress-reporting.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent/backup-uploader.d.ts +44 -0
- package/dist/agent/backup-uploader.d.ts.map +1 -0
- package/dist/agent/backup-uploader.js +83 -0
- package/dist/agent/backup-uploader.js.map +1 -0
- package/dist/agent/backup.d.ts +7 -1
- package/dist/agent/backup.d.ts.map +1 -1
- package/dist/agent/backup.js +337 -52
- package/dist/agent/backup.js.map +1 -1
- package/dist/agent/command-handlers.d.ts.map +1 -1
- package/dist/agent/command-handlers.js +3 -2
- package/dist/agent/command-handlers.js.map +1 -1
- package/dist/agent/data-collector.d.ts.map +1 -1
- package/dist/agent/data-collector.js +15 -88
- package/dist/agent/data-collector.js.map +1 -1
- package/dist/agent/status.js +1 -1
- package/dist/agent/status.js.map +1 -1
- package/dist/backup.d.ts +4 -1
- package/dist/backup.d.ts.map +1 -1
- package/dist/backup.js +86 -3
- package/dist/backup.js.map +1 -1
- package/dist/config/types.d.ts +9 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js +6 -0
- package/dist/config/types.js.map +1 -1
- package/dist/drive/google-drive.d.ts +1 -0
- package/dist/drive/google-drive.d.ts.map +1 -1
- package/dist/drive/google-drive.js +5 -0
- package/dist/drive/google-drive.js.map +1 -1
- package/dist/i18n/messages.js +2 -2
- package/dist/i18n/messages.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/onboarding/setup-shared.d.ts.map +1 -1
- package/dist/onboarding/setup-shared.js +6 -0
- package/dist/onboarding/setup-shared.js.map +1 -1
- package/dist/restore.d.ts +5 -0
- package/dist/restore.d.ts.map +1 -1
- package/dist/restore.js +132 -16
- package/dist/restore.js.map +1 -1
- package/dist/tos-storage.d.ts +45 -0
- package/dist/tos-storage.d.ts.map +1 -0
- package/dist/tos-storage.js +134 -0
- package/dist/tos-storage.js.map +1 -0
- package/dist-agent/bundle.cjs +3078 -1947
- package/package.json +2 -1
- package/dist/agent/applied-credential-signature.d.ts +0 -53
- package/dist/agent/applied-credential-signature.d.ts.map +0 -1
- package/dist/agent/applied-credential-signature.js +0 -137
- package/dist/agent/applied-credential-signature.js.map +0 -1
- package/dist/agent/engines/claude/cli-resolver.d.ts +0 -16
- package/dist/agent/engines/claude/cli-resolver.d.ts.map +0 -1
- package/dist/agent/engines/claude/cli-resolver.js +0 -83
- package/dist/agent/engines/claude/cli-resolver.js.map +0 -1
- package/dist/agent/engines/claude/session-browser-policy.d.ts +0 -9
- package/dist/agent/engines/claude/session-browser-policy.d.ts.map +0 -1
- package/dist/agent/engines/claude/session-browser-policy.js +0 -49
- package/dist/agent/engines/claude/session-browser-policy.js.map +0 -1
- package/dist/agent/engines/claude/session.d.ts +0 -291
- package/dist/agent/engines/claude/session.d.ts.map +0 -1
- package/dist/agent/engines/claude/session.js +0 -1177
- package/dist/agent/engines/claude/session.js.map +0 -1
- package/dist/agent/engines/client-factory.d.ts +0 -63
- package/dist/agent/engines/client-factory.d.ts.map +0 -1
- package/dist/agent/engines/client-factory.js +0 -382
- package/dist/agent/engines/client-factory.js.map +0 -1
- package/dist/agent/engines/engine.d.ts +0 -8
- package/dist/agent/engines/engine.d.ts.map +0 -1
- package/dist/agent/engines/engine.js +0 -15
- package/dist/agent/engines/engine.js.map +0 -1
- package/dist/agent/engines/openai/file-session.d.ts +0 -49
- package/dist/agent/engines/openai/file-session.d.ts.map +0 -1
- package/dist/agent/engines/openai/file-session.js +0 -108
- package/dist/agent/engines/openai/file-session.js.map +0 -1
- package/dist/agent/engines/openai/file-tools.d.ts +0 -35
- package/dist/agent/engines/openai/file-tools.d.ts.map +0 -1
- package/dist/agent/engines/openai/file-tools.js +0 -194
- package/dist/agent/engines/openai/file-tools.js.map +0 -1
- package/dist/agent/engines/openai/session.d.ts +0 -190
- package/dist/agent/engines/openai/session.d.ts.map +0 -1
- package/dist/agent/engines/openai/session.js +0 -1066
- package/dist/agent/engines/openai/session.js.map +0 -1
- package/dist/agent/engines/openai/tools.d.ts +0 -13
- package/dist/agent/engines/openai/tools.d.ts.map +0 -1
- package/dist/agent/engines/openai/tools.js +0 -248
- package/dist/agent/engines/openai/tools.js.map +0 -1
- package/dist/agent/engines/session-types.d.ts +0 -146
- package/dist/agent/engines/session-types.d.ts.map +0 -1
- package/dist/agent/engines/session-types.js +0 -2
- package/dist/agent/engines/session-types.js.map +0 -1
- package/dist/agent/engines/system-prompt-log.d.ts +0 -9
- package/dist/agent/engines/system-prompt-log.d.ts.map +0 -1
- package/dist/agent/engines/system-prompt-log.js +0 -46
- package/dist/agent/engines/system-prompt-log.js.map +0 -1
- package/dist/agent/transcript/transcript-backfill.d.ts +0 -54
- package/dist/agent/transcript/transcript-backfill.d.ts.map +0 -1
- package/dist/agent/transcript/transcript-backfill.js +0 -604
- package/dist/agent/transcript/transcript-backfill.js.map +0 -1
- package/dist/agent/transcript/transcript-indexer.d.ts +0 -273
- package/dist/agent/transcript/transcript-indexer.d.ts.map +0 -1
- package/dist/agent/transcript/transcript-indexer.js +0 -1217
- package/dist/agent/transcript/transcript-indexer.js.map +0 -1
- package/dist/agent/transcript/transcript-memory-migrations.d.ts +0 -25
- package/dist/agent/transcript/transcript-memory-migrations.d.ts.map +0 -1
- package/dist/agent/transcript/transcript-memory-migrations.js +0 -87
- package/dist/agent/transcript/transcript-memory-migrations.js.map +0 -1
- package/dist/agent/transcript-memory-migrations.d.ts +0 -25
- package/dist/agent/transcript-memory-migrations.d.ts.map +0 -1
- package/dist/agent/transcript-memory-migrations.js +0 -87
- package/dist/agent/transcript-memory-migrations.js.map +0 -1
- package/dist/agent/tunnel-credential-handler.d.ts +0 -90
- package/dist/agent/tunnel-credential-handler.d.ts.map +0 -1
- package/dist/agent/tunnel-credential-handler.js +0 -162
- package/dist/agent/tunnel-credential-handler.js.map +0 -1
- package/dist/agent/usage/usage-backfill-handler.d.ts +0 -18
- package/dist/agent/usage/usage-backfill-handler.d.ts.map +0 -1
- package/dist/agent/usage/usage-backfill-handler.js +0 -69
- package/dist/agent/usage/usage-backfill-handler.js.map +0 -1
- package/dist/agent/usage/usage-gate.d.ts +0 -25
- package/dist/agent/usage/usage-gate.d.ts.map +0 -1
- package/dist/agent/usage/usage-gate.js +0 -83
- package/dist/agent/usage/usage-gate.js.map +0 -1
- package/dist/agent/usage/usage-handler.d.ts +0 -7
- package/dist/agent/usage/usage-handler.d.ts.map +0 -1
- package/dist/agent/usage/usage-handler.js +0 -28
- package/dist/agent/usage/usage-handler.js.map +0 -1
- package/dist/agent/usage/usage-report-builder.d.ts +0 -26
- package/dist/agent/usage/usage-report-builder.d.ts.map +0 -1
- package/dist/agent/usage/usage-report-builder.js +0 -80
- package/dist/agent/usage/usage-report-builder.js.map +0 -1
- package/dist/agent/usage/usage-report-queue.d.ts +0 -26
- package/dist/agent/usage/usage-report-queue.d.ts.map +0 -1
- package/dist/agent/usage/usage-report-queue.js +0 -199
- package/dist/agent/usage/usage-report-queue.js.map +0 -1
- package/dist/agent/usage/usage-report-types.d.ts +0 -41
- package/dist/agent/usage/usage-report-types.d.ts.map +0 -1
- package/dist/agent/usage/usage-report-types.js +0 -2
- package/dist/agent/usage/usage-report-types.js.map +0 -1
- package/dist/agent/usage/usage-reporter.d.ts +0 -31
- package/dist/agent/usage/usage-reporter.d.ts.map +0 -1
- package/dist/agent/usage/usage-reporter.js +0 -102
- package/dist/agent/usage/usage-reporter.js.map +0 -1
- package/dist/agent/usage-backfill-handler.d.ts +0 -18
- package/dist/agent/usage-backfill-handler.d.ts.map +0 -1
- package/dist/agent/usage-backfill-handler.js +0 -69
- package/dist/agent/usage-backfill-handler.js.map +0 -1
- package/dist/agent/usage-gate.d.ts +0 -25
- package/dist/agent/usage-gate.d.ts.map +0 -1
- package/dist/agent/usage-gate.js +0 -83
- package/dist/agent/usage-gate.js.map +0 -1
- package/dist/agent/usage-report-builder.d.ts +0 -26
- package/dist/agent/usage-report-builder.d.ts.map +0 -1
- package/dist/agent/usage-report-builder.js +0 -80
- package/dist/agent/usage-report-builder.js.map +0 -1
- package/dist/agent/usage-report-queue.d.ts +0 -26
- package/dist/agent/usage-report-queue.d.ts.map +0 -1
- package/dist/agent/usage-report-queue.js +0 -199
- package/dist/agent/usage-report-queue.js.map +0 -1
- package/dist/agent/usage-report-types.d.ts +0 -41
- package/dist/agent/usage-report-types.d.ts.map +0 -1
- package/dist/agent/usage-report-types.js +0 -2
- package/dist/agent/usage-report-types.js.map +0 -1
- package/dist/agent/usage-reporter.d.ts +0 -31
- package/dist/agent/usage-reporter.d.ts.map +0 -1
- package/dist/agent/usage-reporter.js +0 -102
- package/dist/agent/usage-reporter.js.map +0 -1
- package/dist/agent/wake-cycle-tool-tracker.d.ts +0 -39
- package/dist/agent/wake-cycle-tool-tracker.d.ts.map +0 -1
- package/dist/agent/wake-cycle-tool-tracker.js +0 -72
- package/dist/agent/wake-cycle-tool-tracker.js.map +0 -1
- package/dist/billing/payg-handler.d.ts +0 -29
- package/dist/billing/payg-handler.d.ts.map +0 -1
- package/dist/billing/payg-handler.js +0 -92
- package/dist/billing/payg-handler.js.map +0 -1
- package/dist/billing/payment-handler.d.ts +0 -24
- package/dist/billing/payment-handler.d.ts.map +0 -1
- package/dist/billing/payment-handler.js +0 -101
- package/dist/billing/payment-handler.js.map +0 -1
- package/dist/builtin-skills/catalog/phone-adb-automation/SKILL.md +0 -412
- package/dist/builtin-skills/catalog/phone-adb-automation/phone_input.sh +0 -132
- package/dist/builtin-skills/catalog/phone-adb-automation/phone_launch.sh +0 -166
- package/dist/builtin-skills/catalog/phone-adb-automation/phone_screenshot.sh +0 -87
- package/dist/builtin-skills/catalog/phone-adb-automation/phone_security_kbd.py +0 -174
- package/dist/builtin-skills/catalog/phone-adb-automation/phone_setup.sh +0 -274
- package/dist/builtin-skills/catalog/phone-adb-automation/phone_swipe.sh +0 -111
- package/dist/builtin-skills/catalog/phone-adb-automation/phone_tap.sh +0 -87
- package/dist/builtin-skills/catalog/phone-adb-automation/phone_ui_parse.py +0 -176
- package/dist/builtin-skills/catalog/phone-adb-automation/phone_wake_unlock.sh +0 -67
- package/dist/builtin-skills/transcribe-audio/SKILL.md +0 -122
- package/dist/data-processing/convert-demo-cli.d.ts +0 -7
- package/dist/data-processing/convert-demo-cli.d.ts.map +0 -1
- package/dist/data-processing/convert-demo-cli.js +0 -30
- package/dist/data-processing/convert-demo-cli.js.map +0 -1
- package/dist/data-processing/convert-demo.d.ts +0 -26
- package/dist/data-processing/convert-demo.d.ts.map +0 -1
- package/dist/data-processing/convert-demo.js +0 -233
- package/dist/data-processing/convert-demo.js.map +0 -1
- package/dist/obs/rdp/icons/icons/app_windows.svg +0 -4
- package/dist/obs/rdp/icons/icons/clip_get.svg +0 -4
- package/dist/obs/rdp/icons/icons/clip_send.svg +0 -4
- package/dist/obs/rdp/icons/icons/clip_shared.svg +0 -4
- package/dist/obs/rdp/icons/icons/clipboard.svg +0 -4
- package/dist/obs/rdp/icons/icons/clipboard_shared.svg +0 -4
- package/dist/obs/rdp/icons/icons/control.svg +0 -4
- package/dist/obs/rdp/icons/icons/desktop.svg +0 -4
- package/dist/obs/rdp/icons/icons/display.svg +0 -4
- package/dist/obs/rdp/icons/icons/launchpad.svg +0 -4
- package/dist/obs/rdp/icons/icons/mission_control.svg +0 -4
- package/dist/obs/rdp/icons/icons/screenshot.svg +0 -4
- package/dist/obs/rdp/icons/icons/zoom_actual.svg +0 -4
- package/dist/obs/rdp/icons/icons/zoom_fit.svg +0 -4
- package/dist/obs/rdp/icons/icons/zoom_in.svg +0 -4
- package/dist/obs/rdp/icons/icons/zoom_out.svg +0 -4
- package/dist/obs/tunnel-telemetry.d.ts +0 -46
- package/dist/obs/tunnel-telemetry.d.ts.map +0 -1
- package/dist/obs/tunnel-telemetry.js +0 -70
- package/dist/obs/tunnel-telemetry.js.map +0 -1
- package/dist/onboarding/cloudflared-cert.d.ts +0 -15
- package/dist/onboarding/cloudflared-cert.d.ts.map +0 -1
- package/dist/onboarding/cloudflared-cert.js +0 -57
- package/dist/onboarding/cloudflared-cert.js.map +0 -1
- package/dist/onboarding/playwriter-extension.d.ts +0 -19
- package/dist/onboarding/playwriter-extension.d.ts.map +0 -1
- package/dist/onboarding/playwriter-extension.js +0 -246
- package/dist/onboarding/playwriter-extension.js.map +0 -1
- package/dist/realtime/websocket.d.ts +0 -7
- package/dist/realtime/websocket.d.ts.map +0 -1
- package/dist/realtime/websocket.js +0 -65
- package/dist/realtime/websocket.js.map +0 -1
- package/dist/service/gbox-tun.d.ts +0 -14
- package/dist/service/gbox-tun.d.ts.map +0 -1
- package/dist/service/gbox-tun.js +0 -315
- package/dist/service/gbox-tun.js.map +0 -1
- package/dist/skills/installed.d.ts +0 -11
- package/dist/skills/installed.d.ts.map +0 -1
- package/dist/skills/installed.js +0 -35
- package/dist/skills/installed.js.map +0 -1
- package/dist/tools/coordinate-resolver.d.ts +0 -30
- package/dist/tools/coordinate-resolver.d.ts.map +0 -1
- package/dist/tools/coordinate-resolver.js +0 -104
- package/dist/tools/coordinate-resolver.js.map +0 -1
- package/dist/utils/playwriter-relay.d.ts +0 -9
- package/dist/utils/playwriter-relay.d.ts.map +0 -1
- package/dist/utils/playwriter-relay.js +0 -77
- package/dist/utils/playwriter-relay.js.map +0 -1
- package/dist/utils/wechat-monitor.d.ts +0 -21
- package/dist/utils/wechat-monitor.d.ts.map +0 -1
- package/dist/utils/wechat-monitor.js +0 -88
- package/dist/utils/wechat-monitor.js.map +0 -1
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { VisionClawConfig } from "../config/types.js";
|
|
2
|
+
export type BackupProvider = "gdrive" | "tos";
|
|
3
|
+
export interface BackupUploadProgress {
|
|
4
|
+
uploadedBytes: number;
|
|
5
|
+
}
|
|
6
|
+
export interface BackupUploadBaseOptions {
|
|
7
|
+
localPath: string;
|
|
8
|
+
name: string;
|
|
9
|
+
contentType: string;
|
|
10
|
+
onProgress?: (progress: BackupUploadProgress) => void;
|
|
11
|
+
}
|
|
12
|
+
export interface GdriveBackupUploadOptions extends BackupUploadBaseOptions {
|
|
13
|
+
provider: "gdrive";
|
|
14
|
+
config: VisionClawConfig;
|
|
15
|
+
ownerEmail: string;
|
|
16
|
+
}
|
|
17
|
+
export interface TosBackupUploadOptions extends BackupUploadBaseOptions {
|
|
18
|
+
provider: "tos";
|
|
19
|
+
tos: {
|
|
20
|
+
accessKeyId: string;
|
|
21
|
+
accessKeySecret: string;
|
|
22
|
+
bucket: string;
|
|
23
|
+
region: string;
|
|
24
|
+
endpoint: string;
|
|
25
|
+
publicEndpoint: string;
|
|
26
|
+
signedUrlExpiresSeconds: number;
|
|
27
|
+
key: string;
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
export type BackupUploadOptions = GdriveBackupUploadOptions | TosBackupUploadOptions;
|
|
31
|
+
export interface BackupUploadResult {
|
|
32
|
+
provider: BackupProvider;
|
|
33
|
+
location: string;
|
|
34
|
+
signedUrl?: string;
|
|
35
|
+
key?: string;
|
|
36
|
+
bucket?: string;
|
|
37
|
+
sizeBytes?: number;
|
|
38
|
+
expiresAt?: string;
|
|
39
|
+
}
|
|
40
|
+
export declare function buildBackupTosKey(config: VisionClawConfig, zipName: string): string;
|
|
41
|
+
export declare function uploadBackup(options: BackupUploadOptions): Promise<BackupUploadResult>;
|
|
42
|
+
export declare function uploadBackupToGoogleDrive(options: GdriveBackupUploadOptions): Promise<BackupUploadResult>;
|
|
43
|
+
export declare function uploadBackupToTos(options: TosBackupUploadOptions): Promise<BackupUploadResult>;
|
|
44
|
+
//# sourceMappingURL=backup-uploader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backup-uploader.d.ts","sourceRoot":"","sources":["../../src/agent/backup-uploader.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,KAAK,CAAC;AAE9C,MAAM,WAAW,oBAAoB;IACnC,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,oBAAoB,KAAK,IAAI,CAAC;CACvD;AAED,MAAM,WAAW,yBAA0B,SAAQ,uBAAuB;IACxE,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,EAAE,gBAAgB,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,sBAAuB,SAAQ,uBAAuB;IACrE,QAAQ,EAAE,KAAK,CAAC;IAChB,GAAG,EAAE;QACH,WAAW,EAAE,MAAM,CAAC;QACpB,eAAe,EAAE,MAAM,CAAC;QACxB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,cAAc,EAAE,MAAM,CAAC;QACvB,uBAAuB,EAAE,MAAM,CAAC;QAChC,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;CACH;AAED,MAAM,MAAM,mBAAmB,GAAG,yBAAyB,GAAG,sBAAsB,CAAC;AAErF,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,cAAc,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAWD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAEnF;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAK5F;AAED,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,kBAAkB,CAAC,CAuB7B;AAED,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,kBAAkB,CAAC,CAuC7B"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import fs from "node:fs";
|
|
2
|
+
import os from "node:os";
|
|
3
|
+
import path from "node:path";
|
|
4
|
+
import { getProfile } from "../config/index.js";
|
|
5
|
+
import { GoogleDriveClient } from "../drive/google-drive.js";
|
|
6
|
+
import { createTosSignedUrl, formatTosUri, uploadTosObject } from "../tos-storage.js";
|
|
7
|
+
function slugify(value) {
|
|
8
|
+
const slug = value
|
|
9
|
+
.trim()
|
|
10
|
+
.toLowerCase()
|
|
11
|
+
.replace(/[^a-z0-9._-]+/g, "-")
|
|
12
|
+
.replace(/^-+|-+$/g, "");
|
|
13
|
+
return slug || "unknown";
|
|
14
|
+
}
|
|
15
|
+
export function buildBackupTosKey(config, zipName) {
|
|
16
|
+
return `backups/${slugify(config.agentName)}/${slugify(getProfile())}/${zipName}`;
|
|
17
|
+
}
|
|
18
|
+
export async function uploadBackup(options) {
|
|
19
|
+
if (options.provider === "gdrive") {
|
|
20
|
+
return uploadBackupToGoogleDrive(options);
|
|
21
|
+
}
|
|
22
|
+
return uploadBackupToTos(options);
|
|
23
|
+
}
|
|
24
|
+
export async function uploadBackupToGoogleDrive(options) {
|
|
25
|
+
const drive = new GoogleDriveClient(options.config);
|
|
26
|
+
const uploaded = await drive.uploadFile({
|
|
27
|
+
localPath: options.localPath,
|
|
28
|
+
name: options.name,
|
|
29
|
+
mimeType: options.contentType,
|
|
30
|
+
onProgress: (uploadedBytes) => {
|
|
31
|
+
options.onProgress?.({ uploadedBytes });
|
|
32
|
+
},
|
|
33
|
+
});
|
|
34
|
+
await drive.shareFile({
|
|
35
|
+
fileId: uploaded.id,
|
|
36
|
+
email: options.ownerEmail,
|
|
37
|
+
role: "reader",
|
|
38
|
+
sendNotification: false,
|
|
39
|
+
});
|
|
40
|
+
return {
|
|
41
|
+
provider: "gdrive",
|
|
42
|
+
location: uploaded.webViewLink ?? `https://drive.google.com/file/d/${uploaded.id}/view`,
|
|
43
|
+
sizeBytes: fs.statSync(options.localPath).size,
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
export async function uploadBackupToTos(options) {
|
|
47
|
+
const sizeBytes = fs.statSync(options.localPath).size;
|
|
48
|
+
const credentials = {
|
|
49
|
+
accessKeyId: options.tos.accessKeyId,
|
|
50
|
+
accessKeySecret: options.tos.accessKeySecret,
|
|
51
|
+
region: options.tos.region,
|
|
52
|
+
endpoint: options.tos.endpoint,
|
|
53
|
+
};
|
|
54
|
+
await uploadTosObject({
|
|
55
|
+
filePath: options.localPath,
|
|
56
|
+
bucket: options.tos.bucket,
|
|
57
|
+
key: options.tos.key,
|
|
58
|
+
credentials,
|
|
59
|
+
contentType: options.contentType,
|
|
60
|
+
checkpointDir: path.join(os.tmpdir(), ".tos-backup-checkpoints"),
|
|
61
|
+
onProgress: (progress) => {
|
|
62
|
+
options.onProgress?.({ uploadedBytes: progress.uploadedBytes });
|
|
63
|
+
},
|
|
64
|
+
});
|
|
65
|
+
const signedUrl = createTosSignedUrl({
|
|
66
|
+
bucket: options.tos.bucket,
|
|
67
|
+
key: options.tos.key,
|
|
68
|
+
credentials,
|
|
69
|
+
expiresSeconds: options.tos.signedUrlExpiresSeconds,
|
|
70
|
+
publicEndpoint: options.tos.publicEndpoint,
|
|
71
|
+
});
|
|
72
|
+
const expiresAt = new Date(Date.now() + options.tos.signedUrlExpiresSeconds * 1000).toISOString();
|
|
73
|
+
return {
|
|
74
|
+
provider: "tos",
|
|
75
|
+
location: formatTosUri(options.tos.bucket, options.tos.key),
|
|
76
|
+
signedUrl,
|
|
77
|
+
key: options.tos.key,
|
|
78
|
+
bucket: options.tos.bucket,
|
|
79
|
+
sizeBytes,
|
|
80
|
+
expiresAt,
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=backup-uploader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backup-uploader.js","sourceRoot":"","sources":["../../src/agent/backup-uploader.ts"],"names":[],"mappings":"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"}
|
package/dist/agent/backup.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type BackupProvider, type BackupUploadResult } from "./backup-uploader.js";
|
|
1
2
|
import type { VisionClawConfig } from "../config/types.js";
|
|
2
3
|
/**
|
|
3
4
|
* Create a ZIP backup of VisionClaw profile data and upload it to Google Drive.
|
|
@@ -8,5 +9,10 @@ import type { VisionClawConfig } from "../config/types.js";
|
|
|
8
9
|
*
|
|
9
10
|
* @returns Shareable Google Drive link for the uploaded ZIP.
|
|
10
11
|
*/
|
|
11
|
-
export
|
|
12
|
+
export interface BackupRunOptions {
|
|
13
|
+
provider?: BackupProvider;
|
|
14
|
+
signedUrlExpiresSeconds?: number;
|
|
15
|
+
}
|
|
16
|
+
export type BackupResult = BackupUploadResult;
|
|
17
|
+
export declare function runBackup(config: VisionClawConfig, ownerEmail: string, options?: BackupRunOptions): Promise<BackupResult>;
|
|
12
18
|
//# sourceMappingURL=backup.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backup.d.ts","sourceRoot":"","sources":["../../src/agent/backup.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"backup.d.ts","sourceRoot":"","sources":["../../src/agent/backup.ts"],"names":[],"mappings":"AAOA,OAAO,EAAmC,KAAK,cAAc,EAAE,KAAK,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAErH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AA+a3D;;;;;;;;GAQG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,uBAAuB,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,MAAM,YAAY,GAAG,kBAAkB,CAAC;AAE9C,wBAAsB,SAAS,CAC7B,MAAM,EAAE,gBAAgB,EACxB,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,YAAY,CAAC,CA2OvB"}
|