claude-in-mobile 3.2.0 → 3.3.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.
Files changed (36) hide show
  1. package/README.md +3 -3
  2. package/dist/index.js +6 -2
  3. package/dist/index.js.map +1 -1
  4. package/dist/store/huawei.d.ts +16 -0
  5. package/dist/store/huawei.d.ts.map +1 -0
  6. package/dist/store/huawei.js +205 -0
  7. package/dist/store/huawei.js.map +1 -0
  8. package/dist/store/rustore.d.ts +17 -0
  9. package/dist/store/rustore.d.ts.map +1 -0
  10. package/dist/store/rustore.js +223 -0
  11. package/dist/store/rustore.js.map +1 -0
  12. package/dist/store/store-client.d.ts +13 -0
  13. package/dist/store/store-client.d.ts.map +1 -0
  14. package/dist/store/store-client.js +2 -0
  15. package/dist/store/store-client.js.map +1 -0
  16. package/dist/tools/context.d.ts +8 -0
  17. package/dist/tools/context.d.ts.map +1 -1
  18. package/dist/tools/context.js +3 -0
  19. package/dist/tools/context.js.map +1 -1
  20. package/dist/tools/huawei-tools.d.ts +3 -0
  21. package/dist/tools/huawei-tools.d.ts.map +1 -0
  22. package/dist/tools/huawei-tools.js +94 -0
  23. package/dist/tools/huawei-tools.js.map +1 -0
  24. package/dist/tools/interaction-tools.d.ts.map +1 -1
  25. package/dist/tools/interaction-tools.js +35 -6
  26. package/dist/tools/interaction-tools.js.map +1 -1
  27. package/dist/tools/rustore-tools.d.ts +3 -0
  28. package/dist/tools/rustore-tools.d.ts.map +1 -0
  29. package/dist/tools/rustore-tools.js +117 -0
  30. package/dist/tools/rustore-tools.js.map +1 -0
  31. package/dist/tools/screenshot-tools.d.ts.map +1 -1
  32. package/dist/tools/screenshot-tools.js +4 -2
  33. package/dist/tools/screenshot-tools.js.map +1 -1
  34. package/dist/tools/ui-tools.js +1 -1
  35. package/dist/tools/ui-tools.js.map +1 -1
  36. package/package.json +1 -1
@@ -2,6 +2,10 @@ import { DeviceManager } from "../device-manager.js";
2
2
  import { UiElement } from "../adb/ui-parser.js";
3
3
  export declare const deviceManager: DeviceManager;
4
4
  export declare const lastScreenshotMap: Map<string, Buffer>;
5
+ export declare const screenshotScaleMap: Map<string, {
6
+ scaleX: number;
7
+ scaleY: number;
8
+ }>;
5
9
  export declare function getCachedElements(platform: string): UiElement[];
6
10
  export declare function setCachedElements(platform: string, elements: UiElement[]): void;
