@mobileai/react-native 0.7.17 → 0.7.18
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/lib/module/core/AgentRuntime.js +0 -37
- package/lib/module/core/AgentRuntime.js.map +1 -1
- package/lib/module/core/systemPrompt.js +2 -4
- package/lib/module/core/systemPrompt.js.map +1 -1
- package/lib/typescript/src/core/AgentRuntime.d.ts +0 -8
- package/lib/typescript/src/core/AgentRuntime.d.ts.map +1 -1
- package/lib/typescript/src/core/systemPrompt.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/core/AgentRuntime.ts +0 -37
- package/src/core/systemPrompt.ts +2 -4
|
@@ -219,17 +219,6 @@ export class AgentRuntime {
|
|
|
219
219
|
}
|
|
220
220
|
logger.info('AgentRuntime', `🧭 Navigate matched: "${args.screen}" → "${matchedScreen}"`);
|
|
221
221
|
|
|
222
|
-
// Safe navigation guard: reject paramless navigation to detail screens
|
|
223
|
-
// that are not currently in the active route stack (they need params from tap flow)
|
|
224
|
-
if (!params) {
|
|
225
|
-
const isInActiveStack = this.isScreenInActiveRoutes(matchedScreen);
|
|
226
|
-
if (!isInActiveStack) {
|
|
227
|
-
const errMsg = `❌ "${matchedScreen}" is a detail screen that requires parameters (e.g. an item ID). Navigate to it by tapping the relevant button in the UI instead of using navigate() directly. Use tap actions to reach detail screens through the normal app flow.`;
|
|
228
|
-
logger.warn('AgentRuntime', `🧭 Navigate REJECTED (safe nav): ${errMsg}`);
|
|
229
|
-
return errMsg;
|
|
230
|
-
}
|
|
231
|
-
}
|
|
232
|
-
|
|
233
222
|
// Find the path to the screen (handles nested navigators)
|
|
234
223
|
const screenPath = this.findScreenPath(matchedScreen);
|
|
235
224
|
if (screenPath.length > 1) {
|
|
@@ -555,32 +544,6 @@ export class AgentRuntime {
|
|
|
555
544
|
}
|
|
556
545
|
}
|
|
557
546
|
|
|
558
|
-
/**
|
|
559
|
-
* Check if a screen currently exists as an active (instantiated) route
|
|
560
|
-
* in the navigation state. Screens in state.routes have been visited
|
|
561
|
-
* and retain their params. Screens only in state.routeNames are declared
|
|
562
|
-
* but never visited — navigating to them without params will crash.
|
|
563
|
-
*/
|
|
564
|
-
isScreenInActiveRoutes(screenName) {
|
|
565
|
-
try {
|
|
566
|
-
const state = this.navRef?.getRootState?.() || this.navRef?.getState?.();
|
|
567
|
-
if (!state) return false;
|
|
568
|
-
return this.searchActiveRoutes(state, screenName);
|
|
569
|
-
} catch {
|
|
570
|
-
return false;
|
|
571
|
-
}
|
|
572
|
-
}
|
|
573
|
-
searchActiveRoutes(state, screenName) {
|
|
574
|
-
if (!state?.routes) return false;
|
|
575
|
-
for (const route of state.routes) {
|
|
576
|
-
if (route.name === screenName) return true;
|
|
577
|
-
if (route.state && this.searchActiveRoutes(route.state, screenName)) {
|
|
578
|
-
return true;
|
|
579
|
-
}
|
|
580
|
-
}
|
|
581
|
-
return false;
|
|
582
|
-
}
|
|
583
|
-
|
|
584
547
|
/**
|
|
585
548
|
* Build nested params for React Navigation nested screen navigation.
|
|
586
549
|
* ['HomeTab', 'Home'] → { screen: 'Home', params }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["logger","walkFiberTree","findScrollableContainers","dehydrateScreen","buildSystemPrompt","buildKnowledgeOnlyPrompt","KnowledgeBaseService","DEFAULT_MAX_STEPS","AgentRuntime","tools","Map","actions","history","isRunning","lastAskUserQuestion","knowledgeService","constructor","provider","config","rootRef","navRef","debug","screenMap","knowledgeBase","knowledgeMaxTokens","enableUIControl","registerKnowledgeOnlyTools","registerBuiltInTools","customTools","name","tool","Object","entries","delete","info","set","description","parameters","index","type","required","execute","args","interactives","elements","getWalkConfig","element","find","el","map","e","join","props","onValueChange","value","Promise","resolve","setTimeout","label","error","message","onPress","fiber","fiberNode","return","bubbleDepth","parentProps","memoizedProps","text","onChangeText","screen","params","router","path","startsWith","push","isReady","JSON","parse","undefined","availableRoutes","getRouteNames","stringify","matchedScreen","r","toLowerCase","errMsg","warn","isInActiveStack","isScreenInActiveRoutes","screenPath","findScreenPath","length","nestedParams","buildNestedParams","navigate","success","seconds","Math","min","Number","question","onAskUser","onStatusUpdate","answer","screenshot","captureScreenshot","round","direction","enum","amount","containerIndex","screenName","getCurrentScreenName","containers","targetIndex","container","available","c","componentName","scrollRef","stateNode","scrollToEnd","animated","scrollTo","y","scrollToOffset","offset","PAGE_OFFSET","amountLabel","retrieve","registerAction","action","unregisterAction","state","getRootState","getState","names","collectRouteNames","routeNames","routes","route","Set","targetScreen","some","nestedNames","includes","searchActiveRoutes","leafParams","result","i","pathname","segments","split","filter","Boolean","getDeepestScreenName","setUIControlOverride","enabled","uiControlOverride","isUIEnabled","getToolStatusLabel","toolName","moduleName","viewShot","require","captureRef","default","uri","format","quality","width","code","getScreenContext","keys","screens","chains","walkResult","elementsText","availableScreensText","appMapText","screenLines","entry","title","line","chainLines","chain","detectStaleMap","context","substring","staleMapWarned","mapScreens","missing","has","console","buildToolsForProvider","allTools","values","fromEntries","key","typeStr","handler","getTools","executeTool","get","t","interactiveBlacklist","interactiveWhitelist","getInstructions","instructions","system","trim","getScreenInstructions","screenInstructions","observations","lastScreenName","handleObservations","step","maxSteps","remaining","assembleUserPrompt","contextualMessage","screenContent","chatHistory","prompt","recentHistory","slice","msg","role","content","stepIndex","event","reflection","previousGoalEval","memory","plan","output","obs","userMessage","steps","stepDelay","sessionUsage","promptTokens","completionTokens","totalTokens","estimatedCostUSD","onBeforeTask","hasKnowledge","systemPrompt","userPrompt","response","generateContent","tokenUsage","onTokenUsage","toolCalls","tc","followUp","followUpResponse","ftc","doneResult","onAfterTask","onBeforeStep","transformScreenContent","contextMessage","reasoning","toolCall","statusLabel","statusDisplay","agentStep","input","onAfterStep","updateRefs","getIsRunning"],"sourceRoot":"../../../src","sources":["core/AgentRuntime.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["logger","walkFiberTree","findScrollableContainers","dehydrateScreen","buildSystemPrompt","buildKnowledgeOnlyPrompt","KnowledgeBaseService","DEFAULT_MAX_STEPS","AgentRuntime","tools","Map","actions","history","isRunning","lastAskUserQuestion","knowledgeService","constructor","provider","config","rootRef","navRef","debug","screenMap","knowledgeBase","knowledgeMaxTokens","enableUIControl","registerKnowledgeOnlyTools","registerBuiltInTools","customTools","name","tool","Object","entries","delete","info","set","description","parameters","index","type","required","execute","args","interactives","elements","getWalkConfig","element","find","el","map","e","join","props","onValueChange","value","Promise","resolve","setTimeout","label","error","message","onPress","fiber","fiberNode","return","bubbleDepth","parentProps","memoizedProps","text","onChangeText","screen","params","router","path","startsWith","push","isReady","JSON","parse","undefined","availableRoutes","getRouteNames","stringify","matchedScreen","r","toLowerCase","errMsg","warn","screenPath","findScreenPath","length","nestedParams","buildNestedParams","navigate","success","seconds","Math","min","Number","question","onAskUser","onStatusUpdate","answer","screenshot","captureScreenshot","round","direction","enum","amount","containerIndex","screenName","getCurrentScreenName","containers","targetIndex","container","available","c","componentName","scrollRef","stateNode","scrollToEnd","animated","scrollTo","y","scrollToOffset","offset","PAGE_OFFSET","amountLabel","retrieve","registerAction","action","unregisterAction","state","getRootState","getState","names","collectRouteNames","routeNames","routes","route","Set","targetScreen","some","nestedNames","includes","leafParams","result","i","pathname","segments","split","filter","Boolean","getDeepestScreenName","setUIControlOverride","enabled","uiControlOverride","isUIEnabled","getToolStatusLabel","toolName","moduleName","viewShot","require","captureRef","default","uri","format","quality","width","code","getScreenContext","keys","screens","chains","walkResult","elementsText","availableScreensText","appMapText","screenLines","entry","title","line","chainLines","chain","detectStaleMap","context","substring","staleMapWarned","mapScreens","missing","has","console","buildToolsForProvider","allTools","values","fromEntries","key","typeStr","handler","getTools","executeTool","get","t","interactiveBlacklist","interactiveWhitelist","getInstructions","instructions","system","trim","getScreenInstructions","screenInstructions","observations","lastScreenName","handleObservations","step","maxSteps","remaining","assembleUserPrompt","contextualMessage","screenContent","chatHistory","prompt","recentHistory","slice","msg","role","content","stepIndex","event","reflection","previousGoalEval","memory","plan","output","obs","userMessage","steps","stepDelay","sessionUsage","promptTokens","completionTokens","totalTokens","estimatedCostUSD","onBeforeTask","hasKnowledge","systemPrompt","userPrompt","response","generateContent","tokenUsage","onTokenUsage","toolCalls","tc","followUp","followUpResponse","ftc","doneResult","onAfterTask","onBeforeStep","transformScreenContent","contextMessage","reasoning","toolCall","statusLabel","statusDisplay","agentStep","input","onAfterStep","updateRefs","getIsRunning"],"sourceRoot":"../../../src","sources":["core/AgentRuntime.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -63,7 +63,6 @@ Pure text elements without [] are NOT interactive — they are informational con
|
|
|
63
63
|
Available tools:
|
|
64
64
|
- tap(index): Tap an interactive element by its index. Works universally on buttons, switches, and custom components. For switches, this toggles their state.
|
|
65
65
|
- type(index, text): Type text into a text-input element by its index.
|
|
66
|
-
- navigate(screen, params): Navigate to a specific screen. params is optional JSON object. IMPORTANT: Only use for top-level screens (tabs, settings, cart). Detail screens (menus, chats, orders) require context — reach them by tapping through the UI instead.
|
|
67
66
|
- scroll(direction, amount, containerIndex): Scroll the current screen to reveal more content (e.g. lazy-loaded lists). direction: 'down' or 'up'. amount: 'page' (default), 'toEnd', or 'toStart'. containerIndex: optional 0-based index if the screen has multiple scrollable areas (default: 0). Use when you need to see items below/above the current viewport.
|
|
68
67
|
- wait(seconds): Wait for a specified number of seconds before taking the next action. Use this when the screen explicitly shows "Loading...", "Please wait", or loading skeletons, to give the app time to fetch data.
|
|
69
68
|
- done(text, success): Complete task. Text is your final response to the user — keep it concise unless the user explicitly asks for detail.
|
|
@@ -103,7 +102,7 @@ If a UI element is hidden (aiIgnore) but a matching custom action exists, use th
|
|
|
103
102
|
- Do not guess or auto-fill sensitive data (passwords, payment info, personal details). Always ask the user.
|
|
104
103
|
- Trying too hard can be harmful. If stuck, call done() with partial results rather than repeating failed actions.
|
|
105
104
|
- If you do not know how to proceed with the current screen, use ask_user to request specific instructions from the user.
|
|
106
|
-
-
|
|
105
|
+
- NAVIGATION: Always use tap actions to move between screens. Tap tab bar buttons, back buttons, and navigation links in the UI. This ensures all required screen parameters (like item IDs) are passed automatically by the app. Use the Available Screens list and screen descriptions to identify which screen has the feature you need, then find and tap the UI element that leads there.
|
|
107
106
|
</rules>
|
|
108
107
|
|
|
109
108
|
<task_completion_rules>
|
|
@@ -221,7 +220,6 @@ Pure text elements without [] are NOT interactive — they are informational con
|
|
|
221
220
|
Available tools:
|
|
222
221
|
- tap(index): Tap an interactive element by its index. Works universally on buttons, switches, and custom components. For switches, this toggles their state.
|
|
223
222
|
- type(index, text): Type text into a text-input element by its index. ONLY works on text-input elements.
|
|
224
|
-
- navigate(screen, params): Navigate to a screen listed in Available Screens. ONLY use screen names from the Available Screens list — section titles, category names, or other visible text are content within a screen, not navigable screens. IMPORTANT: Only use for top-level screens (tabs, settings, cart). Detail screens require context — reach them by tapping through the UI instead.
|
|
225
223
|
- scroll(direction, amount, containerIndex): Scroll the current screen to reveal more content (e.g. lazy-loaded lists). direction: 'down' or 'up'. amount: 'page' (default), 'toEnd', or 'toStart'. containerIndex: optional 0-based index if the screen has multiple scrollable areas (default: 0). Use when you need to see items below/above the current viewport.
|
|
226
224
|
- wait(seconds): Wait for a specified number of seconds before taking the next action. Use this when the screen explicitly shows "Loading...", "Please wait", or loading skeletons, to give the app time to fetch data.
|
|
227
225
|
- done(text, success): Complete task and respond to the user.${hasKnowledge ? `
|
|
@@ -268,7 +266,7 @@ If a UI element is hidden but a matching custom action exists, use the action.
|
|
|
268
266
|
- SECURITY & PRIVACY: Do not fill in login/signup forms unless the user provides credentials.
|
|
269
267
|
- Do NOT ask for confirmation of actions the user explicitly requested. If they said "place my order", just do it.
|
|
270
268
|
- If the user's intent is ambiguous — it could mean multiple things or lead to different screens — ask the user to clarify before navigating to the wrong place.
|
|
271
|
-
-
|
|
269
|
+
- NAVIGATION: Always use tap actions to move between screens. Tap tab bar buttons, back buttons, and navigation links in the UI. This ensures all required screen parameters are passed automatically by the app. Use the Available Screens list to identify which screen has the feature you need, then tap the UI element that leads there.
|
|
272
270
|
</rules>
|
|
273
271
|
|
|
274
272
|
<capability>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["buildSystemPrompt","language","hasKnowledge","isArabic","buildVoiceSystemPrompt","userInstructions","prompt","trim","buildKnowledgeOnlyPrompt"],"sourceRoot":"../../../src","sources":["core/systemPrompt.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,SAASA,iBAAiBA,CAACC,QAAgB,EAAEC,YAAY,GAAG,KAAK,EAAU;EAChF,MAAMC,QAAQ,GAAGF,QAAQ,KAAK,IAAI;EAElC,OAAO;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAEE,QAAQ,GAAG,oDAAoD,GAAG,sDAAsD;AAC1H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA
|
|
1
|
+
{"version":3,"names":["buildSystemPrompt","language","hasKnowledge","isArabic","buildVoiceSystemPrompt","userInstructions","prompt","trim","buildKnowledgeOnlyPrompt"],"sourceRoot":"../../../src","sources":["core/systemPrompt.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,SAASA,iBAAiBA,CAACC,QAAgB,EAAEC,YAAY,GAAG,KAAK,EAAU;EAChF,MAAMC,QAAQ,GAAGF,QAAQ,KAAK,IAAI;EAElC,OAAO;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAEE,QAAQ,GAAG,oDAAoD,GAAG,sDAAsD;AAC1H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0GAA0GD,YAAY,GAAG;AACzH,sQAAsQ,GAAG,EAAE;AAC3Q;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+DAA+DA,YAAY,GAAG,uDAAuD,GAAG,EAAE,8CAA8CA,YAAY,GAAG,kBAAkB,GAAG,EAAE;AAC9N;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oFAAoFA,YAAY,GAAG;AACnG,qJAAqJ,GAAG,EAAE;AAC1J;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASE,sBAAsBA,CACpCH,QAAgB,EAChBI,gBAAyB,EACzBH,YAAY,GAAG,KAAK,EACZ;EACR,MAAMC,QAAQ,GAAGF,QAAQ,KAAK,IAAI;EAElC,IAAIK,MAAM,GAAG;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+DAA+DJ,YAAY,GAAG;AAC9E,2OAA2O,GAAG,EAAE;AAChP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sDAAsDA,YAAY,GAAG,uDAAuD,GAAG,EAAE,8CAA8CA,YAAY,GAAG,kBAAkB,GAAG,EAAE;AACrN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iFAAiFA,YAAY,GAAG;AAChG,qJAAqJ,GAAG,EAAE;AAC1J;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAEC,QAAQ,GAAG,oDAAoD,GAAG,sDAAsD;AAC1H;AACA,qBAAqB;;EAEnB;EACA,IAAIE,gBAAgB,EAAEE,IAAI,CAAC,CAAC,EAAE;IAC5BD,MAAM,IAAI,2BAA2BD,gBAAgB,CAACE,IAAI,CAAC,CAAC,uBAAuB;EACrF;EAEA,OAAOD,MAAM;AACf;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASE,wBAAwBA,CACtCP,QAAgB,EAChBC,YAAqB,EACrBG,gBAAyB,EACjB;EACR,MAAMF,QAAQ,GAAGF,QAAQ,KAAK,IAAI;EAElC,IAAIK,MAAM,GAAG;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2GAA2GJ,YAAY,GAAG;AAC1H,2OAA2O,GAAG,EAAE;AAChP;AACA;AACA;AACA,kEAAkEA,YAAY,GAAG;AACjF,0IAA0I,GAAG,EAAE;AAC/I;AACA;AACA;AACA;AACA;AACA;AACA,EAAEC,QAAQ,GAAG,oDAAoD,GAAG,sDAAsD;AAC1H;AACA,qBAAqB;EAEnB,IAAIE,gBAAgB,EAAEE,IAAI,CAAC,CAAC,EAAE;IAC5BD,MAAM,IAAI,2BAA2BD,gBAAgB,CAACE,IAAI,CAAC,CAAC,uBAAuB;EACrF;EAEA,OAAOD,MAAM;AACf","ignoreList":[]}
|
|
@@ -42,14 +42,6 @@ export declare class AgentRuntime {
|
|
|
42
42
|
* Example: findScreenPath('Home') → ['HomeTab', 'Home']
|
|
43
43
|
*/
|
|
44
44
|
private findScreenPath;
|
|
45
|
-
/**
|
|
46
|
-
* Check if a screen currently exists as an active (instantiated) route
|
|
47
|
-
* in the navigation state. Screens in state.routes have been visited
|
|
48
|
-
* and retain their params. Screens only in state.routeNames are declared
|
|
49
|
-
* but never visited — navigating to them without params will crash.
|
|
50
|
-
*/
|
|
51
|
-
private isScreenInActiveRoutes;
|
|
52
|
-
private searchActiveRoutes;
|
|
53
45
|
/**
|
|
54
46
|
* Build nested params for React Navigation nested screen navigation.
|
|
55
47
|
* ['HomeTab', 'Home'] → { screen: 'Home', params }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentRuntime.d.ts","sourceRoot":"","sources":["../../../../src/core/AgentRuntime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAQH,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EAEX,eAAe,EACf,cAAc,EACd,gBAAgB,EAEjB,MAAM,SAAS,CAAC;AAMjB,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,OAAO,CAAM;IACrB,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,KAAK,CAA0C;IACvD,OAAO,CAAC,OAAO,CAA4C;IAC3D,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,mBAAmB,CAAuB;IAClD,OAAO,CAAC,gBAAgB,CAAqC;IAC7D,OAAO,CAAC,iBAAiB,CAAC,CAAU;gBAGlC,QAAQ,EAAE,UAAU,EACpB,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,GAAG,EACZ,MAAM,EAAE,GAAG;IAuCb,OAAO,CAAC,oBAAoB;
|
|
1
|
+
{"version":3,"file":"AgentRuntime.d.ts","sourceRoot":"","sources":["../../../../src/core/AgentRuntime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAQH,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EAEX,eAAe,EACf,cAAc,EACd,gBAAgB,EAEjB,MAAM,SAAS,CAAC;AAMjB,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,OAAO,CAAM;IACrB,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,KAAK,CAA0C;IACvD,OAAO,CAAC,OAAO,CAA4C;IAC3D,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,mBAAmB,CAAuB;IAClD,OAAO,CAAC,gBAAgB,CAAqC;IAC7D,OAAO,CAAC,iBAAiB,CAAC,CAAU;gBAGlC,QAAQ,EAAE,UAAU,EACpB,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,GAAG,EACZ,MAAM,EAAE,GAAG;IAuCb,OAAO,CAAC,oBAAoB;IAmU5B;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAuClC,cAAc,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAK9C,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAMpC;;;OAGG;IACH,OAAO,CAAC,aAAa;IAarB,OAAO,CAAC,iBAAiB;IAkBzB;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAyBtB;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IASzB;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAiB5B,OAAO,CAAC,oBAAoB;IAarB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS;IAIxD,OAAO,CAAC,WAAW;IAKnB,gFAAgF;IAChF,OAAO,CAAC,kBAAkB;IAyB1B;;;;OAIG;YACW,iBAAiB;IA+B/B;;;;OAIG;IACI,gBAAgB,IAAI,MAAM;IAsEjC,OAAO,CAAC,cAAc,CAAS;IAE/B,OAAO,CAAC,cAAc;IAiBtB,OAAO,CAAC,qBAAqB;IA6B7B,gFAAgF;IACzE,QAAQ,IAAI,cAAc,EAAE;IAInC,yEAAyE;IAC5D,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAkBlF,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,eAAe;IAyBvB,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,cAAc,CAAc;IAEpC,OAAO,CAAC,kBAAkB;IAsB1B,OAAO,CAAC,kBAAkB;IAiGpB,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC;IAiS/G,qDAAqD;IACrD,UAAU,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,GAAG,IAAI;IAK3C,4CAA4C;IAC5C,YAAY,IAAI,OAAO;CAGxB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"systemPrompt.d.ts","sourceRoot":"","sources":["../../../../src/core/systemPrompt.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,UAAQ,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"systemPrompt.d.ts","sourceRoot":"","sources":["../../../../src/core/systemPrompt.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,UAAQ,GAAG,MAAM,CAgLhF;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,EAChB,gBAAgB,CAAC,EAAE,MAAM,EACzB,YAAY,UAAQ,GACnB,MAAM,CA6GR;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,OAAO,EACrB,gBAAgB,CAAC,EAAE,MAAM,GACxB,MAAM,CAyCR"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mobileai/react-native",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.18",
|
|
4
4
|
"description": "Build autonomous AI agents for React Native and Expo apps. Provides AI-native UI traversal, tool calling, and structured reasoning.",
|
|
5
5
|
"main": "./lib/module/index.js",
|
|
6
6
|
"source": "./src/index.ts",
|
package/src/core/AgentRuntime.ts
CHANGED
|
@@ -221,17 +221,6 @@ export class AgentRuntime {
|
|
|
221
221
|
}
|
|
222
222
|
logger.info('AgentRuntime', `🧭 Navigate matched: "${args.screen}" → "${matchedScreen}"`);
|
|
223
223
|
|
|
224
|
-
// Safe navigation guard: reject paramless navigation to detail screens
|
|
225
|
-
// that are not currently in the active route stack (they need params from tap flow)
|
|
226
|
-
if (!params) {
|
|
227
|
-
const isInActiveStack = this.isScreenInActiveRoutes(matchedScreen);
|
|
228
|
-
if (!isInActiveStack) {
|
|
229
|
-
const errMsg = `❌ "${matchedScreen}" is a detail screen that requires parameters (e.g. an item ID). Navigate to it by tapping the relevant button in the UI instead of using navigate() directly. Use tap actions to reach detail screens through the normal app flow.`;
|
|
230
|
-
logger.warn('AgentRuntime', `🧭 Navigate REJECTED (safe nav): ${errMsg}`);
|
|
231
|
-
return errMsg;
|
|
232
|
-
}
|
|
233
|
-
}
|
|
234
|
-
|
|
235
224
|
// Find the path to the screen (handles nested navigators)
|
|
236
225
|
const screenPath = this.findScreenPath(matchedScreen);
|
|
237
226
|
if (screenPath.length > 1) {
|
|
@@ -537,32 +526,6 @@ export class AgentRuntime {
|
|
|
537
526
|
}
|
|
538
527
|
}
|
|
539
528
|
|
|
540
|
-
/**
|
|
541
|
-
* Check if a screen currently exists as an active (instantiated) route
|
|
542
|
-
* in the navigation state. Screens in state.routes have been visited
|
|
543
|
-
* and retain their params. Screens only in state.routeNames are declared
|
|
544
|
-
* but never visited — navigating to them without params will crash.
|
|
545
|
-
*/
|
|
546
|
-
private isScreenInActiveRoutes(screenName: string): boolean {
|
|
547
|
-
try {
|
|
548
|
-
const state = this.navRef?.getRootState?.() || this.navRef?.getState?.();
|
|
549
|
-
if (!state) return false;
|
|
550
|
-
return this.searchActiveRoutes(state, screenName);
|
|
551
|
-
} catch {
|
|
552
|
-
return false;
|
|
553
|
-
}
|
|
554
|
-
}
|
|
555
|
-
|
|
556
|
-
private searchActiveRoutes(state: any, screenName: string): boolean {
|
|
557
|
-
if (!state?.routes) return false;
|
|
558
|
-
for (const route of state.routes) {
|
|
559
|
-
if (route.name === screenName) return true;
|
|
560
|
-
if (route.state && this.searchActiveRoutes(route.state, screenName)) {
|
|
561
|
-
return true;
|
|
562
|
-
}
|
|
563
|
-
}
|
|
564
|
-
return false;
|
|
565
|
-
}
|
|
566
529
|
|
|
567
530
|
/**
|
|
568
531
|
* Build nested params for React Navigation nested screen navigation.
|
package/src/core/systemPrompt.ts
CHANGED
|
@@ -62,7 +62,6 @@ Pure text elements without [] are NOT interactive — they are informational con
|
|
|
62
62
|
Available tools:
|
|
63
63
|
- tap(index): Tap an interactive element by its index. Works universally on buttons, switches, and custom components. For switches, this toggles their state.
|
|
64
64
|
- type(index, text): Type text into a text-input element by its index.
|
|
65
|
-
- navigate(screen, params): Navigate to a specific screen. params is optional JSON object. IMPORTANT: Only use for top-level screens (tabs, settings, cart). Detail screens (menus, chats, orders) require context — reach them by tapping through the UI instead.
|
|
66
65
|
- scroll(direction, amount, containerIndex): Scroll the current screen to reveal more content (e.g. lazy-loaded lists). direction: 'down' or 'up'. amount: 'page' (default), 'toEnd', or 'toStart'. containerIndex: optional 0-based index if the screen has multiple scrollable areas (default: 0). Use when you need to see items below/above the current viewport.
|
|
67
66
|
- wait(seconds): Wait for a specified number of seconds before taking the next action. Use this when the screen explicitly shows "Loading...", "Please wait", or loading skeletons, to give the app time to fetch data.
|
|
68
67
|
- done(text, success): Complete task. Text is your final response to the user — keep it concise unless the user explicitly asks for detail.
|
|
@@ -102,7 +101,7 @@ If a UI element is hidden (aiIgnore) but a matching custom action exists, use th
|
|
|
102
101
|
- Do not guess or auto-fill sensitive data (passwords, payment info, personal details). Always ask the user.
|
|
103
102
|
- Trying too hard can be harmful. If stuck, call done() with partial results rather than repeating failed actions.
|
|
104
103
|
- If you do not know how to proceed with the current screen, use ask_user to request specific instructions from the user.
|
|
105
|
-
-
|
|
104
|
+
- NAVIGATION: Always use tap actions to move between screens. Tap tab bar buttons, back buttons, and navigation links in the UI. This ensures all required screen parameters (like item IDs) are passed automatically by the app. Use the Available Screens list and screen descriptions to identify which screen has the feature you need, then find and tap the UI element that leads there.
|
|
106
105
|
</rules>
|
|
107
106
|
|
|
108
107
|
<task_completion_rules>
|
|
@@ -225,7 +224,6 @@ Pure text elements without [] are NOT interactive — they are informational con
|
|
|
225
224
|
Available tools:
|
|
226
225
|
- tap(index): Tap an interactive element by its index. Works universally on buttons, switches, and custom components. For switches, this toggles their state.
|
|
227
226
|
- type(index, text): Type text into a text-input element by its index. ONLY works on text-input elements.
|
|
228
|
-
- navigate(screen, params): Navigate to a screen listed in Available Screens. ONLY use screen names from the Available Screens list — section titles, category names, or other visible text are content within a screen, not navigable screens. IMPORTANT: Only use for top-level screens (tabs, settings, cart). Detail screens require context — reach them by tapping through the UI instead.
|
|
229
227
|
- scroll(direction, amount, containerIndex): Scroll the current screen to reveal more content (e.g. lazy-loaded lists). direction: 'down' or 'up'. amount: 'page' (default), 'toEnd', or 'toStart'. containerIndex: optional 0-based index if the screen has multiple scrollable areas (default: 0). Use when you need to see items below/above the current viewport.
|
|
230
228
|
- wait(seconds): Wait for a specified number of seconds before taking the next action. Use this when the screen explicitly shows "Loading...", "Please wait", or loading skeletons, to give the app time to fetch data.
|
|
231
229
|
- done(text, success): Complete task and respond to the user.${hasKnowledge ? `
|
|
@@ -272,7 +270,7 @@ If a UI element is hidden but a matching custom action exists, use the action.
|
|
|
272
270
|
- SECURITY & PRIVACY: Do not fill in login/signup forms unless the user provides credentials.
|
|
273
271
|
- Do NOT ask for confirmation of actions the user explicitly requested. If they said "place my order", just do it.
|
|
274
272
|
- If the user's intent is ambiguous — it could mean multiple things or lead to different screens — ask the user to clarify before navigating to the wrong place.
|
|
275
|
-
-
|
|
273
|
+
- NAVIGATION: Always use tap actions to move between screens. Tap tab bar buttons, back buttons, and navigation links in the UI. This ensures all required screen parameters are passed automatically by the app. Use the Available Screens list to identify which screen has the feature you need, then tap the UI element that leads there.
|
|
276
274
|
</rules>
|
|
277
275
|
|
|
278
276
|
<capability>
|