react-native-ai-debugger 1.0.5 → 1.0.6

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.
@@ -0,0 +1,4 @@
1
+ export declare function initTelemetry(): void;
2
+ export declare function isTelemetryEnabled(): boolean;
3
+ export declare function trackToolInvocation(toolName: string, success: boolean, durationMs: number): void;
4
+ //# sourceMappingURL=telemetry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"telemetry.d.ts","sourceRoot":"","sources":["../../src/core/telemetry.ts"],"names":[],"mappings":"AAgIA,wBAAgB,aAAa,IAAI,IAAI,CA8CpC;AAED,wBAAgB,kBAAkB,IAAI,OAAO,CAE5C;AA2BD,wBAAgB,mBAAmB,CAC/B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,MAAM,GACnB,IAAI,CAiBN"}
@@ -0,0 +1,225 @@
1
+ import { randomUUID } from "crypto";
2
+ import { readFileSync, writeFileSync, existsSync, mkdirSync } from "fs";
3
+ import { homedir } from "os";
4
+ import { join } from "path";
5
+ // ============================================================================
6
+ // Configuration
7
+ // ============================================================================
8
+ // TODO: Update these after deploying your Cloudflare Worker
9
+ const TELEMETRY_ENDPOINT = "https://rn-debugger-telemetry.YOUR_SUBDOMAIN.workers.dev";
10
+ const TELEMETRY_API_KEY = "YOUR_API_KEY_HERE";
11
+ const BATCH_SIZE = 10;
12
+ const BATCH_INTERVAL_MS = 30_000; // 30 seconds
13
+ const REQUEST_TIMEOUT_MS = 5_000;
14
+ const CONFIG_DIR = join(homedir(), ".rn-ai-debugger");
15
+ const CONFIG_FILE = join(CONFIG_DIR, "telemetry.json");
16
+ const SERVER_VERSION = "1.0.5";
17
+ // ============================================================================
18
+ // State
19
+ // ============================================================================
20
+ let telemetryEnabled = true;
21
+ let config = null;
22
+ let eventQueue = [];
23
+ let batchTimer = null;
24
+ let sessionStartTime = null;
25
+ let isFirstRunSession = false;
26
+ // ============================================================================
27
+ // Configuration Management
28
+ // ============================================================================
29
+ function loadOrCreateConfig() {
30
+ if (config)
31
+ return config;
32
+ // Try to load existing config
33
+ try {
34
+ if (existsSync(CONFIG_FILE)) {
35
+ const data = readFileSync(CONFIG_FILE, "utf-8");
36
+ const parsed = JSON.parse(data);
37
+ // Mark as not first run for subsequent sessions
38
+ config = { ...parsed, isFirstRun: false };
39
+ isFirstRunSession = false;
40
+ return config;
41
+ }
42
+ }
43
+ catch {
44
+ // Config file corrupted or unreadable, create new one
45
+ }
46
+ // Create new installation
47
+ const newConfig = {
48
+ installationId: randomUUID(),
49
+ firstRunTimestamp: Date.now(),
50
+ isFirstRun: true
51
+ };
52
+ try {
53
+ if (!existsSync(CONFIG_DIR)) {
54
+ mkdirSync(CONFIG_DIR, { recursive: true });
55
+ }
56
+ writeFileSync(CONFIG_FILE, JSON.stringify(newConfig, null, 2));
57
+ // Re-read to handle race condition with concurrent sessions
58
+ // The file on disk is the source of truth
59
+ try {
60
+ const data = readFileSync(CONFIG_FILE, "utf-8");
61
+ const persistedConfig = JSON.parse(data);
62
+ config = persistedConfig;
63
+ isFirstRunSession = persistedConfig.isFirstRun;
64
+ return config;
65
+ }
66
+ catch {
67
+ // If re-read fails, use the config we created
68
+ config = newConfig;
69
+ isFirstRunSession = true;
70
+ return config;
71
+ }
72
+ }
73
+ catch {
74
+ // Failed to save config, continue with in-memory config
75
+ config = newConfig;
76
+ isFirstRunSession = true;
77
+ return config;
78
+ }
79
+ }
80
+ function getInstallationId() {
81
+ return loadOrCreateConfig().installationId;
82
+ }
83
+ function isFirstRun() {
84
+ loadOrCreateConfig();
85
+ return isFirstRunSession;
86
+ }
87
+ // ============================================================================
88
+ // Telemetry Control
89
+ // ============================================================================
90
+ export function initTelemetry() {
91
+ // Check environment variable for opt-out
92
+ const envValue = process.env.RN_DEBUGGER_TELEMETRY;
93
+ if (envValue === "false" || envValue === "0" || envValue === "off") {
94
+ telemetryEnabled = false;
95
+ console.error("[rn-ai-debugger] Telemetry disabled via RN_DEBUGGER_TELEMETRY");
96
+ return;
97
+ }
98
+ // Check if endpoint is configured
99
+ if (TELEMETRY_ENDPOINT.includes("YOUR_SUBDOMAIN") || TELEMETRY_API_KEY === "YOUR_API_KEY_HERE") {
100
+ telemetryEnabled = false;
101
+ // Silently disable - endpoint not configured yet
102
+ return;
103
+ }
104
+ // Load/create config (generates installation ID)
105
+ loadOrCreateConfig();
106
+ sessionStartTime = Date.now();
107
+ // Track session start
108
+ trackEvent("session_start", {
109
+ isFirstRun: isFirstRun()
110
+ });
111
+ // Start batch timer
112
+ startBatchTimer();
113
+ // Flush on process exit
114
+ process.on("beforeExit", () => {
115
+ flushSync();
116
+ });
117
+ // Track session end on SIGINT/SIGTERM
118
+ const handleExit = () => {
119
+ if (sessionStartTime) {
120
+ trackEvent("session_end", {
121
+ duration: Date.now() - sessionStartTime
122
+ });
123
+ flushSync();
124
+ }
125
+ process.exit(0);
126
+ };
127
+ process.on("SIGINT", handleExit);
128
+ process.on("SIGTERM", handleExit);
129
+ }
130
+ export function isTelemetryEnabled() {
131
+ return telemetryEnabled;
132
+ }
133
+ // ============================================================================
134
+ // Event Tracking
135
+ // ============================================================================
136
+ function trackEvent(name, properties) {
137
+ if (!telemetryEnabled)
138
+ return;
139
+ const event = {
140
+ name,
141
+ timestamp: Date.now(),
142
+ isFirstRun: isFirstRun(),
143
+ properties
144
+ };
145
+ eventQueue.push(event);
146
+ // Flush immediately if batch size reached
147
+ if (eventQueue.length >= BATCH_SIZE) {
148
+ flush();
149
+ }
150
+ }
151
+ export function trackToolInvocation(toolName, success, durationMs) {
152
+ if (!telemetryEnabled)
153
+ return;
154
+ const event = {
155
+ name: "tool_invocation",
156
+ timestamp: Date.now(),
157
+ toolName,
158
+ success,
159
+ duration: durationMs,
160
+ isFirstRun: isFirstRun()
161
+ };
162
+ eventQueue.push(event);
163
+ if (eventQueue.length >= BATCH_SIZE) {
164
+ flush();
165
+ }
166
+ }
167
+ // ============================================================================
168
+ // Batch Sending
169
+ // ============================================================================
170
+ function startBatchTimer() {
171
+ if (batchTimer)
172
+ return;
173
+ batchTimer = setInterval(() => {
174
+ flush();
175
+ }, BATCH_INTERVAL_MS);
176
+ // Unref so it doesn't keep the process alive
177
+ batchTimer.unref();
178
+ }
179
+ async function flush() {
180
+ if (!telemetryEnabled || eventQueue.length === 0)
181
+ return;
182
+ const eventsToSend = [...eventQueue];
183
+ eventQueue = [];
184
+ try {
185
+ await sendEvents(eventsToSend);
186
+ }
187
+ catch {
188
+ // Silently fail - telemetry should never impact the user
189
+ }
190
+ }
191
+ function flushSync() {
192
+ if (!telemetryEnabled || eventQueue.length === 0)
193
+ return;
194
+ const eventsToSend = [...eventQueue];
195
+ eventQueue = [];
196
+ // Use a synchronous-ish approach for exit handlers
197
+ // This won't actually wait, but queues the request
198
+ sendEvents(eventsToSend).catch(() => { });
199
+ }
200
+ async function sendEvents(events) {
201
+ const payload = {
202
+ installationId: getInstallationId(),
203
+ serverVersion: SERVER_VERSION,
204
+ nodeVersion: process.version,
205
+ platform: process.platform,
206
+ events
207
+ };
208
+ const controller = new AbortController();
209
+ const timeoutId = setTimeout(() => controller.abort(), REQUEST_TIMEOUT_MS);
210
+ try {
211
+ await fetch(TELEMETRY_ENDPOINT, {
212
+ method: "POST",
213
+ headers: {
214
+ "Content-Type": "application/json",
215
+ "X-API-Key": TELEMETRY_API_KEY
216
+ },
217
+ body: JSON.stringify(payload),
218
+ signal: controller.signal
219
+ });
220
+ }
221
+ finally {
222
+ clearTimeout(timeoutId);
223
+ }
224
+ }
225
+ //# sourceMappingURL=telemetry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../../src/core/telemetry.ts"],"names":[],"mappings":"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"}
package/build/index.js CHANGED
@@ -11,6 +11,8 @@ listAndroidDevices, androidScreenshot, androidInstallApp, androidLaunchApp, andr
11
11
  ANDROID_KEY_EVENTS, androidTap, androidLongPress, androidSwipe, androidInputText, androidKeyEvent, androidGetScreenSize,
