{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "SAM",
            "type": "debugpy",
            "request": "launch",
            "module": "solace_ai_connector.main",
            "python": "${workspaceFolder}/.venv/bin/python",
            "console": "integratedTerminal",
            "args": "--envfile .env examples/agents/orchestrator_example.yaml examples/agents/a2a_agents_example.yaml examples/gateways/webui_gateway_example.yaml examples/services/platform_service_example.yaml",
            "justMyCode": false,
            "env": {
                "LOGGING_CONFIG_PATH": "${workspaceFolder}/preset/logging_config.yaml"
            }
        },
        {
            "name": "SAM (Agents Only)",
            "type": "debugpy",
            "request": "launch",
            "module": "solace_ai_connector.main",
            "console": "integratedTerminal",
            "args": "--envfile .env examples/agents/orchestrator_example.yaml examples/agents/a2a_agents_example.yaml examples/agents/a2a_multimodal_example.yaml",
            "justMyCode": false,
            "env": {
                "LOGGING_CONFIG_PATH": "${workspaceFolder}/preset/logging_config.yaml"
            }
        },
        {
            "name": "SAM (test)",
            "type": "debugpy",
            "request": "launch",
            "module": "solace_ai_connector.main",
            "console": "integratedTerminal",
            "args": "--envfile .env examples/agents/orchestrator_example.yaml examples/agents/a2a_agents_example.yaml examples/gateways/webui_gateway_example.yaml examples/agents/test_agent_example.yaml examples/agents/a2a_multimodal_example.yaml",
            "justMyCode": false,
            "env": {
                "LOGGING_CONFIG_PATH": "${workspaceFolder}/preset/logging_config.yaml"
            }
        },
        {
            "name": "SAM (preset)",
            "type": "debugpy",
            "request": "launch",
            "module": "solace_ai_connector.main",
            "console": "integratedTerminal",
            "args": "--envfile .env preset/agents/basic/main_orchestrator.yaml preset/agents/basic/webui.yaml preset/agents/markitdown_agents.yaml preset/agents/mermaid_agents.yaml preset/agents/web_agents.yaml",
            "justMyCode": false,
            "env": {
                "LOGGING_CONFIG_PATH": "${workspaceFolder}/preset/logging_config.yaml"
            }
        },
        {
            "name": "SAM (a2a-proxy)",
            "type": "debugpy",
            "request": "launch",
            "module": "solace_ai_connector.main",
            "console": "integratedTerminal",
            "args": "--envfile .env examples/agents/orchestrator_example.yaml examples/gateways/webui_gateway_example.yaml examples/agents/test_agent_example.yaml examples/a2a_proxy_example.yaml",
            "justMyCode": false,
            "env": {
                "LOGGING_CONFIG_PATH": "${workspaceFolder}/preset/logging_config.yaml"
            }
        },
        {
            "name": "SAM (test with Slack)",
            "type": "debugpy",
            "request": "launch",
            "module": "solace_ai_connector.main",
            "console": "integratedTerminal",
            "args": "--envfile .env examples/gateways/slack_gateway_example.yaml examples/agents/orchestrator_example.yaml examples/agents/a2a_agents_example.yaml examples/gateways/webui_gateway_example.yaml examples/agents/test_agent_example.yaml examples/agents/a2a_multimodal_example.yaml",
            "justMyCode": false,
        },
        {
            "name": "SAM (simple)",
            "type": "debugpy",
            "request": "launch",
            "module": "solace_ai_connector.main",
            "console": "integratedTerminal",
            "args": "--envfile .env examples/agents/orchestrator_example.yaml examples/gateways/webui_gateway_example.yaml examples/agents/test_agent_example.yaml examples/services/platform_service_example.yaml",
            "justMyCode": false,
            "env": {
                "LOGGING_CONFIG_PATH": "${workspaceFolder}/preset/logging_config.yaml"
            }
        },
        {
            "name": "SAM (with REST)",
            "type": "debugpy",
            "request": "launch",
            "module": "solace_ai_connector.main",
            "console": "integratedTerminal",
            "args": "--envfile .env examples/agents/orchestrator_example.yaml examples/agents/a2a_agents_example.yaml examples/gateways/webui_gateway_example.yaml examples/gateways/rest_gateway_example.yaml examples/agents/test_agent_example.yaml examples/agents/a2a_multimodal_example.yaml",
            "justMyCode": false,
            "env": {
                "LOGGING_CONFIG_PATH": "${workspaceFolder}/preset/logging_config.yaml"
            }
        },
        {
            "name": "Multimodal Agent (With UI)",
            "type": "debugpy",
            "request": "launch",
            "module": "solace_ai_connector.main",
            "console": "integratedTerminal",
            "args": "--envfile .env examples/agents/a2a_multimodal_example.yaml examples/gateways/webui_gateway_example.yaml ",
            "justMyCode": false,
            "env": {
                "LOGGING_CONFIG_PATH": "${workspaceFolder}/preset/logging_config.yaml"
            }
        },
        {
            "name": "Orchestrator",
            "type": "debugpy",
            "request": "launch",
            "module": "solace_ai_connector.main",
            "console": "integratedTerminal",
            "args": "--envfile .env examples/agents/orchestrator_example.yaml",
            "justMyCode": false,
            "env": {
                "LOGGING_CONFIG_PATH": "${workspaceFolder}/preset/logging_config.yaml"
            }
        },
        {
            "name": "Agents",
            "type": "debugpy",
            "request": "launch",
            "module": "solace_ai_connector.main",
            "console": "integratedTerminal",
            "args": "--envfile .env examples/agents/a2a_agents_example.yaml",
            "justMyCode": false,
            "env": {
                "LOGGING_CONFIG_PATH": "${workspaceFolder}/preset/logging_config.yaml"
            }
        },
        {
            "name": "MCP examples",
            "type": "debugpy",
            "request": "launch",
            "module": "solace_ai_connector.main",
            "console": "integratedTerminal",
            "args": "--envfile .env examples/agents/a2a_mcp_example.yaml",
            "justMyCode": false,
            "env": {
                "LOGGING_CONFIG_PATH": "${workspaceFolder}/preset/logging_config.yaml"
            }
        },
        {
            "name": "Slack",
            "type": "debugpy",
            "request": "launch",
            "module": "solace_ai_connector.main",
            "console": "integratedTerminal",
            "args": "--envfile .env examples/gateways/slack_gateway_example.yaml",
            "justMyCode": false,
            "env": {
                "LOGGING_CONFIG_PATH": "${workspaceFolder}/preset/logging_config.yaml"
            }
        },
        {
            "name": "Webhook Gateway",
            "type": "debugpy",
            "request": "launch",
            "module": "solace_ai_connector.main",
            "console": "integratedTerminal",
            "args": "--envfile .env examples/gateways/webhook_gateway_example.yaml",
            "justMyCode": false,
            "env": {
                "LOGGING_CONFIG_PATH": "${workspaceFolder}/preset/logging_config.yaml"
            }
        },
        {
            "name": "WebUI",
            "type": "debugpy",
            "request": "launch",
            "module": "solace_ai_connector.main",
            "console": "integratedTerminal",
            "args": "--envfile .env examples/gateways/webui_gateway_example.yaml",
            "justMyCode": false,
            "env": {
                "LOGGING_CONFIG_PATH": "${workspaceFolder}/preset/logging_config.yaml"
            }
        },
        {
            "name": "Minimal",
            "type": "debugpy",
            "request": "launch",
            "module": "solace_ai_connector.main",
            "console": "integratedTerminal",
            "args": "--envfile .env examples/agents/orchestrator_example.yaml examples/gateways/webui_gateway_example.yaml",
            "justMyCode": false,
            "env": {
                "LOGGING_CONFIG_PATH": "${workspaceFolder}/preset/logging_config.yaml"
            }
        },
        {
            "name": "Playwrite",
            "type": "debugpy",
            "request": "launch",
            "module": "solace_ai_connector.main",
            "console": "integratedTerminal",
            "args": "--envfile .env examples/agents/a2a_mcp_example.yaml examples/gateways/webui_gateway_example.yaml",
            "justMyCode": false,
            "env": {
                "LOGGING_CONFIG_PATH": "${workspaceFolder}/preset/logging_config.yaml"
            }
        },
        {
            "name": "EM Gateway",
            "type": "debugpy",
            "request": "launch",
            "module": "solace_ai_connector.main",
            "console": "integratedTerminal",
            "args": "--envfile .env examples/gateways/event_mesh_gateway_example.yaml examples/agents/a2a_multimodal_example.yaml examples/agents/orchestrator_example.yaml examples/gateways/webui_gateway_example.yaml",
            "justMyCode": false,
            "env": {
                "LOGGING_CONFIG_PATH": "${workspaceFolder}/preset/logging_config.yaml"
            }
        },
        {
            "name": "CLI",
            "type": "debugpy",
            "request": "launch",
            "module": "src.tools.a2a_cli_client.main",
            "console": "integratedTerminal",
            "args": "--env-file .env",
            "justMyCode": false,
            "env": {
                "LOGGING_CONFIG_PATH": "${workspaceFolder}/preset/logging_config.yaml"
            }
        },
        {
            "name": "Python: Debug Tests",
            "type": "debugpy",
            "request": "launch",
            "program": "${file}",
            "purpose": [
                "debug-test"
            ],
            "console": "integratedTerminal",
            "justMyCode": false
        },
        {
            "name": "Python: Pytest (specific test)",
            "type": "debugpy",
            "request": "launch",
            "module": "pytest",
            "args": [
                "tests/integration/scenarios_declarative/test_declarative_runner.py::test_declarative_scenario[embeds/late/test_ac_template_missing_template_file]"
            ],
            "justMyCode": false,
            "console": "integratedTerminal",
            "env": {
                "PYTHONPATH": "${workspaceFolder}"
            }
        },
        {
            "name": "Debug Declarative Test",
            "type": "debugpy",
            "request": "launch",
            "module": "pytest",
            "args": [
                "tests/integration/scenarios_declarative/test_declarative_runner.py::test_declarative_scenario[${input:declarativeTestPath}]",
                "-vv"
            ],
            "console": "integratedTerminal",
            "justMyCode": false
        },
        {
            "name": "Debug Programmatic Test",
            "type": "debugpy",
            "request": "launch",
            "module": "pytest",
            "args": [
                "tests/${input:programmaticTestPath}",
                "-vv"
            ],
            "console": "integratedTerminal",
            "justMyCode": false
        },
        {
            "name": "SAM Eval",
            "type": "debugpy",
            "request": "launch",
            "module": "cli.main",
            "console": "integratedTerminal",
            "args": [
                "eval",
                "tests/evaluation/remote_example.json",
                "-v"
            ],
            "justMyCode": false,
            "env": {
                "LOGGING_CONFIG_PATH": "${workspaceFolder}/preset/logging_config.yaml"
            }
        }
    ],
    "inputs": [
        {
            "id": "declarativeTestPath",
            "description": "Enter the test case path (e.g., builtin_artifact_tools/list_artifacts/test_list_artifacts_empty)",
            "default": "builtin_artifact_tools/list_artifacts/test_list_artifacts_empty",
            "type": "promptString"
        },
        {
            "id": "programmaticTestPath",
            "description": "Enter the test path name (e.g., integration/...)",
            "default": "integration/",
            "type": "promptString"
        }
    ]
}