@openclaw-cloud/agent-controller 0.8.2 → 0.9.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/api.d.ts +22 -0
- package/dist/api.js +89 -5
- package/dist/api.js.map +1 -1
- package/dist/commands/backup-cli.js +5 -1
- package/dist/commands/backup-cli.js.map +1 -1
- package/dist/commands/bootstrap.js +6 -15
- package/dist/commands/bootstrap.js.map +1 -1
- package/dist/commands/knowledge-sync-cli.js +5 -1
- package/dist/commands/knowledge-sync-cli.js.map +1 -1
- package/dist/connection.js +39 -114
- package/dist/connection.js.map +1 -1
- package/dist/handlers/backup.d.ts +2 -1
- package/dist/handlers/backup.js +2 -2
- package/dist/handlers/backup.js.map +1 -1
- package/dist/handlers/chat.js +4 -3
- package/dist/handlers/chat.js.map +1 -1
- package/dist/handlers/config.js +13 -2
- package/dist/handlers/config.js.map +1 -1
- package/dist/handlers/diagnostics.d.ts +2 -0
- package/dist/handlers/diagnostics.js +50 -0
- package/dist/handlers/diagnostics.js.map +1 -0
- package/dist/handlers/knowledge-sync.d.ts +2 -1
- package/dist/handlers/knowledge-sync.js +2 -2
- package/dist/handlers/knowledge-sync.js.map +1 -1
- package/dist/handlers/onboarding.js +3 -21
- package/dist/handlers/onboarding.js.map +1 -1
- package/dist/handlers/package-install.js +17 -3
- package/dist/handlers/package-install.js.map +1 -1
- package/dist/handlers/restart.js +3 -21
- package/dist/handlers/restart.js.map +1 -1
- package/dist/handlers/self-update.d.ts +2 -0
- package/dist/handlers/self-update.js +14 -0
- package/dist/handlers/self-update.js.map +1 -0
- package/dist/heartbeat.js +0 -4
- package/dist/heartbeat.js.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/openclaw/gateway-adapter.d.ts +1 -0
- package/dist/openclaw/gateway-adapter.js +37 -7
- package/dist/openclaw/gateway-adapter.js.map +1 -1
- package/dist/platform/common.d.ts +1 -0
- package/dist/platform/common.js +10 -1
- package/dist/platform/common.js.map +1 -1
- package/dist/platform/linux.d.ts +1 -1
- package/dist/platform/linux.js +1 -8
- package/dist/platform/linux.js.map +1 -1
- package/dist/platform/macos.d.ts +1 -1
- package/dist/platform/macos.js +1 -8
- package/dist/platform/macos.js.map +1 -1
- package/dist/platform/windows.d.ts +1 -1
- package/dist/platform/windows.js +1 -8
- package/dist/platform/windows.js.map +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/utils/archive.js +2 -2
- package/dist/utils/archive.js.map +1 -1
- package/dist/utils/backup-push.d.ts +4 -3
- package/dist/utils/backup-push.js +10 -56
- package/dist/utils/backup-push.js.map +1 -1
- package/dist/utils/env.d.ts +1 -0
- package/dist/utils/env.js +3 -0
- package/dist/utils/env.js.map +1 -1
- package/dist/utils/gateway-restart-handler.d.ts +6 -0
- package/dist/utils/gateway-restart-handler.js +27 -0
- package/dist/utils/gateway-restart-handler.js.map +1 -0
- package/dist/utils/knowledge-push.d.ts +3 -2
- package/dist/utils/knowledge-push.js +3 -20
- package/dist/utils/knowledge-push.js.map +1 -1
- package/package.json +1 -1
- package/dist/handlers/exec.d.ts +0 -2
- package/dist/handlers/exec.js +0 -29
- package/dist/handlers/exec.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"macos.js","sourceRoot":"","sources":["../../src/platform/macos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"macos.js","sourceRoot":"","sources":["../../src/platform/macos.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type PlatformConfig } from './common.js';
|
|
2
2
|
export type { PlatformConfig };
|
|
3
3
|
export declare function installWindows(config: PlatformConfig): Promise<void>;
|
|
4
4
|
export declare function uninstallWindows(): Promise<void>;
|
package/dist/platform/windows.js
CHANGED
|
@@ -1,14 +1,7 @@
|
|
|
1
1
|
import fs from 'node:fs/promises';
|
|
2
2
|
import { join } from 'node:path';
|
|
3
3
|
import { execAsync } from '../utils/exec.js';
|
|
4
|
-
|
|
5
|
-
try {
|
|
6
|
-
return await execAsync(`where "${bin}"`);
|
|
7
|
-
}
|
|
8
|
-
catch {
|
|
9
|
-
return '';
|
|
10
|
-
}
|
|
11
|
-
}
|
|
4
|
+
import { which } from './common.js';
|
|
12
5
|
export async function installWindows(config) {
|
|
13
6
|
const appData = process.env['APPDATA'] ?? join(process.env['USERPROFILE'] ?? 'C:\\Users\\Default', 'AppData', 'Roaming');
|
|
14
7
|
const openclawDir = join(appData, 'openclaw');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"windows.js","sourceRoot":"","sources":["../../src/platform/windows.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"windows.js","sourceRoot":"","sources":["../../src/platform/windows.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* agent:<agentId> — commands from backend, responses from agent
|
|
4
4
|
* heartbeat:<agentId> — heartbeat publications from agent
|
|
5
5
|
*/
|
|
6
|
-
export type CommandType = '
|
|
6
|
+
export type CommandType = 'diagnostics' | 'restart' | 'deploy' | 'config' | 'pair' | 'stop' | 'backup' | 'chat_list_sessions' | 'chat_history' | 'chat_send' | 'package_install' | 'file_write' | 'file_delete' | 'onboarding_complete' | 'knowledge_sync' | 'self_update';
|
|
7
7
|
export interface AgentCommand {
|
|
8
8
|
id: string;
|
|
9
9
|
type: CommandType;
|
package/dist/utils/archive.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { execFile } from 'node:child_process';
|
|
2
2
|
import path from 'node:path';
|
|
3
3
|
const TAR_TIMEOUT = 120_000;
|
|
4
4
|
export function createArchive(archivePath, workspaceDir) {
|
|
5
5
|
return new Promise((resolve, reject) => {
|
|
6
|
-
|
|
6
|
+
execFile('tar', ['-czf', archivePath, '-C', path.dirname(workspaceDir), path.basename(workspaceDir)], { timeout: TAR_TIMEOUT }, (error, _stdout, stderr) => {
|
|
7
7
|
if (error) {
|
|
8
8
|
reject(new Error(`tar failed: ${stderr.toString() || error.message}`));
|
|
9
9
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"archive.js","sourceRoot":"","sources":["../../src/utils/archive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"archive.js","sourceRoot":"","sources":["../../src/utils/archive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,WAAW,GAAG,OAAO,CAAC;AAE5B,MAAM,UAAU,aAAa,CAAC,WAAmB,EAAE,YAAoB;IACrE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,QAAQ,CACN,KAAK,EACL,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,EACpF,EAAE,OAAO,EAAE,WAAW,EAAE,EACxB,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;YACzB,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,CAAC,IAAI,KAAK,CAAC,eAAe,MAAM,CAAC,QAAQ,EAAE,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YACzE,CAAC;iBAAM,CAAC;gBACN,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { AgentApi } from '../api.js';
|
|
1
2
|
interface BackupResult {
|
|
2
3
|
snapshotId: string;
|
|
3
4
|
sizeBytes: number;
|
|
@@ -7,10 +8,10 @@ interface BackupResult {
|
|
|
7
8
|
* Used by both CLI command and Centrifugo handler.
|
|
8
9
|
*
|
|
9
10
|
* Flow:
|
|
10
|
-
* 1.
|
|
11
|
+
* 1. api.backupInit() → get uploadUrl, snapshotId, method
|
|
11
12
|
* 2. Create tar.gz archive of workspace
|
|
12
13
|
* 3. Upload archive (presigned S3 PUT or backend API)
|
|
13
|
-
* 4.
|
|
14
|
+
* 4. api.backupComplete() (for presigned uploads)
|
|
14
15
|
*/
|
|
15
|
-
export declare function pushBackupToBackend(): Promise<BackupResult>;
|
|
16
|
+
export declare function pushBackupToBackend(api: AgentApi, agentId: string): Promise<BackupResult>;
|
|
16
17
|
export {};
|
|
@@ -1,34 +1,21 @@
|
|
|
1
1
|
import fs from 'node:fs/promises';
|
|
2
|
+
import { createReadStream } from 'node:fs';
|
|
2
3
|
import path from 'node:path';
|
|
3
4
|
import { getWorkspaceDir } from '../workspace.js';
|
|
4
|
-
import { requireEnv } from './env.js';
|
|
5
5
|
import { createArchive } from './archive.js';
|
|
6
|
-
const UPLOAD_TIMEOUT = 300_000; // 5 min
|
|
7
6
|
/**
|
|
8
7
|
* Create a workspace backup and upload it to backend.
|
|
9
8
|
* Used by both CLI command and Centrifugo handler.
|
|
10
9
|
*
|
|
11
10
|
* Flow:
|
|
12
|
-
* 1.
|
|
11
|
+
* 1. api.backupInit() → get uploadUrl, snapshotId, method
|
|
13
12
|
* 2. Create tar.gz archive of workspace
|
|
14
13
|
* 3. Upload archive (presigned S3 PUT or backend API)
|
|
15
|
-
* 4.
|
|
14
|
+
* 4. api.backupComplete() (for presigned uploads)
|
|
16
15
|
*/
|
|
17
|
-
export async function pushBackupToBackend() {
|
|
18
|
-
const backendUrl = process.env.BACKEND_URL || process.env.BACKEND_INTERNAL_URL || requireEnv('BACKEND_URL');
|
|
19
|
-
const agentToken = requireEnv('AGENT_TOKEN');
|
|
20
|
-
const agentId = requireEnv('AGENT_ID');
|
|
16
|
+
export async function pushBackupToBackend(api, agentId) {
|
|
21
17
|
// Step 1: Init — get upload details from backend
|
|
22
|
-
const
|
|
23
|
-
method: 'POST',
|
|
24
|
-
headers: { Authorization: `Bearer ${agentToken}` },
|
|
25
|
-
signal: AbortSignal.timeout(30_000),
|
|
26
|
-
});
|
|
27
|
-
if (!initRes.ok) {
|
|
28
|
-
const text = await initRes.text().catch(() => '');
|
|
29
|
-
throw new Error(`Backup init failed: ${initRes.status} ${text}`);
|
|
30
|
-
}
|
|
31
|
-
const { snapshotId, uploadUrl, token, method } = (await initRes.json());
|
|
18
|
+
const { snapshotId, uploadUrl, method } = await api.backupInit(agentId);
|
|
32
19
|
// Step 2: Create archive
|
|
33
20
|
const archivePath = path.join('/tmp', `backup-${Date.now()}.tar.gz`);
|
|
34
21
|
try {
|
|
@@ -36,48 +23,15 @@ export async function pushBackupToBackend() {
|
|
|
36
23
|
const stat = await fs.stat(archivePath);
|
|
37
24
|
// Step 3: Upload
|
|
38
25
|
if (method === 'presigned') {
|
|
39
|
-
const
|
|
40
|
-
|
|
41
|
-
method: 'PUT',
|
|
42
|
-
headers: { 'Content-Type': 'application/gzip', 'Content-Length': String(stat.size) },
|
|
43
|
-
body: fileBuffer,
|
|
44
|
-
signal: AbortSignal.timeout(UPLOAD_TIMEOUT),
|
|
45
|
-
});
|
|
46
|
-
if (!uploadRes.ok) {
|
|
47
|
-
const text = await uploadRes.text().catch(() => '');
|
|
48
|
-
throw new Error(`S3 upload failed: ${uploadRes.status} ${text}`);
|
|
49
|
-
}
|
|
26
|
+
const stream = createReadStream(archivePath);
|
|
27
|
+
await api.uploadRaw(uploadUrl, stream, 'application/gzip', stat.size);
|
|
50
28
|
// Step 4: Notify backend
|
|
51
|
-
|
|
52
|
-
method: 'POST',
|
|
53
|
-
headers: {
|
|
54
|
-
'Content-Type': 'application/json',
|
|
55
|
-
Authorization: `Bearer ${agentToken}`,
|
|
56
|
-
},
|
|
57
|
-
body: JSON.stringify({ snapshotId, sizeBytes: stat.size }),
|
|
58
|
-
signal: AbortSignal.timeout(30_000),
|
|
59
|
-
});
|
|
60
|
-
if (!completeRes.ok) {
|
|
61
|
-
const text = await completeRes.text().catch(() => '');
|
|
62
|
-
throw new Error(`Backup complete notification failed: ${completeRes.status} ${text}`);
|
|
63
|
-
}
|
|
29
|
+
await api.backupComplete(agentId, snapshotId, stat.size);
|
|
64
30
|
}
|
|
65
31
|
else {
|
|
66
32
|
// Fallback: upload through backend API (local storage)
|
|
67
|
-
const
|
|
68
|
-
|
|
69
|
-
method: 'POST',
|
|
70
|
-
headers: {
|
|
71
|
-
'Content-Type': 'application/gzip',
|
|
72
|
-
Authorization: `Bearer ${token}`,
|
|
73
|
-
},
|
|
74
|
-
body: fileBuffer,
|
|
75
|
-
signal: AbortSignal.timeout(UPLOAD_TIMEOUT),
|
|
76
|
-
});
|
|
77
|
-
if (!uploadRes.ok) {
|
|
78
|
-
const text = await uploadRes.text().catch(() => '');
|
|
79
|
-
throw new Error(`Upload failed: ${uploadRes.status} ${text}`);
|
|
80
|
-
}
|
|
33
|
+
const stream = createReadStream(archivePath);
|
|
34
|
+
await api.uploadRaw(uploadUrl, stream, 'application/gzip', stat.size);
|
|
81
35
|
}
|
|
82
36
|
return { snapshotId, sizeBytes: stat.size };
|
|
83
37
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backup-push.js","sourceRoot":"","sources":["../../src/utils/backup-push.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,
|
|
1
|
+
{"version":3,"file":"backup-push.js","sourceRoot":"","sources":["../../src/utils/backup-push.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAQ7C;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,GAAa,EAAE,OAAe;IACtE,iDAAiD;IACjD,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAExE,yBAAyB;IACzB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IACrE,IAAI,CAAC;QACH,MAAM,aAAa,CAAC,WAAW,EAAE,eAAe,EAAE,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAExC,iBAAiB;QACjB,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;YAC7C,MAAM,GAAG,CAAC,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAEtE,yBAAyB;YACzB,MAAM,GAAG,CAAC,cAAc,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3D,CAAC;aAAM,CAAC;YACN,uDAAuD;YACvD,MAAM,MAAM,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;YAC7C,MAAM,GAAG,CAAC,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACxE,CAAC;QAED,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;IAC9C,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC"}
|
package/dist/utils/env.d.ts
CHANGED
package/dist/utils/env.js
CHANGED
package/dist/utils/env.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/utils/env.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,0CAA0C,IAAI,EAAE,CAAC,CAAC;QAChE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
1
|
+
{"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/utils/env.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,0CAA0C,IAAI,EAAE,CAAC,CAAC;QAChE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,UAAU,CAAC,aAAa,CAAC,CAAC;AAClG,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { AgentCommand, AgentResponse } from '../types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Shared handler logic for commands that restart the OpenClaw gateway.
|
|
4
|
+
* Used by handleRestart and handleOnboardingComplete.
|
|
5
|
+
*/
|
|
6
|
+
export declare function handleGatewayRestartCommand(command: AgentCommand): Promise<AgentResponse>;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { execGatewayRestart } from './gateway-restart.js';
|
|
2
|
+
/**
|
|
3
|
+
* Shared handler logic for commands that restart the OpenClaw gateway.
|
|
4
|
+
* Used by handleRestart and handleOnboardingComplete.
|
|
5
|
+
*/
|
|
6
|
+
export async function handleGatewayRestartCommand(command) {
|
|
7
|
+
try {
|
|
8
|
+
const { stdout, stderr } = await execGatewayRestart();
|
|
9
|
+
return {
|
|
10
|
+
id: command.id,
|
|
11
|
+
type: command.type,
|
|
12
|
+
success: true,
|
|
13
|
+
data: { stdout, stderr },
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
catch (err) {
|
|
17
|
+
const e = err;
|
|
18
|
+
return {
|
|
19
|
+
id: command.id,
|
|
20
|
+
type: command.type,
|
|
21
|
+
success: false,
|
|
22
|
+
data: { stdout: e.stdout ?? '', stderr: e.stderr ?? '' },
|
|
23
|
+
error: e.message,
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=gateway-restart-handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gateway-restart-handler.js","sourceRoot":"","sources":["../../src/utils/gateway-restart-handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,OAAqB;IACrE,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,kBAAkB,EAAE,CAAC;QACtD,OAAO;YACL,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;SACzB,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,GAAG,GAAmD,CAAC;QAC9D,OAAO;YACL,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,EAAE,EAAE;YACxD,KAAK,EAAE,CAAC,CAAC,OAAO;SACjB,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
+
import type { AgentApi } from '../api.js';
|
|
1
2
|
/**
|
|
2
|
-
* Push knowledge files to backend via
|
|
3
|
+
* Push knowledge files to backend via API.
|
|
3
4
|
* Used by both CLI command and Centrifugo handler.
|
|
4
5
|
*/
|
|
5
|
-
export declare function pushKnowledgeToBackend(paths?: string[]): Promise<{
|
|
6
|
+
export declare function pushKnowledgeToBackend(api: AgentApi, agentId: string, paths?: string[]): Promise<{
|
|
6
7
|
filesRead: number;
|
|
7
8
|
filesUpdated: number;
|
|
8
9
|
}>;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import fs from 'node:fs/promises';
|
|
2
2
|
import path from 'node:path';
|
|
3
3
|
import { getWorkspaceDir } from '../workspace.js';
|
|
4
|
-
import { requireEnv } from './env.js';
|
|
5
4
|
const FIXED_FILES = [
|
|
6
5
|
'SOUL.md',
|
|
7
6
|
'MEMORY.md',
|
|
@@ -70,13 +69,10 @@ async function readFiles(workspaceDir, filePaths) {
|
|
|
70
69
|
return files;
|
|
71
70
|
}
|
|
72
71
|
/**
|
|
73
|
-
* Push knowledge files to backend via
|
|
72
|
+
* Push knowledge files to backend via API.
|
|
74
73
|
* Used by both CLI command and Centrifugo handler.
|
|
75
74
|
*/
|
|
76
|
-
export async function pushKnowledgeToBackend(paths) {
|
|
77
|
-
const backendUrl = process.env.BACKEND_URL || process.env.BACKEND_INTERNAL_URL || requireEnv('BACKEND_URL');
|
|
78
|
-
const agentToken = requireEnv('AGENT_TOKEN');
|
|
79
|
-
const agentId = requireEnv('AGENT_ID');
|
|
75
|
+
export async function pushKnowledgeToBackend(api, agentId, paths) {
|
|
80
76
|
const requestedPaths = paths ?? [...FIXED_FILES, 'memory/'];
|
|
81
77
|
const workspaceDir = getWorkspaceDir();
|
|
82
78
|
const resolvedPaths = await resolvePaths(workspaceDir, requestedPaths);
|
|
@@ -84,20 +80,7 @@ export async function pushKnowledgeToBackend(paths) {
|
|
|
84
80
|
if (files.length === 0) {
|
|
85
81
|
return { filesRead: 0, filesUpdated: 0 };
|
|
86
82
|
}
|
|
87
|
-
const
|
|
88
|
-
method: 'POST',
|
|
89
|
-
headers: {
|
|
90
|
-
'Content-Type': 'application/json',
|
|
91
|
-
Authorization: `Bearer ${agentToken}`,
|
|
92
|
-
},
|
|
93
|
-
body: JSON.stringify({ files }),
|
|
94
|
-
signal: AbortSignal.timeout(30_000),
|
|
95
|
-
});
|
|
96
|
-
if (!res.ok) {
|
|
97
|
-
const text = await res.text().catch(() => '');
|
|
98
|
-
throw new Error(`Knowledge push failed: ${res.status} ${text}`);
|
|
99
|
-
}
|
|
100
|
-
const { filesUpdated } = (await res.json());
|
|
83
|
+
const { filesUpdated } = await api.knowledgePush(agentId, files);
|
|
101
84
|
return { filesRead: files.length, filesUpdated };
|
|
102
85
|
}
|
|
103
86
|
//# sourceMappingURL=knowledge-push.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"knowledge-push.js","sourceRoot":"","sources":["../../src/utils/knowledge-push.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"knowledge-push.js","sourceRoot":"","sources":["../../src/utils/knowledge-push.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/dist/handlers/exec.d.ts
DELETED
package/dist/handlers/exec.js
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { exec } from 'node:child_process';
|
|
2
|
-
const EXEC_TIMEOUT = 60_000;
|
|
3
|
-
export function handleExec(command) {
|
|
4
|
-
const cmd = command.payload.command;
|
|
5
|
-
if (!cmd) {
|
|
6
|
-
return Promise.resolve({
|
|
7
|
-
id: command.id,
|
|
8
|
-
type: 'exec',
|
|
9
|
-
success: false,
|
|
10
|
-
error: 'Missing "command" in payload',
|
|
11
|
-
});
|
|
12
|
-
}
|
|
13
|
-
return new Promise((resolve) => {
|
|
14
|
-
exec(cmd, { timeout: EXEC_TIMEOUT }, (error, stdout, stderr) => {
|
|
15
|
-
resolve({
|
|
16
|
-
id: command.id,
|
|
17
|
-
type: 'exec',
|
|
18
|
-
success: !error,
|
|
19
|
-
data: {
|
|
20
|
-
exitCode: error ? (typeof error.code === 'number' ? error.code : 1) : 0,
|
|
21
|
-
stdout: stdout.toString(),
|
|
22
|
-
stderr: stderr.toString(),
|
|
23
|
-
},
|
|
24
|
-
...(error ? { error: error.message } : {}),
|
|
25
|
-
});
|
|
26
|
-
});
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
//# sourceMappingURL=exec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"exec.js","sourceRoot":"","sources":["../../src/handlers/exec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAG1C,MAAM,YAAY,GAAG,MAAM,CAAC;AAE5B,MAAM,UAAU,UAAU,CAAC,OAAqB;IAC9C,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,OAAiB,CAAC;IAC9C,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,OAAO,CAAC,OAAO,CAAC;YACrB,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,8BAA8B;SACtC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,IAAI,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;YAC7D,OAAO,CAAC;gBACN,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,CAAC,KAAK;gBACf,IAAI,EAAE;oBACJ,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,OAAQ,KAA4B,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAE,KAA0B,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACrH,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE;oBACzB,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE;iBAC1B;gBACD,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC3C,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
|