12
12
  // iOS
13
13
  listIOSSimulators, iosScreenshot, iosInstallApp, iosLaunchApp, iosOpenUrl, iosTerminateApp, iosBootSimulator,
14
+ // iOS IDB-based UI tools
15
+ iosTap, iosTapElement, iosSwipe, iosInputText, iosButton, iosKeyEvent, iosKeySequence, iosDescribeAll, iosDescribePoint, IOS_BUTTON_TYPES,
14
16
  // Debug HTTP Server
15
17
  startDebugHttpServer, getDebugServerPort } from "./core/index.js";
16
18
  // Create MCP server
@@ -877,12 +879,20 @@ server.registerTool("ios_screenshot", {
877
879
  }
878
880
  // Include image data if available
879
881
  if (result.data) {
880
- // Build info text with scale factor for coordinate conversion
881
- let infoText = `Screenshot captured (${result.originalWidth}x${result.originalHeight})`;
882
+ // Build info text with coordinate guidance for iOS
883
+ // iOS simulators use points, not pixels. Retina displays are typically 2x or 3x.
884
+ const pixelWidth = result.originalWidth || 0;
885
+ const pixelHeight = result.originalHeight || 0;
886
+ // Assume 2x Retina scale for most iOS simulators
887
+ const pointWidth = Math.round(pixelWidth / 2);
888
+ const pointHeight = Math.round(pixelHeight / 2);
889
+ let infoText = `Screenshot captured (${pixelWidth}x${pixelHeight} pixels)`;
890
+ infoText += `\n📱 iOS IDB coordinates use POINTS: ${pointWidth}x${pointHeight}`;
891
+ infoText += `\nTo convert image coords to IDB points: divide pixel coordinates by 2`;
882
892
  if (result.scaleFactor && result.scaleFactor > 1) {
883
- infoText += `\n⚠️ Image was scaled down to fit API limits. Scale factor: ${result.scaleFactor.toFixed(3)}`;
884
- infoText += `\nTo tap/swipe: multiply image coordinates by ${result.scaleFactor.toFixed(3)} to get device coordinates.`;
893
+ infoText += `\n⚠️ Image was scaled down to fit API limits (scale: ${result.scaleFactor.toFixed(3)})`;
885
894
  }
895
+ infoText += `\n💡 Use ios_describe_all to get exact element coordinates`;
886
896
  return {
887
897
  content: [
888
898
  {
@@ -1012,6 +1022,237 @@ server.registerTool("ios_boot_simulator", {
1012
1022
  isError: !result.success
1013
1023
  };
1014
1024
  });
1025
+ // ============================================================================
1026
+ // iOS IDB-Based UI Tools (require Facebook IDB)
1027
+ // Install with: brew install idb-companion
1028
+ // ============================================================================
1029
+ // Tool: iOS tap
1030
+ server.registerTool("ios_tap", {
1031
+ description: "Tap at specific coordinates on an iOS simulator screen. Requires IDB to be installed (brew install idb-companion).",
1032
+ inputSchema: {
1033
+ x: z.number().describe("X coordinate in pixels"),
1034
+ y: z.number().describe("Y coordinate in pixels"),
1035
+ duration: z
1036
+ .number()
1037
+ .optional()
1038
+ .describe("Optional tap duration in seconds (for long press)"),
1039
+ udid: z
1040
+ .string()
1041
+ .optional()
1042
+ .describe("Optional simulator UDID. Uses booted simulator if not specified.")
1043
+ }
1044
+ }, async ({ x, y, duration, udid }) => {
1045
+ const result = await iosTap(x, y, { duration, udid });
1046
+ return {
1047
+ content: [
1048
+ {
1049
+ type: "text",
1050
+ text: result.success ? result.result : `Error: ${result.error}`
1051
+ }
1052
+ ],
1053
+ isError: !result.success
1054
+ };
1055
+ });
1056
+ // Tool: iOS tap element by label
1057
+ server.registerTool("ios_tap_element", {
1058
+ description: "Tap an element by its accessibility label. Automatically finds the element and taps its center. Requires IDB (brew install idb-companion).",
1059
+ inputSchema: {
1060
+ label: z
1061
+ .string()
1062
+ .optional()
1063
+ .describe("Exact accessibility label to match (e.g., 'Home', 'Settings')"),
1064
+ labelContains: z
1065
+ .string()
1066
+ .optional()
1067
+ .describe("Partial label match, case-insensitive (e.g., 'Circular' matches 'Circulars, 3, 12 total')"),
1068
+ index: z
1069
+ .number()
1070
+ .optional()
1071
+ .describe("If multiple elements match, tap the nth one (0-indexed, default: 0)"),
1072
+ duration: z
1073
+ .number()
1074
+ .optional()
1075
+ .describe("Optional tap duration in seconds (for long press)"),
1076
+ udid: z
1077
+ .string()
1078
+ .optional()
1079
+ .describe("Optional simulator UDID. Uses booted simulator if not specified.")
1080
+ }
1081
+ }, async ({ label, labelContains, index, duration, udid }) => {
1082
+ const result = await iosTapElement({ label, labelContains, index, duration, udid });
1083
+ return {
1084
+ content: [
1085
+ {
1086
+ type: "text",
1087
+ text: result.success ? result.result : `Error: ${result.error}`
1088
+ }
1089
+ ],
1090
+ isError: !result.success
1091
+ };
1092
+ });
1093
+ // Tool: iOS swipe
1094
+ server.registerTool("ios_swipe", {
1095
+ description: "Swipe gesture on an iOS simulator screen. Requires IDB to be installed (brew install idb-companion).",
1096
+ inputSchema: {
1097
+ startX: z.number().describe("Starting X coordinate in pixels"),
1098
+ startY: z.number().describe("Starting Y coordinate in pixels"),
1099
+ endX: z.number().describe("Ending X coordinate in pixels"),
1100
+ endY: z.number().describe("Ending Y coordinate in pixels"),
1101
+ duration: z.number().optional().describe("Optional swipe duration in seconds"),
1102
+ delta: z.number().optional().describe("Optional delta between touch events (step size)"),
1103
+ udid: z
1104
+ .string()
1105
+ .optional()
1106
+ .describe("Optional simulator UDID. Uses booted simulator if not specified.")
1107
+ }
1108
+ }, async ({ startX, startY, endX, endY, duration, delta, udid }) => {
1109
+ const result = await iosSwipe(startX, startY, endX, endY, { duration, delta, udid });
1110
+ return {
1111
+ content: [
1112
+ {
1113
+ type: "text",
1114
+ text: result.success ? result.result : `Error: ${result.error}`
1115
+ }
1116
+ ],
1117
+ isError: !result.success
1118
+ };
1119
+ });
1120
+ // Tool: iOS input text
1121
+ server.registerTool("ios_input_text", {
1122
+ description: "Type text into the active input field on an iOS simulator. Requires IDB to be installed (brew install idb-companion).",
1123
+ inputSchema: {
1124
+ text: z.string().describe("Text to type into the active input field"),
1125
+ udid: z
1126
+ .string()
1127
+ .optional()
1128
+ .describe("Optional simulator UDID. Uses booted simulator if not specified.")
1129
+ }
1130
+ }, async ({ text, udid }) => {
1131
+ const result = await iosInputText(text, udid);
1132
+ return {
1133
+ content: [
1134
+ {
1135
+ type: "text",
1136
+ text: result.success ? result.result : `Error: ${result.error}`
1137
+ }
1138
+ ],
1139
+ isError: !result.success
1140
+ };
1141
+ });
1142
+ // Tool: iOS button
1143
+ server.registerTool("ios_button", {
1144
+ description: "Press a hardware button on an iOS simulator. Requires IDB to be installed (brew install idb-companion).",
1145
+ inputSchema: {
1146
+ button: z
1147
+ .enum(IOS_BUTTON_TYPES)
1148
+ .describe("Hardware button to press: HOME, LOCK, SIDE_BUTTON, SIRI, or APPLE_PAY"),
1149
+ duration: z.number().optional().describe("Optional button press duration in seconds"),
1150
+ udid: z
1151
+ .string()
1152
+ .optional()
1153
+ .describe("Optional simulator UDID. Uses booted simulator if not specified.")
1154
+ }
1155
+ }, async ({ button, duration, udid }) => {
1156
+ const result = await iosButton(button, { duration, udid });
1157
+ return {
1158
+ content: [
1159
+ {
1160
+ type: "text",
1161
+ text: result.success ? result.result : `Error: ${result.error}`
1162
+ }
1163
+ ],
1164
+ isError: !result.success
1165
+ };
1166
+ });
1167
+ // Tool: iOS key event
1168
+ server.registerTool("ios_key_event", {
1169
+ description: "Send a key event to an iOS simulator by keycode. Requires IDB to be installed (brew install idb-companion).",
1170
+ inputSchema: {
1171
+ keycode: z.number().describe("iOS keycode to send"),
1172
+ duration: z.number().optional().describe("Optional key press duration in seconds"),
1173
+ udid: z
1174
+ .string()
1175
+ .optional()
1176
+ .describe("Optional simulator UDID. Uses booted simulator if not specified.")
1177
+ }
1178
+ }, async ({ keycode, duration, udid }) => {
1179
+ const result = await iosKeyEvent(keycode, { duration, udid });
1180
+ return {
1181
+ content: [
1182
+ {
1183
+ type: "text",
1184
+ text: result.success ? result.result : `Error: ${result.error}`
1185
+ }
1186
+ ],
1187
+ isError: !result.success
1188
+ };
1189
+ });
1190
+ // Tool: iOS key sequence
1191
+ server.registerTool("ios_key_sequence", {
1192
+ description: "Send a sequence of key events to an iOS simulator. Requires IDB to be installed (brew install idb-companion).",
1193
+ inputSchema: {
1194
+ keycodes: z.array(z.number()).describe("Array of iOS keycodes to send in sequence"),
1195
+ udid: z
1196
+ .string()
1197
+ .optional()
1198
+ .describe("Optional simulator UDID. Uses booted simulator if not specified.")
1199
+ }
1200
+ }, async ({ keycodes, udid }) => {
1201
+ const result = await iosKeySequence(keycodes, udid);
1202
+ return {
1203
+ content: [
1204
+ {
1205
+ type: "text",
1206
+ text: result.success ? result.result : `Error: ${result.error}`
1207
+ }
1208
+ ],
1209
+ isError: !result.success
1210
+ };
1211
+ });
1212
+ // Tool: iOS describe all (accessibility tree)
1213
+ server.registerTool("ios_describe_all", {
1214
+ description: "Get accessibility information for the entire iOS simulator screen. Returns a nested tree of UI elements with labels, values, and frames. Requires IDB to be installed (brew install idb-companion).",
1215
+ inputSchema: {
1216
+ udid: z
1217
+ .string()
1218
+ .optional()
1219
+ .describe("Optional simulator UDID. Uses booted simulator if not specified.")
1220
+ }
1221
+ }, async ({ udid }) => {
1222
+ const result = await iosDescribeAll(udid);
1223
+ return {
1224
+ content: [
1225
+ {
1226
+ type: "text",
1227
+ text: result.success ? result.result : `Error: ${result.error}`
1228
+ }
1229
+ ],
1230
+ isError: !result.success
1231
+ };
1232
+ });
1233
+ // Tool: iOS describe point
1234
+ server.registerTool("ios_describe_point", {
1235
+ description: "Get accessibility information for the UI element at a specific point on the iOS simulator screen. Requires IDB to be installed (brew install idb-companion).",
1236
+ inputSchema: {
1237
+ x: z.number().describe("X coordinate in pixels"),
1238
+ y: z.number().describe("Y coordinate in pixels"),
1239
+ udid: z
1240
+ .string()
1241
+ .optional()
1242
+ .describe("Optional simulator UDID. Uses booted simulator if not specified.")
1243
+ }
1244
+ }, async ({ x, y, udid }) => {
1245
+ const result = await iosDescribePoint(x, y, udid);
1246
+ return {
1247
+ content: [
1248
+ {
1249
+ type: "text",
1250
+ text: result.success ? result.result : `Error: ${result.error}`
1251
+ }
1252
+ ],
1253
+ isError: !result.success
1254
+ };
1255
+ });
1015
1256
  // Tool: Get debug server info
1016
1257
  server.registerTool("get_debug_server", {
1017
1258
  description: "Get the debug HTTP server URL. Use this to find where you can access logs, network requests, and other debug data via HTTP.",
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}