{
    "nodes": [
        {
            "id": "b3d137fa-6534-4fc0-a6e0-15ee919be276",
            "type": "data-source",
            "position": {
                "x": 100,
                "y": 100
            },
            "data": {
                "title": "Data Source",
                "dataSource": {
                    "value": {
                        "text": "Can you tell me the latest document that was created?",
                        "files": []
                    },
                    "type": "markdown"
                }
            },
            "measured": {
                "width": 160,
                "height": 40
            },
            "selected": false
        },
        {
            "id": "8a0dd721-4139-4ca4-bcc9-2624aad5b309",
            "type": "ai-tool",
            "position": {
                "x": 640,
                "y": 220
            },
            "data": {
                "title": "Google Drive Fetch Files Tool",
                "toolSubtype": "gdrive-fetch-files",
                "userConfig": {
                    "maxResults": 5,
                    "requireToolUse": true,
                    "googleClientId": ""
                },
                "userConfigSchema": {
                    "googleClientId": {
                        "type": "string",
                        "description": "Google OAuth2 Client ID (from Google Cloud Console)"
                    },
                    "accessToken": {
                        "type": "oauth",
                        "description": "Google Drive Authentication",
                        "provider": "drive.readonly",
                        "scope": "https://www.googleapis.com/auth/drive.readonly",
                        "required": true
                    },
                    "maxResults": {
                        "type": "integer",
                        "description": "Maximum number of files to fetch",
                        "default": 5,
                        "minimum": 1,
                        "maximum": 100
                    },
                    "requireToolUse": {
                        "type": "boolean",
                        "description": "Require tool use (forces the LLM to always call this tool)",
                        "default": true
                    }
                }
            },
            "measured": {
                "width": 120,
                "height": 40
            },
            "selected": false,
            "dragging": false
        },
        {
            "id": "ca0be528-34f5-48e2-8d89-3c50260998c3",
            "type": "ai-tool",
            "position": {
                "x": 420,
                "y": 220
            },
            "data": {
                "title": "Date/Time Now Tool",
                "toolSubtype": "date-time-now",
                "userConfig": {
                    "requireToolUse": true
                },
                "userConfigSchema": {
                    "requireToolUse": {
                        "type": "boolean",
                        "description": "Require tool use (forces the LLM to always call this tool)",
                        "default": true
                    }
                }
            },
            "measured": {
                "width": 120,
                "height": 40
            },
            "selected": false,
            "dragging": false
        },
        {
            "id": "7b0f7a40-769c-4406-a90b-2717db038e78",
            "type": "llm-process",
            "position": {
                "x": 400,
                "y": 100
            },
            "data": {
                "title": "AI Data Processing",
                "prompt": "Use the dateTimeNow tool to get the current date and time. \nThen, rewrite the user's request to include the current date and time context. \nOutput ONLY the rewritten request as plain text, nothing else.",
                "model": "",
                "maxFeedbackLoops": 0,
                "maxToolRetries": 3
            },
            "measured": {
                "width": 160,
                "height": 40
            },
            "selected": false,
            "dragging": false
        },
        {
            "id": "e94b755b-fcd8-4a87-9174-d33e44c9db7b",
            "type": "llm-process",
            "position": {
                "x": 620,
                "y": 100
            },
            "data": {
                "title": "AI Data Processing",
                "model": "",
                "prompt": "You need to use gdriveFetchFiles tool to fetch files from Google Drive and output the tool result formatted in Markdown.\nDo NOT include any explanations, preambles, or descriptions about what you did.\nThe output needs to contain the file name, modified time, and other relevant details.\nFormat the output in markdown code.",
                "message": {},
                "format": {},
                "maxFeedbackLoops": 0,
                "maxToolRetries": 5
            },
            "measured": {
                "width": 160,
                "height": 40
            },
            "selected": false
        },
        {
            "id": "3211e250-9339-4d0f-afaf-9fa3f8ce1ddc",
            "type": "data-flow-spy",
            "position": {
                "x": 860,
                "y": 100
            },
            "data": {
                "title": "Data Flow Spy"
            },
            "measured": {
                "width": 120,
                "height": 40
            },
            "selected": false,
            "dragging": false
        },
        {
            "id": "bf2f5b07-0afd-46c6-ba4f-6b0f37665dd1",
            "type": "data-flow-spy",
            "position": {
                "x": 640,
                "y": 0
            },
            "data": {
                "title": "Data Flow Spy"
            },
            "measured": {
                "width": 120,
                "height": 40
            },
            "selected": false,
            "dragging": false
        }
    ],
    "edges": [
        {
            "id": "f0e05088-09fb-44dc-b6d0-3c433d237d88",
            "source": "b3d137fa-6534-4fc0-a6e0-15ee919be276",
            "target": "7b0f7a40-769c-4406-a90b-2717db038e78",
            "targetHandle": "flow",
            "sourceHandle": "flow",
            "animated": false
        },
        {
            "type": "smoothstep",
            "animated": false,
            "source": "8a0dd721-4139-4ca4-bcc9-2624aad5b309",
            "sourceHandle": "tool",
            "target": "e94b755b-fcd8-4a87-9174-d33e44c9db7b",
            "targetHandle": "tool",
            "id": "xy-edge__8a0dd721-4139-4ca4-bcc9-2624aad5b309right-source-e94b755b-fcd8-4a87-9174-d33e44c9db7btools-target"
        },
        {
            "type": "smoothstep",
            "animated": false,
            "source": "ca0be528-34f5-48e2-8d89-3c50260998c3",
            "sourceHandle": "tool",
            "target": "7b0f7a40-769c-4406-a90b-2717db038e78",
            "targetHandle": "tool",
            "id": "xy-edge__ca0be528-34f5-48e2-8d89-3c50260998c3right-source-7b0f7a40-769c-4406-a90b-2717db038e78tools-target"
        },
        {
            "type": "smoothstep",
            "animated": false,
            "source": "7b0f7a40-769c-4406-a90b-2717db038e78",
            "sourceHandle": "flow",
            "target": "e94b755b-fcd8-4a87-9174-d33e44c9db7b",
            "targetHandle": "flow",
            "id": "xy-edge__7b0f7a40-769c-4406-a90b-2717db038e78right-source-e94b755b-fcd8-4a87-9174-d33e44c9db7bleft-target"
        },
        {
            "type": "smoothstep",
            "animated": false,
            "source": "e94b755b-fcd8-4a87-9174-d33e44c9db7b",
            "sourceHandle": "flow",
            "target": "3211e250-9339-4d0f-afaf-9fa3f8ce1ddc",
            "targetHandle": "flow",
            "id": "xy-edge__e94b755b-fcd8-4a87-9174-d33e44c9db7bright-source-3211e250-9339-4d0f-afaf-9fa3f8ce1ddc left-target"
        },
        {
            "type": "smoothstep",
            "animated": false,
            "source": "7b0f7a40-769c-4406-a90b-2717db038e78",
            "sourceHandle": "flow",
            "target": "bf2f5b07-0afd-46c6-ba4f-6b0f37665dd1",
            "targetHandle": "flow",
            "id": "xy-edge__7b0f7a40-769c-4406-a90b-2717db038e78right-source-bf2f5b07-0afd-46c6-ba4f-6b0f37665dd1left-target"
        }
    ]
}