@mobileai/react-native 0.5.5 → 0.5.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.
- package/README.md +43 -12
- package/lib/module/components/AIAgent.js +55 -56
- package/lib/module/components/AIAgent.js.map +1 -1
- package/lib/module/core/AgentRuntime.js +18 -18
- package/lib/module/core/AgentRuntime.js.map +1 -1
- package/lib/module/core/FiberTreeWalker.js +6 -7
- package/lib/module/core/FiberTreeWalker.js.map +1 -1
- package/lib/module/core/ScreenDehydrator.js +1 -1
- package/lib/module/core/systemPrompt.js +2 -2
- package/lib/module/index.js +1 -1
- package/lib/typescript/src/components/AIAgent.d.ts +1 -3
- package/lib/typescript/src/components/AIAgent.d.ts.map +1 -1
- package/lib/typescript/src/core/AgentRuntime.d.ts +2 -2
- package/lib/typescript/src/core/FiberTreeWalker.d.ts +3 -4
- package/lib/typescript/src/core/FiberTreeWalker.d.ts.map +1 -1
- package/lib/typescript/src/core/ScreenDehydrator.d.ts +1 -1
- package/lib/typescript/src/core/systemPrompt.d.ts +2 -2
- package/lib/typescript/src/core/types.d.ts +9 -10
- package/lib/typescript/src/core/types.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +1 -1
- package/package.json +4 -5
- package/src/components/AIAgent.tsx +60 -61
- package/src/core/AgentRuntime.ts +18 -18
- package/src/core/FiberTreeWalker.ts +8 -9
- package/src/core/ScreenDehydrator.ts +1 -1
- package/src/core/systemPrompt.ts +2 -2
- package/src/core/types.ts +15 -15
- package/src/index.ts +1 -1
- package/lib/typescript/fetch-models.d.mts +0 -2
- package/lib/typescript/fetch-models.d.mts.map +0 -1
- package/lib/typescript/list-all-models.d.mts +0 -2
- package/lib/typescript/list-all-models.d.mts.map +0 -1
- package/lib/typescript/list-models.d.mts +0 -2
- package/lib/typescript/list-models.d.mts.map +0 -1
|
@@ -3,16 +3,15 @@
|
|
|
3
3
|
/**
|
|
4
4
|
* FiberTreeWalker — Traverses React's Fiber tree to discover interactive elements.
|
|
5
5
|
*
|
|
6
|
-
*
|
|
6
|
+
* Walks the React Native fiber tree to extract a text representation of the UI.
|
|
7
7
|
* Instead of traversing HTML nodes, we traverse React Fiber nodes and detect
|
|
8
8
|
* interactive elements by their type and props (onPress, onChangeText, etc.).
|
|
9
9
|
*
|
|
10
|
-
* Architecture inspired by: https://github.com/alibaba/page-agent
|
|
11
10
|
*/
|
|
12
11
|
|
|
13
12
|
import { logger } from "../utils/logger.js";
|
|
14
13
|
|
|
15
|
-
// ─── Walk Configuration
|
|
14
|
+
// ─── Walk Configuration ─────────
|
|
16
15
|
|
|
17
16
|
// ─── Fiber Node Type Detection ─────────────────────────────────
|
|
18
17
|
|
|
@@ -29,14 +28,14 @@ const VIDEO_TYPES = new Set(['Video', 'ExpoVideo', 'RCTVideo', 'VideoPlayer', 'V
|
|
|
29
28
|
// Known RN internal component names to skip when walking up for context
|
|
30
29
|
const RN_INTERNAL_NAMES = new Set(['View', 'RCTView', 'Pressable', 'TouchableOpacity', 'TouchableHighlight', 'ScrollView', 'RCTScrollView', 'FlatList', 'SectionList', 'SafeAreaView', 'RNCSafeAreaView', 'KeyboardAvoidingView', 'Modal', 'StatusBar', 'Text', 'RCTText', 'AnimatedComponent', 'AnimatedComponentWrapper', 'Animated']);
|
|
31
30
|
|
|
32
|
-
// ─── State Extraction
|
|
31
|
+
// ─── State Extraction ──
|
|
33
32
|
|
|
34
33
|
/** Props to extract as state attributes — covers lazy devs who skip accessibility */
|
|
35
34
|
const STATE_PROPS = ['value', 'checked', 'selected', 'active', 'on', 'isOn', 'toggled', 'enabled'];
|
|
36
35
|
|
|
37
36
|
/**
|
|
38
37
|
* Extract state attributes from a fiber node's props.
|
|
39
|
-
*
|
|
38
|
+
* Extracts meaningful state from a fiber node.
|
|
40
39
|
* Priority: accessibilityState > accessibilityRole > direct scalar props.
|
|
41
40
|
*/
|
|
42
41
|
function extractStateAttributes(props) {
|
|
@@ -277,7 +276,7 @@ function getFiberFromRef(ref) {
|
|
|
277
276
|
|
|
278
277
|
/**
|
|
279
278
|
* Check if a Fiber node matches any ref in the given list.
|
|
280
|
-
*
|
|
279
|
+
* Checks if an element is excluded from AI interaction
|
|
281
280
|
* We compare the Fiber's stateNode (native instance) against ref.current.
|
|
282
281
|
*/
|
|
283
282
|
function matchesRefList(node, refs) {
|
|
@@ -352,7 +351,7 @@ export function walkFiberTree(rootRef, config) {
|
|
|
352
351
|
}
|
|
353
352
|
});
|
|
354
353
|
|
|
355
|
-
// Build output tag with state attributes
|
|
354
|
+
// Build output tag with state attributes
|
|
356
355
|
const stateAttrs = extractStateAttributes(props);
|
|
357
356
|
const attrStr = stateAttrs ? ` ${stateAttrs}` : '';
|
|
358
357
|
const textContent = label || '';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["logger","PRESSABLE_TYPES","Set","TEXT_INPUT_TYPES","SWITCH_TYPES","TEXT_TYPES","IMAGE_TYPES","VIDEO_TYPES","RN_INTERNAL_NAMES","STATE_PROPS","extractStateAttributes","props","parts","accessibilityState","k","v","Object","entries","undefined","push","accessibilityRole","key","join","hasAnyEventHandler","keys","startsWith","getNearestCustomComponentName","fiber","maxDepth","current","return","depth","name","getComponentName","has","type","displayName","render","getElementType","memoizedProps","role","onPress","onChangeText","onValueChange","isDisabled","disabled","editable","extractTextContent","child","childName","childProps","sibling","text","extractRawText","children","nestedText","trim","String","Array","isArray","map","filter","Boolean","getFiberRoot","hook","globalThis","__REACT_DEVTOOLS_GLOBAL_HOOK__","renderers","size","rendererId","roots","getFiberRoots","fiberRoot","values","next","value","debug","e","getFiberFromRef","ref","rootFiber","_reactInternals","_reactInternalInstance","fiberKey","find","warn","matchesRefList","node","refs","length","stateNode","walkFiberTree","rootRef","config","elementsText","interactives","currentIndex","hasWhitelist","interactiveWhitelist","processNode","isInsideInteractive","aiIgnore","interactiveBlacklist","childText","currentChild","isWhitelisted","elementType","shouldInclude","childrenText","indent","repeat","resolvedType","label","accessibilityLabel","placeholder","index","fiberNode","stateAttrs","attrStr","textContent","elementOutput","typeStr","componentName","context","alt","src","source","uri","attrs","paused","shouldPlay","poster","posterSource","replace","info"],"sourceRoot":"../../../src","sources":["core/FiberTreeWalker.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["logger","PRESSABLE_TYPES","Set","TEXT_INPUT_TYPES","SWITCH_TYPES","TEXT_TYPES","IMAGE_TYPES","VIDEO_TYPES","RN_INTERNAL_NAMES","STATE_PROPS","extractStateAttributes","props","parts","accessibilityState","k","v","Object","entries","undefined","push","accessibilityRole","key","join","hasAnyEventHandler","keys","startsWith","getNearestCustomComponentName","fiber","maxDepth","current","return","depth","name","getComponentName","has","type","displayName","render","getElementType","memoizedProps","role","onPress","onChangeText","onValueChange","isDisabled","disabled","editable","extractTextContent","child","childName","childProps","sibling","text","extractRawText","children","nestedText","trim","String","Array","isArray","map","filter","Boolean","getFiberRoot","hook","globalThis","__REACT_DEVTOOLS_GLOBAL_HOOK__","renderers","size","rendererId","roots","getFiberRoots","fiberRoot","values","next","value","debug","e","getFiberFromRef","ref","rootFiber","_reactInternals","_reactInternalInstance","fiberKey","find","warn","matchesRefList","node","refs","length","stateNode","walkFiberTree","rootRef","config","elementsText","interactives","currentIndex","hasWhitelist","interactiveWhitelist","processNode","isInsideInteractive","aiIgnore","interactiveBlacklist","childText","currentChild","isWhitelisted","elementType","shouldInclude","childrenText","indent","repeat","resolvedType","label","accessibilityLabel","placeholder","index","fiberNode","stateAttrs","attrStr","textContent","elementOutput","typeStr","componentName","context","alt","src","source","uri","attrs","paused","shouldPlay","poster","posterSource","replace","info"],"sourceRoot":"../../../src","sources":["core/FiberTreeWalker.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
|
-
* System prompt for the AI agent
|
|
4
|
+
* System prompt for the AI agent.
|
|
5
5
|
*
|
|
6
6
|
* Separated into its own file for maintainability.
|
|
7
|
-
* The prompt uses XML-style tags
|
|
7
|
+
* The prompt uses XML-style tags
|
|
8
8
|
* to give the LLM clear, structured instructions.
|
|
9
9
|
*/
|
|
10
10
|
|
package/lib/module/index.js
CHANGED
|
@@ -16,8 +16,6 @@ interface AIAgentProps {
|
|
|
16
16
|
model?: string;
|
|
17
17
|
/** Navigation container ref (from useNavigationContainerRef) */
|
|
18
18
|
navRef?: any;
|
|
19
|
-
/** UI language */
|
|
20
|
-
language?: 'en' | 'ar';
|
|
21
19
|
/** Max agent steps per request */
|
|
22
20
|
maxSteps?: number;
|
|
23
21
|
/** Show/hide the chat bar */
|
|
@@ -66,6 +64,6 @@ interface AIAgentProps {
|
|
|
66
64
|
/** Enable SDK debug logging (disabled by default) */
|
|
67
65
|
debug?: boolean;
|
|
68
66
|
}
|
|
69
|
-
export declare function AIAgent({ apiKey, model, navRef,
|
|
67
|
+
export declare function AIAgent({ apiKey, model, navRef, maxSteps, showChatBar, children, onResult, interactiveBlacklist, interactiveWhitelist, onBeforeStep, onAfterStep, onBeforeTask, onAfterTask, transformScreenContent, customTools, instructions, stepDelay, mcpServerUrl, router, pathname, enableVoice, onTokenUsage, debug, }: AIAgentProps): import("react/jsx-runtime").JSX.Element;
|
|
70
68
|
export {};
|
|
71
69
|
//# sourceMappingURL=AIAgent.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AIAgent.d.ts","sourceRoot":"","sources":["../../../../src/components/AIAgent.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAMN,MAAM,OAAO,CAAC;AAaf,OAAO,KAAK,EAA0B,eAAe,EAAE,cAAc,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAOpH,UAAU,YAAY;IACpB,qBAAqB;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,wBAAwB;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gEAAgE;IAChE,MAAM,CAAC,EAAE,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"AIAgent.d.ts","sourceRoot":"","sources":["../../../../src/components/AIAgent.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* AgentRuntime — The main agent loop
|
|
2
|
+
* AgentRuntime — The main agent loop.
|
|
3
3
|
*
|
|
4
4
|
* Flow:
|
|
5
5
|
* 1. Walk Fiber tree → detect interactive elements
|
|
@@ -58,7 +58,7 @@ export declare class AgentRuntime {
|
|
|
58
58
|
/**
|
|
59
59
|
* Get current screen context as formatted text.
|
|
60
60
|
* Used by voice mode: sent once at connect + after each tool call.
|
|
61
|
-
*
|
|
61
|
+
* Tree goes in user prompt, not system instructions.
|
|
62
62
|
*/
|
|
63
63
|
getScreenContext(): string;
|
|
64
64
|
private buildToolsForProvider;
|
|
@@ -1,17 +1,16 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* FiberTreeWalker — Traverses React's Fiber tree to discover interactive elements.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
4
|
+
* Walks the React Native fiber tree to extract a text representation of the UI.
|
|
5
5
|
* Instead of traversing HTML nodes, we traverse React Fiber nodes and detect
|
|
6
6
|
* interactive elements by their type and props (onPress, onChangeText, etc.).
|
|
7
7
|
*
|
|
8
|
-
* Architecture inspired by: https://github.com/alibaba/page-agent
|
|
9
8
|
*/
|
|
10
9
|
import type { InteractiveElement } from './types';
|
|
11
10
|
export interface WalkConfig {
|
|
12
|
-
/** React refs of elements to exclude
|
|
11
|
+
/** React refs of elements to exclude */
|
|
13
12
|
interactiveBlacklist?: React.RefObject<any>[];
|
|
14
|
-
/** If set, only these elements are interactive
|
|
13
|
+
/** If set, only these elements are interactive */
|
|
15
14
|
interactiveWhitelist?: React.RefObject<any>[];
|
|
16
15
|
}
|
|
17
16
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FiberTreeWalker.d.ts","sourceRoot":"","sources":["../../../../src/core/FiberTreeWalker.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"FiberTreeWalker.d.ts","sourceRoot":"","sources":["../../../../src/core/FiberTreeWalker.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,kBAAkB,EAAe,MAAM,SAAS,CAAC;AAI/D,MAAM,WAAW,UAAU;IACzB,wCAAwC;IACxC,oBAAoB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;IAC9C,kDAAkD;IAClD,oBAAoB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;CAC/C;AAsED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAQtD;AAyOD,MAAM,WAAW,UAAU;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,kBAAkB,EAAE,CAAC;CACpC;AAID;;;GAGG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,UAAU,GAAG,UAAU,CA6H3E"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* System prompt for the AI agent
|
|
2
|
+
* System prompt for the AI agent.
|
|
3
3
|
*
|
|
4
4
|
* Separated into its own file for maintainability.
|
|
5
|
-
* The prompt uses XML-style tags
|
|
5
|
+
* The prompt uses XML-style tags
|
|
6
6
|
* to give the LLM clear, structured instructions.
|
|
7
7
|
*/
|
|
8
8
|
export declare function buildSystemPrompt(language: string): string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Core types for the
|
|
2
|
+
* Core types for the React Native AI SDK.
|
|
3
3
|
*/
|
|
4
4
|
export type AgentMode = 'text' | 'voice';
|
|
5
5
|
export type ElementType = 'pressable' | 'text-input' | 'switch' | 'scrollable';
|
|
@@ -47,18 +47,17 @@ export interface AgentStep {
|
|
|
47
47
|
export interface AgentConfig {
|
|
48
48
|
apiKey: string;
|
|
49
49
|
model?: string;
|
|
50
|
-
|
|
51
|
-
/** Maximum steps per task (page-agent default: 40) */
|
|
50
|
+
/** Maximum steps per task */
|
|
52
51
|
maxSteps?: number;
|
|
53
52
|
/**
|
|
54
53
|
* React refs of elements the AI must NOT interact with.
|
|
55
|
-
*
|
|
54
|
+
* Refs of elements the AI must NOT interact with.
|
|
56
55
|
* The Fiber walker skips any node whose ref matches one in this list.
|
|
57
56
|
*/
|
|
58
57
|
interactiveBlacklist?: React.RefObject<any>[];
|
|
59
58
|
/**
|
|
60
59
|
* If set, the AI can ONLY interact with these elements.
|
|
61
|
-
*
|
|
60
|
+
* If set, AI can ONLY interact with these elements.
|
|
62
61
|
*/
|
|
63
62
|
interactiveWhitelist?: React.RefObject<any>[];
|
|
64
63
|
/** Called before each agent step. */
|
|
@@ -72,13 +71,13 @@ export interface AgentConfig {
|
|
|
72
71
|
/**
|
|
73
72
|
* Transform dehydrated screen text before sending to LLM.
|
|
74
73
|
* Use to mask sensitive data (credit cards, PII, etc).
|
|
75
|
-
*
|
|
74
|
+
* Transform screen content before the LLM sees it (for data masking).
|
|
76
75
|
*/
|
|
77
76
|
transformScreenContent?: (content: string) => Promise<string> | string;
|
|
78
77
|
/**
|
|
79
78
|
* Override or remove built-in tools.
|
|
80
79
|
* Set tool to `null` to remove it (e.g., `{ navigate: null }`).
|
|
81
|
-
*
|
|
80
|
+
* Override or remove built-in tools (null = remove).
|
|
82
81
|
*/
|
|
83
82
|
customTools?: Record<string, ToolDefinition | null>;
|
|
84
83
|
/** Instructions to guide the agent's behavior. */
|
|
@@ -88,11 +87,11 @@ export interface AgentConfig {
|
|
|
88
87
|
/**
|
|
89
88
|
* Dynamic per-screen instructions callback.
|
|
90
89
|
* Called before each step to get instructions for the current screen.
|
|
91
|
-
*
|
|
90
|
+
* Per-screen instructions callback.
|
|
92
91
|
*/
|
|
93
92
|
getScreenInstructions?: (screenName: string) => string | undefined | null;
|
|
94
93
|
};
|
|
95
|
-
/** Delay between steps in ms
|
|
94
|
+
/** Delay between steps in ms. */
|
|
96
95
|
stepDelay?: number;
|
|
97
96
|
/**
|
|
98
97
|
* Called with a human-readable status string at each step.
|
|
@@ -106,7 +105,7 @@ export interface AgentConfig {
|
|
|
106
105
|
onTokenUsage?: (usage: TokenUsage) => void;
|
|
107
106
|
/**
|
|
108
107
|
* Callback for when agent needs user input (ask_user tool).
|
|
109
|
-
*
|
|
108
|
+
* The agent loop blocks until the user responds.
|
|
110
109
|
* If not set, ask_user tool will break the loop (legacy behavior).
|
|
111
110
|
* @example onAskUser: (q) => new Promise(resolve => showPrompt(q, resolve))
|
|
112
111
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC;AAIzC,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,YAAY,GAAG,QAAQ,GAAG,YAAY,CAAC;AAE/E,MAAM,WAAW,kBAAkB;IACjC,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,mBAAmB;IACnB,IAAI,EAAE,WAAW,CAAC;IAClB,gFAAgF;IAChF,KAAK,EAAE,MAAM,CAAC;IACd,gDAAgD;IAChD,SAAS,EAAE,GAAG,CAAC;IACf,yBAAyB;IACzB,KAAK,EAAE;QACL,OAAO,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;QACnC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;QACtC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;QACzC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QACzB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;CACH;AAID,MAAM,WAAW,gBAAgB;IAC/B,kDAAkD;IAClD,UAAU,EAAE,MAAM,CAAC;IACnB,mDAAmD;IACnD,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,2CAA2C;IAC3C,YAAY,EAAE,MAAM,CAAC;IACrB,yBAAyB;IACzB,QAAQ,EAAE,kBAAkB,EAAE,CAAC;CAChC;AAID,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,cAAc,CAAC;IAC3B,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC3B,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CACH;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mobileai/react-native",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.6",
|
|
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",
|
|
@@ -114,7 +114,7 @@
|
|
|
114
114
|
}
|
|
115
115
|
},
|
|
116
116
|
"workspaces": [
|
|
117
|
-
"example"
|
|
117
|
+
"example-react-navigation"
|
|
118
118
|
],
|
|
119
119
|
"react-native-builder-bob": {
|
|
120
120
|
"source": "src",
|
|
@@ -144,9 +144,8 @@
|
|
|
144
144
|
"jest": {
|
|
145
145
|
"preset": "react-native",
|
|
146
146
|
"modulePathIgnorePatterns": [
|
|
147
|
-
"<rootDir>/example/node_modules",
|
|
148
|
-
"<rootDir>/lib/"
|
|
149
|
-
"<rootDir>/rntl-reference"
|
|
147
|
+
"<rootDir>/example-react-navigation/node_modules",
|
|
148
|
+
"<rootDir>/lib/"
|
|
150
149
|
]
|
|
151
150
|
},
|
|
152
151
|
"create-react-native-library": {
|
|
@@ -41,8 +41,7 @@ interface AIAgentProps {
|
|
|
41
41
|
model?: string;
|
|
42
42
|
/** Navigation container ref (from useNavigationContainerRef) */
|
|
43
43
|
navRef?: any;
|
|
44
|
-
|
|
45
|
-
language?: 'en' | 'ar';
|
|
44
|
+
|
|
46
45
|
/** Max agent steps per request */
|
|
47
46
|
maxSteps?: number;
|
|
48
47
|
/** Show/hide the chat bar */
|
|
@@ -52,7 +51,7 @@ interface AIAgentProps {
|
|
|
52
51
|
/** Callback when agent completes */
|
|
53
52
|
onResult?: (result: ExecutionResult) => void;
|
|
54
53
|
|
|
55
|
-
// ── Security
|
|
54
|
+
// ── Security ──────────────────────
|
|
56
55
|
|
|
57
56
|
/** Refs of elements the AI must NOT interact with */
|
|
58
57
|
interactiveBlacklist?: React.RefObject<any>[];
|
|
@@ -101,7 +100,7 @@ export function AIAgent({
|
|
|
101
100
|
apiKey,
|
|
102
101
|
model = 'gemini-2.5-flash',
|
|
103
102
|
navRef,
|
|
104
|
-
|
|
103
|
+
|
|
105
104
|
maxSteps = 10,
|
|
106
105
|
showChatBar = true,
|
|
107
106
|
children,
|
|
@@ -169,7 +168,7 @@ export function AIAgent({
|
|
|
169
168
|
const config: AgentConfig = useMemo(() => ({
|
|
170
169
|
apiKey,
|
|
171
170
|
model,
|
|
172
|
-
language,
|
|
171
|
+
language: 'en',
|
|
173
172
|
maxSteps,
|
|
174
173
|
interactiveBlacklist,
|
|
175
174
|
interactiveWhitelist,
|
|
@@ -185,7 +184,7 @@ export function AIAgent({
|
|
|
185
184
|
pathname,
|
|
186
185
|
onStatusUpdate: setStatusText,
|
|
187
186
|
onTokenUsage,
|
|
188
|
-
//
|
|
187
|
+
// Block the agent loop until user responds
|
|
189
188
|
onAskUser: mode === 'voice' ? undefined : ((question: string) => {
|
|
190
189
|
return new Promise<string>((resolve) => {
|
|
191
190
|
askUserResolverRef.current = resolve;
|
|
@@ -196,7 +195,7 @@ export function AIAgent({
|
|
|
196
195
|
});
|
|
197
196
|
}),
|
|
198
197
|
}), [
|
|
199
|
-
mode, apiKey, model,
|
|
198
|
+
mode, apiKey, model, maxSteps,
|
|
200
199
|
interactiveBlacklist, interactiveWhitelist,
|
|
201
200
|
onBeforeStep, onAfterStep, onBeforeTask, onAfterTask,
|
|
202
201
|
transformScreenContent, customTools, instructions, stepDelay,
|
|
@@ -250,13 +249,13 @@ export function AIAgent({
|
|
|
250
249
|
logger.info('AIAgent', `Registering ${runtimeTools.length} tools with VoiceService: ${runtimeTools.map(t => t.name).join(', ')}`);
|
|
251
250
|
// Use voice-adapted system prompt — same core rules as text mode
|
|
252
251
|
// but without agent-loop directives that trigger autonomous actions
|
|
253
|
-
const voicePrompt = buildVoiceSystemPrompt(
|
|
252
|
+
const voicePrompt = buildVoiceSystemPrompt('en', instructions?.system);
|
|
254
253
|
logger.info('AIAgent', `📝 Voice system prompt (${voicePrompt.length} chars):\n${voicePrompt}`);
|
|
255
254
|
voiceServiceRef.current = new VoiceService({
|
|
256
255
|
apiKey,
|
|
257
256
|
systemPrompt: voicePrompt,
|
|
258
257
|
tools: runtimeTools,
|
|
259
|
-
language,
|
|
258
|
+
language: 'en',
|
|
260
259
|
});
|
|
261
260
|
logger.info('AIAgent', `VoiceService created with ${runtimeTools.length} tools: ${runtimeTools.map(t => t.name).join(', ')}`);
|
|
262
261
|
}
|
|
@@ -498,7 +497,7 @@ export function AIAgent({
|
|
|
498
497
|
setIsVoiceConnected(false);
|
|
499
498
|
};
|
|
500
499
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
501
|
-
}, [mode, apiKey, runtime,
|
|
500
|
+
}, [mode, apiKey, runtime, instructions]);
|
|
502
501
|
|
|
503
502
|
// ─── Stop Voice Session (full cleanup) ─────────────────────
|
|
504
503
|
|
|
@@ -572,59 +571,59 @@ export function AIAgent({
|
|
|
572
571
|
<AgentContext.Provider value={runtime}>
|
|
573
572
|
<View ref={rootViewRef} style={styles.root} collapsable={false}>
|
|
574
573
|
{children}
|
|
575
|
-
</View>
|
|
576
574
|
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
575
|
+
{/* Overlay (shown while thinking) */}
|
|
576
|
+
<AgentOverlay visible={isThinking} statusText={statusText} />
|
|
577
|
+
|
|
578
|
+
{/* Chat bar */}
|
|
579
|
+
{showChatBar && (
|
|
580
|
+
<AgentChatBar
|
|
581
|
+
onSend={handleSend}
|
|
582
|
+
isThinking={isThinking}
|
|
583
|
+
lastResult={lastResult}
|
|
584
|
+
language={'en'}
|
|
585
|
+
onDismiss={() => setLastResult(null)}
|
|
586
|
+
availableModes={availableModes}
|
|
587
|
+
mode={mode}
|
|
588
|
+
onModeChange={(newMode) => {
|
|
589
|
+
logger.info('AIAgent', `Mode change: ${mode} → ${newMode}`);
|
|
590
|
+
setMode(newMode);
|
|
591
|
+
}}
|
|
592
|
+
isMicActive={isMicActive}
|
|
593
|
+
isSpeakerMuted={isSpeakerMuted}
|
|
594
|
+
isAISpeaking={isAISpeaking}
|
|
595
|
+
onStopSession={stopVoiceSession}
|
|
596
|
+
isVoiceConnected={isVoiceConnected}
|
|
597
|
+
onMicToggle={(active) => {
|
|
598
|
+
if (active && !isVoiceConnected) {
|
|
599
|
+
logger.warn('AIAgent', 'Cannot toggle mic — VoiceService not connected yet');
|
|
600
|
+
return;
|
|
601
|
+
}
|
|
602
|
+
logger.info('AIAgent', `Mic toggle: ${active ? 'ON' : 'OFF'}`);
|
|
603
|
+
setIsMicActive(active);
|
|
604
|
+
if (active) {
|
|
605
|
+
logger.info('AIAgent', 'Starting AudioInput...');
|
|
606
|
+
audioInputRef.current?.start().then((ok) => {
|
|
607
|
+
logger.info('AIAgent', `AudioInput start result: ${ok}`);
|
|
608
|
+
});
|
|
609
|
+
} else {
|
|
610
|
+
logger.info('AIAgent', 'Stopping AudioInput...');
|
|
611
|
+
audioInputRef.current?.stop();
|
|
612
|
+
}
|
|
613
|
+
}}
|
|
614
|
+
onSpeakerToggle={(muted) => {
|
|
615
|
+
logger.info('AIAgent', `Speaker toggle: ${muted ? 'MUTED' : 'UNMUTED'}`);
|
|
616
|
+
setIsSpeakerMuted(muted);
|
|
617
|
+
if (muted) {
|
|
618
|
+
audioOutputRef.current?.mute();
|
|
619
|
+
} else {
|
|
620
|
+
audioOutputRef.current?.unmute();
|
|
621
|
+
}
|
|
622
|
+
}}
|
|
625
623
|
|
|
626
|
-
|
|
627
|
-
|
|
624
|
+
/>
|
|
625
|
+
)}
|
|
626
|
+
</View>
|
|
628
627
|
</AgentContext.Provider>
|
|
629
628
|
);
|
|
630
629
|
}
|