// AUTO-GENERATED - DO NOT EDIT
// This file is generated by the plugin discovery esbuild plugin
// Generated based on filesystem scan
export const WORKFLOW_LOADERS = {
debugging: async () => {
const { workflow } = await import('../mcp/tools/debugging/index.ts');
const tool_0 = await import('../mcp/tools/debugging/debug_attach_sim.ts').then(
(m) => m.default,
);
const tool_1 = await import('../mcp/tools/debugging/debug_breakpoint_add.ts').then(
(m) => m.default,
);
const tool_2 = await import('../mcp/tools/debugging/debug_breakpoint_remove.ts').then(
(m) => m.default,
);
const tool_3 = await import('../mcp/tools/debugging/debug_continue.ts').then((m) => m.default);
const tool_4 = await import('../mcp/tools/debugging/debug_detach.ts').then((m) => m.default);
const tool_5 = await import('../mcp/tools/debugging/debug_lldb_command.ts').then(
(m) => m.default,
);
const tool_6 = await import('../mcp/tools/debugging/debug_stack.ts').then((m) => m.default);
const tool_7 = await import('../mcp/tools/debugging/debug_variables.ts').then((m) => m.default);
return {
workflow,
debug_attach_sim: tool_0,
debug_breakpoint_add: tool_1,
debug_breakpoint_remove: tool_2,
debug_continue: tool_3,
debug_detach: tool_4,
debug_lldb_command: tool_5,
debug_stack: tool_6,
debug_variables: tool_7,
};
},
device: async () => {
const { workflow } = await import('../mcp/tools/device/index.ts');
const tool_0 = await import('../mcp/tools/device/build_device.ts').then((m) => m.default);
const tool_1 = await import('../mcp/tools/device/clean.ts').then((m) => m.default);
const tool_2 = await import('../mcp/tools/device/discover_projs.ts').then((m) => m.default);
const tool_3 = await import('../mcp/tools/device/get_app_bundle_id.ts').then((m) => m.default);
const tool_4 = await import('../mcp/tools/device/get_device_app_path.ts').then(
(m) => m.default,
);
const tool_5 = await import('../mcp/tools/device/install_app_device.ts').then((m) => m.default);
const tool_6 = await import('../mcp/tools/device/launch_app_device.ts').then((m) => m.default);
const tool_7 = await import('../mcp/tools/device/list_devices.ts').then((m) => m.default);
const tool_8 = await import('../mcp/tools/device/list_schemes.ts').then((m) => m.default);
const tool_9 = await import('../mcp/tools/device/show_build_settings.ts').then(
(m) => m.default,
);
const tool_10 = await import('../mcp/tools/device/start_device_log_cap.ts').then(
(m) => m.default,
);
const tool_11 = await import('../mcp/tools/device/stop_app_device.ts').then((m) => m.default);
const tool_12 = await import('../mcp/tools/device/stop_device_log_cap.ts').then(
(m) => m.default,
);
const tool_13 = await import('../mcp/tools/device/test_device.ts').then((m) => m.default);
return {
workflow,
build_device: tool_0,
clean: tool_1,
discover_projs: tool_2,
get_app_bundle_id: tool_3,
get_device_app_path: tool_4,
install_app_device: tool_5,
launch_app_device: tool_6,
list_devices: tool_7,
list_schemes: tool_8,
show_build_settings: tool_9,
start_device_log_cap: tool_10,
stop_app_device: tool_11,
stop_device_log_cap: tool_12,
test_device: tool_13,
};
},
doctor: async () => {
const { workflow } = await import('../mcp/tools/doctor/index.ts');
const tool_0 = await import('../mcp/tools/doctor/doctor.ts').then((m) => m.default);
return {
workflow,
doctor: tool_0,
};
},
logging: async () => {
const { workflow } = await import('../mcp/tools/logging/index.ts');
const tool_0 = await import('../mcp/tools/logging/start_device_log_cap.ts').then(
(m) => m.default,
);
const tool_1 = await import('../mcp/tools/logging/start_sim_log_cap.ts').then((m) => m.default);
const tool_2 = await import('../mcp/tools/logging/stop_device_log_cap.ts').then(
(m) => m.default,
);
const tool_3 = await import('../mcp/tools/logging/stop_sim_log_cap.ts').then((m) => m.default);
return {
workflow,
start_device_log_cap: tool_0,
start_sim_log_cap: tool_1,
stop_device_log_cap: tool_2,
stop_sim_log_cap: tool_3,
};
},
macos: async () => {
const { workflow } = await import('../mcp/tools/macos/index.ts');
const tool_0 = await import('../mcp/tools/macos/build_macos.ts').then((m) => m.default);
const tool_1 = await import('../mcp/tools/macos/build_run_macos.ts').then((m) => m.default);
const tool_2 = await import('../mcp/tools/macos/clean.ts').then((m) => m.default);
const tool_3 = await import('../mcp/tools/macos/discover_projs.ts').then((m) => m.default);
const tool_4 = await import('../mcp/tools/macos/get_mac_app_path.ts').then((m) => m.default);
const tool_5 = await import('../mcp/tools/macos/get_mac_bundle_id.ts').then((m) => m.default);
const tool_6 = await import('../mcp/tools/macos/launch_mac_app.ts').then((m) => m.default);
const tool_7 = await import('../mcp/tools/macos/list_schemes.ts').then((m) => m.default);
const tool_8 = await import('../mcp/tools/macos/show_build_settings.ts').then((m) => m.default);
const tool_9 = await import('../mcp/tools/macos/stop_mac_app.ts').then((m) => m.default);
const tool_10 = await import('../mcp/tools/macos/test_macos.ts').then((m) => m.default);
return {
workflow,
build_macos: tool_0,
build_run_macos: tool_1,
clean: tool_2,
discover_projs: tool_3,
get_mac_app_path: tool_4,
get_mac_bundle_id: tool_5,
launch_mac_app: tool_6,
list_schemes: tool_7,
show_build_settings: tool_8,
stop_mac_app: tool_9,
test_macos: tool_10,
};
},
'project-discovery': async () => {
const { workflow } = await import('../mcp/tools/project-discovery/index.ts');
const tool_0 = await import('../mcp/tools/project-discovery/discover_projs.ts').then(
(m) => m.default,
);
const tool_1 = await import('../mcp/tools/project-discovery/get_app_bundle_id.ts').then(
(m) => m.default,
);
const tool_2 = await import('../mcp/tools/project-discovery/get_mac_bundle_id.ts').then(
(m) => m.default,
);
const tool_3 = await import('../mcp/tools/project-discovery/list_schemes.ts').then(
(m) => m.default,
);
const tool_4 = await import('../mcp/tools/project-discovery/show_build_settings.ts').then(
(m) => m.default,
);
return {
workflow,
discover_projs: tool_0,
get_app_bundle_id: tool_1,
get_mac_bundle_id: tool_2,
list_schemes: tool_3,
show_build_settings: tool_4,
};
},
'project-scaffolding': async () => {
const { workflow } = await import('../mcp/tools/project-scaffolding/index.ts');
const tool_0 = await import('../mcp/tools/project-scaffolding/scaffold_ios_project.ts').then(
(m) => m.default,
);
const tool_1 = await import('../mcp/tools/project-scaffolding/scaffold_macos_project.ts').then(
(m) => m.default,
);
return {
workflow,
scaffold_ios_project: tool_0,
scaffold_macos_project: tool_1,
};
},
'session-management': async () => {
const { workflow } = await import('../mcp/tools/session-management/index.ts');
const tool_0 = await import('../mcp/tools/session-management/session_clear_defaults.ts').then(
(m) => m.default,
);
const tool_1 = await import('../mcp/tools/session-management/session_set_defaults.ts').then(
(m) => m.default,
);
const tool_2 = await import('../mcp/tools/session-management/session_show_defaults.ts').then(
(m) => m.default,
);
return {
workflow,
session_clear_defaults: tool_0,
session_set_defaults: tool_1,
session_show_defaults: tool_2,
};
},
simulator: async () => {
const { workflow } = await import('../mcp/tools/simulator/index.ts');
const tool_0 = await import('../mcp/tools/simulator/boot_sim.ts').then((m) => m.default);
const tool_1 = await import('../mcp/tools/simulator/build_run_sim.ts').then((m) => m.default);
const tool_2 = await import('../mcp/tools/simulator/build_sim.ts').then((m) => m.default);
const tool_3 = await import('../mcp/tools/simulator/clean.ts').then((m) => m.default);
const tool_4 = await import('../mcp/tools/simulator/describe_ui.ts').then((m) => m.default);
const tool_5 = await import('../mcp/tools/simulator/discover_projs.ts').then((m) => m.default);
const tool_6 = await import('../mcp/tools/simulator/get_app_bundle_id.ts').then(
(m) => m.default,
);
const tool_7 = await import('../mcp/tools/simulator/get_sim_app_path.ts').then(
(m) => m.default,
);
const tool_8 = await import('../mcp/tools/simulator/install_app_sim.ts').then((m) => m.default);
const tool_9 = await import('../mcp/tools/simulator/launch_app_logs_sim.ts').then(
(m) => m.default,
);
const tool_10 = await import('../mcp/tools/simulator/launch_app_sim.ts').then((m) => m.default);
const tool_11 = await import('../mcp/tools/simulator/list_schemes.ts').then((m) => m.default);
const tool_12 = await import('../mcp/tools/simulator/list_sims.ts').then((m) => m.default);
const tool_13 = await import('../mcp/tools/simulator/open_sim.ts').then((m) => m.default);
const tool_14 = await import('../mcp/tools/simulator/record_sim_video.ts').then(
(m) => m.default,
);
const tool_15 = await import('../mcp/tools/simulator/screenshot.ts').then((m) => m.default);
const tool_16 = await import('../mcp/tools/simulator/show_build_settings.ts').then(
(m) => m.default,
);
const tool_17 = await import('../mcp/tools/simulator/stop_app_sim.ts').then((m) => m.default);
const tool_18 = await import('../mcp/tools/simulator/test_sim.ts').then((m) => m.default);
return {
workflow,
boot_sim: tool_0,
build_run_sim: tool_1,
build_sim: tool_2,
clean: tool_3,
describe_ui: tool_4,
discover_projs: tool_5,
get_app_bundle_id: tool_6,
get_sim_app_path: tool_7,
install_app_sim: tool_8,
launch_app_logs_sim: tool_9,
launch_app_sim: tool_10,
list_schemes: tool_11,
list_sims: tool_12,
open_sim: tool_13,
record_sim_video: tool_14,
screenshot: tool_15,
show_build_settings: tool_16,
stop_app_sim: tool_17,
test_sim: tool_18,
};
},
'simulator-management': async () => {
const { workflow } = await import('../mcp/tools/simulator-management/index.ts');
const tool_0 = await import('../mcp/tools/simulator-management/boot_sim.ts').then(
(m) => m.default,
);
const tool_1 = await import('../mcp/tools/simulator-management/erase_sims.ts').then(
(m) => m.default,
);
const tool_2 = await import('../mcp/tools/simulator-management/list_sims.ts').then(
(m) => m.default,
);
const tool_3 = await import('../mcp/tools/simulator-management/open_sim.ts').then(
(m) => m.default,
);
const tool_4 = await import('../mcp/tools/simulator-management/reset_sim_location.ts').then(
(m) => m.default,
);
const tool_5 = await import('../mcp/tools/simulator-management/set_sim_appearance.ts').then(
(m) => m.default,
);
const tool_6 = await import('../mcp/tools/simulator-management/set_sim_location.ts').then(
(m) => m.default,
);
const tool_7 = await import('../mcp/tools/simulator-management/sim_statusbar.ts').then(
(m) => m.default,
);
return {
workflow,
boot_sim: tool_0,
erase_sims: tool_1,
list_sims: tool_2,
open_sim: tool_3,
reset_sim_location: tool_4,
set_sim_appearance: tool_5,
set_sim_location: tool_6,
sim_statusbar: tool_7,
};
},
'swift-package': async () => {
const { workflow } = await import('../mcp/tools/swift-package/index.ts');
const tool_0 = await import('../mcp/tools/swift-package/swift_package_build.ts').then(
(m) => m.default,
);
const tool_1 = await import('../mcp/tools/swift-package/swift_package_clean.ts').then(
(m) => m.default,
);
const tool_2 = await import('../mcp/tools/swift-package/swift_package_list.ts').then(
(m) => m.default,
);
const tool_3 = await import('../mcp/tools/swift-package/swift_package_run.ts').then(
(m) => m.default,
);
const tool_4 = await import('../mcp/tools/swift-package/swift_package_stop.ts').then(
(m) => m.default,
);
const tool_5 = await import('../mcp/tools/swift-package/swift_package_test.ts').then(
(m) => m.default,
);
return {
workflow,
swift_package_build: tool_0,
swift_package_clean: tool_1,
swift_package_list: tool_2,
swift_package_run: tool_3,
swift_package_stop: tool_4,
swift_package_test: tool_5,
};
},
'ui-testing': async () => {
const { workflow } = await import('../mcp/tools/ui-testing/index.ts');
const tool_0 = await import('../mcp/tools/ui-testing/button.ts').then((m) => m.default);
const tool_1 = await import('../mcp/tools/ui-testing/describe_ui.ts').then((m) => m.default);
const tool_2 = await import('../mcp/tools/ui-testing/gesture.ts').then((m) => m.default);
const tool_3 = await import('../mcp/tools/ui-testing/key_press.ts').then((m) => m.default);
const tool_4 = await import('../mcp/tools/ui-testing/key_sequence.ts').then((m) => m.default);
const tool_5 = await import('../mcp/tools/ui-testing/long_press.ts').then((m) => m.default);
const tool_6 = await import('../mcp/tools/ui-testing/screenshot.ts').then((m) => m.default);
const tool_7 = await import('../mcp/tools/ui-testing/swipe.ts').then((m) => m.default);
const tool_8 = await import('../mcp/tools/ui-testing/tap.ts').then((m) => m.default);
const tool_9 = await import('../mcp/tools/ui-testing/touch.ts').then((m) => m.default);
const tool_10 = await import('../mcp/tools/ui-testing/type_text.ts').then((m) => m.default);
return {
workflow,
button: tool_0,
describe_ui: tool_1,
gesture: tool_2,
key_press: tool_3,
key_sequence: tool_4,
long_press: tool_5,
screenshot: tool_6,
swipe: tool_7,
tap: tool_8,
touch: tool_9,
type_text: tool_10,
};
},
utilities: async () => {
const { workflow } = await import('../mcp/tools/utilities/index.ts');
const tool_0 = await import('../mcp/tools/utilities/clean.ts').then((m) => m.default);
return {
workflow,
clean: tool_0,
};
},
};
export type WorkflowName = keyof typeof WORKFLOW_LOADERS;
// Optional: Export workflow metadata for quick access
export const WORKFLOW_METADATA = {
debugging: {
name: 'Simulator Debugging',
description:
'Interactive iOS Simulator debugging tools: attach LLDB, manage breakpoints, inspect stack/variables, and run LLDB commands.',
},
device: {
name: 'iOS Device Development',
description:
'Complete iOS development workflow for both .xcodeproj and .xcworkspace files targeting physical devices (iPhone, iPad, Apple Watch, Apple TV, Apple Vision Pro). Build, test, deploy, and debug apps on real hardware.',
},
doctor: {
name: 'System Doctor',
description:
'Debug tools and system doctor for troubleshooting XcodeBuildMCP server, development environment, and tool availability.',
},
logging: {
name: 'Log Capture & Management',
description:
'Log capture and management tools for iOS simulators and physical devices. Start, stop, and analyze application and system logs during development and testing.',
},
macos: {
name: 'macOS Development',
description:
'Complete macOS development workflow for both .xcodeproj and .xcworkspace files. Build, test, deploy, and manage macOS applications.',
},
'project-discovery': {
name: 'Project Discovery',
description:
'Discover and examine Xcode projects, workspaces, and Swift packages. Analyze project structure, schemes, build settings, and bundle information.',
},
'project-scaffolding': {
name: 'Project Scaffolding',
description:
'Tools for creating new iOS and macOS projects from templates. Bootstrap new applications with best practices, standard configurations, and modern project structures.',
},
'session-management': {
name: 'session-management',
description:
'Manage session defaults for projectPath/workspacePath, scheme, configuration, simulatorName/simulatorId, deviceId, useLatestOS and arch. These defaults are required by many tools and must be set before attempting to call tools that would depend on these values.',
},
simulator: {
name: 'iOS Simulator Development',
description:
'Complete iOS development workflow for both .xcodeproj and .xcworkspace files targeting simulators. Build, test, deploy, and interact with iOS apps on simulators.',
},
'simulator-management': {
name: 'Simulator Management',
description:
'Tools for managing simulators from booting, opening simulators, listing simulators, stopping simulators, erasing simulator content and settings, and setting simulator environment options like location, network, statusbar and appearance.',
},
'swift-package': {
name: 'Swift Package Manager',
description:
'Swift Package Manager operations for building, testing, running, and managing Swift packages and dependencies. Complete SPM workflow support.',
},
'ui-testing': {
name: 'UI Testing & Automation',
description:
'UI automation and accessibility testing tools for iOS simulators. Perform gestures, interactions, screenshots, and UI analysis for automated testing workflows.',
},
utilities: {
name: 'Project Utilities',
description:
'Essential project maintenance utilities for cleaning and managing existing projects. Provides clean operations for both .xcodeproj and .xcworkspace files.',
},
};