@weapp-vite/mcp 1.5.8 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/dist/index.d.mts +96 -77
- package/dist/index.d.ts +96 -77
- package/dist/index.mjs +1561 -1348
- package/package.json +10 -7
package/README.md
CHANGED
package/dist/index.d.mts
CHANGED
|
@@ -1,5 +1,96 @@
|
|
|
1
|
+
import { RuntimeConnector, AcceptanceOptions, AcceptanceService } from '@weapp-vite/acceptance';
|
|
1
2
|
import { DevtoolsRuntimeHooks } from '@weapp-vite/devtools-runtime';
|
|
2
3
|
import { McpServer } from '@modelcontextprotocol/server';
|
|
4
|
+
export { DEFAULT_MCP_ENDPOINT, DEFAULT_MCP_HOST, DEFAULT_MCP_PORT, DEFAULT_RUNTIME_REST_ENDPOINT } from '@weapp-core/constants';
|
|
5
|
+
|
|
6
|
+
interface MiniProgramElement {
|
|
7
|
+
tagName?: string;
|
|
8
|
+
$?: (selector: string) => Promise<MiniProgramElement | null>;
|
|
9
|
+
$$?: (selector: string) => Promise<MiniProgramElement[]>;
|
|
10
|
+
tap: () => Promise<void>;
|
|
11
|
+
}
|
|
12
|
+
interface MiniProgramPage {
|
|
13
|
+
path: string;
|
|
14
|
+
query?: unknown;
|
|
15
|
+
$: (selector: string, options?: MiniProgramPageQueryOptions) => Promise<MiniProgramElement | null>;
|
|
16
|
+
$$?: (selector: string, options?: MiniProgramPageQueryOptions) => Promise<MiniProgramElement[]>;
|
|
17
|
+
data: (path?: string) => Promise<unknown>;
|
|
18
|
+
size: () => Promise<unknown>;
|
|
19
|
+
scrollTop: () => Promise<unknown>;
|
|
20
|
+
waitFor: (milliseconds: number) => Promise<void>;
|
|
21
|
+
}
|
|
22
|
+
interface MiniProgramPageQueryOptions {
|
|
23
|
+
fallback?: boolean;
|
|
24
|
+
}
|
|
25
|
+
interface MiniProgramLike {
|
|
26
|
+
on: (name: 'console' | 'exception', handler: (payload: unknown) => void) => void;
|
|
27
|
+
off?: (name: 'console' | 'exception', handler: (payload: unknown) => void) => void;
|
|
28
|
+
currentPage: () => Promise<MiniProgramPage>;
|
|
29
|
+
systemInfo: () => Promise<unknown>;
|
|
30
|
+
pageStack: () => Promise<MiniProgramPage[]>;
|
|
31
|
+
navigateTo: (url: string) => Promise<MiniProgramPage>;
|
|
32
|
+
redirectTo: (url: string) => Promise<MiniProgramPage>;
|
|
33
|
+
reLaunch: (url: string) => Promise<MiniProgramPage>;
|
|
34
|
+
switchTab: (url: string) => Promise<MiniProgramPage>;
|
|
35
|
+
navigateBack: () => Promise<MiniProgramPage>;
|
|
36
|
+
screenshot: (options?: {
|
|
37
|
+
timeout?: number;
|
|
38
|
+
}) => Promise<string | Uint8Array | undefined>;
|
|
39
|
+
callWxMethod: (method: string, ...args: unknown[]) => Promise<unknown>;
|
|
40
|
+
}
|
|
41
|
+
interface RuntimeConnectionInput {
|
|
42
|
+
cliPath?: string;
|
|
43
|
+
installationId?: string;
|
|
44
|
+
runtimeProvider?: 'devtools' | 'headless';
|
|
45
|
+
projectPath: string;
|
|
46
|
+
timeout?: number;
|
|
47
|
+
port?: number;
|
|
48
|
+
preferOpenedSession?: boolean;
|
|
49
|
+
preserveProjectRoot?: boolean;
|
|
50
|
+
sessionId?: string;
|
|
51
|
+
}
|
|
52
|
+
interface RuntimeConsoleLogEntry {
|
|
53
|
+
level: string;
|
|
54
|
+
message: string;
|
|
55
|
+
timestamp: number;
|
|
56
|
+
raw: unknown;
|
|
57
|
+
projectPath?: string;
|
|
58
|
+
sessionKey?: string;
|
|
59
|
+
sequence?: number;
|
|
60
|
+
}
|
|
61
|
+
declare class RuntimeSessionManager {
|
|
62
|
+
private readonly workspaceRoot;
|
|
63
|
+
private readonly runtimeHooks;
|
|
64
|
+
private readonly resolvedInputs;
|
|
65
|
+
private readonly resolvedSessionKeys;
|
|
66
|
+
private readonly logs;
|
|
67
|
+
private readonly attachedSessions;
|
|
68
|
+
private readonly maxLogs;
|
|
69
|
+
private logSequence;
|
|
70
|
+
private readonly ownedSessions;
|
|
71
|
+
constructor(workspaceRoot: string, runtimeHooks?: DevtoolsRuntimeHooks);
|
|
72
|
+
close(input: RuntimeConnectionInput): Promise<void>;
|
|
73
|
+
clearLogs(): void;
|
|
74
|
+
getLogs(projectPath?: string, afterSequence?: number): RuntimeConsoleLogEntry[];
|
|
75
|
+
getLogCursor(): number;
|
|
76
|
+
prepareProject(projectPath: string, signal: AbortSignal): Promise<void>;
|
|
77
|
+
fork(workspaceRoot?: string): RuntimeSessionManager;
|
|
78
|
+
dispose(): Promise<void>;
|
|
79
|
+
resolveProjectPath(projectPath: string): string;
|
|
80
|
+
resolveWorkspacePath(filePath: string): string;
|
|
81
|
+
withMiniProgram<T>(input: RuntimeConnectionInput, runner: (miniProgram: MiniProgramLike) => Promise<T>): Promise<T>;
|
|
82
|
+
withPage<T>(input: RuntimeConnectionInput, runner: (page: MiniProgramPage, miniProgram: MiniProgramLike) => Promise<T>): Promise<T>;
|
|
83
|
+
rememberPage(input: RuntimeConnectionInput, page: MiniProgramPage | null | undefined): void;
|
|
84
|
+
private resolveInput;
|
|
85
|
+
private resolveSessionKey;
|
|
86
|
+
private attach;
|
|
87
|
+
private resolveCurrentPage;
|
|
88
|
+
private detach;
|
|
89
|
+
private pushLog;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
declare function acceptanceRuntime(parent: RuntimeSessionManager): RuntimeConnector;
|
|
93
|
+
declare function createRuntimeAcceptanceService(root: string, options?: AcceptanceOptions, hooks?: DevtoolsRuntimeHooks): Promise<AcceptanceService>;
|
|
3
94
|
|
|
4
95
|
declare const MCP_SERVER_NAME = "@weapp-vite/mcp";
|
|
5
96
|
declare const MCP_SERVER_VERSION = "2.0.0";
|
|
@@ -86,77 +177,6 @@ declare function searchTextInDirectory(root: string, query: string, options?: {
|
|
|
86
177
|
maxResults?: number;
|
|
87
178
|
}): Promise<SearchMatch[]>;
|
|
88
179
|
|
|
89
|
-
interface MiniProgramElement {
|
|
90
|
-
tagName?: string;
|
|
91
|
-
$?: (selector: string) => Promise<MiniProgramElement | null>;
|
|
92
|
-
$$?: (selector: string) => Promise<MiniProgramElement[]>;
|
|
93
|
-
tap: () => Promise<void>;
|
|
94
|
-
}
|
|
95
|
-
interface MiniProgramPage {
|
|
96
|
-
path: string;
|
|
97
|
-
query?: unknown;
|
|
98
|
-
$: (selector: string, options?: MiniProgramPageQueryOptions) => Promise<MiniProgramElement | null>;
|
|
99
|
-
$$?: (selector: string, options?: MiniProgramPageQueryOptions) => Promise<MiniProgramElement[]>;
|
|
100
|
-
data: (path?: string) => Promise<unknown>;
|
|
101
|
-
size: () => Promise<unknown>;
|
|
102
|
-
scrollTop: () => Promise<unknown>;
|
|
103
|
-
waitFor: (milliseconds: number) => Promise<void>;
|
|
104
|
-
}
|
|
105
|
-
interface MiniProgramPageQueryOptions {
|
|
106
|
-
fallback?: boolean;
|
|
107
|
-
}
|
|
108
|
-
interface MiniProgramLike {
|
|
109
|
-
on: (name: 'console' | 'exception', handler: (payload: unknown) => void) => void;
|
|
110
|
-
off?: (name: 'console' | 'exception', handler: (payload: unknown) => void) => void;
|
|
111
|
-
currentPage: () => Promise<MiniProgramPage>;
|
|
112
|
-
systemInfo: () => Promise<unknown>;
|
|
113
|
-
pageStack: () => Promise<MiniProgramPage[]>;
|
|
114
|
-
navigateTo: (url: string) => Promise<MiniProgramPage>;
|
|
115
|
-
redirectTo: (url: string) => Promise<MiniProgramPage>;
|
|
116
|
-
reLaunch: (url: string) => Promise<MiniProgramPage>;
|
|
117
|
-
switchTab: (url: string) => Promise<MiniProgramPage>;
|
|
118
|
-
navigateBack: () => Promise<MiniProgramPage>;
|
|
119
|
-
screenshot: (options?: {
|
|
120
|
-
timeout?: number;
|
|
121
|
-
}) => Promise<string | Uint8Array | undefined>;
|
|
122
|
-
callWxMethod: (method: string, ...args: unknown[]) => Promise<unknown>;
|
|
123
|
-
}
|
|
124
|
-
interface RuntimeConnectionInput {
|
|
125
|
-
projectPath: string;
|
|
126
|
-
timeout?: number;
|
|
127
|
-
port?: number;
|
|
128
|
-
preferOpenedSession?: boolean;
|
|
129
|
-
preserveProjectRoot?: boolean;
|
|
130
|
-
sessionId?: string;
|
|
131
|
-
}
|
|
132
|
-
interface RuntimeConsoleLogEntry {
|
|
133
|
-
level: string;
|
|
134
|
-
message: string;
|
|
135
|
-
timestamp: number;
|
|
136
|
-
raw: unknown;
|
|
137
|
-
}
|
|
138
|
-
declare class RuntimeSessionManager {
|
|
139
|
-
private readonly workspaceRoot;
|
|
140
|
-
private readonly runtimeHooks;
|
|
141
|
-
private readonly logs;
|
|
142
|
-
private readonly attachedSessions;
|
|
143
|
-
private readonly maxLogs;
|
|
144
|
-
constructor(workspaceRoot: string, runtimeHooks?: DevtoolsRuntimeHooks);
|
|
145
|
-
close(input: RuntimeConnectionInput): Promise<void>;
|
|
146
|
-
clearLogs(): void;
|
|
147
|
-
getLogs(): RuntimeConsoleLogEntry[];
|
|
148
|
-
resolveProjectPath(projectPath: string): string;
|
|
149
|
-
resolveWorkspacePath(filePath: string): string;
|
|
150
|
-
withMiniProgram<T>(input: RuntimeConnectionInput, runner: (miniProgram: MiniProgramLike) => Promise<T>): Promise<T>;
|
|
151
|
-
withPage<T>(input: RuntimeConnectionInput, runner: (page: MiniProgramPage, miniProgram: MiniProgramLike) => Promise<T>): Promise<T>;
|
|
152
|
-
rememberPage(input: RuntimeConnectionInput, page: MiniProgramPage | null | undefined): void;
|
|
153
|
-
private resolveSessionKey;
|
|
154
|
-
private attach;
|
|
155
|
-
private resolveCurrentPage;
|
|
156
|
-
private detach;
|
|
157
|
-
private pushLog;
|
|
158
|
-
}
|
|
159
|
-
|
|
160
180
|
interface CreateServerOptions {
|
|
161
181
|
runtimeHooks?: DevtoolsRuntimeHooks;
|
|
162
182
|
workspaceRoot?: string;
|
|
@@ -165,19 +185,16 @@ interface WeappViteMcpServerFactory {
|
|
|
165
185
|
createServer: () => McpServer;
|
|
166
186
|
runtimeManager: RuntimeSessionManager;
|
|
167
187
|
workspaceRoot: string;
|
|
188
|
+
close: () => Promise<void>;
|
|
168
189
|
}
|
|
169
190
|
declare function createWeappViteMcpServerFactory(options?: CreateServerOptions): Promise<WeappViteMcpServerFactory>;
|
|
170
191
|
declare function createWeappViteMcpServer(options?: CreateServerOptions): Promise<{
|
|
192
|
+
close: () => Promise<void>;
|
|
171
193
|
runtimeManager: RuntimeSessionManager;
|
|
172
194
|
server: McpServer;
|
|
173
195
|
workspaceRoot: string;
|
|
174
196
|
}>;
|
|
175
197
|
|
|
176
|
-
declare const DEFAULT_RUNTIME_REST_ENDPOINT = "/api/weapp/devtools";
|
|
177
|
-
|
|
178
|
-
declare const DEFAULT_MCP_HOST = "127.0.0.1";
|
|
179
|
-
declare const DEFAULT_MCP_PORT = 3088;
|
|
180
|
-
declare const DEFAULT_MCP_ENDPOINT = "/mcp";
|
|
181
198
|
interface StartMcpServerOptions extends CreateServerOptions {
|
|
182
199
|
transport?: 'stdio' | 'streamable-http';
|
|
183
200
|
host?: string;
|
|
@@ -195,6 +212,8 @@ interface McpServerHandle {
|
|
|
195
212
|
declare function startStdioServer(options?: CreateServerOptions): Promise<McpServerHandle>;
|
|
196
213
|
declare function startWeappViteMcpServer(options?: StartMcpServerOptions): Promise<McpServerHandle>;
|
|
197
214
|
|
|
215
|
+
declare function registerAcceptanceTools(server: McpServer, service: () => Promise<AcceptanceService>): McpServer;
|
|
216
|
+
|
|
198
217
|
declare function formatJson(value: unknown): string;
|
|
199
218
|
declare function normalizeErrorMessage(error: unknown): string;
|
|
200
219
|
declare function toToolResult(data: unknown, text?: string): {
|
|
@@ -218,5 +237,5 @@ declare function resolveWorkspaceRoot(start?: string): string;
|
|
|
218
237
|
declare function assertInsideRoot(root: string, targetPath: string): string;
|
|
219
238
|
declare function resolveSubPath(root: string, relativePath: string): string;
|
|
220
239
|
|
|
221
|
-
export { DEFAULT_MAX_FILE_CHARS, DEFAULT_MAX_OUTPUT_CHARS, DEFAULT_MAX_RESULTS,
|
|
240
|
+
export { DEFAULT_MAX_FILE_CHARS, DEFAULT_MAX_OUTPUT_CHARS, DEFAULT_MAX_RESULTS, DEFAULT_TIMEOUT_MS, EXPOSED_PACKAGES, MCP_SERVER_NAME, MCP_SERVER_VERSION, SKIPPED_DIR_NAMES, acceptanceRuntime, assertInsideRoot, createRuntimeAcceptanceService, createWeappViteMcpServer, createWeappViteMcpServerFactory, formatJson, listFilesInDirectory, loadExposedCatalog, loadPackageSummary, normalizeErrorMessage, readFileContent, registerAcceptanceTools, resolveSubPath, resolveWorkspaceRoot, runCommand, searchTextInDirectory, startStdioServer, startWeappViteMcpServer, toToolError, toToolResult };
|
|
222
241
|
export type { CommandResult, CreateServerOptions, ExposedPackageId, ExposedPackageSummary, McpServerHandle, SearchMatch, StartMcpServerOptions, WeappViteMcpServerFactory };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,96 @@
|
|
|
1
|
+
import { RuntimeConnector, AcceptanceOptions, AcceptanceService } from '@weapp-vite/acceptance';
|
|
1
2
|
import { DevtoolsRuntimeHooks } from '@weapp-vite/devtools-runtime';
|
|
2
3
|
import { McpServer } from '@modelcontextprotocol/server';
|
|
4
|
+
export { DEFAULT_MCP_ENDPOINT, DEFAULT_MCP_HOST, DEFAULT_MCP_PORT, DEFAULT_RUNTIME_REST_ENDPOINT } from '@weapp-core/constants';
|
|
5
|
+
|
|
6
|
+
interface MiniProgramElement {
|
|
7
|
+
tagName?: string;
|
|
8
|
+
$?: (selector: string) => Promise<MiniProgramElement | null>;
|
|
9
|
+
$$?: (selector: string) => Promise<MiniProgramElement[]>;
|
|
10
|
+
tap: () => Promise<void>;
|
|
11
|
+
}
|
|
12
|
+
interface MiniProgramPage {
|
|
13
|
+
path: string;
|
|
14
|
+
query?: unknown;
|
|
15
|
+
$: (selector: string, options?: MiniProgramPageQueryOptions) => Promise<MiniProgramElement | null>;
|
|
16
|
+
$$?: (selector: string, options?: MiniProgramPageQueryOptions) => Promise<MiniProgramElement[]>;
|
|
17
|
+
data: (path?: string) => Promise<unknown>;
|
|
18
|
+
size: () => Promise<unknown>;
|
|
19
|
+
scrollTop: () => Promise<unknown>;
|
|
20
|
+
waitFor: (milliseconds: number) => Promise<void>;
|
|
21
|
+
}
|
|
22
|
+
interface MiniProgramPageQueryOptions {
|
|
23
|
+
fallback?: boolean;
|
|
24
|
+
}
|
|
25
|
+
interface MiniProgramLike {
|
|
26
|
+
on: (name: 'console' | 'exception', handler: (payload: unknown) => void) => void;
|
|
27
|
+
off?: (name: 'console' | 'exception', handler: (payload: unknown) => void) => void;
|
|
28
|
+
currentPage: () => Promise<MiniProgramPage>;
|
|
29
|
+
systemInfo: () => Promise<unknown>;
|
|
30
|
+
pageStack: () => Promise<MiniProgramPage[]>;
|
|
31
|
+
navigateTo: (url: string) => Promise<MiniProgramPage>;
|
|
32
|
+
redirectTo: (url: string) => Promise<MiniProgramPage>;
|
|
33
|
+
reLaunch: (url: string) => Promise<MiniProgramPage>;
|
|
34
|
+
switchTab: (url: string) => Promise<MiniProgramPage>;
|
|
35
|
+
navigateBack: () => Promise<MiniProgramPage>;
|
|
36
|
+
screenshot: (options?: {
|
|
37
|
+
timeout?: number;
|
|
38
|
+
}) => Promise<string | Uint8Array | undefined>;
|
|
39
|
+
callWxMethod: (method: string, ...args: unknown[]) => Promise<unknown>;
|
|
40
|
+
}
|
|
41
|
+
interface RuntimeConnectionInput {
|
|
42
|
+
cliPath?: string;
|
|
43
|
+
installationId?: string;
|
|
44
|
+
runtimeProvider?: 'devtools' | 'headless';
|
|
45
|
+
projectPath: string;
|
|
46
|
+
timeout?: number;
|
|
47
|
+
port?: number;
|
|
48
|
+
preferOpenedSession?: boolean;
|
|
49
|
+
preserveProjectRoot?: boolean;
|
|
50
|
+
sessionId?: string;
|
|
51
|
+
}
|
|
52
|
+
interface RuntimeConsoleLogEntry {
|
|
53
|
+
level: string;
|
|
54
|
+
message: string;
|
|
55
|
+
timestamp: number;
|
|
56
|
+
raw: unknown;
|
|
57
|
+
projectPath?: string;
|
|
58
|
+
sessionKey?: string;
|
|
59
|
+
sequence?: number;
|
|
60
|
+
}
|
|
61
|
+
declare class RuntimeSessionManager {
|
|
62
|
+
private readonly workspaceRoot;
|
|
63
|
+
private readonly runtimeHooks;
|
|
64
|
+
private readonly resolvedInputs;
|
|
65
|
+
private readonly resolvedSessionKeys;
|
|
66
|
+
private readonly logs;
|
|
67
|
+
private readonly attachedSessions;
|
|
68
|
+
private readonly maxLogs;
|
|
69
|
+
private logSequence;
|
|
70
|
+
private readonly ownedSessions;
|
|
71
|
+
constructor(workspaceRoot: string, runtimeHooks?: DevtoolsRuntimeHooks);
|
|
72
|
+
close(input: RuntimeConnectionInput): Promise<void>;
|
|
73
|
+
clearLogs(): void;
|
|
74
|
+
getLogs(projectPath?: string, afterSequence?: number): RuntimeConsoleLogEntry[];
|
|
75
|
+
getLogCursor(): number;
|
|
76
|
+
prepareProject(projectPath: string, signal: AbortSignal): Promise<void>;
|
|
77
|
+
fork(workspaceRoot?: string): RuntimeSessionManager;
|
|
78
|
+
dispose(): Promise<void>;
|
|
79
|
+
resolveProjectPath(projectPath: string): string;
|
|
80
|
+
resolveWorkspacePath(filePath: string): string;
|
|
81
|
+
withMiniProgram<T>(input: RuntimeConnectionInput, runner: (miniProgram: MiniProgramLike) => Promise<T>): Promise<T>;
|
|
82
|
+
withPage<T>(input: RuntimeConnectionInput, runner: (page: MiniProgramPage, miniProgram: MiniProgramLike) => Promise<T>): Promise<T>;
|
|
83
|
+
rememberPage(input: RuntimeConnectionInput, page: MiniProgramPage | null | undefined): void;
|
|
84
|
+
private resolveInput;
|
|
85
|
+
private resolveSessionKey;
|
|
86
|
+
private attach;
|
|
87
|
+
private resolveCurrentPage;
|
|
88
|
+
private detach;
|
|
89
|
+
private pushLog;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
declare function acceptanceRuntime(parent: RuntimeSessionManager): RuntimeConnector;
|
|
93
|
+
declare function createRuntimeAcceptanceService(root: string, options?: AcceptanceOptions, hooks?: DevtoolsRuntimeHooks): Promise<AcceptanceService>;
|
|
3
94
|
|
|
4
95
|
declare const MCP_SERVER_NAME = "@weapp-vite/mcp";
|
|
5
96
|
declare const MCP_SERVER_VERSION = "2.0.0";
|
|
@@ -86,77 +177,6 @@ declare function searchTextInDirectory(root: string, query: string, options?: {
|
|
|
86
177
|
maxResults?: number;
|
|
87
178
|
}): Promise<SearchMatch[]>;
|
|
88
179
|
|
|
89
|
-
interface MiniProgramElement {
|
|
90
|
-
tagName?: string;
|
|
91
|
-
$?: (selector: string) => Promise<MiniProgramElement | null>;
|
|
92
|
-
$$?: (selector: string) => Promise<MiniProgramElement[]>;
|
|
93
|
-
tap: () => Promise<void>;
|
|
94
|
-
}
|
|
95
|
-
interface MiniProgramPage {
|
|
96
|
-
path: string;
|
|
97
|
-
query?: unknown;
|
|
98
|
-
$: (selector: string, options?: MiniProgramPageQueryOptions) => Promise<MiniProgramElement | null>;
|
|
99
|
-
$$?: (selector: string, options?: MiniProgramPageQueryOptions) => Promise<MiniProgramElement[]>;
|
|
100
|
-
data: (path?: string) => Promise<unknown>;
|
|
101
|
-
size: () => Promise<unknown>;
|
|
102
|
-
scrollTop: () => Promise<unknown>;
|
|
103
|
-
waitFor: (milliseconds: number) => Promise<void>;
|
|
104
|
-
}
|
|
105
|
-
interface MiniProgramPageQueryOptions {
|
|
106
|
-
fallback?: boolean;
|
|
107
|
-
}
|
|
108
|
-
interface MiniProgramLike {
|
|
109
|
-
on: (name: 'console' | 'exception', handler: (payload: unknown) => void) => void;
|
|
110
|
-
off?: (name: 'console' | 'exception', handler: (payload: unknown) => void) => void;
|
|
111
|
-
currentPage: () => Promise<MiniProgramPage>;
|
|
112
|
-
systemInfo: () => Promise<unknown>;
|
|
113
|
-
pageStack: () => Promise<MiniProgramPage[]>;
|
|
114
|
-
navigateTo: (url: string) => Promise<MiniProgramPage>;
|
|
115
|
-
redirectTo: (url: string) => Promise<MiniProgramPage>;
|
|
116
|
-
reLaunch: (url: string) => Promise<MiniProgramPage>;
|
|
117
|
-
switchTab: (url: string) => Promise<MiniProgramPage>;
|
|
118
|
-
navigateBack: () => Promise<MiniProgramPage>;
|
|
119
|
-
screenshot: (options?: {
|
|
120
|
-
timeout?: number;
|
|
121
|
-
}) => Promise<string | Uint8Array | undefined>;
|
|
122
|
-
callWxMethod: (method: string, ...args: unknown[]) => Promise<unknown>;
|
|
123
|
-
}
|
|
124
|
-
interface RuntimeConnectionInput {
|
|
125
|
-
projectPath: string;
|
|
126
|
-
timeout?: number;
|
|
127
|
-
port?: number;
|
|
128
|
-
preferOpenedSession?: boolean;
|
|
129
|
-
preserveProjectRoot?: boolean;
|
|
130
|
-
sessionId?: string;
|
|
131
|
-
}
|
|
132
|
-
interface RuntimeConsoleLogEntry {
|
|
133
|
-
level: string;
|
|
134
|
-
message: string;
|
|
135
|
-
timestamp: number;
|
|
136
|
-
raw: unknown;
|
|
137
|
-
}
|
|
138
|
-
declare class RuntimeSessionManager {
|
|
139
|
-
private readonly workspaceRoot;
|
|
140
|
-
private readonly runtimeHooks;
|
|
141
|
-
private readonly logs;
|
|
142
|
-
private readonly attachedSessions;
|
|
143
|
-
private readonly maxLogs;
|
|
144
|
-
constructor(workspaceRoot: string, runtimeHooks?: DevtoolsRuntimeHooks);
|
|
145
|
-
close(input: RuntimeConnectionInput): Promise<void>;
|
|
146
|
-
clearLogs(): void;
|
|
147
|
-
getLogs(): RuntimeConsoleLogEntry[];
|
|
148
|
-
resolveProjectPath(projectPath: string): string;
|
|
149
|
-
resolveWorkspacePath(filePath: string): string;
|
|
150
|
-
withMiniProgram<T>(input: RuntimeConnectionInput, runner: (miniProgram: MiniProgramLike) => Promise<T>): Promise<T>;
|
|
151
|
-
withPage<T>(input: RuntimeConnectionInput, runner: (page: MiniProgramPage, miniProgram: MiniProgramLike) => Promise<T>): Promise<T>;
|
|
152
|
-
rememberPage(input: RuntimeConnectionInput, page: MiniProgramPage | null | undefined): void;
|
|
153
|
-
private resolveSessionKey;
|
|
154
|
-
private attach;
|
|
155
|
-
private resolveCurrentPage;
|
|
156
|
-
private detach;
|
|
157
|
-
private pushLog;
|
|
158
|
-
}
|
|
159
|
-
|
|
160
180
|
interface CreateServerOptions {
|
|
161
181
|
runtimeHooks?: DevtoolsRuntimeHooks;
|
|
162
182
|
workspaceRoot?: string;
|
|
@@ -165,19 +185,16 @@ interface WeappViteMcpServerFactory {
|
|
|
165
185
|
createServer: () => McpServer;
|
|
166
186
|
runtimeManager: RuntimeSessionManager;
|
|
167
187
|
workspaceRoot: string;
|
|
188
|
+
close: () => Promise<void>;
|
|
168
189
|
}
|
|
169
190
|
declare function createWeappViteMcpServerFactory(options?: CreateServerOptions): Promise<WeappViteMcpServerFactory>;
|
|
170
191
|
declare function createWeappViteMcpServer(options?: CreateServerOptions): Promise<{
|
|
192
|
+
close: () => Promise<void>;
|
|
171
193
|
runtimeManager: RuntimeSessionManager;
|
|
172
194
|
server: McpServer;
|
|
173
195
|
workspaceRoot: string;
|
|
174
196
|
}>;
|
|
175
197
|
|
|
176
|
-
declare const DEFAULT_RUNTIME_REST_ENDPOINT = "/api/weapp/devtools";
|
|
177
|
-
|
|
178
|
-
declare const DEFAULT_MCP_HOST = "127.0.0.1";
|
|
179
|
-
declare const DEFAULT_MCP_PORT = 3088;
|
|
180
|
-
declare const DEFAULT_MCP_ENDPOINT = "/mcp";
|
|
181
198
|
interface StartMcpServerOptions extends CreateServerOptions {
|
|
182
199
|
transport?: 'stdio' | 'streamable-http';
|
|
183
200
|
host?: string;
|
|
@@ -195,6 +212,8 @@ interface McpServerHandle {
|
|
|
195
212
|
declare function startStdioServer(options?: CreateServerOptions): Promise<McpServerHandle>;
|
|
196
213
|
declare function startWeappViteMcpServer(options?: StartMcpServerOptions): Promise<McpServerHandle>;
|
|
197
214
|
|
|
215
|
+
declare function registerAcceptanceTools(server: McpServer, service: () => Promise<AcceptanceService>): McpServer;
|
|
216
|
+
|
|
198
217
|
declare function formatJson(value: unknown): string;
|
|
199
218
|
declare function normalizeErrorMessage(error: unknown): string;
|
|
200
219
|
declare function toToolResult(data: unknown, text?: string): {
|
|
@@ -218,5 +237,5 @@ declare function resolveWorkspaceRoot(start?: string): string;
|
|
|
218
237
|
declare function assertInsideRoot(root: string, targetPath: string): string;
|
|
219
238
|
declare function resolveSubPath(root: string, relativePath: string): string;
|
|
220
239
|
|
|
221
|
-
export { DEFAULT_MAX_FILE_CHARS, DEFAULT_MAX_OUTPUT_CHARS, DEFAULT_MAX_RESULTS,
|
|
240
|
+
export { DEFAULT_MAX_FILE_CHARS, DEFAULT_MAX_OUTPUT_CHARS, DEFAULT_MAX_RESULTS, DEFAULT_TIMEOUT_MS, EXPOSED_PACKAGES, MCP_SERVER_NAME, MCP_SERVER_VERSION, SKIPPED_DIR_NAMES, acceptanceRuntime, assertInsideRoot, createRuntimeAcceptanceService, createWeappViteMcpServer, createWeappViteMcpServerFactory, formatJson, listFilesInDirectory, loadExposedCatalog, loadPackageSummary, normalizeErrorMessage, readFileContent, registerAcceptanceTools, resolveSubPath, resolveWorkspaceRoot, runCommand, searchTextInDirectory, startStdioServer, startWeappViteMcpServer, toToolError, toToolResult };
|
|
222
241
|
export type { CommandResult, CreateServerOptions, ExposedPackageId, ExposedPackageSummary, McpServerHandle, SearchMatch, StartMcpServerOptions, WeappViteMcpServerFactory };
|