wuying-agentbay-sdk 0.1.0 → 0.3.3
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 +124 -61
- package/dist/index.cjs +7848 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.mts +3174 -0
- package/dist/index.d.ts +3174 -0
- package/dist/index.mjs +7864 -0
- package/dist/index.mjs.map +1 -0
- package/package.json +86 -48
- package/dist/src/adb/adb.d.ts +0 -20
- package/dist/src/adb/adb.js +0 -57
- package/dist/src/adb/index.d.ts +0 -1
- package/dist/src/adb/index.js +0 -17
- package/dist/src/agent-bay.d.ts +0 -68
- package/dist/src/agent-bay.js +0 -213
- package/dist/src/api/client.d.ts +0 -191
- package/dist/src/api/client.js +0 -629
- package/dist/src/api/index.d.ts +0 -4
- package/dist/src/api/index.js +0 -26
- package/dist/src/api/models/CallMcpToolRequest.d.ts +0 -21
- package/dist/src/api/models/CallMcpToolRequest.js +0 -71
- package/dist/src/api/models/CallMcpToolResponse.d.ts +0 -19
- package/dist/src/api/models/CallMcpToolResponse.js +0 -68
- package/dist/src/api/models/CallMcpToolResponseBody.d.ts +0 -19
- package/dist/src/api/models/CallMcpToolResponseBody.js +0 -67
- package/dist/src/api/models/CreateMcpSessionRequest.d.ts +0 -19
- package/dist/src/api/models/CreateMcpSessionRequest.js +0 -67
- package/dist/src/api/models/CreateMcpSessionResponse.d.ts +0 -19
- package/dist/src/api/models/CreateMcpSessionResponse.js +0 -68
- package/dist/src/api/models/CreateMcpSessionResponseBody.d.ts +0 -20
- package/dist/src/api/models/CreateMcpSessionResponseBody.js +0 -71
- package/dist/src/api/models/CreateMcpSessionResponseBodyData.d.ts +0 -19
- package/dist/src/api/models/CreateMcpSessionResponseBodyData.js +0 -67
- package/dist/src/api/models/DeleteContextRequest.d.ts +0 -15
- package/dist/src/api/models/DeleteContextRequest.js +0 -59
- package/dist/src/api/models/DeleteContextResponse.d.ts +0 -19
- package/dist/src/api/models/DeleteContextResponse.js +0 -68
- package/dist/src/api/models/DeleteContextResponseBody.d.ts +0 -18
- package/dist/src/api/models/DeleteContextResponseBody.js +0 -65
- package/dist/src/api/models/GetContextRequest.d.ts +0 -16
- package/dist/src/api/models/GetContextRequest.js +0 -61
- package/dist/src/api/models/GetContextResponse.d.ts +0 -19
- package/dist/src/api/models/GetContextResponse.js +0 -68
- package/dist/src/api/models/GetContextResponseBody.d.ts +0 -20
- package/dist/src/api/models/GetContextResponseBody.js +0 -71
- package/dist/src/api/models/GetContextResponseBodyData.d.ts +0 -19
- package/dist/src/api/models/GetContextResponseBodyData.js +0 -67
- package/dist/src/api/models/GetLabelRequest.d.ts +0 -17
- package/dist/src/api/models/GetLabelRequest.js +0 -63
- package/dist/src/api/models/GetLabelResponse.d.ts +0 -19
- package/dist/src/api/models/GetLabelResponse.js +0 -68
- package/dist/src/api/models/GetLabelResponseBody.d.ts +0 -23
- package/dist/src/api/models/GetLabelResponseBody.js +0 -77
- package/dist/src/api/models/GetLabelResponseBodyData.d.ts +0 -14
- package/dist/src/api/models/GetLabelResponseBodyData.js +0 -57
- package/dist/src/api/models/GetLinkRequest.d.ts +0 -15
- package/dist/src/api/models/GetLinkRequest.js +0 -59
- package/dist/src/api/models/GetLinkResponse.d.ts +0 -19
- package/dist/src/api/models/GetLinkResponse.js +0 -68
- package/dist/src/api/models/GetLinkResponseBody.d.ts +0 -19
- package/dist/src/api/models/GetLinkResponseBody.js +0 -67
- package/dist/src/api/models/GetMcpResourceRequest.d.ts +0 -15
- package/dist/src/api/models/GetMcpResourceRequest.js +0 -59
- package/dist/src/api/models/GetMcpResourceResponse.d.ts +0 -19
- package/dist/src/api/models/GetMcpResourceResponse.js +0 -68
- package/dist/src/api/models/GetMcpResourceResponseBody.d.ts +0 -20
- package/dist/src/api/models/GetMcpResourceResponseBody.js +0 -71
- package/dist/src/api/models/GetMcpResourceResponseBodyData.d.ts +0 -17
- package/dist/src/api/models/GetMcpResourceResponseBodyData.js +0 -65
- package/dist/src/api/models/GetMcpResourceResponseBodyDataDesktopInfo.d.ts +0 -18
- package/dist/src/api/models/GetMcpResourceResponseBodyDataDesktopInfo.js +0 -65
- package/dist/src/api/models/ListContextsRequest.d.ts +0 -16
- package/dist/src/api/models/ListContextsRequest.js +0 -61
- package/dist/src/api/models/ListContextsResponse.d.ts +0 -19
- package/dist/src/api/models/ListContextsResponse.js +0 -68
- package/dist/src/api/models/ListContextsResponseBody.d.ts +0 -23
- package/dist/src/api/models/ListContextsResponseBody.js +0 -77
- package/dist/src/api/models/ListContextsResponseBodyData.d.ts +0 -19
- package/dist/src/api/models/ListContextsResponseBodyData.js +0 -67
- package/dist/src/api/models/ListSessionRequest.d.ts +0 -17
- package/dist/src/api/models/ListSessionRequest.js +0 -63
- package/dist/src/api/models/ListSessionResponse.d.ts +0 -19
- package/dist/src/api/models/ListSessionResponse.js +0 -68
- package/dist/src/api/models/ListSessionResponseBody.d.ts +0 -23
- package/dist/src/api/models/ListSessionResponseBody.js +0 -77
- package/dist/src/api/models/ListSessionResponseBodyData.d.ts +0 -14
- package/dist/src/api/models/ListSessionResponseBodyData.js +0 -57
- package/dist/src/api/models/ModifyContextRequest.d.ts +0 -16
- package/dist/src/api/models/ModifyContextRequest.js +0 -61
- package/dist/src/api/models/ModifyContextResponse.d.ts +0 -19
- package/dist/src/api/models/ModifyContextResponse.js +0 -68
- package/dist/src/api/models/ModifyContextResponseBody.d.ts +0 -18
- package/dist/src/api/models/ModifyContextResponseBody.js +0 -65
- package/dist/src/api/models/ReleaseMcpSessionRequest.d.ts +0 -15
- package/dist/src/api/models/ReleaseMcpSessionRequest.js +0 -59
- package/dist/src/api/models/ReleaseMcpSessionResponse.d.ts +0 -19
- package/dist/src/api/models/ReleaseMcpSessionResponse.js +0 -68
- package/dist/src/api/models/ReleaseMcpSessionResponseBody.d.ts +0 -18
- package/dist/src/api/models/ReleaseMcpSessionResponseBody.js +0 -65
- package/dist/src/api/models/SetLabelRequest.d.ts +0 -16
- package/dist/src/api/models/SetLabelRequest.js +0 -61
- package/dist/src/api/models/SetLabelResponse.d.ts +0 -19
- package/dist/src/api/models/SetLabelResponse.js +0 -68
- package/dist/src/api/models/SetLabelResponseBody.d.ts +0 -18
- package/dist/src/api/models/SetLabelResponseBody.js +0 -65
- package/dist/src/api/models/model.d.ts +0 -43
- package/dist/src/api/models/model.js +0 -89
- package/dist/src/application/application.d.ts +0 -88
- package/dist/src/application/application.js +0 -172
- package/dist/src/application/index.d.ts +0 -1
- package/dist/src/application/index.js +0 -17
- package/dist/src/command/command.d.ts +0 -43
- package/dist/src/command/command.js +0 -120
- package/dist/src/command/index.d.ts +0 -1
- package/dist/src/command/index.js +0 -17
- package/dist/src/config.d.ts +0 -15
- package/dist/src/config.js +0 -114
- package/dist/src/context.d.ts +0 -87
- package/dist/src/context.js +0 -208
- package/dist/src/exceptions.d.ts +0 -30
- package/dist/src/exceptions.js +0 -58
- package/dist/src/filesystem/filesystem.d.ts +0 -109
- package/dist/src/filesystem/filesystem.js +0 -245
- package/dist/src/filesystem/index.d.ts +0 -1
- package/dist/src/filesystem/index.js +0 -17
- package/dist/src/index.d.ts +0 -10
- package/dist/src/index.js +0 -32
- package/dist/src/oss/index.d.ts +0 -1
- package/dist/src/oss/index.js +0 -5
- package/dist/src/oss/oss.d.ts +0 -80
- package/dist/src/oss/oss.js +0 -233
- package/dist/src/session.d.ts +0 -99
- package/dist/src/session.js +0 -226
- package/dist/src/ui/index.d.ts +0 -1
- package/dist/src/ui/index.js +0 -17
- package/dist/src/ui/ui.d.ts +0 -95
- package/dist/src/ui/ui.js +0 -206
- package/dist/src/utils/logger.d.ts +0 -15
- package/dist/src/utils/logger.js +0 -48
- package/dist/src/window/index.d.ts +0 -1
- package/dist/src/window/index.js +0 -17
- package/dist/src/window/window.d.ts +0 -109
- package/dist/src/window/window.js +0 -220
- package/dist/tests/agent-bay.test.d.ts +0 -1
- package/dist/tests/agent-bay.test.js +0 -366
- package/dist/tests/integration/context-persistence.test.d.ts +0 -1
- package/dist/tests/integration/context-persistence.test.js +0 -226
- package/dist/tests/integration/context-session.test.d.ts +0 -1
- package/dist/tests/integration/context-session.test.js +0 -223
- package/dist/tests/integration/window-operations.test.d.ts +0 -1
- package/dist/tests/integration/window-operations.test.js +0 -228
- package/dist/tests/unit/adb.test.d.ts +0 -1
- package/dist/tests/unit/adb.test.js +0 -60
- package/dist/tests/unit/agent-bay.test.d.ts +0 -1
- package/dist/tests/unit/agent-bay.test.js +0 -182
- package/dist/tests/unit/application.test.d.ts +0 -1
- package/dist/tests/unit/application.test.js +0 -260
- package/dist/tests/unit/command.test.d.ts +0 -1
- package/dist/tests/unit/command.test.js +0 -252
- package/dist/tests/unit/context.test.d.ts +0 -1
- package/dist/tests/unit/context.test.js +0 -199
- package/dist/tests/unit/filesystem.test.d.ts +0 -1
- package/dist/tests/unit/filesystem.test.js +0 -493
- package/dist/tests/unit/oss.test.d.ts +0 -1
- package/dist/tests/unit/oss.test.js +0 -243
- package/dist/tests/unit/session-labels.test.d.ts +0 -1
- package/dist/tests/unit/session-labels.test.js +0 -138
- package/dist/tests/unit/session-params.test.d.ts +0 -1
- package/dist/tests/unit/session-params.test.js +0 -78
- package/dist/tests/unit/session.test.d.ts +0 -1
- package/dist/tests/unit/session.test.js +0 -204
- package/dist/tests/unit/ui.test.d.ts +0 -1
- package/dist/tests/unit/ui.test.js +0 -158
- package/dist/tests/unit/window.test.d.ts +0 -1
- package/dist/tests/unit/window.test.js +0 -331
- package/dist/tests/utils/test-helpers.d.ts +0 -35
- package/dist/tests/utils/test-helpers.js +0 -79
package/README.md
CHANGED
|
@@ -42,81 +42,144 @@ npm install wuying-agentbay-sdk
|
|
|
42
42
|
npm run lint
|
|
43
43
|
```
|
|
44
44
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
```
|
|
45
|
+
## Examples
|
|
46
|
+
|
|
47
|
+
You can find examples in the `docs/examples/typescript` directory, including:
|
|
49
48
|
|
|
50
|
-
|
|
49
|
+
- Basic SDK usage
|
|
50
|
+
- Context management
|
|
51
|
+
- Command execution
|
|
52
|
+
- File system operations
|
|
53
|
+
- UI interaction
|
|
54
|
+
- Application management
|
|
55
|
+
- Window management
|
|
56
|
+
- Session management
|
|
51
57
|
|
|
52
|
-
|
|
58
|
+
To run the examples:
|
|
53
59
|
|
|
54
60
|
```bash
|
|
55
|
-
npx ts-node examples/basic-usage.ts
|
|
61
|
+
npx ts-node docs/examples/typescript/basic-usage.ts
|
|
56
62
|
```
|
|
57
63
|
|
|
58
64
|
## TypeScript-Specific Usage
|
|
59
65
|
|
|
60
66
|
```typescript
|
|
61
|
-
import { AgentBay } from 'wuying-agentbay-sdk';
|
|
67
|
+
import { AgentBay, ListSessionParams } from 'wuying-agentbay-sdk';
|
|
62
68
|
|
|
63
69
|
async function main() {
|
|
64
70
|
// Initialize with API key
|
|
65
71
|
const agentBay = new AgentBay({ apiKey: 'your_api_key' });
|
|
72
|
+
|
|
73
|
+
// Create a session with optional parameters
|
|
74
|
+
const createResponse = await agentBay.create({
|
|
75
|
+
imageId: 'linux_latest', // Optional: specify the image to use
|
|
76
|
+
contextId: 'your_context_id', // Optional: bind to an existing context
|
|
77
|
+
labels: {
|
|
78
|
+
purpose: 'demo',
|
|
79
|
+
environment: 'development'
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
const session = createResponse.session;
|
|
83
|
+
|
|
84
|
+
// Execute a command
|
|
85
|
+
const commandResponse = await session.command.executeCommand('ls -la');
|
|
86
|
+
|
|
87
|
+
// Run code
|
|
88
|
+
const codeResponse = await session.code.runCode('print("Hello World")', 'python');
|
|
89
|
+
|
|
90
|
+
// File operations
|
|
91
|
+
const fileContent = await session.fileSystem.readFile('/etc/hosts');
|
|
92
|
+
await session.fileSystem.writeFile('/tmp/test.txt', 'Hello World');
|
|
93
|
+
|
|
94
|
+
// UI operations
|
|
95
|
+
const screenshot = await session.ui.screenshot();
|
|
96
|
+
|
|
97
|
+
// Application management
|
|
98
|
+
const installedApps = await session.application.getInstalledApps(true, false, true);
|
|
99
|
+
const visibleApps = await session.application.listVisibleApps();
|
|
66
100
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
// Read a file
|
|
82
|
-
const content = await session.filesystem.readFile('/path/to/file.txt');
|
|
83
|
-
log(`File content: ${content}`);
|
|
84
|
-
|
|
85
|
-
// Get installed applications
|
|
86
|
-
const apps = await session.application.getInstalledApps(true, false, true);
|
|
87
|
-
log(`Found ${apps.length} installed applications`);
|
|
88
|
-
|
|
89
|
-
// List visible applications
|
|
90
|
-
const processes = await session.application.listVisibleApps();
|
|
91
|
-
log(`Found ${processes.length} visible applications`);
|
|
92
|
-
|
|
93
|
-
// List root windows
|
|
94
|
-
const windows = await session.window.listRootWindows();
|
|
95
|
-
log(`Found ${windows.length} root windows`);
|
|
96
|
-
|
|
97
|
-
// Get active window
|
|
98
|
-
const activeWindow = await session.window.getActiveWindow();
|
|
99
|
-
log(`Active window: ${activeWindow.title}`);
|
|
100
|
-
|
|
101
|
-
// Get session labels
|
|
102
|
-
const labels = await session.getLabels();
|
|
103
|
-
log(`Session labels: ${JSON.stringify(labels)}`);
|
|
104
|
-
|
|
105
|
-
// List sessions by labels
|
|
106
|
-
const filteredSessions = await agentBay.listByLabels({
|
|
107
|
-
purpose: 'demo'
|
|
108
|
-
});
|
|
109
|
-
log(`Found ${filteredSessions.length} matching sessions`);
|
|
110
|
-
|
|
111
|
-
// Clean up
|
|
112
|
-
await agentBay.delete(session);
|
|
113
|
-
log('Session deleted successfully');
|
|
114
|
-
} catch (error) {
|
|
115
|
-
logError('Error:', error);
|
|
116
|
-
}
|
|
101
|
+
// Window management
|
|
102
|
+
const windows = await session.window.listRootWindows();
|
|
103
|
+
const activeWindow = await session.window.getActiveWindow();
|
|
104
|
+
|
|
105
|
+
// Session management
|
|
106
|
+
await session.setLabels({ environment: 'production' });
|
|
107
|
+
const labels = await session.getLabels();
|
|
108
|
+
const info = await session.info();
|
|
109
|
+
|
|
110
|
+
// Context management
|
|
111
|
+
const contexts = await agentBay.context.list();
|
|
112
|
+
|
|
113
|
+
// Clean up
|
|
114
|
+
await agentBay.delete(session);
|
|
117
115
|
}
|
|
118
|
-
|
|
119
|
-
main();
|
|
120
116
|
```
|
|
121
117
|
|
|
122
|
-
|
|
118
|
+
## Key Features
|
|
119
|
+
|
|
120
|
+
### Session Management
|
|
121
|
+
|
|
122
|
+
- Create sessions with optional parameters (imageId, contextId, labels)
|
|
123
|
+
- List sessions with pagination and filtering by labels
|
|
124
|
+
- Delete sessions and clean up resources
|
|
125
|
+
- Manage session labels
|
|
126
|
+
- Get session information and links
|
|
127
|
+
|
|
128
|
+
### Command Execution
|
|
129
|
+
|
|
130
|
+
- Execute shell commands
|
|
131
|
+
- Run code in various languages
|
|
132
|
+
- Get command output and execution status
|
|
133
|
+
|
|
134
|
+
### File System Operations
|
|
135
|
+
|
|
136
|
+
- Read and write files
|
|
137
|
+
- List directory contents
|
|
138
|
+
- Create and delete files and directories
|
|
139
|
+
- Get file information
|
|
140
|
+
|
|
141
|
+
### UI Interaction
|
|
142
|
+
|
|
143
|
+
- Take screenshots
|
|
144
|
+
- Find UI elements by criteria
|
|
145
|
+
- Click on UI elements
|
|
146
|
+
- Send text input
|
|
147
|
+
- Perform swipe gestures
|
|
148
|
+
- Send key events
|
|
149
|
+
|
|
150
|
+
### Application Management
|
|
151
|
+
|
|
152
|
+
- Get installed applications
|
|
153
|
+
- List running applications
|
|
154
|
+
- Start and stop applications
|
|
155
|
+
- Get application information
|
|
156
|
+
|
|
157
|
+
### Window Management
|
|
158
|
+
|
|
159
|
+
- List windows
|
|
160
|
+
- Get active window
|
|
161
|
+
- Focus, resize, and move windows
|
|
162
|
+
- Get window properties
|
|
163
|
+
|
|
164
|
+
### Context Management
|
|
165
|
+
|
|
166
|
+
- Create, list, and delete contexts
|
|
167
|
+
- Bind sessions to contexts
|
|
168
|
+
- Synchronize context data
|
|
169
|
+
- Get context information
|
|
170
|
+
|
|
171
|
+
### OSS Integration
|
|
172
|
+
|
|
173
|
+
- Upload files to OSS
|
|
174
|
+
- Download files from OSS
|
|
175
|
+
- Initialize OSS environment
|
|
176
|
+
|
|
177
|
+
## Response Format
|
|
178
|
+
|
|
179
|
+
All API methods return responses that include:
|
|
180
|
+
|
|
181
|
+
- `requestId`: A unique identifier for the request
|
|
182
|
+
- `success`: A boolean indicating whether the operation was successful
|
|
183
|
+
- Operation-specific data (varies by method)
|
|
184
|
+
|
|
185
|
+
For more detailed documentation, refer to the [SDK Documentation](../docs/README.md).
|