{
    "name": "Nested Agent Skeleton - Workshop Start",
    "flow": [
        {
            "id": 2,
            "module": "ai-local-agent:RunLocalAIAgent",
            "version": 0,
            "parameters": {},
            "mapper": {
                "files": [],
                "message": "{{var.input.input}}",
                "timeout": "",
                "threadId": "Orchestrator_01",
                "outputType": "text",
                "modelConfig": {
                    "recursionLimit": 300,
                    "iterationsFromHistoryCount": "10"
                },
                "defaultModel": "global.anthropic.claude-opus-5",
                "systemPrompt": "You coordinate three specialists. You do not do their work yourself.\n\n- Memory Agent — everything the user has told you before: people, companies, agreements, preferences, decisions.\n- Task Agent — the to-do list: creating, listing, updating and closing tasks.\n- Web Search — current information from the public web.\n\nRules:\n\n1. Pick the smallest set of specialists that answers the request. Most requests need exactly one.\n2. When a request needs remembered context in order to act, call the Memory Agent first, then pass its result to the Task Agent in the same run, record keys included.\n3. Always call a specialist for the current state. Never answer from results you saw earlier in this conversation, and never assume a store still holds what it held a moment ago. Every question about what is stored gets a fresh call, even if you asked the same thing one message ago.\n4. Every memory comes back with a record key. When a task is built from memories, those keys go to the Task Agent with it, in full, character for character, comma-separated if there are several. Do not summarise them away, do not reformat them, do not invent one. If you had a key and did not pass it, the link between the task and the memory is gone and nobody can rebuild it later.\n5. If a specialist returns nothing, say so plainly. Do not fill the gap yourself.\n6. Answer in two or three sentences. State what you did and what came back.\n7. Use at most five specialist calls for one request. If that is not enough, stop and tell the user what is still open instead of carrying on.\n8. Reading is free: search, look things up, check what is stored, as often as you need. Creating and changing happens when the user asked for it. Deleting happens only when the user says delete, in those words. Never infer a deletion from context.\n9. When something obvious follows from what you just did, do not ask whether the user wants it. Name it and ask whether to do it now. Not \"should I maybe add a task?\" but \"I would add: send the revised proposal, due Friday. Shall I?\" Keep it to one line at the end of your answer.",
                "reasoningEffort": "medium"
            },
            "metadata": {
                "designer": {
                    "x": -91,
                    "y": 240,
                    "name": "Orchestrator"
                },
                "restore": {
                    "expect": {
                        "files": {
                            "mode": "chose"
                        },
                        "outputType": {
                            "label": "Text"
                        },
                        "defaultModel": {
                            "mode": "chose",
                            "label": "Claude Opus 5Most capable Opus model for complex agentic coding, enterprise work, and high-autonomy agents."
                        },
                        "reasoningEffort": {
                            "mode": "chose",
                            "label": "Medium"
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "makeConnectionId",
                        "type": "account:ai-provider,openai-gpt-3,anthropic-claude,gemini-ai-q9zyjp,ai-agent-foundry-openai,ai-agent-foundry-non-openai,mistral-ai,cohere,groq,ai-agent-xai,amazon-bedrock,ai-agent-openai-compatible",
                        "label": "Connection",
                        "required": true
                    }
                ],
                "expect": [
                    {
                        "name": "defaultModel",
                        "type": "select",
                        "label": "Model",
                        "required": true
                    },
                    {
                        "name": "reasoningEffort",
                        "type": "select",
                        "label": "Reasoning effort",
                        "validate": {
                            "enum": [
                                "low",
                                "medium",
                                "high"
                            ]
                        }
                    },
                    {
                        "name": "systemPrompt",
                        "type": "text",
                        "label": "Instructions"
                    },
                    {
                        "name": "message",
                        "type": "text",
                        "label": "Input",
                        "required": true
                    },
                    {
                        "name": "files",
                        "spec": [
                            {
                                "name": "fileName",
                                "type": "filename",
                                "label": "File name",
                                "semantic": "file:name"
                            },
                            {
                                "name": "data",
                                "type": "buffer",
                                "label": "Data",
                                "semantic": "file:data"
                            }
                        ],
                        "type": "array",
                        "label": "Input files"
                    },
                    {
                        "name": "threadId",
                        "type": "text",
                        "label": "Conversation ID",
                        "validate": {
                            "max": 256
                        }
                    },
                    {
                        "name": "modelConfig",
                        "spec": [
                            {
                                "name": "tokenLimit",
                                "type": "hidden",
                                "label": "Max output tokens"
                            },
                            {
                                "name": "recursionLimit",
                                "type": "hidden",
                                "label": "Steps per agent call"
                            },
                            {
                                "name": "iterationsFromHistoryCount",
                                "type": "number",
                                "label": "Maximum conversation history"
                            }
                        ],
                        "type": "collection",
                        "label": "Model configuration"
                    },
                    {
                        "name": "timeout",
                        "type": "number",
                        "label": "Step timeout",
                        "validate": {
                            "max": 600,
                            "min": 120
                        }
                    },
                    {
                        "name": "outputType",
                        "type": "select",
                        "label": "Response format",
                        "required": true,
                        "validate": {
                            "enum": [
                                "text",
                                "make-schema",
                                "udt-schema"
                            ]
                        }
                    }
                ],
                "advanced": true
            },
            "tools": [
                {
                    "name": "Memory Agent",
                    "description": "Everything the user has told you before: people, companies, agreements, preferences and decisions. Use when the user asks what was said, agreed or decided, or what is known about someone. This agent cannot create or change tasks. It returns a record key with every memory.",
                    "flow": [
                        {
                            "id": 4,
                            "module": "ai-local-agent:RunLocalAIAgent",
                            "version": 0,
                            "parameters": {},
                            "mapper": {
                                "defaultModel": "global.anthropic.claude-sonnet-5",
                                "reasoningEffort": "low",
                                "systemPrompt": "You are the memory of the system. You own one data store and nothing else.\r\n\r\nYou store and retrieve: people, companies, agreements, preferences, decisions, and context from past conversations.\r\n\r\nYou never create, change or read tasks. If you are asked to, reply that tasks belong to another specialist.\r\n\r\nRules:\r\n\r\n- subject: the person and their company, in the form \"Name, Company\".\r\n- category: lowercase, one word. One of: agreement, preference, decision, note.\r\n- content: what was said or agreed, in full sentences. Name the person explicitly instead of writing \"she\" or \"the user\".\r\n- Always include the record key with every memory you report, in the form \"key: mem_xxxx\". The caller depends on it.\r\n- When storing a new memory, set the key yourself in the form \"mem_\" followed by four lowercase letters or digits, for example mem_a7f3. Keep it short enough to read aloud.\r\n- When something you already hold has changed, search for that record and update it instead of storing a second one.\r\n- When searching, use one distinctive term such as a person's name or a company. Never search with the full question.\r\n- If nothing is found, say so. Never invent a memory.\r\n- Report what is stored, not your interpretation of it.",
                                "message": "{{2.message}}",
                                "files": [],
                                "threadId": "",
                                "modelConfig": {
                                    "recursionLimit": 300,
                                    "iterationsFromHistoryCount": "0"
                                },
                                "timeout": "",
                                "outputType": "text"
                            },
                            "metadata": {
                                "designer": {
                                    "x": -377,
                                    "y": 271,
                                    "name": "Memory Agent"
                                },
                                "restore": {
                                    "expect": {
                                        "defaultModel": {
                                            "mode": "chose",
                                            "label": "Claude Sonnet 5Frontier model for complex reasoning, advanced agents, and coding"
                                        },
                                        "reasoningEffort": {
                                            "mode": "chose",
                                            "label": "Low"
                                        },
                                        "message": {
                                            "extra": {
                                                "aiHelp": "This is the incoming data or task your agent will work on. You can map values from previous modules here, such as new chat messages or emails."
                                            }
                                        },
                                        "files": {
                                            "mode": "chose"
                                        },
                                        "outputType": {
                                            "label": "Text"
                                        }
                                    }
                                },
                                "parameters": [
                                    {
                                        "name": "makeConnectionId",
                                        "type": "account:ai-provider,openai-gpt-3,anthropic-claude,gemini-ai-q9zyjp,ai-agent-foundry-openai,ai-agent-foundry-non-openai,mistral-ai,cohere,groq,ai-agent-xai,amazon-bedrock,ai-agent-openai-compatible",
                                        "label": "Connection",
                                        "required": true
                                    }
                                ],
                                "expect": [
                                    {
                                        "name": "defaultModel",
                                        "type": "select",
                                        "label": "Model",
                                        "required": true
                                    },
                                    {
                                        "name": "reasoningEffort",
                                        "type": "select",
                                        "label": "Reasoning effort",
                                        "validate": {
                                            "enum": [
                                                "low",
                                                "medium",
                                                "high"
                                            ]
                                        }
                                    },
                                    {
                                        "name": "systemPrompt",
                                        "type": "text",
                                        "label": "Instructions"
                                    },
                                    {
                                        "name": "message",
                                        "type": "text",
                                        "label": "Input",
                                        "required": true
                                    },
                                    {
                                        "name": "files",
                                        "type": "array",
                                        "label": "Input files",
                                        "spec": [
                                            {
                                                "name": "fileName",
                                                "type": "filename",
                                                "label": "File name",
                                                "semantic": "file:name"
                                            },
                                            {
                                                "name": "data",
                                                "type": "buffer",
                                                "label": "Data",
                                                "semantic": "file:data"
                                            }
                                        ]
                                    },
                                    {
                                        "name": "threadId",
                                        "type": "text",
                                        "label": "Conversation ID",
                                        "validate": {
                                            "max": 256
                                        }
                                    },
                                    {
                                        "name": "modelConfig",
                                        "type": "collection",
                                        "label": "Model configuration",
                                        "spec": [
                                            {
                                                "name": "tokenLimit",
                                                "type": "hidden",
                                                "label": "Max output tokens"
                                            },
                                            {
                                                "name": "recursionLimit",
                                                "type": "hidden",
                                                "label": "Steps per agent call"
                                            },
                                            {
                                                "name": "iterationsFromHistoryCount",
                                                "type": "number",
                                                "label": "Maximum conversation history"
                                            }
                                        ]
                                    },
                                    {
                                        "name": "timeout",
                                        "type": "number",
                                        "label": "Step timeout",
                                        "validate": {
                                            "min": 120,
                                            "max": 600
                                        }
                                    },
                                    {
                                        "name": "outputType",
                                        "type": "select",
                                        "label": "Response format",
                                        "required": true,
                                        "validate": {
                                            "enum": [
                                                "text",
                                                "make-schema",
                                                "udt-schema"
                                            ]
                                        }
                                    }
                                ],
                                "advanced": true
                            },
                            "tools": [
                                {
                                    "name": "Add a record",
                                    "description": "Create a new record. Use only for something that does not exist yet.\nFails if the key is already taken.",
                                    "flow": [
                                        {
                                            "id": 5,
                                            "module": "datastore:AddRecord",
                                            "version": 1,
                                            "parameters": {
                                                "datastore": 176449
                                            },
                                            "mapper": {
                                                "key": "{{4.key}}",
                                                "data": {
                                                    "due": "",
                                                    "type": "memory",
                                                    "title": "",
                                                    "status": "",
                                                    "content": "{{4.data.content}}",
                                                    "context": "",
                                                    "subject": "{{4.data.subject}}",
                                                    "category": "{{4.data.category}}",
                                                    "source_id": "",
                                                    "recorded_on": "{{formatDate(now; \"YYYY-MM-DD\")}}",
                                                    "last_updated": "{{formatDate(now; \"YYYY-MM-DD HH:mm:ss\")}}"
                                                },
                                                "overwrite": false
                                            },
                                            "metadata": {
                                                "designer": {
                                                    "x": -639,
                                                    "y": 118
                                                },
                                                "restore": {
                                                    "expect": {
                                                        "key": {
                                                            "extra": {
                                                                "aiHelp": "You assign a unique key that can be used later to retrieve the record. If you leave this field blank, a key will be generated."
                                                            }
                                                        },
                                                        "data": {
                                                            "nested": {
                                                                "content": {
                                                                    "extra": {
                                                                        "aiInstruction": "The memory itself, 1-3 sentences. Include names, numbers and dates. Never refer back to this conversation."
                                                                    }
                                                                },
                                                                "subject": {
                                                                    "extra": {
                                                                        "aiInstruction": "\"Name, Company\". Example: Laura Bennett, Kestrel Systems"
                                                                    }
                                                                },
                                                                "category": {
                                                                    "extra": {
                                                                        "aiInstruction": "One lowercase word: agreement, preference, decision or note."
                                                                    }
                                                                },
                                                                "recorded_on": {
                                                                    "extra": {}
                                                                }
                                                            }
                                                        },
                                                        "overwrite": {
                                                            "mode": "chose"
                                                        }
                                                    },
                                                    "parameters": {
                                                        "datastore": {
                                                            "label": "Nested Agent Skeleton"
                                                        }
                                                    }
                                                },
                                                "parameters": [
                                                    {
                                                        "name": "datastore",
                                                        "type": "datastore",
                                                        "label": "Data store",
                                                        "required": true
                                                    }
                                                ],
                                                "expect": [
                                                    {
                                                        "name": "key",
                                                        "type": "text",
                                                        "label": "Key"
                                                    },
                                                    {
                                                        "name": "overwrite",
                                                        "type": "boolean",
                                                        "label": "Overwrite an existing record",
                                                        "required": true
                                                    },
                                                    {
                                                        "name": "data",
                                                        "spec": [
                                                            {
                                                                "name": "type",
                                                                "type": "text",
                                                                "label": "Type"
                                                            },
                                                            {
                                                                "name": "subject",
                                                                "type": "text",
                                                                "label": "Subject"
                                                            },
                                                            {
                                                                "name": "category",
                                                                "type": "text",
                                                                "label": "Category"
                                                            },
                                                            {
                                                                "name": "content",
                                                                "type": "text",
                                                                "label": "Content"
                                                            },
                                                            {
                                                                "name": "recorded_on",
                                                                "type": "text",
                                                                "label": "Recorded on"
                                                            },
                                                            {
                                                                "name": "title",
                                                                "type": "text",
                                                                "label": "Title"
                                                            },
                                                            {
                                                                "name": "status",
                                                                "type": "text",
                                                                "label": "Status"
                                                            },
                                                            {
                                                                "name": "due",
                                                                "type": "text",
                                                                "label": "Due"
                                                            },
                                                            {
                                                                "name": "source_id",
                                                                "type": "text",
                                                                "label": "Source ID"
                                                            },
                                                            {
                                                                "name": "context",
                                                                "type": "text",
                                                                "label": "Context"
                                                            },
                                                            {
                                                                "name": "last_updated",
                                                                "type": "text",
                                                                "label": "Last updated"
                                                            }
                                                        ],
                                                        "type": "collection",
                                                        "label": "Record"
                                                    }
                                                ]
                                            }
                                        }
                                    ]
                                },
                                {
                                    "name": "Search records",
                                    "description": "Find memories by keyword. Pass one distinctive term such as a person's name or a company. Leave the value empty to list every memory. Use this whenever you are asked what is known about someone or something.",
                                    "flow": [
                                        {
                                            "id": 6,
                                            "module": "datastore:SearchRecord",
                                            "version": 1,
                                            "parameters": {
                                                "limit": 20,
                                                "datastore": 176449,
                                                "continueWhenNoRes": true
                                            },
                                            "mapper": {
                                                "sort": [],
                                                "filter": [
                                                    [
                                                        {
                                                            "a": "subject",
                                                            "b": "{{4.filter[0]}}",
                                                            "o": "text:contain:ci"
                                                        }
                                                    ],
                                                    [
                                                        {
                                                            "a": "content",
                                                            "b": "{{4.filter[1]}}",
                                                            "o": "text:contain:ci"
                                                        }
                                                    ],
                                                    [
                                                        {
                                                            "a": "recorded_on",
                                                            "b": "{{4.filter[2]}}",
                                                            "o": "text:contain:ci"
                                                        }
                                                    ]
                                                ],
                                                "mappAbleLimit": ""
                                            },
                                            "metadata": {
                                                "designer": {
                                                    "x": -638,
                                                    "y": 235
                                                },
                                                "restore": {
                                                    "expect": {
                                                        "filter": {
                                                            "extra": {
                                                                "aiInstruction": [
                                                                    "Keyword for the subject, e.g. a name or company. Empty = no restriction.",
                                                                    "Keyword inside the memory text. Empty = no restriction.",
                                                                    "Date as YYYY-MM-DD. Empty = no restriction."
                                                                ]
                                                            }
                                                        }
                                                    },
                                                    "parameters": {
                                                        "datastore": {
                                                            "label": "Nested Agent Skeleton"
                                                        }
                                                    }
                                                },
                                                "parameters": [
                                                    {
                                                        "name": "datastore",
                                                        "type": "datastore",
                                                        "label": "Data store",
                                                        "required": true
                                                    },
                                                    {
                                                        "name": "continueWhenNoRes",
                                                        "type": "boolean",
                                                        "label": "Continue the execution of the route even if the module returns no results"
                                                    },
                                                    {
                                                        "name": "limit",
                                                        "type": "uinteger",
                                                        "label": "Limit"
                                                    }
                                                ],
                                                "expect": [
                                                    {
                                                        "name": "filter",
                                                        "type": "filter",
                                                        "label": "Filter",
                                                        "options": {
                                                            "store": [
                                                                {
                                                                    "label": "type",
                                                                    "value": "type",
                                                                    "filter": "text:*"
                                                                },
                                                                {
                                                                    "label": "subject",
                                                                    "value": "subject",
                                                                    "filter": "text:*"
                                                                },
                                                                {
                                                                    "label": "category",
                                                                    "value": "category",
                                                                    "filter": "text:*"
                                                                },
                                                                {
                                                                    "label": "content",
                                                                    "value": "content",
                                                                    "filter": "text:*"
                                                                },
                                                                {
                                                                    "label": "recorded_on",
                                                                    "value": "recorded_on",
                                                                    "filter": "text:*"
                                                                },
                                                                {
                                                                    "label": "title",
                                                                    "value": "title",
                                                                    "filter": "text:*"
                                                                },
                                                                {
                                                                    "label": "status",
                                                                    "value": "status",
                                                                    "filter": "text:*"
                                                                },
                                                                {
                                                                    "label": "due",
                                                                    "value": "due",
                                                                    "filter": "text:*"
                                                                },
                                                                {
                                                                    "label": "source_id",
                                                                    "value": "source_id",
                                                                    "filter": "text:*"
                                                                },
                                                                {
                                                                    "label": "context",
                                                                    "value": "context",
                                                                    "filter": "text:*"
                                                                },
                                                                {
                                                                    "label": "last_updated",
                                                                    "value": "last_updated",
                                                                    "filter": "text:*"
                                                                }
                                                            ],
                                                            "operators": [
                                                                {
                                                                    "label": "Basic operators",
                                                                    "options": [
                                                                        {
                                                                            "label": "Exists",
                                                                            "value": "exist"
                                                                        },
                                                                        {
                                                                            "label": "Does not exist",
                                                                            "value": "notexist"
                                                                        }
                                                                    ]
                                                                },
                                                                {
                                                                    "label": "Text operators",
                                                                    "options": [
                                                                        {
                                                                            "label": "Equal to",
                                                                            "value": "text:equal"
                                                                        },
                                                                        {
                                                                            "label": "Equal to (case insensitive)",
                                                                            "value": "text:equal:ci"
                                                                        },
                                                                        {
                                                                            "label": "Not equal to",
                                                                            "value": "text:notequal"
                                                                        },
                                                                        {
                                                                            "label": "Not equal to (case insensitive)",
                                                                            "value": "text:notequal:ci"
                                                                        },
                                                                        {
                                                                            "label": "Contains",
                                                                            "value": "text:contain"
                                                                        },
                                                                        {
                                                                            "label": "Contains (case insensitive)",
                                                                            "value": "text:contain:ci"
                                                                        },
                                                                        {
                                                                            "label": "Does not contain",
                                                                            "value": "text:notcontain"
                                                                        },
                                                                        {
                                                                            "label": "Does not contain (case insensitive)",
                                                                            "value": "text:notcontain:ci"
                                                                        },
                                                                        {
                                                                            "label": "Starts with",
                                                                            "value": "text:startwith"
                                                                        },
                                                                        {
                                                                            "label": "Starts with (case insensitive)",
                                                                            "value": "text:startwith:ci"
                                                                        },
                                                                        {
                                                                            "label": "Does not start with",
                                                                            "value": "text:notstartwith"
                                                                        },
                                                                        {
                                                                            "label": "Does not start with (case insensitive)",
                                                                            "value": "text:notstartwith:ci"
                                                                        },
                                                                        {
                                                                            "label": "Ends with",
                                                                            "value": "text:endwith"
                                                                        },
                                                                        {
                                                                            "label": "Ends with (case insensitive)",
                                                                            "value": "text:endwith:ci"
                                                                        },
                                                                        {
                                                                            "label": "Does not end with",
                                                                            "value": "text:notendwith"
                                                                        },
                                                                        {
                                                                            "label": "Does not end with (case insensitive)",
                                                                            "value": "text:notendwith:ci"
                                                                        }
                                                                    ]
                                                                },
                                                                {
                                                                    "label": "Numeric operators",
                                                                    "options": [
                                                                        {
                                                                            "label": "Equal to",
                                                                            "value": "number:equal"
                                                                        },
                                                                        {
                                                                            "label": "Not equal to",
                                                                            "value": "number:notequal"
                                                                        },
                                                                        {
                                                                            "label": "Greater than",
                                                                            "value": "number:greater"
                                                                        },
                                                                        {
                                                                            "label": "Less than",
                                                                            "value": "number:less"
                                                                        },
                                                                        {
                                                                            "label": "Greater than or equal to",
                                                                            "value": "number:greaterorequal"
                                                                        },
                                                                        {
                                                                            "label": "Less than or equal to",
                                                                            "value": "number:lessorequal"
                                                                        }
                                                                    ]
                                                                },
                                                                {
                                                                    "label": "Datetime operators",
                                                                    "options": [
                                                                        {
                                                                            "label": "Equal to",
                                                                            "value": "date:equal"
                                                                        },
                                                                        {
                                                                            "label": "Not equal to",
                                                                            "value": "date:notequal"
                                                                        },
                                                                        {
                                                                            "label": "Later than",
                                                                            "value": "date:greater"
                                                                        },
                                                                        {
                                                                            "label": "Earlier than",
                                                                            "value": "date:less"
                                                                        },
                                                                        {
                                                                            "label": "Later than or equal to",
                                                                            "value": "date:greaterorequal"
                                                                        },
                                                                        {
                                                                            "label": "Earlier than or equal to",
                                                                            "value": "date:lessorequal"
                                                                        }
                                                                    ]
                                                                },
                                                                {
                                                                    "label": "Boolean operators",
                                                                    "options": [
                                                                        {
                                                                            "label": "Equal to",
                                                                            "value": "boolean:equal"
                                                                        },
                                                                        {
                                                                            "label": "Not equal to",
                                                                            "value": "boolean:notequal"
                                                                        },
                                                                        {
                                                                            "label": "Is true",
                                                                            "value": "boolean:istrue"
                                                                        },
                                                                        {
                                                                            "label": "Is false",
                                                                            "value": "boolean:isfalse"
                                                                        }
                                                                    ]
                                                                },
                                                                {
                                                                    "label": "Array operators",
                                                                    "options": [
                                                                        {
                                                                            "label": "Contains",
                                                                            "value": "array:contain"
                                                                        },
                                                                        {
                                                                            "label": "Contains (case insensitive)",
                                                                            "value": "array:contain:ci"
                                                                        },
                                                                        {
                                                                            "label": "Does not contain",
                                                                            "value": "array:notcontain"
                                                                        },
                                                                        {
                                                                            "label": "Does not contain (case insensitive)",
                                                                            "value": "array:notcontain:ci"
                                                                        },
                                                                        {
                                                                            "label": "Array length equal to",
                                                                            "value": "array:equal"
                                                                        },
                                                                        {
                                                                            "label": "Array length not equal to",
                                                                            "value": "array:notequal"
                                                                        },
                                                                        {
                                                                            "label": "Array length greater than",
                                                                            "value": "array:greater"
                                                                        },
                                                                        {
                                                                            "label": "Array length less than",
                                                                            "value": "array:less"
                                                                        },
                                                                        {
                                                                            "label": "Array length greater than or equal to",
                                                                            "value": "array:greaterorequal"
                                                                        },
                                                                        {
                                                                            "label": "Array length less than or equal to",
                                                                            "value": "array:lessorequal"
                                                                        }
                                                                    ]
                                                                }
                                                            ]
                                                        },
                                                        "required": true
                                                    },
                                                    {
                                                        "name": "sort",
                                                        "spec": [
                                                            {
                                                                "name": "key",
                                                                "type": "select",
                                                                "label": "Key",
                                                                "dynamic": true,
                                                                "options": [],
                                                                "required": true
                                                            },
                                                            {
                                                                "name": "order",
                                                                "type": "select",
                                                                "label": "Order",
                                                                "options": [
                                                                    {
                                                                        "label": "Ascending",
                                                                        "value": 1
                                                                    },
                                                                    {
                                                                        "label": "Descending",
                                                                        "value": -1
                                                                    }
                                                                ],
                                                                "required": true
                                                            }
                                                        ],
                                                        "type": "array",
                                                        "label": "Sort"
                                                    },
                                                    {
                                                        "name": "mappAbleLimit",
                                                        "type": "uinteger",
                                                        "label": "Mappable Limit"
                                                    }
                                                ],
                                                "interface": [
                                                    {
                                                        "name": "key",
                                                        "type": "text",
                                                        "label": "Key"
                                                    },
                                                    {
                                                        "name": "data",
                                                        "spec": [
                                                            {
                                                                "help": "",
                                                                "name": "type",
                                                                "type": "text",
                                                                "label": "Type",
                                                                "default": null,
                                                                "required": false,
                                                                "multiline": false
                                                            },
                                                            {
                                                                "help": "",
                                                                "name": "subject",
                                                                "type": "text",
                                                                "label": "Subject",
                                                                "default": null,
                                                                "required": false,
                                                                "multiline": false
                                                            },
                                                            {
                                                                "help": "",
                                                                "name": "category",
                                                                "type": "text",
                                                                "label": "Category",
                                                                "default": null,
                                                                "required": false,
                                                                "multiline": false
                                                            },
                                                            {
                                                                "help": "",
                                                                "name": "content",
                                                                "type": "text",
                                                                "label": "Content",
                                                                "default": null,
                                                                "required": false,
                                                                "multiline": false
                                                            },
                                                            {
                                                                "help": "",
                                                                "name": "recorded_on",
                                                                "type": "text",
                                                                "label": "Recorded on",
                                                                "default": null,
                                                                "required": false,
                                                                "multiline": false
                                                            },
                                                            {
                                                                "help": "",
                                                                "name": "title",
                                                                "type": "text",
                                                                "label": "Title",
                                                                "default": null,
                                                                "required": false,
                                                                "multiline": false
                                                            },
                                                            {
                                                                "help": "",
                                                                "name": "status",
                                                                "type": "text",
                                                                "label": "Status",
                                                                "default": null,
                                                                "required": false,
                                                                "multiline": false
                                                            },
                                                            {
                                                                "help": "",
                                                                "name": "due",
                                                                "type": "text",
                                                                "label": "Due",
                                                                "default": null,
                                                                "required": false,
                                                                "multiline": false
                                                            },
                                                            {
                                                                "help": "",
                                                                "name": "source_id",
                                                                "type": "text",
                                                                "label": "Source ID",
                                                                "default": null,
                                                                "required": false,
                                                                "multiline": false
                                                            },
                                                            {
                                                                "help": "",
                                                                "name": "context",
                                                                "type": "text",
                                                                "label": "Context",
                                                                "default": null,
                                                                "required": false,
                                                                "multiline": false
                                                            },
                                                            {
                                                                "help": "",
                                                                "name": "last_updated",
                                                                "type": "text",
                                                                "label": "Last updated",
                                                                "default": null,
                                                                "required": false,
                                                                "multiline": false
                                                            }
                                                        ],
                                                        "type": "collection",
                                                        "label": "Record"
                                                    }
                                                ],
                                                "advanced": true
                                            }
                                        }
                                    ]
                                },
                                {
                                    "name": "Get a single record",
                                    "description": "Retrieve one memory when you already know its exact key. If you only have a keyword, search instead.",
                                    "flow": [
                                        {
                                            "id": 7,
                                            "module": "datastore:GetRecord",
                                            "version": 1,
                                            "parameters": {
                                                "datastore": 176449
                                            },
                                            "mapper": {
                                                "key": "{{4.key}}",
                                                "returnWrapped": false
                                            },
                                            "metadata": {
                                                "designer": {
                                                    "x": -638,
                                                    "y": 350
                                                },
                                                "restore": {
                                                    "expect": {
                                                        "key": {
                                                            "extra": {
                                                                "aiInstruction": "Exact record key. If you only have a keyword, use Search records instead."
                                                            }
                                                        }
                                                    },
                                                    "parameters": {
                                                        "datastore": {
                                                            "label": "Nested Agent Skeleton"
                                                        }
                                                    }
                                                },
                                                "parameters": [
                                                    {
                                                        "name": "datastore",
                                                        "type": "datastore",
                                                        "label": "Data store",
                                                        "required": true
                                                    }
                                                ],
                                                "expect": [
                                                    {
                                                        "name": "key",
                                                        "type": "text",
                                                        "label": "Key",
                                                        "required": true
                                                    },
                                                    {
                                                        "name": "returnWrapped",
                                                        "type": "boolean",
                                                        "label": "Return Wrapped Output",
                                                        "required": true
                                                    }
                                                ],
                                                "interface": [
                                                    {
                                                        "help": "",
                                                        "name": "type",
                                                        "type": "text",
                                                        "label": "Type",
                                                        "default": null,
                                                        "required": false,
                                                        "multiline": false
                                                    },
                                                    {
                                                        "help": "",
                                                        "name": "subject",
                                                        "type": "text",
                                                        "label": "Subject",
                                                        "default": null,
                                                        "required": false,
                                                        "multiline": false
                                                    },
                                                    {
                                                        "help": "",
                                                        "name": "category",
                                                        "type": "text",
                                                        "label": "Category",
                                                        "default": null,
                                                        "required": false,
                                                        "multiline": false
                                                    },
                                                    {
                                                        "help": "",
                                                        "name": "content",
                                                        "type": "text",
                                                        "label": "Content",
                                                        "default": null,
                                                        "required": false,
                                                        "multiline": false
                                                    },
                                                    {
                                                        "help": "",
                                                        "name": "recorded_on",
                                                        "type": "text",
                                                        "label": "Recorded on",
                                                        "default": null,
                                                        "required": false,
                                                        "multiline": false
                                                    },
                                                    {
                                                        "help": "",
                                                        "name": "title",
                                                        "type": "text",
                                                        "label": "Title",
                                                        "default": null,
                                                        "required": false,
                                                        "multiline": false
                                                    },
                                                    {
                                                        "help": "",
                                                        "name": "status",
                                                        "type": "text",
                                                        "label": "Status",
                                                        "default": null,
                                                        "required": false,
                                                        "multiline": false
                                                    },
                                                    {
                                                        "help": "",
                                                        "name": "due",
                                                        "type": "text",
                                                        "label": "Due",
                                                        "default": null,
                                                        "required": false,
                                                        "multiline": false
                                                    },
                                                    {
                                                        "help": "",
                                                        "name": "source_id",
                                                        "type": "text",
                                                        "label": "Source ID",
                                                        "default": null,
                                                        "required": false,
                                                        "multiline": false
                                                    },
                                                    {
                                                        "help": "",
                                                        "name": "context",
                                                        "type": "text",
                                                        "label": "Context",
                                                        "default": null,
                                                        "required": false,
                                                        "multiline": false
                                                    },
                                                    {
                                                        "help": "",
                                                        "name": "last_updated",
                                                        "type": "text",
                                                        "label": "Last updated",
                                                        "default": null,
                                                        "required": false,
                                                        "multiline": false
                                                    }
                                                ],
                                                "advanced": true
                                            }
                                        }
                                    ],
                                    "options": {
                                        "excludedOutputFields": [
                                            "title",
                                            "status",
                                            "due",
                                            "source_id",
                                            "context"
                                        ]
                                    }
                                },
                                {
                                    "name": "Delete a single record",
                                    "description": "Permanently remove one memory by its key. Only use this when explicitly asked to forget something.",
                                    "flow": [
                                        {
                                            "id": 15,
                                            "module": "datastore:DeleteRecord",
                                            "version": 1,
                                            "parameters": {
                                                "datastore": 176449
                                            },
                                            "mapper": {
                                                "key": "{{4.key}}"
                                            },
                                            "metadata": {
                                                "designer": {
                                                    "x": -640,
                                                    "y": 463
                                                },
                                                "restore": {
                                                    "expect": {
                                                        "key": {
                                                            "extra": {
                                                                "aiInstruction": "Exact record key. Only when the user explicitly asked to forget this memory."
                                                            }
                                                        }
                                                    },
                                                    "parameters": {
                                                        "datastore": {
                                                            "label": "Nested Agent Skeleton"
                                                        }
                                                    }
                                                },
                                                "parameters": [
                                                    {
                                                        "name": "datastore",
                                                        "type": "datastore",
                                                        "label": "Data store",
                                                        "required": true
                                                    }
                                                ],
                                                "expect": [
                                                    {
                                                        "name": "key",
                                                        "type": "text",
                                                        "label": "Key",
                                                        "required": true
                                                    }
                                                ]
                                            }
                                        }
                                    ]
                                },
                                {
                                    "name": "Update a record",
                                    "description": "Change an existing memory, for example when a fact has changed.\nUse only when you already know the key. Fails if the key does not exist.",
                                    "flow": [
                                        {
                                            "id": 20,
                                            "module": "datastore:UpdateRecord",
                                            "version": 1,
                                            "parameters": {
                                                "datastore": 176449
                                            },
                                            "mapper": {
                                                "key": "{{4.key}}",
                                                "data": {
                                                    "due": "",
                                                    "type": "",
                                                    "title": "",
                                                    "status": "",
                                                    "content": "{{4.data.content}}",
                                                    "context": "",
                                                    "subject": "{{4.data.subject}}",
                                                    "category": "{{4.data.category}}",
                                                    "source_id": "",
                                                    "recorded_on": "",
                                                    "last_updated": "{{formatDate(now; \"YYYY-MM-DD HH:mm:ss\")}}"
                                                },
                                                "upsert": false,
                                                "overwriteArrays": true
                                            },
                                            "metadata": {
                                                "designer": {
                                                    "x": -638,
                                                    "y": 3
                                                },
                                                "restore": {
                                                    "expect": {
                                                        "key": {
                                                            "extra": {
                                                                "aiHelp": "The key to retrieve the record by.",
                                                                "aiInstruction": "Exact record key of the memory to change. Search first if you only have a keyword."
                                                            }
                                                        },
                                                        "data": {
                                                            "nested": {
                                                                "content": {
                                                                    "extra": {
                                                                        "aiInstruction": "The memory itself, 1-3 sentences. Include names, numbers and dates. Never refer back to this conversation."
                                                                    }
                                                                },
                                                                "subject": {
                                                                    "extra": {
                                                                        "aiInstruction": "\"Name, Company\". Example: Laura Bennett, Kestrel Systems"
                                                                    }
                                                                },
                                                                "category": {
                                                                    "extra": {
                                                                        "aiInstruction": "One lowercase word: agreement, preference, decision or note."
                                                                    }
                                                                }
                                                            }
                                                        },
                                                        "upsert": {
                                                            "mode": "chose"
                                                        },
                                                        "overwriteArrays": {
                                                            "mode": "chose"
                                                        }
                                                    },
                                                    "parameters": {
                                                        "datastore": {
                                                            "label": "Nested Agent Skeleton"
                                                        }
                                                    }
                                                },
                                                "parameters": [
                                                    {
                                                        "name": "datastore",
                                                        "type": "datastore",
                                                        "label": "Data store",
                                                        "required": true
                                                    }
                                                ],
                                                "expect": [
                                                    {
                                                        "name": "key",
                                                        "type": "text",
                                                        "label": "Key",
                                                        "required": true
                                                    },
                                                    {
                                                        "name": "upsert",
                                                        "type": "boolean",
                                                        "label": "Insert missing record",
                                                        "required": true
                                                    },
                                                    {
                                                        "name": "overwriteArrays",
                                                        "type": "boolean",
                                                        "label": "Overwrite an existing array in the record",
                                                        "required": true
                                                    },
                                                    {
                                                        "name": "data",
                                                        "spec": [
                                                            {
                                                                "name": "type",
                                                                "type": "text",
                                                                "label": "Type"
                                                            },
                                                            {
                                                                "name": "subject",
                                                                "type": "text",
                                                                "label": "Subject"
                                                            },
                                                            {
                                                                "name": "category",
                                                                "type": "text",
                                                                "label": "Category"
                                                            },
                                                            {
                                                                "name": "content",
                                                                "type": "text",
                                                                "label": "Content"
                                                            },
                                                            {
                                                                "name": "recorded_on",
                                                                "type": "text",
                                                                "label": "Recorded on"
                                                            },
                                                            {
                                                                "name": "title",
                                                                "type": "text",
                                                                "label": "Title"
                                                            },
                                                            {
                                                                "name": "status",
                                                                "type": "text",
                                                                "label": "Status"
                                                            },
                                                            {
                                                                "name": "due",
                                                                "type": "text",
                                                                "label": "Due"
                                                            },
                                                            {
                                                                "name": "source_id",
                                                                "type": "text",
                                                                "label": "Source ID"
                                                            },
                                                            {
                                                                "name": "context",
                                                                "type": "text",
                                                                "label": "Context"
                                                            },
                                                            {
                                                                "name": "last_updated",
                                                                "type": "text",
                                                                "label": "Last updated"
                                                            }
                                                        ],
                                                        "type": "collection",
                                                        "label": "Record"
                                                    }
                                                ]
                                            }
                                        }
                                    ]
                                }
                            ]
                        }
                    ],
                    "options": {
                        "excludedOutputFields": [
                            "jsonResponse",
                            "reasoning",
                            "threadId",
                            "files",
                            "metadata"
                        ]
                    }
                }
            ]
        }
    ],
    "metadata": {
        "instant": false,
        "version": 1,
        "scenario": {
            "roundtrips": 1,
            "maxErrors": 3,
            "autoCommit": true,
            "autoCommitTriggerLast": true,
            "sequential": false,
            "slots": null,
            "confidential": false,
            "dataloss": false,
            "dlq": false,
            "freshVariables": false
        },
        "designer": {
            "orphans": []
        },
        "zone": "eu2.make.com",
        "notes": []
    },
    "io": {
        "input_spec": [
            {
                "help": "",
                "name": "input",
                "type": "text",
                "label": "",
                "default": "",
                "required": false,
                "multiline": false
            }
        ],
        "output_spec": []
    }
}