@minded-ai/mindedjs 1.0.124 → 1.0.126-beta-1
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/dist/agent.d.ts +2 -1
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +8 -5
- package/dist/agent.js.map +1 -1
- package/dist/browserTask/README.md +419 -0
- package/dist/browserTask/browserAgent.py +632 -0
- package/dist/browserTask/captcha_isolated.png +0 -0
- package/dist/browserTask/executeBrowserTask.d.ts +1 -12
- package/dist/browserTask/executeBrowserTask.d.ts.map +1 -1
- package/dist/browserTask/executeBrowserTask.js +3 -178
- package/dist/browserTask/executeBrowserTask.js.map +1 -1
- package/dist/browserTask/executeBrowserTask.ts +79 -0
- package/dist/browserTask/requirements.txt +8 -0
- package/dist/browserTask/setup.sh +144 -0
- package/dist/edges/createPromptRouter.js +1 -1
- package/dist/edges/createPromptRouter.js.map +1 -1
- package/dist/internalTools/retell.d.ts +12 -0
- package/dist/internalTools/retell.d.ts.map +1 -0
- package/dist/internalTools/retell.js +54 -0
- package/dist/internalTools/retell.js.map +1 -0
- package/dist/internalTools/sendPlaceholderMessage.d.ts +14 -0
- package/dist/internalTools/sendPlaceholderMessage.d.ts.map +1 -0
- package/dist/internalTools/sendPlaceholderMessage.js +61 -0
- package/dist/internalTools/sendPlaceholderMessage.js.map +1 -0
- package/dist/nodes/addBrowserTaskNode.js +1 -1
- package/dist/nodes/addBrowserTaskNode.js.map +1 -1
- package/dist/nodes/addToolRunNode.d.ts.map +1 -1
- package/dist/nodes/addToolRunNode.js +1 -1
- package/dist/nodes/addToolRunNode.js.map +1 -1
- package/dist/nodes/compilePrompt.js +1 -1
- package/dist/platform/mindedConnectionTypes.d.ts +1 -0
- package/dist/platform/mindedConnectionTypes.d.ts.map +1 -1
- package/dist/playbooks/playbooks.js +1 -1
- package/dist/playbooks/playbooks.js.map +1 -1
- package/dist/types/Flows.types.d.ts +1 -0
- package/dist/types/Flows.types.d.ts.map +1 -1
- package/dist/types/Flows.types.js.map +1 -1
- package/dist/utils/extractStateMemoryResponse.d.ts +2 -1
- package/dist/utils/extractStateMemoryResponse.d.ts.map +1 -1
- package/dist/utils/extractStateMemoryResponse.js +72 -0
- package/dist/utils/extractStateMemoryResponse.js.map +1 -1
- package/package.json +1 -1
- package/src/agent.ts +11 -7
- package/src/browserTask/executeBrowserTask.ts +2 -213
- package/src/edges/createPromptRouter.ts +1 -1
- package/src/nodes/addBrowserTaskNode.ts +1 -1
- package/src/nodes/addToolRunNode.ts +2 -1
- package/src/nodes/compilePrompt.ts +1 -1
- package/src/platform/mindedConnectionTypes.ts +1 -0
- package/src/playbooks/playbooks.ts +2 -2
- package/src/types/Flows.types.ts +1 -0
- package/src/utils/extractStateMemoryResponse.ts +78 -2
|
@@ -57,7 +57,8 @@ export const addToolRunNode = async ({ graph, tools, toolNode, attachedToNodeNam
|
|
|
57
57
|
const toolStateUpdate = extractToolStateResponse(toolCallMessage as ToolMessage);
|
|
58
58
|
|
|
59
59
|
// Push the toolCallMessage into the messages array from toolStateUpdate
|
|
60
|
-
const updatedMessages = [toolCallMessage, ...((toolStateUpdate
|
|
60
|
+
const updatedMessages = [toolCallMessage, ...((toolStateUpdate).messages || [])];
|
|
61
|
+
|
|
61
62
|
// Return the full state update from the tool with the updated messages
|
|
62
63
|
|
|
63
64
|
return {
|
|
@@ -31,7 +31,7 @@ function replacePlaceholders(text: string, params: Record<string, any>): string
|
|
|
31
31
|
if (value && typeof value === 'object' && k in value) {
|
|
32
32
|
value = value[k];
|
|
33
33
|
} else {
|
|
34
|
-
logger.warn({ message: `Placeholder {${key}} in prompt not found in
|
|
34
|
+
logger.warn({ message: `Placeholder {${key}} in prompt not found in params. It will remain as placeholder.` });
|
|
35
35
|
return match; // Return original if key not found
|
|
36
36
|
}
|
|
37
37
|
}
|
|
@@ -441,6 +441,7 @@ export interface UpdateStateRequest extends BasemindedConnectionSocketMessage {
|
|
|
441
441
|
export interface CreateBrowserSessionRequest extends BasemindedConnectionSocketMessage {
|
|
442
442
|
type: mindedConnectionSocketMessageType.CREATE_BROWSER_SESSION;
|
|
443
443
|
proxy?: string; // 2-digit country code like 'IL'
|
|
444
|
+
onPrem?: boolean;
|
|
444
445
|
}
|
|
445
446
|
|
|
446
447
|
export interface CreateBrowserSessionResponse extends BaseSdkConnectionSocketMessageResponseCallbackAck {
|
|
@@ -61,8 +61,8 @@ function editorJsToMarkdown(blocks: OutputBlockData[]): string {
|
|
|
61
61
|
const items = block.data?.items || [];
|
|
62
62
|
const style = block.data?.style || 'unordered';
|
|
63
63
|
return items
|
|
64
|
-
.map((item: string, index: number) => {
|
|
65
|
-
const decodedItem = decodeHtmlEntities(item);
|
|
64
|
+
.map((item: { content: string }, index: number) => {
|
|
65
|
+
const decodedItem = decodeHtmlEntities(item.content);
|
|
66
66
|
if (style === 'ordered') {
|
|
67
67
|
return `${index + 1}. ${decodedItem}`;
|
|
68
68
|
} else {
|
package/src/types/Flows.types.ts
CHANGED
|
@@ -114,6 +114,7 @@ export interface BrowserTaskNode extends BaseNode {
|
|
|
114
114
|
defaultPayload?: string;
|
|
115
115
|
proxy?: string; // 2-digit country code like 'IL'
|
|
116
116
|
hooks?: { name: string }[]; // Array of hooks to be passed to the browser-use lambda
|
|
117
|
+
onPrem?: boolean;
|
|
117
118
|
}
|
|
118
119
|
|
|
119
120
|
export type TriggerNode = AppTriggerNode | WebhookTriggerNode | ManualTriggerNode | VoiceTriggerNode | InterfaceTriggerNode;
|
|
@@ -1,10 +1,14 @@
|
|
|
1
|
-
import { ToolMessage } from '@langchain/core/messages';
|
|
1
|
+
import { BaseMessage, ToolMessage, AIMessage, HumanMessage, SystemMessage } from '@langchain/core/messages';
|
|
2
2
|
import { logger } from './logger';
|
|
3
|
+
import { State } from '../types/LangGraph.types';
|
|
3
4
|
|
|
4
|
-
const extractToolStateResponse =
|
|
5
|
+
const extractToolStateResponse = (toolMessage: ToolMessage): Partial<State> => {
|
|
5
6
|
try {
|
|
6
7
|
const parsed = JSON.parse(toolMessage.content as string);
|
|
7
8
|
if (typeof parsed === 'object' && parsed !== null && 'state' in parsed) {
|
|
9
|
+
if (parsed.state.messages) {
|
|
10
|
+
parsed.state.messages = constructMessagesFromToolMessage(parsed.state.messages);
|
|
11
|
+
}
|
|
8
12
|
return parsed.state;
|
|
9
13
|
}
|
|
10
14
|
} catch (error) {
|
|
@@ -13,4 +17,76 @@ const extractToolStateResponse = <State>(toolMessage: ToolMessage): Partial<Stat
|
|
|
13
17
|
return {};
|
|
14
18
|
};
|
|
15
19
|
|
|
20
|
+
const constructMessagesFromToolMessage = (messages: any[]): BaseMessage[] => {
|
|
21
|
+
if (!Array.isArray(messages)) {
|
|
22
|
+
logger.error({ msg: 'Expected messages to be an array', messages });
|
|
23
|
+
return [];
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
return messages.map((messageObj) => {
|
|
27
|
+
try {
|
|
28
|
+
// Handle case where message is already a BaseMessage instance
|
|
29
|
+
if (messageObj instanceof BaseMessage) {
|
|
30
|
+
return messageObj;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
// Handle case where message is a plain object that needs reconstruction
|
|
34
|
+
const messageType = messageObj.id[2];
|
|
35
|
+
const content = messageObj.kwargs.content || '';
|
|
36
|
+
const id = messageObj.kwargs.id;
|
|
37
|
+
const additionalKwargs = messageObj.additional_kwargs || {};
|
|
38
|
+
|
|
39
|
+
switch (messageType) {
|
|
40
|
+
case 'AIMessage':
|
|
41
|
+
return new AIMessage({
|
|
42
|
+
content,
|
|
43
|
+
id,
|
|
44
|
+
additional_kwargs: additionalKwargs,
|
|
45
|
+
tool_calls: messageObj.tool_calls || [],
|
|
46
|
+
invalid_tool_calls: messageObj.invalid_tool_calls || [],
|
|
47
|
+
});
|
|
48
|
+
case 'HumanMessage':
|
|
49
|
+
return new HumanMessage({
|
|
50
|
+
content,
|
|
51
|
+
id,
|
|
52
|
+
additional_kwargs: additionalKwargs,
|
|
53
|
+
});
|
|
54
|
+
case 'SystemMessage':
|
|
55
|
+
return new SystemMessage({
|
|
56
|
+
content,
|
|
57
|
+
id,
|
|
58
|
+
additional_kwargs: additionalKwargs,
|
|
59
|
+
});
|
|
60
|
+
case 'ToolMessage':
|
|
61
|
+
return new ToolMessage({
|
|
62
|
+
content,
|
|
63
|
+
id,
|
|
64
|
+
additional_kwargs: additionalKwargs,
|
|
65
|
+
tool_call_id: messageObj.tool_call_id || '',
|
|
66
|
+
});
|
|
67
|
+
|
|
68
|
+
default:
|
|
69
|
+
// Default to HumanMessage for unknown types
|
|
70
|
+
logger.warn({
|
|
71
|
+
msg: 'Unknown message type, defaulting to HumanMessage',
|
|
72
|
+
messageType,
|
|
73
|
+
messageObj
|
|
74
|
+
});
|
|
75
|
+
return null;
|
|
76
|
+
}
|
|
77
|
+
} catch (error) {
|
|
78
|
+
logger.error({
|
|
79
|
+
msg: 'Error reconstructing message',
|
|
80
|
+
error,
|
|
81
|
+
messageObj
|
|
82
|
+
});
|
|
83
|
+
// Return a fallback HumanMessage in case of error
|
|
84
|
+
return new HumanMessage({
|
|
85
|
+
content: messageObj.content || 'Error reconstructing message',
|
|
86
|
+
id: messageObj.id,
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
}).filter(Boolean) as BaseMessage[];
|
|
90
|
+
};
|
|
91
|
+
|
|
16
92
|
export default extractToolStateResponse;
|