computer-agents 2.3.0 → 2.5.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 +61 -18
- package/dist/ComputerAgentsClient.d.ts +63 -41
- package/dist/ComputerAgentsClient.js +84 -44
- package/dist/ComputerAgentsClient.js.map +1 -1
- package/dist/cloud/resources/AgentsResource.d.ts +12 -1
- package/dist/cloud/resources/AgentsResource.js +16 -0
- package/dist/cloud/resources/AgentsResource.js.map +1 -1
- package/dist/cloud/resources/DatabasesResource.d.ts +36 -0
- package/dist/cloud/resources/DatabasesResource.js +68 -0
- package/dist/cloud/resources/DatabasesResource.js.map +1 -0
- package/dist/cloud/resources/EnvironmentsResource.d.ts +110 -0
- package/dist/cloud/resources/EnvironmentsResource.js +75 -0
- package/dist/cloud/resources/EnvironmentsResource.js.map +1 -1
- package/dist/cloud/resources/GitResource.d.ts +60 -2
- package/dist/cloud/resources/GitResource.js +86 -10
- package/dist/cloud/resources/GitResource.js.map +1 -1
- package/dist/cloud/resources/ResourcesResource.d.ts +92 -0
- package/dist/cloud/resources/ResourcesResource.js +151 -0
- package/dist/cloud/resources/ResourcesResource.js.map +1 -0
- package/dist/cloud/resources/SkillsResource.d.ts +17 -0
- package/dist/cloud/resources/SkillsResource.js +36 -0
- package/dist/cloud/resources/SkillsResource.js.map +1 -0
- package/dist/cloud/resources/ThreadsResource.d.ts +78 -0
- package/dist/cloud/resources/ThreadsResource.js +64 -0
- package/dist/cloud/resources/ThreadsResource.js.map +1 -1
- package/dist/cloud/resources/index.d.ts +7 -1
- package/dist/cloud/resources/index.js +9 -3
- package/dist/cloud/resources/index.js.map +1 -1
- package/dist/cloud/types.d.ts +185 -3
- package/dist/index.d.ts +4 -4
- package/dist/index.js +6 -3
- package/dist/index.js.map +1 -1
- package/package.json +3 -4
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* simplified paths without /projects/:projectId prefix.
|
|
9
9
|
*/
|
|
10
10
|
import type { ApiClient } from '../ApiClient';
|
|
11
|
-
import type { CloudAgent, CreateAgentParams, UpdateAgentParams } from '../types';
|
|
11
|
+
import type { AgentAnalyticsResponse, AgentModelCatalogEntry, CloudAgent, CreateAgentParams, UpdateAgentParams } from '../types';
|
|
12
12
|
export declare class AgentsResource {
|
|
13
13
|
private readonly client;
|
|
14
14
|
constructor(client: ApiClient);
|
|
@@ -24,6 +24,13 @@ export declare class AgentsResource {
|
|
|
24
24
|
* Project is determined automatically from the API key.
|
|
25
25
|
*/
|
|
26
26
|
list(): Promise<CloudAgent[]>;
|
|
27
|
+
/**
|
|
28
|
+
* List managed and external model entries available in the current workspace.
|
|
29
|
+
*/
|
|
30
|
+
listModels(): Promise<{
|
|
31
|
+
tier?: string;
|
|
32
|
+
models: AgentModelCatalogEntry[];
|
|
33
|
+
}>;
|
|
27
34
|
/**
|
|
28
35
|
* Get an agent by ID
|
|
29
36
|
*/
|
|
@@ -32,6 +39,10 @@ export declare class AgentsResource {
|
|
|
32
39
|
* Update an agent
|
|
33
40
|
*/
|
|
34
41
|
update(agentId: string, params: UpdateAgentParams): Promise<CloudAgent>;
|
|
42
|
+
/**
|
|
43
|
+
* Summarize recent activity for an agent or team.
|
|
44
|
+
*/
|
|
45
|
+
getAnalytics(agentId: string): Promise<AgentAnalyticsResponse>;
|
|
35
46
|
/**
|
|
36
47
|
* Delete an agent
|
|
37
48
|
*/
|
|
@@ -33,6 +33,16 @@ class AgentsResource {
|
|
|
33
33
|
const response = await this.client.get(`/agents`);
|
|
34
34
|
return response.data;
|
|
35
35
|
}
|
|
36
|
+
/**
|
|
37
|
+
* List managed and external model entries available in the current workspace.
|
|
38
|
+
*/
|
|
39
|
+
async listModels() {
|
|
40
|
+
const response = await this.client.get(`/agents/models`);
|
|
41
|
+
return {
|
|
42
|
+
tier: response.tier,
|
|
43
|
+
models: response.models,
|
|
44
|
+
};
|
|
45
|
+
}
|
|
36
46
|
/**
|
|
37
47
|
* Get an agent by ID
|
|
38
48
|
*/
|
|
@@ -47,6 +57,12 @@ class AgentsResource {
|
|
|
47
57
|
const response = await this.client.patch(`/agents/${agentId}`, params);
|
|
48
58
|
return response.agent;
|
|
49
59
|
}
|
|
60
|
+
/**
|
|
61
|
+
* Summarize recent activity for an agent or team.
|
|
62
|
+
*/
|
|
63
|
+
async getAnalytics(agentId) {
|
|
64
|
+
return this.client.get(`/agents/${agentId}/analytics`);
|
|
65
|
+
}
|
|
50
66
|
/**
|
|
51
67
|
* Delete an agent
|
|
52
68
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentsResource.js","sourceRoot":"","sources":["../../../src/cloud/resources/AgentsResource.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;
|
|
1
|
+
{"version":3,"file":"AgentsResource.js","sourceRoot":"","sources":["../../../src/cloud/resources/AgentsResource.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAWH,MAAa,cAAc;IACI;IAA7B,YAA6B,MAAiB;QAAjB,WAAM,GAAN,MAAM,CAAW;IAAG,CAAC;IAElD;;;;OAIG;IACH,KAAK,CAAC,MAAM,CAAC,MAAyB;QACpC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CACrC,SAAS,EACT,MAAM,CACP,CAAC;QACF,OAAO,QAAQ,CAAC,KAAK,CAAC;IACxB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,IAAI;QACR,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CACpC,SAAS,CACV,CAAC;QACF,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU;QAId,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAsD,gBAAgB,CAAC,CAAC;QAC9G,OAAO;YACL,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,MAAM,EAAE,QAAQ,CAAC,MAAM;SACxB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,GAAG,CAAC,OAAe;QACvB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CACpC,WAAW,OAAO,EAAE,CACrB,CAAC;QACF,OAAO,QAAQ,CAAC,KAAK,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,OAAe,EACf,MAAyB;QAEzB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CACtC,WAAW,OAAO,EAAE,EACpB,MAAM,CACP,CAAC;QACF,OAAO,QAAQ,CAAC,KAAK,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,OAAe;QAChC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,OAAO,YAAY,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,OAAe,EAAE,OAAgB,KAAK;QACjD,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CACtB,WAAW,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAChD,CAAC;IACJ,CAAC;CACF;AAjFD,wCAiFC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { ApiClient } from '../ApiClient';
|
|
2
|
+
import type { CreateDatabaseParams, Database, DatabaseCollection, DatabaseDocument, UpdateDatabaseParams } from '../types';
|
|
3
|
+
export interface ListDatabasesParams {
|
|
4
|
+
projectId?: string;
|
|
5
|
+
}
|
|
6
|
+
export interface CreateDatabaseCollectionParams {
|
|
7
|
+
name: string;
|
|
8
|
+
description?: string;
|
|
9
|
+
}
|
|
10
|
+
export interface CreateDatabaseDocumentParams {
|
|
11
|
+
id?: string;
|
|
12
|
+
data: Record<string, unknown>;
|
|
13
|
+
}
|
|
14
|
+
export interface UpdateDatabaseDocumentParams {
|
|
15
|
+
data: Record<string, unknown>;
|
|
16
|
+
}
|
|
17
|
+
export declare class DatabasesResource {
|
|
18
|
+
private readonly client;
|
|
19
|
+
constructor(client: ApiClient);
|
|
20
|
+
create(params: CreateDatabaseParams): Promise<Database>;
|
|
21
|
+
list(params?: ListDatabasesParams): Promise<Database[]>;
|
|
22
|
+
get(databaseId: string): Promise<Database>;
|
|
23
|
+
update(databaseId: string, params: UpdateDatabaseParams): Promise<Database>;
|
|
24
|
+
delete(databaseId: string): Promise<boolean>;
|
|
25
|
+
getAnalytics(databaseId: string): Promise<Record<string, unknown>>;
|
|
26
|
+
listCollections(databaseId: string): Promise<DatabaseCollection[]>;
|
|
27
|
+
createCollection(databaseId: string, params: CreateDatabaseCollectionParams): Promise<DatabaseCollection>;
|
|
28
|
+
deleteCollection(databaseId: string, collectionId: string): Promise<boolean>;
|
|
29
|
+
listDocuments(databaseId: string, collectionId: string, params?: {
|
|
30
|
+
limit?: number;
|
|
31
|
+
}): Promise<DatabaseDocument[]>;
|
|
32
|
+
createDocument(databaseId: string, collectionId: string, params: CreateDatabaseDocumentParams): Promise<DatabaseDocument>;
|
|
33
|
+
getDocument(databaseId: string, collectionId: string, documentId: string): Promise<DatabaseDocument>;
|
|
34
|
+
updateDocument(databaseId: string, collectionId: string, documentId: string, params: UpdateDatabaseDocumentParams): Promise<DatabaseDocument>;
|
|
35
|
+
deleteDocument(databaseId: string, collectionId: string, documentId: string): Promise<boolean>;
|
|
36
|
+
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DatabasesResource = void 0;
|
|
4
|
+
class DatabasesResource {
|
|
5
|
+
client;
|
|
6
|
+
constructor(client) {
|
|
7
|
+
this.client = client;
|
|
8
|
+
}
|
|
9
|
+
async create(params) {
|
|
10
|
+
const response = await this.client.post(`/databases`, params);
|
|
11
|
+
return response.database;
|
|
12
|
+
}
|
|
13
|
+
async list(params = {}) {
|
|
14
|
+
const response = await this.client.get(`/databases`, {
|
|
15
|
+
projectId: params.projectId,
|
|
16
|
+
});
|
|
17
|
+
return response.databases;
|
|
18
|
+
}
|
|
19
|
+
async get(databaseId) {
|
|
20
|
+
const response = await this.client.get(`/databases/${databaseId}`);
|
|
21
|
+
return response.database;
|
|
22
|
+
}
|
|
23
|
+
async update(databaseId, params) {
|
|
24
|
+
const response = await this.client.patch(`/databases/${databaseId}`, params);
|
|
25
|
+
return response.database;
|
|
26
|
+
}
|
|
27
|
+
async delete(databaseId) {
|
|
28
|
+
const response = await this.client.delete(`/databases/${databaseId}`);
|
|
29
|
+
return !!(response.success ?? response.deleted);
|
|
30
|
+
}
|
|
31
|
+
async getAnalytics(databaseId) {
|
|
32
|
+
return this.client.get(`/databases/${databaseId}/analytics`);
|
|
33
|
+
}
|
|
34
|
+
async listCollections(databaseId) {
|
|
35
|
+
const response = await this.client.get(`/databases/${databaseId}/collections`);
|
|
36
|
+
return response.collections;
|
|
37
|
+
}
|
|
38
|
+
async createCollection(databaseId, params) {
|
|
39
|
+
const response = await this.client.post(`/databases/${databaseId}/collections`, params);
|
|
40
|
+
return response.collection;
|
|
41
|
+
}
|
|
42
|
+
async deleteCollection(databaseId, collectionId) {
|
|
43
|
+
const response = await this.client.delete(`/databases/${databaseId}/collections/${collectionId}`);
|
|
44
|
+
return !!(response.success ?? response.deleted);
|
|
45
|
+
}
|
|
46
|
+
async listDocuments(databaseId, collectionId, params = {}) {
|
|
47
|
+
const response = await this.client.get(`/databases/${databaseId}/collections/${collectionId}/documents`, params);
|
|
48
|
+
return response.documents;
|
|
49
|
+
}
|
|
50
|
+
async createDocument(databaseId, collectionId, params) {
|
|
51
|
+
const response = await this.client.post(`/databases/${databaseId}/collections/${collectionId}/documents`, params);
|
|
52
|
+
return response.document;
|
|
53
|
+
}
|
|
54
|
+
async getDocument(databaseId, collectionId, documentId) {
|
|
55
|
+
const response = await this.client.get(`/databases/${databaseId}/collections/${collectionId}/documents/${documentId}`);
|
|
56
|
+
return response.document;
|
|
57
|
+
}
|
|
58
|
+
async updateDocument(databaseId, collectionId, documentId, params) {
|
|
59
|
+
const response = await this.client.put(`/databases/${databaseId}/collections/${collectionId}/documents/${documentId}`, params);
|
|
60
|
+
return response.document;
|
|
61
|
+
}
|
|
62
|
+
async deleteDocument(databaseId, collectionId, documentId) {
|
|
63
|
+
const response = await this.client.delete(`/databases/${databaseId}/collections/${collectionId}/documents/${documentId}`);
|
|
64
|
+
return !!(response.success ?? response.deleted);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
exports.DatabasesResource = DatabasesResource;
|
|
68
|
+
//# sourceMappingURL=DatabasesResource.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DatabasesResource.js","sourceRoot":"","sources":["../../../src/cloud/resources/DatabasesResource.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,40 @@ export interface ListEnvironmentsParams {
|
|
|
15
15
|
limit?: number;
|
|
16
16
|
offset?: number;
|
|
17
17
|
}
|
|
18
|
+
export interface EnvironmentSnapshot {
|
|
19
|
+
id: string;
|
|
20
|
+
environmentId: string;
|
|
21
|
+
sourceThreadId?: string | null;
|
|
22
|
+
sourceStepId?: string | null;
|
|
23
|
+
parentSnapshotId?: string | null;
|
|
24
|
+
ledgerCommitSha?: string;
|
|
25
|
+
changedPaths?: string[];
|
|
26
|
+
additions?: number;
|
|
27
|
+
deletions?: number;
|
|
28
|
+
metadata?: Record<string, unknown> | null;
|
|
29
|
+
createdAt?: string;
|
|
30
|
+
}
|
|
31
|
+
export interface EnvironmentAnalyticsResponse {
|
|
32
|
+
environmentId: string;
|
|
33
|
+
available?: boolean;
|
|
34
|
+
summary?: Record<string, unknown>;
|
|
35
|
+
charts?: Record<string, unknown>;
|
|
36
|
+
recentRuns?: Array<Record<string, unknown>>;
|
|
37
|
+
}
|
|
38
|
+
export interface EnvironmentSecretDescriptor {
|
|
39
|
+
key: string;
|
|
40
|
+
hasValue: boolean;
|
|
41
|
+
}
|
|
42
|
+
export interface EnvironmentGuiActionParams {
|
|
43
|
+
action: 'click' | 'double_click' | 'right_click' | 'scroll' | 'key' | 'type' | 'bootstrap' | 'launch_app';
|
|
44
|
+
x?: number;
|
|
45
|
+
y?: number;
|
|
46
|
+
deltaY?: number;
|
|
47
|
+
steps?: number;
|
|
48
|
+
key?: string;
|
|
49
|
+
text?: string;
|
|
50
|
+
app?: string;
|
|
51
|
+
}
|
|
18
52
|
export declare class EnvironmentsResource {
|
|
19
53
|
private readonly client;
|
|
20
54
|
constructor(client: ApiClient);
|
|
@@ -39,6 +73,10 @@ export declare class EnvironmentsResource {
|
|
|
39
73
|
* Creates one if it doesn't exist.
|
|
40
74
|
*/
|
|
41
75
|
getDefault(): Promise<Environment>;
|
|
76
|
+
/**
|
|
77
|
+
* Mark an environment as the default computer for the current user.
|
|
78
|
+
*/
|
|
79
|
+
setDefault(environmentId: string): Promise<Environment>;
|
|
42
80
|
/**
|
|
43
81
|
* Update an environment
|
|
44
82
|
*/
|
|
@@ -156,6 +194,78 @@ export declare class EnvironmentsResource {
|
|
|
156
194
|
* Get container status for an environment
|
|
157
195
|
*/
|
|
158
196
|
getStatus(environmentId: string): Promise<ContainerStatus>;
|
|
197
|
+
/**
|
|
198
|
+
* Get runtime analytics for the computer.
|
|
199
|
+
*/
|
|
200
|
+
getAnalytics(environmentId: string): Promise<EnvironmentAnalyticsResponse>;
|
|
201
|
+
/**
|
|
202
|
+
* Capture a desktop screenshot from the computer.
|
|
203
|
+
*/
|
|
204
|
+
captureScreenshot(environmentId: string): Promise<Buffer>;
|
|
205
|
+
/**
|
|
206
|
+
* Create a browser/desktop session token for GUI streaming.
|
|
207
|
+
*/
|
|
208
|
+
createGuiSession(environmentId: string): Promise<{
|
|
209
|
+
token: string;
|
|
210
|
+
websocketPath: string;
|
|
211
|
+
expiresAt: string;
|
|
212
|
+
}>;
|
|
213
|
+
/**
|
|
214
|
+
* Execute a GUI action in the computer session.
|
|
215
|
+
*/
|
|
216
|
+
performGuiAction(environmentId: string, params: EnvironmentGuiActionParams): Promise<{
|
|
217
|
+
ok: boolean;
|
|
218
|
+
action: string;
|
|
219
|
+
}>;
|
|
220
|
+
/**
|
|
221
|
+
* List configured secret keys for the computer.
|
|
222
|
+
*/
|
|
223
|
+
listSecrets(environmentId: string): Promise<EnvironmentSecretDescriptor[]>;
|
|
224
|
+
createSecret(environmentId: string, key: string, value: string): Promise<{
|
|
225
|
+
success?: boolean;
|
|
226
|
+
key: string;
|
|
227
|
+
message?: string;
|
|
228
|
+
}>;
|
|
229
|
+
updateSecret(environmentId: string, key: string, value: string): Promise<{
|
|
230
|
+
success?: boolean;
|
|
231
|
+
key: string;
|
|
232
|
+
message?: string;
|
|
233
|
+
}>;
|
|
234
|
+
deleteSecret(environmentId: string, key: string): Promise<{
|
|
235
|
+
success?: boolean;
|
|
236
|
+
key: string;
|
|
237
|
+
message?: string;
|
|
238
|
+
}>;
|
|
239
|
+
/**
|
|
240
|
+
* Initialize snapshot history for a computer.
|
|
241
|
+
*/
|
|
242
|
+
initializeSnapshots(environmentId: string): Promise<{
|
|
243
|
+
environmentId: string;
|
|
244
|
+
snapshot: EnvironmentSnapshot;
|
|
245
|
+
}>;
|
|
246
|
+
/**
|
|
247
|
+
* List checkpoint snapshots for a computer.
|
|
248
|
+
*/
|
|
249
|
+
listSnapshots(environmentId: string): Promise<EnvironmentSnapshot[]>;
|
|
250
|
+
listSnapshotFiles(environmentId: string, snapshotId: string, params?: {
|
|
251
|
+
prefix?: string;
|
|
252
|
+
}): Promise<Array<Record<string, unknown>>>;
|
|
253
|
+
getSnapshotDiff(environmentId: string, snapshotId: string, params?: {
|
|
254
|
+
path?: string;
|
|
255
|
+
}): Promise<Record<string, unknown>>;
|
|
256
|
+
getSnapshotFile(environmentId: string, snapshotId: string, path: string): Promise<{
|
|
257
|
+
path: string;
|
|
258
|
+
snapshotId: string;
|
|
259
|
+
content: string;
|
|
260
|
+
}>;
|
|
261
|
+
forkFromSnapshot(environmentId: string, snapshotId: string, params?: {
|
|
262
|
+
name?: string;
|
|
263
|
+
description?: string;
|
|
264
|
+
}): Promise<{
|
|
265
|
+
environment: Environment;
|
|
266
|
+
snapshot?: EnvironmentSnapshot;
|
|
267
|
+
sourceSnapshotId?: string;
|
|
268
|
+
}>;
|
|
159
269
|
/**
|
|
160
270
|
* Get the agent configuration for an environment
|
|
161
271
|
*/
|
|
@@ -58,6 +58,13 @@ class EnvironmentsResource {
|
|
|
58
58
|
const response = await this.client.get(`/environments/default`);
|
|
59
59
|
return response;
|
|
60
60
|
}
|
|
61
|
+
/**
|
|
62
|
+
* Mark an environment as the default computer for the current user.
|
|
63
|
+
*/
|
|
64
|
+
async setDefault(environmentId) {
|
|
65
|
+
const response = await this.client.post(`/environments/${environmentId}/set-default`, {});
|
|
66
|
+
return response.environment;
|
|
67
|
+
}
|
|
61
68
|
/**
|
|
62
69
|
* Update an environment
|
|
63
70
|
*/
|
|
@@ -235,6 +242,74 @@ class EnvironmentsResource {
|
|
|
235
242
|
const response = await this.client.get(`/environments/${environmentId}/status`);
|
|
236
243
|
return response;
|
|
237
244
|
}
|
|
245
|
+
/**
|
|
246
|
+
* Get runtime analytics for the computer.
|
|
247
|
+
*/
|
|
248
|
+
async getAnalytics(environmentId) {
|
|
249
|
+
return this.client.get(`/environments/${environmentId}/analytics`);
|
|
250
|
+
}
|
|
251
|
+
/**
|
|
252
|
+
* Capture a desktop screenshot from the computer.
|
|
253
|
+
*/
|
|
254
|
+
async captureScreenshot(environmentId) {
|
|
255
|
+
const response = await this.client.request('GET', `/environments/${environmentId}/gui/screenshot`, { stream: true });
|
|
256
|
+
const arrayBuffer = await response.arrayBuffer();
|
|
257
|
+
return Buffer.from(arrayBuffer);
|
|
258
|
+
}
|
|
259
|
+
/**
|
|
260
|
+
* Create a browser/desktop session token for GUI streaming.
|
|
261
|
+
*/
|
|
262
|
+
async createGuiSession(environmentId) {
|
|
263
|
+
return this.client.post(`/environments/${environmentId}/gui/session`, {});
|
|
264
|
+
}
|
|
265
|
+
/**
|
|
266
|
+
* Execute a GUI action in the computer session.
|
|
267
|
+
*/
|
|
268
|
+
async performGuiAction(environmentId, params) {
|
|
269
|
+
return this.client.post(`/environments/${environmentId}/gui/action`, params);
|
|
270
|
+
}
|
|
271
|
+
/**
|
|
272
|
+
* List configured secret keys for the computer.
|
|
273
|
+
*/
|
|
274
|
+
async listSecrets(environmentId) {
|
|
275
|
+
const response = await this.client.get(`/environments/${environmentId}/secrets`);
|
|
276
|
+
return response.data;
|
|
277
|
+
}
|
|
278
|
+
async createSecret(environmentId, key, value) {
|
|
279
|
+
return this.client.post(`/environments/${environmentId}/secrets`, { key, value });
|
|
280
|
+
}
|
|
281
|
+
async updateSecret(environmentId, key, value) {
|
|
282
|
+
return this.client.put(`/environments/${environmentId}/secrets/${encodeURIComponent(key)}`, { value });
|
|
283
|
+
}
|
|
284
|
+
async deleteSecret(environmentId, key) {
|
|
285
|
+
return this.client.delete(`/environments/${environmentId}/secrets/${encodeURIComponent(key)}`);
|
|
286
|
+
}
|
|
287
|
+
/**
|
|
288
|
+
* Initialize snapshot history for a computer.
|
|
289
|
+
*/
|
|
290
|
+
async initializeSnapshots(environmentId) {
|
|
291
|
+
return this.client.post(`/environments/${environmentId}/snapshots/initialize`, {});
|
|
292
|
+
}
|
|
293
|
+
/**
|
|
294
|
+
* List checkpoint snapshots for a computer.
|
|
295
|
+
*/
|
|
296
|
+
async listSnapshots(environmentId) {
|
|
297
|
+
const response = await this.client.get(`/environments/${environmentId}/snapshots`);
|
|
298
|
+
return response.data;
|
|
299
|
+
}
|
|
300
|
+
async listSnapshotFiles(environmentId, snapshotId, params = {}) {
|
|
301
|
+
const response = await this.client.get(`/environments/${environmentId}/snapshots/${snapshotId}/files`, params);
|
|
302
|
+
return response.data;
|
|
303
|
+
}
|
|
304
|
+
async getSnapshotDiff(environmentId, snapshotId, params = {}) {
|
|
305
|
+
return this.client.get(`/environments/${environmentId}/snapshots/${snapshotId}/diff`, params);
|
|
306
|
+
}
|
|
307
|
+
async getSnapshotFile(environmentId, snapshotId, path) {
|
|
308
|
+
return this.client.get(`/environments/${environmentId}/snapshots/${snapshotId}/file`, { path });
|
|
309
|
+
}
|
|
310
|
+
async forkFromSnapshot(environmentId, snapshotId, params = {}) {
|
|
311
|
+
return this.client.post(`/environments/${environmentId}/snapshots/${snapshotId}/fork`, params);
|
|
312
|
+
}
|
|
238
313
|
// =========================================================================
|
|
239
314
|
// Configuration Management
|
|
240
315
|
// =========================================================================
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnvironmentsResource.js","sourceRoot":"","sources":["../../../src/cloud/resources/EnvironmentsResource.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;
|
|
1
|
+
{"version":3,"file":"EnvironmentsResource.js","sourceRoot":"","sources":["../../../src/cloud/resources/EnvironmentsResource.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,13 +6,47 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import type { ApiClient } from '../ApiClient';
|
|
8
8
|
import type { GitDiffResult, GitCommitParams, GitCommitResult, GitPushParams, GitPushResult } from '../types';
|
|
9
|
+
export interface GitStatusResult {
|
|
10
|
+
isGitRepo: boolean;
|
|
11
|
+
path?: string;
|
|
12
|
+
message?: string | null;
|
|
13
|
+
branch?: string | null;
|
|
14
|
+
remoteUrl?: string | null;
|
|
15
|
+
changedFiles?: Array<Record<string, unknown>>;
|
|
16
|
+
stagedFiles?: Array<Record<string, unknown>>;
|
|
17
|
+
unstagedFiles?: Array<Record<string, unknown>>;
|
|
18
|
+
hasChanges?: boolean;
|
|
19
|
+
hasStagedChanges?: boolean;
|
|
20
|
+
hasUnstagedChanges?: boolean;
|
|
21
|
+
hasUnpushedCommits?: boolean;
|
|
22
|
+
}
|
|
9
23
|
export declare class GitResource {
|
|
10
24
|
private readonly client;
|
|
11
25
|
constructor(client: ApiClient);
|
|
12
26
|
/**
|
|
13
|
-
*
|
|
27
|
+
* Compatibility alias for Git status on a computer workspace.
|
|
14
28
|
*/
|
|
15
29
|
diff(workspaceId: string): Promise<GitDiffResult>;
|
|
30
|
+
/**
|
|
31
|
+
* Get Git status for a computer workspace or repository path.
|
|
32
|
+
*/
|
|
33
|
+
getStatus(environmentId: string, path?: string): Promise<GitStatusResult>;
|
|
34
|
+
/**
|
|
35
|
+
* Stage files before committing.
|
|
36
|
+
*/
|
|
37
|
+
stage(environmentId: string, params?: {
|
|
38
|
+
files?: string[];
|
|
39
|
+
path?: string;
|
|
40
|
+
all?: boolean;
|
|
41
|
+
}): Promise<Record<string, unknown>>;
|
|
42
|
+
/**
|
|
43
|
+
* Unstage previously staged files.
|
|
44
|
+
*/
|
|
45
|
+
unstage(environmentId: string, params?: {
|
|
46
|
+
files?: string[];
|
|
47
|
+
path?: string;
|
|
48
|
+
all?: boolean;
|
|
49
|
+
}): Promise<Record<string, unknown>>;
|
|
16
50
|
/**
|
|
17
51
|
* Create a git commit
|
|
18
52
|
*/
|
|
@@ -22,7 +56,31 @@ export declare class GitResource {
|
|
|
22
56
|
*/
|
|
23
57
|
push(workspaceId: string, params?: GitPushParams): Promise<GitPushResult>;
|
|
24
58
|
/**
|
|
25
|
-
*
|
|
59
|
+
* Create a branch inside a computer workspace.
|
|
60
|
+
*/
|
|
61
|
+
createBranch(environmentId: string, name: string, path?: string): Promise<Record<string, unknown>>;
|
|
62
|
+
/**
|
|
63
|
+
* Switch the active branch in a computer workspace.
|
|
64
|
+
*/
|
|
65
|
+
switchBranch(environmentId: string, name: string, path?: string): Promise<Record<string, unknown>>;
|
|
66
|
+
listBranches(environmentId: string, path?: string): Promise<Record<string, unknown>>;
|
|
67
|
+
listCommits(environmentId: string, params?: {
|
|
68
|
+
path?: string;
|
|
69
|
+
limit?: number;
|
|
70
|
+
}): Promise<Record<string, unknown>>;
|
|
71
|
+
prepareGithub(environmentId: string, params: {
|
|
72
|
+
repoFullName: string;
|
|
73
|
+
branch?: string;
|
|
74
|
+
}): Promise<Record<string, unknown>>;
|
|
75
|
+
clone(environmentId: string, params: {
|
|
76
|
+
repoUrl: string;
|
|
77
|
+
branch?: string;
|
|
78
|
+
targetPath?: string;
|
|
79
|
+
token?: string | null;
|
|
80
|
+
}): Promise<Record<string, unknown>>;
|
|
81
|
+
/**
|
|
82
|
+
* Commit diffs are no longer exposed as a standalone public ACP route.
|
|
83
|
+
* Use thread steps, thread diffs, or environment snapshot diffs instead.
|
|
26
84
|
*/
|
|
27
85
|
getCommitDiff(workspaceId: string, commitSha: string): Promise<GitDiffResult>;
|
|
28
86
|
}
|
|
@@ -13,32 +13,108 @@ class GitResource {
|
|
|
13
13
|
this.client = client;
|
|
14
14
|
}
|
|
15
15
|
/**
|
|
16
|
-
*
|
|
16
|
+
* Compatibility alias for Git status on a computer workspace.
|
|
17
17
|
*/
|
|
18
18
|
async diff(workspaceId) {
|
|
19
|
-
const
|
|
20
|
-
|
|
19
|
+
const status = await this.getStatus(workspaceId);
|
|
20
|
+
const files = status.changedFiles ?? [];
|
|
21
|
+
return {
|
|
22
|
+
diffs: files.map((file) => ({
|
|
23
|
+
path: String(file.path ?? ''),
|
|
24
|
+
additions: 0,
|
|
25
|
+
deletions: 0,
|
|
26
|
+
changes: String(file.status ?? 'modified'),
|
|
27
|
+
})),
|
|
28
|
+
stats: {
|
|
29
|
+
filesChanged: files.length,
|
|
30
|
+
insertions: 0,
|
|
31
|
+
deletions: 0,
|
|
32
|
+
},
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Get Git status for a computer workspace or repository path.
|
|
37
|
+
*/
|
|
38
|
+
async getStatus(environmentId, path) {
|
|
39
|
+
return this.client.get(`/environments/${environmentId}/git/status`, path ? { path } : undefined);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Stage files before committing.
|
|
43
|
+
*/
|
|
44
|
+
async stage(environmentId, params = {}) {
|
|
45
|
+
return this.client.post(`/environments/${environmentId}/git/stage`, params);
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Unstage previously staged files.
|
|
49
|
+
*/
|
|
50
|
+
async unstage(environmentId, params = {}) {
|
|
51
|
+
return this.client.post(`/environments/${environmentId}/git/unstage`, params);
|
|
21
52
|
}
|
|
22
53
|
/**
|
|
23
54
|
* Create a git commit
|
|
24
55
|
*/
|
|
25
56
|
async commit(workspaceId, params) {
|
|
26
|
-
|
|
27
|
-
|
|
57
|
+
if (params.files?.length) {
|
|
58
|
+
await this.stage(workspaceId, { files: params.files });
|
|
59
|
+
}
|
|
60
|
+
const response = await this.client.post(`/environments/${workspaceId}/git/commit`, { message: params.message });
|
|
61
|
+
return {
|
|
62
|
+
success: !!response.success,
|
|
63
|
+
commit: {
|
|
64
|
+
sha: String(response.sha ?? ''),
|
|
65
|
+
message: String(response.message ?? params.message),
|
|
66
|
+
author: params.author ?? { name: '', email: '' },
|
|
67
|
+
timestamp: new Date().toISOString(),
|
|
68
|
+
filesChanged: params.files?.length ?? 0,
|
|
69
|
+
},
|
|
70
|
+
};
|
|
28
71
|
}
|
|
29
72
|
/**
|
|
30
73
|
* Push commits to remote
|
|
31
74
|
*/
|
|
32
75
|
async push(workspaceId, params = {}) {
|
|
33
|
-
const response = await this.client.post(`/
|
|
34
|
-
return
|
|
76
|
+
const response = await this.client.post(`/environments/${workspaceId}/git/push`, params);
|
|
77
|
+
return {
|
|
78
|
+
success: !!response.success,
|
|
79
|
+
push: {
|
|
80
|
+
remote: 'origin',
|
|
81
|
+
branch: String(response.branch ?? params.branch ?? ''),
|
|
82
|
+
commits: 0,
|
|
83
|
+
},
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Create a branch inside a computer workspace.
|
|
88
|
+
*/
|
|
89
|
+
async createBranch(environmentId, name, path) {
|
|
90
|
+
return this.client.post(`/environments/${environmentId}/git/branch`, { name, path });
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Switch the active branch in a computer workspace.
|
|
94
|
+
*/
|
|
95
|
+
async switchBranch(environmentId, name, path) {
|
|
96
|
+
return this.client.put(`/environments/${environmentId}/git/branch`, { name, path });
|
|
97
|
+
}
|
|
98
|
+
async listBranches(environmentId, path) {
|
|
99
|
+
return this.client.get(`/environments/${environmentId}/git/branches`, path ? { path } : undefined);
|
|
100
|
+
}
|
|
101
|
+
async listCommits(environmentId, params = {}) {
|
|
102
|
+
return this.client.get(`/environments/${environmentId}/git/commits`, params);
|
|
103
|
+
}
|
|
104
|
+
async prepareGithub(environmentId, params) {
|
|
105
|
+
return this.client.post(`/environments/${environmentId}/github/prepare`, params);
|
|
106
|
+
}
|
|
107
|
+
async clone(environmentId, params) {
|
|
108
|
+
return this.client.post(`/environments/${environmentId}/git/clone`, params);
|
|
35
109
|
}
|
|
36
110
|
/**
|
|
37
|
-
*
|
|
111
|
+
* Commit diffs are no longer exposed as a standalone public ACP route.
|
|
112
|
+
* Use thread steps, thread diffs, or environment snapshot diffs instead.
|
|
38
113
|
*/
|
|
39
114
|
async getCommitDiff(workspaceId, commitSha) {
|
|
40
|
-
|
|
41
|
-
|
|
115
|
+
void workspaceId;
|
|
116
|
+
void commitSha;
|
|
117
|
+
throw new Error('getCommitDiff() is not available in the current ACP public API. Use thread step diffs or computer snapshot diffs instead.');
|
|
42
118
|
}
|
|
43
119
|
}
|
|
44
120
|
exports.GitResource = GitResource;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GitResource.js","sourceRoot":"","sources":["../../../src/cloud/resources/GitResource.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;
|
|
1
|
+
{"version":3,"file":"GitResource.js","sourceRoot":"","sources":["../../../src/cloud/resources/GitResource.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AA0BH,MAAa,WAAW;IACO;IAA7B,YAA6B,MAAiB;QAAjB,WAAM,GAAN,MAAM,CAAW;IAAG,CAAC;IAElD;;OAEG;IACH,KAAK,CAAC,IAAI,CAAC,WAAmB;QAC5B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QACjD,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC;QACxC,OAAO;YACL,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAC1B,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;gBAC7B,SAAS,EAAE,CAAC;gBACZ,SAAS,EAAE,CAAC;gBACZ,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,UAAU,CAAC;aAC3C,CAAC,CAAC;YACH,KAAK,EAAE;gBACL,YAAY,EAAE,KAAK,CAAC,MAAM;gBAC1B,UAAU,EAAE,CAAC;gBACb,SAAS,EAAE,CAAC;aACb;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CAAC,aAAqB,EAAE,IAAa;QAClD,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,iBAAiB,aAAa,aAAa,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACnG,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CACT,aAAqB,EACrB,SAA6D,EAAE;QAE/D,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,aAAa,YAAY,EAAE,MAAM,CAAC,CAAC;IAC9E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CACX,aAAqB,EACrB,SAA6D,EAAE;QAE/D,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,aAAa,cAAc,EAAE,MAAM,CAAC,CAAC;IAChF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,WAAmB,EACnB,MAAuB;QAEvB,IAAI,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;YACzB,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QACzD,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CACrC,iBAAiB,WAAW,aAAa,EACzC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAC5B,CAAC;QACF,OAAO;YACL,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,OAAO;YAC3B,MAAM,EAAE;gBACN,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,EAAE,CAAC;gBAC/B,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC;gBACnD,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;gBAChD,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,YAAY,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC;aACxC;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CACR,WAAmB,EACnB,SAAwB,EAAE;QAE1B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CACrC,iBAAiB,WAAW,WAAW,EACvC,MAAM,CACP,CAAC;QACF,OAAO;YACL,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,OAAO;YAC3B,IAAI,EAAE;gBACJ,MAAM,EAAE,QAAQ;gBAChB,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC;gBACtD,OAAO,EAAE,CAAC;aACX;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,aAAqB,EAAE,IAAY,EAAE,IAAa;QACnE,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,aAAa,aAAa,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACvF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,aAAqB,EAAE,IAAY,EAAE,IAAa;QACnE,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,iBAAiB,aAAa,aAAa,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACtF,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,aAAqB,EAAE,IAAa;QACrD,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,iBAAiB,aAAa,eAAe,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACrG,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,aAAqB,EAAE,SAA4C,EAAE;QACrF,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,iBAAiB,aAAa,cAAc,EAAE,MAAM,CAAC,CAAC;IAC/E,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,aAAqB,EAAE,MAAiD;QAC1F,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,aAAa,iBAAiB,EAAE,MAAM,CAAC,CAAC;IACnF,CAAC;IAED,KAAK,CAAC,KAAK,CACT,aAAqB,EACrB,MAAwF;QAExF,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,aAAa,YAAY,EAAE,MAAM,CAAC,CAAC;IAC9E,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,aAAa,CAAC,WAAmB,EAAE,SAAiB;QACxD,KAAK,WAAW,CAAC;QACjB,KAAK,SAAS,CAAC;QACf,MAAM,IAAI,KAAK,CACb,2HAA2H,CAC5H,CAAC;IACJ,CAAC;CACF;AA9ID,kCA8IC"}
|