7
11
  /**
@@ -30,6 +34,10 @@ export interface ToolContext {
30
34
  getCachedElements: (platform: string) => UiElement[];
31
35
  setCachedElements: (platform: string, elements: UiElement[]) => void;
32
36
  lastScreenshotMap: Map<string, Buffer>;
37
+ screenshotScaleMap: Map<string, {
38
+ scaleX: number;
39
+ scaleY: number;
40
+ }>;
33
41
  generateActionHints: (platform?: string) => Promise<string>;
34
42
  getElementsForPlatform: (plat: string) => Promise<UiElement[]>;
35
43
  iosTreeToUiElements: (tree: any) => UiElement[];
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/tools/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAY,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAML,SAAS,EACV,MAAM,qBAAqB,CAAC;AAG7B,eAAO,MAAM,aAAa,eAAsB,CAAC;AAMjD,eAAO,MAAM,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAa,CAAC;AAEhE,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,CAE/D;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI,CAE/E;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,GAAE,SAAS,EAAO,EAAE,KAAK;;CAAe,GAAG,SAAS,EAAE,CAyC5G;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,SAAI,GAAG,MAAM,CAsB7D;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAkDvF;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAmB/E;AAGD,eAAO,MAAM,aAAa;;;;CAIzB,CAAC;AAGF,eAAO,MAAM,mBAAmB,IAAI,CAAC;AAErC,MAAM,WAAW,WAAW;IAC1B,aAAa,EAAE,aAAa,CAAC;IAC7B,iBAAiB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,SAAS,EAAE,CAAC;IACrD,iBAAiB,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,IAAI,CAAC;IACrE,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,mBAAmB,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5D,sBAAsB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IAC/D,mBAAmB,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,SAAS,EAAE,CAAC;IAChD,eAAe,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IACxD,aAAa,EAAE,OAAO,aAAa,CAAC;IACpC,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC/F;AAED,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,WAAW,CAAC,YAAY,CAAC,GAAG,WAAW,CAapF"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/tools/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAY,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAML,SAAS,EACV,MAAM,qBAAqB,CAAC;AAG7B,eAAO,MAAM,aAAa,eAAsB,CAAC;AAMjD,eAAO,MAAM,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAa,CAAC;AAGhE,eAAO,MAAM,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAa,CAAC;AAE7F,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,CAE/D;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI,CAE/E;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,GAAE,SAAS,EAAO,EAAE,KAAK;;CAAe,GAAG,SAAS,EAAE,CAyC5G;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,SAAI,GAAG,MAAM,CAsB7D;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAkDvF;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAmB/E;AAGD,eAAO,MAAM,aAAa;;;;CAIzB,CAAC;AAGF,eAAO,MAAM,mBAAmB,IAAI,CAAC;AAErC,MAAM,WAAW,WAAW;IAC1B,aAAa,EAAE,aAAa,CAAC;IAC7B,iBAAiB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,SAAS,EAAE,CAAC;IACrD,iBAAiB,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,IAAI,CAAC;IACrE,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpE,mBAAmB,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5D,sBAAsB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IAC/D,mBAAmB,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,SAAS,EAAE,CAAC;IAChD,eAAe,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IACxD,aAAa,EAAE,OAAO,aAAa,CAAC;IACpC,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC/F;AAED,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,WAAW,CAAC,YAAY,CAAC,GAAG,WAAW,CAcpF"}
@@ -6,6 +6,8 @@ export const deviceManager = new DeviceManager();
6
6
  const cachedElementsMap = new Map();
7
7
  // Per-platform cache for last screenshot buffer (for diff mode)
8
8
  export const lastScreenshotMap = new Map();
9
+ // Per-platform screenshot scale factors (compressed image → device coordinates)
10
+ export const screenshotScaleMap = new Map();
9
11
  export function getCachedElements(platform) {
10
12
  return cachedElementsMap.get(platform) ?? [];
11
13
  }
@@ -168,6 +170,7 @@ export function createToolContext(handleTool) {
168
170
  getCachedElements,
169
171
  setCachedElements,
170
172
  lastScreenshotMap,
173
+ screenshotScaleMap,
171
174
  generateActionHints,
172
175
  getElementsForPlatform,
173
176
  iosTreeToUiElements,
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/tools/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/tools/context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { ToolDefinition } from "./registry.js";
2
+ export declare const huaweiTools: ToolDefinition[];
3
+ //# sourceMappingURL=huawei-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"huawei-tools.d.ts","sourceRoot":"","sources":["../../src/tools/huawei-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAUpD,eAAO,MAAM,WAAW,EAAE,cAAc,EAgGvC,CAAC"}
@@ -0,0 +1,94 @@
1
+ import { HuaweiAppGalleryClient } from "../store/huawei.js";
2
+ let _client = null;
3
+ function client() {
4
+ if (!_client)
5
+ _client = new HuaweiAppGalleryClient();
6
+ return _client;
7
+ }
8
+ export const huaweiTools = [
9
+ {
10
+ tool: {
11
+ name: "huawei_upload",
12
+ description: "Upload APK or AAB to Huawei AppGallery Connect. Creates a release draft. Returns the fileId. " +
13
+ "Requires HUAWEI_CLIENT_ID and HUAWEI_CLIENT_SECRET environment variables.",
14
+ inputSchema: {
15
+ type: "object",
16
+ properties: {
17
+ packageName: { type: "string", description: "App package name (e.g., com.example.app)" },
18
+ filePath: { type: "string", description: "Absolute path to .aab or .apk file" },
19
+ },
20
+ required: ["packageName", "filePath"],
21
+ },
22
+ },
23
+ handler: async (args) => {
24
+ const result = await client().upload(args.packageName, args.filePath);
25
+ return {
26
+ text: `Uploaded to Huawei AppGallery. File ID: ${result.versionId}\n` +
27
+ `Draft is open — call huawei_set_notes and huawei_submit to publish.`,
28
+ };
29
+ },
30
+ },
31
+ {
32
+ tool: {
33
+ name: "huawei_set_notes",
34
+ description: "Set release notes (what's new) for the current Huawei AppGallery draft. " +
35
+ "Call once per language. Max 500 characters.",
36
+ inputSchema: {
37
+ type: "object",
38
+ properties: {
39
+ packageName: { type: "string", description: "App package name" },
40
+ language: {
41
+ type: "string",
42
+ description: "BCP-47 language tag (e.g., en-US, ru-RU, zh-CN)",
43
+ },
44
+ text: { type: "string", description: "Release notes text (max 500 characters)" },
45
+ },
46
+ required: ["packageName", "language", "text"],
47
+ },
48
+ },
49
+ handler: async (args) => {
50
+ const text = args.text;
51
+ if (text.length > 500) {
52
+ return { text: `Error: release notes exceed 500 characters (${text.length})` };
53
+ }
54
+ await client().setReleaseNotes(args.packageName, args.language, text);
55
+ return { text: `Huawei release notes set for ${args.language} (${text.length}/500 chars)` };
56
+ },
57
+ },
58
+ {
59
+ tool: {
60
+ name: "huawei_submit",
61
+ description: "Submit the current Huawei AppGallery draft for review and publishing. " +
62
+ "Commits the upload and triggers the AppGallery review process.",
63
+ inputSchema: {
64
+ type: "object",
65
+ properties: {
66
+ packageName: { type: "string", description: "App package name" },
67
+ },
68
+ required: ["packageName"],
69
+ },
70
+ },
71
+ handler: async (args) => {
72
+ await client().submit(args.packageName);
73
+ return { text: `Submitted to Huawei AppGallery for review: ${args.packageName}` };
74
+ },
75
+ },
76
+ {
77
+ tool: {
78
+ name: "huawei_get_releases",
79
+ description: "Get current release information for an app in Huawei AppGallery Connect.",
80
+ inputSchema: {
81
+ type: "object",
82
+ properties: {
83
+ packageName: { type: "string", description: "App package name" },
84
+ },
85
+ required: ["packageName"],
86
+ },
87
+ },
88
+ handler: async (args) => {
89
+ const result = await client().getReleases(args.packageName);
90
+ return { text: result };
91
+ },
92
+ },
93
+ ];
94
+ //# sourceMappingURL=huawei-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"huawei-tools.js","sourceRoot":"","sources":["../../src/tools/huawei-tools.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"interaction-tools.d.ts","sourceRoot":"","sources":["../../src/tools/interaction-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAMpD,eAAO,MAAM,gBAAgB,EAAE,cAAc,EA4T5C,CAAC"}
1
+ {"version":3,"file":"interaction-tools.d.ts","sourceRoot":"","sources":["../../src/tools/interaction-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAsBpD,eAAO,MAAM,gBAAgB,EAAE,cAAc,EAwU5C,CAAC"}
@@ -1,5 +1,16 @@
1
1
  import { parseUiHierarchy, findByText, findByResourceId } from "../adb/ui-parser.js";
2
2
  import { ElementNotFoundError } from "../errors.js";
3
+ /** Apply screenshot scale to raw coordinates from Claude (image space → device space). */
4
+ function applyScale(x, y, platform, ctx) {
5
+ const key = platform ?? ctx.deviceManager.getCurrentPlatform() ?? "android";
6
+ const scale = ctx.screenshotScaleMap.get(key);
7
+ if (!scale || (scale.scaleX === 1 && scale.scaleY === 1))
8
+ return { x, y };
9
+ return {
10
+ x: Math.round(x * scale.scaleX),
11
+ y: Math.round(y * scale.scaleY),
12
+ };
13
+ }
3
14
  export const interactionTools = [
4
15
  {
5
16
  tool: {
@@ -25,6 +36,7 @@ export const interactionTools = [
25
36
  let x = args.x;
26
37
  let y = args.y;
27
38
  const currentPlatform = platform ?? ctx.deviceManager.getCurrentPlatform();
39
+ let coordsFromArgs = x !== undefined && y !== undefined;
28
40
  // iOS element-based tap (precedence: label > text > coordinates)
29
41
  if (currentPlatform === "ios" && (args.label || args.text)) {
30
42
  try {
@@ -40,7 +52,7 @@ export const interactionTools = [
40
52
  throw new ElementNotFoundError(String(args.label || args.text));
41
53
  }
42
54
  }
43
- // Find by index from cached elements (Android only)
55
+ // Find by index from cached elements (Android only) — device coords, no scale needed
44
56
  if (args.index !== undefined && currentPlatform === "android") {
45
57
  const idx = args.index;
46
58
  let elements = ctx.getCachedElements("android");
@@ -55,8 +67,9 @@ export const interactionTools = [
55
67
  }
56
68
  x = el.centerX;
57
69
  y = el.centerY;
70
+ coordsFromArgs = false;
58
71
  }
59
- // Find by text or resourceId (Android only)
72
+ // Find by text or resourceId (Android only) — device coords, no scale needed
60
73
  if ((args.text || args.resourceId) && currentPlatform === "android") {
61
74
  const xml = await ctx.deviceManager.getUiHierarchyAsync("android");
62
75
  const elements = parseUiHierarchy(xml);
@@ -75,10 +88,14 @@ export const interactionTools = [
75
88
  const target = clickable[0] ?? found[0];
76
89
  x = target.centerX;
77
90
  y = target.centerY;
91
+ coordsFromArgs = false;
78
92
  }
79
93
  if (x === undefined || y === undefined) {
80
94
  return { text: "Please provide x,y coordinates, text, resourceId, label, or index" };
81
95
  }
96
+ // Scale raw screenshot coordinates → device coordinates
97
+ if (coordsFromArgs)
98
+ ({ x, y } = applyScale(x, y, currentPlatform ?? undefined, ctx));
82
99
  const targetPid = args.targetPid;
83
100
  await ctx.deviceManager.tap(x, y, platform, targetPid);
84
101
  let result = `Tapped at (${x}, ${y})`;
@@ -112,7 +129,8 @@ export const interactionTools = [
112
129
  let y = args.y;
113
130
  const interval = args.interval ?? 100;
114
131
  const currentPlatform = platform ?? ctx.deviceManager.getCurrentPlatform();
115
- // Find by index from cached elements (Android only)
132
+ let coordsFromArgs = x !== undefined && y !== undefined;
133
+ // Find by index from cached elements (Android only) — device coords, no scale needed
116
134
  if (args.index !== undefined && currentPlatform === "android") {
117
135
  const idx = args.index;
118
136
  let elements = ctx.getCachedElements("android");
@@ -127,8 +145,9 @@ export const interactionTools = [
127
145
  }
128
146
  x = el.centerX;
129
147
  y = el.centerY;
148
+ coordsFromArgs = false;
130
149
  }
131
- // Find by text or resourceId (Android only)
150
+ // Find by text or resourceId (Android only) — device coords, no scale needed
132
151
  if ((args.text || args.resourceId) && currentPlatform === "android") {
133
152
  const xml = await ctx.deviceManager.getUiHierarchyAsync("android");
134
153
  const elements = parseUiHierarchy(xml);
@@ -147,10 +166,13 @@ export const interactionTools = [
147
166
  const target = clickable[0] ?? found[0];
148
167
  x = target.centerX;
149
168
  y = target.centerY;
169
+ coordsFromArgs = false;
150
170
  }
151
171
  if (x === undefined || y === undefined) {
152
172
  return { text: "Please provide x,y coordinates, text, resourceId, or index" };
153
173
  }
174
+ if (coordsFromArgs)
175
+ ({ x, y } = applyScale(x, y, currentPlatform ?? undefined, ctx));
154
176
  await ctx.deviceManager.doubleTap(x, y, interval, platform);
155
177
  let result = `Double tapped at (${x}, ${y}) with ${interval}ms interval`;
156
178
  if (args.hints === true) {
@@ -180,6 +202,7 @@ export const interactionTools = [
180
202
  let y = args.y;
181
203
  const duration = args.duration ?? 1000;
182
204
  const currentPlatform = platform ?? ctx.deviceManager.getCurrentPlatform();
205
+ let coordsFromArgs = x !== undefined && y !== undefined;
183
206
  if (args.text && currentPlatform === "android") {
184
207
  const xml = await ctx.deviceManager.getUiHierarchyAsync("android");
185
208
  const elements = parseUiHierarchy(xml);
@@ -190,10 +213,13 @@ export const interactionTools = [
190
213
  }
191
214
  x = found[0].centerX;
192
215
  y = found[0].centerY;
216
+ coordsFromArgs = false;
193
217
  }
194
218
  if (x === undefined || y === undefined) {
195
219
  return { text: "Please provide x,y coordinates or text" };
196
220
  }
221
+ if (coordsFromArgs)
222
+ ({ x, y } = applyScale(x, y, currentPlatform ?? undefined, ctx));
197
223
  await ctx.deviceManager.longPress(x, y, duration, platform);
198
224
  return { text: `Long pressed at (${x}, ${y}) for ${duration}ms` };
199
225
  },
@@ -229,8 +255,11 @@ export const interactionTools = [
229
255
  if (args.x1 !== undefined && args.y1 !== undefined &&
230
256
  args.x2 !== undefined && args.y2 !== undefined) {
231
257
  const duration = args.duration ?? 300;
232
- await ctx.deviceManager.swipe(args.x1, args.y1, args.x2, args.y2, duration, platform);
233
- let result = `Swiped from (${args.x1}, ${args.y1}) to (${args.x2}, ${args.y2})`;
258
+ const currentPlatform = platform ?? ctx.deviceManager.getCurrentPlatform();
259
+ const p1 = applyScale(args.x1, args.y1, currentPlatform ?? undefined, ctx);
260
+ const p2 = applyScale(args.x2, args.y2, currentPlatform ?? undefined, ctx);
261
+ await ctx.deviceManager.swipe(p1.x, p1.y, p2.x, p2.y, duration, platform);
262
+ let result = `Swiped from (${p1.x}, ${p1.y}) to (${p2.x}, ${p2.y})`;
234
263
  if (args.hints === true) {
235
264
  result += await ctx.generateActionHints(platform);
236
265
  }
@@ -1 +1 @@
1
- {"version":3,"file":"interaction-tools.js","sourceRoot":"","sources":["../../src/tools/interaction-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interaction-tools.js","sourceRoot":"","sources":["../../src/tools/interaction-tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { ToolDefinition } from "./registry.js";
2
+ export declare const ruStoreTools: ToolDefinition[];
3
+ //# sourceMappingURL=rustore-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rustore-tools.d.ts","sourceRoot":"","sources":["../../src/tools/rustore-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAUpD,eAAO,MAAM,YAAY,EAAE,cAAc,EAyHxC,CAAC"}
@@ -0,0 +1,117 @@
1
+ import { RuStoreClient } from "../store/rustore.js";
2
+ let _client = null;
3
+ function client() {
4
+ if (!_client)
5
+ _client = new RuStoreClient();
6
+ return _client;
7
+ }
8
+ export const ruStoreTools = [
9
+ {
10
+ tool: {
11
+ name: "rustore_upload",
12
+ description: "Upload APK or AAB to RuStore. Automatically creates a new version draft and uploads the file. " +
13
+ "Requires RUSTORE_KEY_JSON (JSON with companyId, keyId, privateKey) or " +
14
+ "RUSTORE_COMPANY_ID + RUSTORE_KEY_ID + RUSTORE_PRIVATE_KEY environment variables.",
15
+ inputSchema: {
16
+ type: "object",
17
+ properties: {
18
+ packageName: { type: "string", description: "App package name (e.g., com.example.app)" },
19
+ filePath: { type: "string", description: "Absolute path to .aab or .apk file" },
20
+ },
21
+ required: ["packageName", "filePath"],
22
+ },
23
+ },
24
+ handler: async (args) => {
25
+ const result = await client().upload(args.packageName, args.filePath);
26
+ return {
27
+ text: `Uploaded to RuStore. Version ID: ${result.versionId}\n` +
28
+ `Draft is open — call rustore_set_notes and rustore_submit to send for moderation.`,
29
+ };
30
+ },
31
+ },
32
+ {
33
+ tool: {
34
+ name: "rustore_set_notes",
35
+ description: "Set what's new notes for the current RuStore version draft. " +
36
+ "Call once per language. Max 500 characters.",
37
+ inputSchema: {
38
+ type: "object",
39
+ properties: {
40
+ packageName: { type: "string", description: "App package name" },
41
+ language: {
42
+ type: "string",
43
+ description: "BCP-47 language tag (e.g., ru-RU, en-US)",
44
+ },
45
+ text: { type: "string", description: "What's new text (max 500 characters)" },
46
+ },
47
+ required: ["packageName", "language", "text"],
48
+ },
49
+ },
50
+ handler: async (args) => {
51
+ const text = args.text;
52
+ if (text.length > 500) {
53
+ return { text: `Error: what's new text exceeds 500 characters (${text.length})` };
54
+ }
55
+ await client().setReleaseNotes(args.packageName, args.language, text);
56
+ return { text: `RuStore what's new set for ${args.language} (${text.length}/500 chars)` };
57
+ },
58
+ },
59
+ {
60
+ tool: {
61
+ name: "rustore_submit",
62
+ description: "Send the current RuStore version draft for moderation. " +
63
+ "Note: publication is not immediate — it requires passing the RuStore moderation process, " +
64
+ "which may take 1–3 business days.",
65
+ inputSchema: {
66
+ type: "object",
67
+ properties: {
68
+ packageName: { type: "string", description: "App package name" },
69
+ },
70
+ required: ["packageName"],
71
+ },
72
+ },
73
+ handler: async (args) => {
74
+ await client().submit(args.packageName);
75
+ return {
76
+ text: `Submitted to RuStore for moderation: ${args.packageName}\n` +
77
+ `Publication requires moderation approval (typically 1–3 business days).`,
78
+ };
79
+ },
80
+ },
81
+ {
82
+ tool: {
83
+ name: "rustore_get_versions",
84
+ description: "Get list of versions and their statuses for an app in RuStore.",
85
+ inputSchema: {
86
+ type: "object",
87
+ properties: {
88
+ packageName: { type: "string", description: "App package name" },
89
+ },
90
+ required: ["packageName"],
91
+ },
92
+ },
93
+ handler: async (args) => {
94
+ const result = await client().getReleases(args.packageName);
95
+ return { text: result };
96
+ },
97
+ },
98
+ {
99
+ tool: {
100
+ name: "rustore_discard",
101
+ description: "Delete the current RuStore version draft without submitting. " +
102
+ "Use to cancel an upload and start over.",
103
+ inputSchema: {
104
+ type: "object",
105
+ properties: {
106
+ packageName: { type: "string", description: "App package name" },
107
+ },
108
+ required: ["packageName"],
109
+ },
110
+ },
111
+ handler: async (args) => {
112
+ await client().discard(args.packageName);
113
+ return { text: `RuStore draft deleted for ${args.packageName}` };
114
+ },
115
+ },
116
+ ];
117
+ //# sourceMappingURL=rustore-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rustore-tools.js","sourceRoot":"","sources":["../../src/tools/rustore-tools.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"screenshot-tools.d.ts","sourceRoot":"","sources":["../../src/tools/screenshot-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AA0BpD,eAAO,MAAM,eAAe,EAAE,cAAc,EA+N3C,CAAC"}
1
+ {"version":3,"file":"screenshot-tools.d.ts","sourceRoot":"","sources":["../../src/tools/screenshot-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AA0BpD,eAAO,MAAM,eAAe,EAAE,cAAc,EAkO3C,CAAC"}
@@ -20,7 +20,7 @@ export const screenshotTools = [
20
20
  {
21
21
  tool: {
22
22
  name: "screen_capture",
23
- description: "Take a screenshot of the device screen. Images are automatically compressed for optimal LLM processing. Use diff mode to only see what changed since last screenshot (saves 60-80% tokens).",
23
+ description: "Take a screenshot of the device screen. FALLBACK ONLY prefer ui_tree for inspecting UI elements (text-based, ~10x cheaper). Use screen_capture only when: visual layout verification is needed, ui_tree fails, or you need to confirm something visually. Images are auto-compressed. Use diff mode to only see what changed (saves 60-80% tokens).",
24
24
  inputSchema: {
25
25
  type: "object",
26
26
  properties: {
@@ -136,10 +136,12 @@ export const screenshotTools = [
136
136
  const scaleX = result.originalWidth / result.width;
137
137
  const scaleY = result.originalHeight / result.height;
138
138
  const scaled = scaleX !== 1 || scaleY !== 1;
139
+ // Store scale so interaction tools can auto-correct coordinates
140
+ ctx.screenshotScaleMap.set(currentPlatform, { scaleX, scaleY });
139
141
  return {
140
142
  image: { data: result.data, mimeType: result.mimeType },
141
143
  text: scaled
142
- ? `Screenshot: ${result.width}x${result.height} (device: ${result.originalWidth}x${result.originalHeight}, scaleX: ${scaleX.toFixed(2)}, scaleY: ${scaleY.toFixed(2)}). When tapping, multiply screenshot coordinates by scale factors to get device coordinates.`
144
+ ? `Screenshot: ${result.width}x${result.height} (device: ${result.originalWidth}x${result.originalHeight}). Coordinate scaling applied automatically.`
143
145
  : undefined,
144
146
  };
145
147
  },
@@ -1 +1 @@
1
- {"version":3,"file":"screenshot-tools.js","sourceRoot":"","sources":["../../src/tools/screenshot-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"screenshot-tools.js","sourceRoot":"","sources":["../../src/tools/screenshot-tools.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ export const uiTools = [
4
4
  {
5
5
  tool: {
6
6
  name: "ui_tree",
7
- description: "Get the current UI hierarchy (accessibility tree). Shows all interactive elements with their text, IDs, and coordinates. Note: Limited on iOS.",
7
+ description: "Get the current UI hierarchy (accessibility tree). PREFERRED over screen_capture — text-based, ~10x cheaper in tokens. Shows all interactive elements with their text, IDs, and coordinates. Use this first for navigation, finding elements, and inspecting screen state. Note: Limited on iOS.",
8
8
  inputSchema: {
9
9
  type: "object",
10
10
  properties: {