Files
james.maesandClaude Opus 4.7 1557302e63 fix(build): force ProcessInfoPlistFile before pre-codesign
Symptom: app hard-blocks at boot with "JarvisEntitlementsVerified
missing/false" after every incremental build, even though the build
log shows pre-codesign writing YES into the bundle Info.plist.

Root cause: Xcode 26's new build system schedules the built-in
ProcessInfoPlistFile task (which copies App/Info.plist into
Contents/Info.plist) independently from postBuildScripts. On
incremental builds with no Swift compile work, ProcessInfoPlistFile
ran AFTER pre-codesign, codesign, post-codesign, AND
verify-codesign-settings — silently clobbering the bundle Info.plist
with the source one. Source App/Info.plist carries
<key>JarvisEntitlementsVerified</key><false/> by design as the
static-state default; pre-codesign is supposed to flip it to <true/>
inside the bundle. With the new ordering, the bundle ended every
build at <false/> (and the signature was also stale relative to
that plist, though codesign --verify happened to still pass).

Fix: declare $(TARGET_BUILD_DIR)/$(INFOPLIST_PATH) as an inputFile
of the pre-codesign phase, plus a per-build stamp file as its
outputFile. This forces Xcode to make ProcessInfoPlistFile a
prerequisite of pre-codesign, and chains codesign (also gaining
the stamp as inputFile) deterministically behind it. Xcode 26's
"mutable output but no other virtual output node" check rejects
naming the plist as both input and output of the same phase, so
the separate stamp file is required.

Verified: clean and incremental builds both produce a bundle
with JarvisEntitlementsVerified=true and a valid signature.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-12 11:50:56 -05:00

2118 lines
98 KiB
Plaintext

// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 77;
objects = {
/* Begin PBXBuildFile section */
01787A3F29649644D0B3090D /* MCPAppleScriptMain.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5077B9E3E7541D72CE0EB1B /* MCPAppleScriptMain.swift */; };
0288ABA48E6EC8450BE4BC5F /* BannerContent.swift in Sources */ = {isa = PBXBuildFile; fileRef = 96BF0892A5DFF2AD38A93834 /* BannerContent.swift */; };
07E7F32B3857ED215DE59FBE /* Keychain in Frameworks */ = {isa = PBXBuildFile; productRef = 1440CCDB2CC412B099BD0310 /* Keychain */; };
0B1E24FF2DB306F28A36680E /* Logging in Frameworks */ = {isa = PBXBuildFile; productRef = 8B5C832427B631F1F6EED6C2 /* Logging */; };
17072C84550FC4659C4810B9 /* MCPTimeMain.swift in Sources */ = {isa = PBXBuildFile; fileRef = FFCA2C937A1629F873729B75 /* MCPTimeMain.swift */; };
18CDCC4155A2604BC4D67147 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 467AE2D19D58325D227E2F89 /* Assets.xcassets */; };
1D281661B4A64095FF9FA8BA /* Bus in Frameworks */ = {isa = PBXBuildFile; productRef = FB642DDAD826E62BBE1B8623 /* Bus */; };
2245DEFA1E6C3880E3C78E56 /* AppDelegateContextBuilderAdapter.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4723FBC0F20AD2EFF146A24 /* AppDelegateContextBuilderAdapter.swift */; };
267515392F3978AA4A96EFA2 /* PasteboardReader.swift in Sources */ = {isa = PBXBuildFile; fileRef = D554BFB452EC88ECA9392A2E /* PasteboardReader.swift */; };
29CF0F24C5D0DD0A8F1A0AEE /* WizardState.swift in Sources */ = {isa = PBXBuildFile; fileRef = E5B2103B1A123E512CC56B63 /* WizardState.swift */; };
2BCA466CFD785F3BC989C35F /* WizardStageAPIKeyView.swift in Sources */ = {isa = PBXBuildFile; fileRef = BFEF6C3A66183A4563869131 /* WizardStageAPIKeyView.swift */; };
2C4F2BE06A3AC37B492486DD /* SettingsWindowController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7557878944CE73793FEA61CF /* SettingsWindowController.swift */; };
339AAD7A8C3E4A6AF4825F0D /* VoiceTTSAdapter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 718CFD37BC47D00448B86C8D /* VoiceTTSAdapter.swift */; };
3649FFF2495A8C4DDDB3B65B /* Voice in Frameworks */ = {isa = PBXBuildFile; productRef = 254100776001B345FD91877C /* Voice */; };
38E9EAF5506E27D6D47B1F52 /* VoiceOutputWiring.swift in Sources */ = {isa = PBXBuildFile; fileRef = E24DBC3C9C1B4A6BE1326CB2 /* VoiceOutputWiring.swift */; };
3A6BFB4974C5891335CD12D5 /* Voice in Frameworks */ = {isa = PBXBuildFile; productRef = F8C32F1B64110815E54CFE4F /* Voice */; };
3CB366DAB60188FE8DCCDCFD /* BootHealthProbes.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54B2C24637464D380D4450AF /* BootHealthProbes.swift */; };
461A5FACC5A3C2025FB0A233 /* JarvisHUDPanelTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3527AF52C1E81BAC4EF70766 /* JarvisHUDPanelTests.swift */; };
4DF8C0C925F0D09AE39F3380 /* MCP in Frameworks */ = {isa = PBXBuildFile; productRef = B97DB4370CDF8433823F370C /* MCP */; };
50C095E6F675D26E9C399179 /* AnthropicKeyValidator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 77C5BF4E4B659B0A3325E647 /* AnthropicKeyValidator.swift */; };
5230995216EF1EE333B51529 /* HudStateCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE712EB628AF5CD6E935E8AF /* HudStateCoordinator.swift */; };
526BDF4D6BC5714809B2E937 /* JarvisApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 90D238B5CF4BD07EB47F84F0 /* JarvisApp.swift */; };
535CF63FE4AD779CE4EBFA2A /* HudStateBridge.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6569DC91C2ACEB0E1396E1B8 /* HudStateBridge.swift */; };
573540593E2D1EB1F0F6F31C /* WizardTCCStageTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8C27488AAB75A245B580A95B /* WizardTCCStageTests.swift */; };
5AD556F5095852328E72BE36 /* MCPRuntimeWiringTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B5B16BDAC02919861AA4B0B /* MCPRuntimeWiringTests.swift */; };
5B5175F8D07766B3394DF19C /* MenuBarIconControllerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2468510EF34D9D8D56F5E3B9 /* MenuBarIconControllerTests.swift */; };
5D3E4C1819EE3CC3A1EA74F6 /* Replay in Frameworks */ = {isa = PBXBuildFile; productRef = DD541498D4EDB1CB45EDBA21 /* Replay */; };
63C72C019170ED28C4900DB9 /* WizardStateTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 024EE01ED6CC98A61A5CD96C /* WizardStateTests.swift */; };
63C78894699F60D1DE3A6715 /* RejectReasonCopy.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8329406FB8C3A6F017CB832 /* RejectReasonCopy.swift */; };
66B4B219EF4EC3EBDE5D1A4B /* AppDelegateWiringTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 909BFE54FAE9CA6B878D5625 /* AppDelegateWiringTests.swift */; };
68F00CB9ED4EFBE1E630C859 /* ProductionChunkPumpTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A10F5B89E8C81DC2D6240986 /* ProductionChunkPumpTests.swift */; };
6A2D9DE01C3C53094A820DDF /* JarvisEntitlementProbeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 36AC239C99B913A4767C0EE8 /* JarvisEntitlementProbeTests.swift */; };
6AD395C3C083197537B81713 /* AgentCore in Frameworks */ = {isa = PBXBuildFile; productRef = 73CDBE39012C4ECD47291B0E /* AgentCore */; };
70D09A556654E11B140AFBD4 /* MCPBusGatewayAdapterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6639284829C6DB4F69ED47F7 /* MCPBusGatewayAdapterTests.swift */; };
7270A6A54B0DC1510EB9C56A /* WizardView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A33A1960A6404CD790036C46 /* WizardView.swift */; };
781E23F05F4EBBD3D3CB8E3F /* AppleScriptRunner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F80410112AAA66BF53BBC28 /* AppleScriptRunner.swift */; };
78AA6D0286502DC0F1F4304D /* HudState.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0CF7206DB98EC02734975536 /* HudState.swift */; };
79991014825C2BF8E7226CF8 /* MCP in Frameworks */ = {isa = PBXBuildFile; productRef = 003ADC59F1F11095A80EAE32 /* MCP */; };
7EFA9CFF57B04C03347D3174 /* OnboardingWizardController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C3B7BF8E7124E4F8B43EA5F3 /* OnboardingWizardController.swift */; };
8085ECA422FCEFF21FA27273 /* Memory in Frameworks */ = {isa = PBXBuildFile; productRef = 2F2268C4CA98018F9214D776 /* Memory */; };
8161FA597A019607B3DE7DA1 /* JarvisLogging in Frameworks */ = {isa = PBXBuildFile; productRef = 0216B841D52A80482E6DA800 /* JarvisLogging */; };
8196D4F5AF4011F7F93E48EC /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C1517F151F3BA96803143692 /* AppDelegate.swift */; };
8684EF1EAC5D350C2CCAB3CF /* VoiceBusEmitterAdapter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1C47026AC23B268604965C5C /* VoiceBusEmitterAdapter.swift */; };
896984D88C412595C0F6F97E /* HudStateIntent.swift in Sources */ = {isa = PBXBuildFile; fileRef = 511D7B2406F485ED0D4B9E0D /* HudStateIntent.swift */; };
8E4590089A7955545E2146D3 /* HudStateCoordinatorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8B7E85856B679CE0788D38DB /* HudStateCoordinatorTests.swift */; };
8EF7109838AD91E95506BD1B /* MCPRuntimeWiring.swift in Sources */ = {isa = PBXBuildFile; fileRef = CBF3EF4CDCC653EF50D99AF7 /* MCPRuntimeWiring.swift */; };
8F0E066DCBA697FB0A2E59EA /* DevOverlay in Frameworks */ = {isa = PBXBuildFile; productRef = C50C1F6C67DE7D3A738845BD /* DevOverlay */; };
8FE2F607ABF836C4727C372E /* StatusPanel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4688BCCE58DB54DE910F9844 /* StatusPanel.swift */; };
925998B6DF1DB8263B4A6280 /* AppBusForwarderSink.swift in Sources */ = {isa = PBXBuildFile; fileRef = 528FED2A364DE6BD1F2BA20F /* AppBusForwarderSink.swift */; };
92BBF98C9A7B9B7835FC0949 /* Replay in Frameworks */ = {isa = PBXBuildFile; productRef = 8E74C5DEAD36FEDB6342A54D /* Replay */; };
93FDBFFCCEFC0848F1C5E630 /* AppDelegateBusWiringTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = AA6BA7673B5FD73B588D9084 /* AppDelegateBusWiringTests.swift */; };
94512D113669E85D50AC6C8C /* AgentOrchestrator in Frameworks */ = {isa = PBXBuildFile; productRef = 9DC9B6B513D7CCE63399A43B /* AgentOrchestrator */; };
98165CEB562FE32CD16BAA1D /* InProcessMemoryAdapters.swift in Sources */ = {isa = PBXBuildFile; fileRef = 252A86D40325F2186A86A505 /* InProcessMemoryAdapters.swift */; };
9933987292A1035BB048D0B9 /* MenuBarIconController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4DFECDF801143C9F672B5FB7 /* MenuBarIconController.swift */; };
9A06E835DE29158C0EC43DE3 /* webview in Resources */ = {isa = PBXBuildFile; fileRef = 8C8267C7BE6D4B16FEE6004E /* webview */; };
9ECD7215D86C83BB826F903E /* Shell in Frameworks */ = {isa = PBXBuildFile; productRef = 8D3EE6699BA5134A3A067596 /* Shell */; };
9F391DC98880FE923E6594CF /* MemoryInstallWiringTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4AE91F0E707C480DE5724510 /* MemoryInstallWiringTests.swift */; };
9F451A31E6DF755ABC86885A /* WizardStageTCCView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 43886353ECED823D4CB689D3 /* WizardStageTCCView.swift */; };
A20E24D0AB73FFBBE4AB9B9B /* MenuBarContextMenu.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5540C076C8C87A8060B8881 /* MenuBarContextMenu.swift */; };
A30C09AE5D98B07A92945E1F /* ReplayingToolResultObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0358E0CAC1377752398FA3C4 /* ReplayingToolResultObserver.swift */; };
A8F96FFF1766D44AA16665A3 /* CAAnimationFactory.swift in Sources */ = {isa = PBXBuildFile; fileRef = 604976A6CA41878D67AF7B71 /* CAAnimationFactory.swift */; };
A9F18AF7B16BEA1776F76321 /* HUDBannerPanel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17DC091C938BB7FBEACF0032 /* HUDBannerPanel.swift */; };
AA6FBB22D0352A50335801C1 /* MCPClipboardMain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3EF983357F35F736ADCEF1D5 /* MCPClipboardMain.swift */; };
AC359FF68F49110FF9B6E6E5 /* WizardStageAPIKeyViewTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A58FE5BCBC3DE6663E859C0A /* WizardStageAPIKeyViewTests.swift */; };
B2072C6FF5589D00A8B19613 /* AgentOrchestrator in Frameworks */ = {isa = PBXBuildFile; productRef = 955423140BB4EC27191C4FA7 /* AgentOrchestrator */; };
B5416071D18E6C124365A8EC /* VoiceOrchestratorAdapterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3577EF13419964F207DF4A37 /* VoiceOrchestratorAdapterTests.swift */; };
B64A0CAA46B3C146B54F9F85 /* HUDBannerCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = AA85DE5E4A9500FD19C22D85 /* HUDBannerCoordinator.swift */; };
B72852E1EF52C0E6F8170852 /* Memory in Frameworks */ = {isa = PBXBuildFile; productRef = 59F56604A76635EC59D2671B /* Memory */; };
B8F411ADE70402B71887E377 /* VoiceOrchestratorAdapter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 590D5A359A5C3E915D274436 /* VoiceOrchestratorAdapter.swift */; };
BBD8BBC82E0D3C57E0DB4ED0 /* HudStateEnumTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 510B6A716A10A8B7CEEC1D3F /* HudStateEnumTests.swift */; };
BEFC509502C7940A21001F9F /* JarvisHUDPanel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4424DD9447F84F35372A48FF /* JarvisHUDPanel.swift */; };
C336B40332A148A5A1F2DDC8 /* WebviewBundleLoadTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A16929275D5323F505DF12E9 /* WebviewBundleLoadTests.swift */; };
C3917516BFFF438A4AD5CE80 /* BrandColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BC1E50BF31BB6CCF895FCA3 /* BrandColors.swift */; };
C9F3B34208084769106C4B07 /* HudStateCoordinatorBusWiringTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 46CB8B7693CEA625D7331C3E /* HudStateCoordinatorBusWiringTests.swift */; };
CCA51A998B128C9C03ED0662 /* AppDelegateFrameAttachAdapters.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8FB47EBED48DF63272C6D77F /* AppDelegateFrameAttachAdapters.swift */; };
CD22CB0656265A2623BA7FD0 /* AnthropicKeyValidatorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39DD53A4E2CCED58C85B63FC /* AnthropicKeyValidatorTests.swift */; };
CD2C5779101FE0384611ECCC /* MCPBusGatewayAdapter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C42ACA7552D565D9F198399 /* MCPBusGatewayAdapter.swift */; };
CFBEF67D687A1227C9C2A6BD /* HUDBannerCoordinatorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98DF77D7944DD23250A9AA97 /* HUDBannerCoordinatorTests.swift */; };
CFFC4AB8D77907C477B1E947 /* JarvisMCP in Frameworks */ = {isa = PBXBuildFile; productRef = DE970D2B3CA1AB0097A120D3 /* JarvisMCP */; };
D0F74EFBDD6B9FDD0FC15A80 /* JarvisMCP in Frameworks */ = {isa = PBXBuildFile; productRef = 0AA20E2847670C06A4E77816 /* JarvisMCP */; };
D85C8151FBA82DBDA57E0CBA /* Keychain in Frameworks */ = {isa = PBXBuildFile; productRef = B2A25AADC21AA52E8197BC00 /* Keychain */; };
DB7800734578396AA72EADAF /* SettingsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F588561BC4F69D39E71AE4A /* SettingsView.swift */; };
DC9B4FF6C5861E93709832BB /* Bus in Frameworks */ = {isa = PBXBuildFile; productRef = 97D6A753B03EF5503BEB726F /* Bus */; };
DD8919E2AB6DF6CDFE8CB322 /* AgentCore in Frameworks */ = {isa = PBXBuildFile; productRef = 4CB4DC60ABEBF2DC7A7FFE4C /* AgentCore */; };
DF6EC4DD8D8A029748F382AE /* Config in Frameworks */ = {isa = PBXBuildFile; productRef = 61127935D1430B78A6FEACB0 /* Config */; };
E218ADC35078C6F26F0D0041 /* HUDBanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 096AD64E7DB48B0F1EE47F89 /* HUDBanner.swift */; };
E39D7F3B185FA8D84C33B421 /* Config in Frameworks */ = {isa = PBXBuildFile; productRef = 1058DB02D52D27FA07A79025 /* Config */; };
E49FEEFE453A055F65DA31FF /* WizardStageHotkeyView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74FC22D7D34AB5E6061959D7 /* WizardStageHotkeyView.swift */; };
E7F6C8E910BA8B5F7629DEF7 /* InProcessSelfStateAdapters.swift in Sources */ = {isa = PBXBuildFile; fileRef = 906C8E54650D79A94FB3C669 /* InProcessSelfStateAdapters.swift */; };
E8CD13B014BB64CAB1ACA632 /* AppDelegateEntitlementTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A231DEC7B592B6D527B0283C /* AppDelegateEntitlementTests.swift */; };
EB03A8906003E55271CAF133 /* JarvisVision in Frameworks */ = {isa = PBXBuildFile; productRef = C1168750998C14962FE14DEC /* JarvisVision */; };
EB07CD704A3568F27DD4D901 /* Shell in Frameworks */ = {isa = PBXBuildFile; productRef = 6FAD561608B0D1C402015E0D /* Shell */; };
EF9A869A3403AF044999784F /* ProductionChunkPump.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74CE607C95B5D3A95AEB16BF /* ProductionChunkPump.swift */; };
F340ACA6D0AD06E8ACF65010 /* Logging in Frameworks */ = {isa = PBXBuildFile; productRef = D5E0D943EBC768ADB9C87F13 /* Logging */; };
F6423C84483BB194348837F5 /* VoiceWiringTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = BB9BC03FD0377EB67CC0F7DB /* VoiceWiringTests.swift */; };
F8E9590D40A0B88DD4FD712D /* JarvisLogging in Frameworks */ = {isa = PBXBuildFile; productRef = ED53153FE6F73137C23AD43B /* JarvisLogging */; };
F9CD3EC30A33CDBAFA274784 /* MCP in Frameworks */ = {isa = PBXBuildFile; productRef = EFBD95BA85DEFC31F7583FF2 /* MCP */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
0C47860A5999E2D2FF3E2541 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 33E99CF1F5349721FD0BB40B /* Project object */;
proxyType = 1;
remoteGlobalIDString = 3D0DD086DB85E343B69EB2E8;
remoteInfo = "mcp-time";
};
22F6E0F368503D9A2922877B /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 33E99CF1F5349721FD0BB40B /* Project object */;
proxyType = 1;
remoteGlobalIDString = 77D05BC97C3ECFF21FD60D84;
remoteInfo = "mcp-applescript";
};
3712067C4D21682FCFB04AE1 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 33E99CF1F5349721FD0BB40B /* Project object */;
proxyType = 1;
remoteGlobalIDString = D7D11D4EF8FF2DD490BE1FA6;
remoteInfo = "mcp-clipboard";
};
AA51ED58F753D32E71E8C945 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 33E99CF1F5349721FD0BB40B /* Project object */;
proxyType = 1;
remoteGlobalIDString = 461D90920FCD8CAF83348871;
remoteInfo = Jarvis;
};
D219C62B6F700143D5A8973F /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 33E99CF1F5349721FD0BB40B /* Project object */;
proxyType = 1;
remoteGlobalIDString = 461D90920FCD8CAF83348871;
remoteInfo = Jarvis;
};
/* End PBXContainerItemProxy section */
/* Begin PBXFileReference section */
00C01D284ECCFC986C7F2E16 /* Keychain */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Keychain; path = packages/Keychain; sourceTree = SOURCE_ROOT; };
024EE01ED6CC98A61A5CD96C /* WizardStateTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WizardStateTests.swift; sourceTree = "<group>"; };
0358E0CAC1377752398FA3C4 /* ReplayingToolResultObserver.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReplayingToolResultObserver.swift; sourceTree = "<group>"; };
096AD64E7DB48B0F1EE47F89 /* HUDBanner.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HUDBanner.swift; sourceTree = "<group>"; };
0B5B16BDAC02919861AA4B0B /* MCPRuntimeWiringTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MCPRuntimeWiringTests.swift; sourceTree = "<group>"; };
0CF7206DB98EC02734975536 /* HudState.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HudState.swift; sourceTree = "<group>"; };
17DC091C938BB7FBEACF0032 /* HUDBannerPanel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HUDBannerPanel.swift; sourceTree = "<group>"; };
1C47026AC23B268604965C5C /* VoiceBusEmitterAdapter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VoiceBusEmitterAdapter.swift; sourceTree = "<group>"; };
1F588561BC4F69D39E71AE4A /* SettingsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SettingsView.swift; sourceTree = "<group>"; };
1F80410112AAA66BF53BBC28 /* AppleScriptRunner.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppleScriptRunner.swift; sourceTree = "<group>"; };
2468510EF34D9D8D56F5E3B9 /* MenuBarIconControllerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MenuBarIconControllerTests.swift; sourceTree = "<group>"; };
252A86D40325F2186A86A505 /* InProcessMemoryAdapters.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = InProcessMemoryAdapters.swift; sourceTree = "<group>"; };
2857325F1F38B436FFA8AD8B /* mcp-time.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "mcp-time.app"; sourceTree = BUILT_PRODUCTS_DIR; };
288436CCFD821C16F6C5995E /* Vision */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Vision; path = packages/Vision; sourceTree = SOURCE_ROOT; };
2C42ACA7552D565D9F198399 /* MCPBusGatewayAdapter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MCPBusGatewayAdapter.swift; sourceTree = "<group>"; };
2E9C7A0B14B3AE5C9100CACF /* Config */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Config; path = packages/Config; sourceTree = SOURCE_ROOT; };
3527AF52C1E81BAC4EF70766 /* JarvisHUDPanelTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JarvisHUDPanelTests.swift; sourceTree = "<group>"; };
3577EF13419964F207DF4A37 /* VoiceOrchestratorAdapterTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VoiceOrchestratorAdapterTests.swift; sourceTree = "<group>"; };
3670E43064CC6F5A307142B2 /* mcp-applescript.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "mcp-applescript.app"; sourceTree = BUILT_PRODUCTS_DIR; };
36AC239C99B913A4767C0EE8 /* JarvisEntitlementProbeTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JarvisEntitlementProbeTests.swift; sourceTree = "<group>"; };
396A767CA8ECD9BE6168EBF8 /* Voice */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Voice; path = packages/Voice; sourceTree = SOURCE_ROOT; };
39DD53A4E2CCED58C85B63FC /* AnthropicKeyValidatorTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnthropicKeyValidatorTests.swift; sourceTree = "<group>"; };
3EEB80F86BC4DE366810AB99 /* Shell */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Shell; path = packages/Shell; sourceTree = SOURCE_ROOT; };
3EF983357F35F736ADCEF1D5 /* MCPClipboardMain.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MCPClipboardMain.swift; sourceTree = "<group>"; };
43886353ECED823D4CB689D3 /* WizardStageTCCView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WizardStageTCCView.swift; sourceTree = "<group>"; };
4424DD9447F84F35372A48FF /* JarvisHUDPanel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JarvisHUDPanel.swift; sourceTree = "<group>"; };
467AE2D19D58325D227E2F89 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
4688BCCE58DB54DE910F9844 /* StatusPanel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StatusPanel.swift; sourceTree = "<group>"; };
46CB8B7693CEA625D7331C3E /* HudStateCoordinatorBusWiringTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HudStateCoordinatorBusWiringTests.swift; sourceTree = "<group>"; };
4AE91F0E707C480DE5724510 /* MemoryInstallWiringTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MemoryInstallWiringTests.swift; sourceTree = "<group>"; };
4BC1E50BF31BB6CCF895FCA3 /* BrandColors.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BrandColors.swift; sourceTree = "<group>"; };
4DFECDF801143C9F672B5FB7 /* MenuBarIconController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MenuBarIconController.swift; sourceTree = "<group>"; };
510B6A716A10A8B7CEEC1D3F /* HudStateEnumTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HudStateEnumTests.swift; sourceTree = "<group>"; };
511D7B2406F485ED0D4B9E0D /* HudStateIntent.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HudStateIntent.swift; sourceTree = "<group>"; };
528FED2A364DE6BD1F2BA20F /* AppBusForwarderSink.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppBusForwarderSink.swift; sourceTree = "<group>"; };
54B2C24637464D380D4450AF /* BootHealthProbes.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BootHealthProbes.swift; sourceTree = "<group>"; };
590D5A359A5C3E915D274436 /* VoiceOrchestratorAdapter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VoiceOrchestratorAdapter.swift; sourceTree = "<group>"; };
5DE981947E40847F9BAF5641 /* Logging */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Logging; path = packages/Logging; sourceTree = SOURCE_ROOT; };
604976A6CA41878D67AF7B71 /* CAAnimationFactory.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CAAnimationFactory.swift; sourceTree = "<group>"; };
639B5F162E847B0CFC679E30 /* Bus */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Bus; path = packages/Bus; sourceTree = SOURCE_ROOT; };
6569DC91C2ACEB0E1396E1B8 /* HudStateBridge.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HudStateBridge.swift; sourceTree = "<group>"; };
6639284829C6DB4F69ED47F7 /* MCPBusGatewayAdapterTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MCPBusGatewayAdapterTests.swift; sourceTree = "<group>"; };
6784683F2262D8AFA439668D /* JarvisAppTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = JarvisAppTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
718CFD37BC47D00448B86C8D /* VoiceTTSAdapter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VoiceTTSAdapter.swift; sourceTree = "<group>"; };
74CE607C95B5D3A95AEB16BF /* ProductionChunkPump.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProductionChunkPump.swift; sourceTree = "<group>"; };
74FC22D7D34AB5E6061959D7 /* WizardStageHotkeyView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WizardStageHotkeyView.swift; sourceTree = "<group>"; };
7557878944CE73793FEA61CF /* SettingsWindowController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SettingsWindowController.swift; sourceTree = "<group>"; };
756AA19AD01796D665A09094 /* MCP */ = {isa = PBXFileReference; lastKnownFileType = folder; name = MCP; path = packages/MCP; sourceTree = SOURCE_ROOT; };
76EB1FE552FF4A0447691898 /* Memory */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Memory; path = packages/Memory; sourceTree = SOURCE_ROOT; };
77C5BF4E4B659B0A3325E647 /* AnthropicKeyValidator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnthropicKeyValidator.swift; sourceTree = "<group>"; };
8B7E85856B679CE0788D38DB /* HudStateCoordinatorTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HudStateCoordinatorTests.swift; sourceTree = "<group>"; };
8C27488AAB75A245B580A95B /* WizardTCCStageTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WizardTCCStageTests.swift; sourceTree = "<group>"; };
8C8267C7BE6D4B16FEE6004E /* webview */ = {isa = PBXFileReference; lastKnownFileType = folder; name = webview; path = App/Resources/webview; sourceTree = SOURCE_ROOT; };
8FB47EBED48DF63272C6D77F /* AppDelegateFrameAttachAdapters.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegateFrameAttachAdapters.swift; sourceTree = "<group>"; };
906C8E54650D79A94FB3C669 /* InProcessSelfStateAdapters.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = InProcessSelfStateAdapters.swift; sourceTree = "<group>"; };
909BFE54FAE9CA6B878D5625 /* AppDelegateWiringTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegateWiringTests.swift; sourceTree = "<group>"; };
90D238B5CF4BD07EB47F84F0 /* JarvisApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JarvisApp.swift; sourceTree = "<group>"; };
960E9FC636D6FF3DD68E5FE9 /* Replay */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Replay; path = packages/Replay; sourceTree = SOURCE_ROOT; };
96BF0892A5DFF2AD38A93834 /* BannerContent.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BannerContent.swift; sourceTree = "<group>"; };
98DF77D7944DD23250A9AA97 /* HUDBannerCoordinatorTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HUDBannerCoordinatorTests.swift; sourceTree = "<group>"; };
A10F5B89E8C81DC2D6240986 /* ProductionChunkPumpTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProductionChunkPumpTests.swift; sourceTree = "<group>"; };
A16929275D5323F505DF12E9 /* WebviewBundleLoadTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WebviewBundleLoadTests.swift; sourceTree = "<group>"; };
A1E748E1EAA90C94FA7F3707 /* AgentCore */ = {isa = PBXFileReference; lastKnownFileType = folder; name = AgentCore; path = packages/AgentCore; sourceTree = SOURCE_ROOT; };
A231DEC7B592B6D527B0283C /* AppDelegateEntitlementTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegateEntitlementTests.swift; sourceTree = "<group>"; };
A33A1960A6404CD790036C46 /* WizardView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WizardView.swift; sourceTree = "<group>"; };
A58FE5BCBC3DE6663E859C0A /* WizardStageAPIKeyViewTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WizardStageAPIKeyViewTests.swift; sourceTree = "<group>"; };
A8329406FB8C3A6F017CB832 /* RejectReasonCopy.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RejectReasonCopy.swift; sourceTree = "<group>"; };
AA6BA7673B5FD73B588D9084 /* AppDelegateBusWiringTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegateBusWiringTests.swift; sourceTree = "<group>"; };
AA85DE5E4A9500FD19C22D85 /* HUDBannerCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HUDBannerCoordinator.swift; sourceTree = "<group>"; };
B5540C076C8C87A8060B8881 /* MenuBarContextMenu.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MenuBarContextMenu.swift; sourceTree = "<group>"; };
BB9BC03FD0377EB67CC0F7DB /* VoiceWiringTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VoiceWiringTests.swift; sourceTree = "<group>"; };
BFEF6C3A66183A4563869131 /* WizardStageAPIKeyView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WizardStageAPIKeyView.swift; sourceTree = "<group>"; };
C1517F151F3BA96803143692 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
C3B7BF8E7124E4F8B43EA5F3 /* OnboardingWizardController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingWizardController.swift; sourceTree = "<group>"; };
C4723FBC0F20AD2EFF146A24 /* AppDelegateContextBuilderAdapter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegateContextBuilderAdapter.swift; sourceTree = "<group>"; };
CBF3EF4CDCC653EF50D99AF7 /* MCPRuntimeWiring.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MCPRuntimeWiring.swift; sourceTree = "<group>"; };
D5077B9E3E7541D72CE0EB1B /* MCPAppleScriptMain.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MCPAppleScriptMain.swift; sourceTree = "<group>"; };
D554BFB452EC88ECA9392A2E /* PasteboardReader.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PasteboardReader.swift; sourceTree = "<group>"; };
DE712EB628AF5CD6E935E8AF /* HudStateCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HudStateCoordinator.swift; sourceTree = "<group>"; };
E24DBC3C9C1B4A6BE1326CB2 /* VoiceOutputWiring.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VoiceOutputWiring.swift; sourceTree = "<group>"; };
E5B2103B1A123E512CC56B63 /* WizardState.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WizardState.swift; sourceTree = "<group>"; };
E9CF7C158A5A7699A9CA32DE /* mcp-clipboard.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "mcp-clipboard.app"; sourceTree = BUILT_PRODUCTS_DIR; };
F2EA89B09E63D9954B6EA5A4 /* Jarvis.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Jarvis.app; sourceTree = BUILT_PRODUCTS_DIR; };
FAA5549717CB3455817BEA7A /* DevOverlay */ = {isa = PBXFileReference; lastKnownFileType = folder; name = DevOverlay; path = packages/DevOverlay; sourceTree = SOURCE_ROOT; };
FB5CCC9470306930471B8F6E /* Harness */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Harness; path = packages/Harness; sourceTree = SOURCE_ROOT; };
FFBE24D9C8E23A56E1C1EF57 /* JarvisEntitlementProbeTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = JarvisEntitlementProbeTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
FFCA2C937A1629F873729B75 /* MCPTimeMain.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MCPTimeMain.swift; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
1F63B4089D7994428EDB5B42 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
F9CD3EC30A33CDBAFA274784 /* MCP in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
523B99889C81F48D09C76DBD /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
79991014825C2BF8E7226CF8 /* MCP in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
5E801AA735F5FC16788D2964 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
4DF8C0C925F0D09AE39F3380 /* MCP in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
6341DE8F6C38220389F46936 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
DD8919E2AB6DF6CDFE8CB322 /* AgentCore in Frameworks */,
94512D113669E85D50AC6C8C /* AgentOrchestrator in Frameworks */,
D0F74EFBDD6B9FDD0FC15A80 /* JarvisMCP in Frameworks */,
5D3E4C1819EE3CC3A1EA74F6 /* Replay in Frameworks */,
0B1E24FF2DB306F28A36680E /* Logging in Frameworks */,
E39D7F3B185FA8D84C33B421 /* Config in Frameworks */,
D85C8151FBA82DBDA57E0CBA /* Keychain in Frameworks */,
DC9B4FF6C5861E93709832BB /* Bus in Frameworks */,
9ECD7215D86C83BB826F903E /* Shell in Frameworks */,
8161FA597A019607B3DE7DA1 /* JarvisLogging in Frameworks */,
3A6BFB4974C5891335CD12D5 /* Voice in Frameworks */,
8085ECA422FCEFF21FA27273 /* Memory in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
886D43D159942AB5C149B33B /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
07E7F32B3857ED215DE59FBE /* Keychain in Frameworks */,
DF6EC4DD8D8A029748F382AE /* Config in Frameworks */,
F8E9590D40A0B88DD4FD712D /* JarvisLogging in Frameworks */,
EB07CD704A3568F27DD4D901 /* Shell in Frameworks */,
1D281661B4A64095FF9FA8BA /* Bus in Frameworks */,
6AD395C3C083197537B81713 /* AgentCore in Frameworks */,
B2072C6FF5589D00A8B19613 /* AgentOrchestrator in Frameworks */,
CFFC4AB8D77907C477B1E947 /* JarvisMCP in Frameworks */,
92BBF98C9A7B9B7835FC0949 /* Replay in Frameworks */,
F340ACA6D0AD06E8ACF65010 /* Logging in Frameworks */,
3649FFF2495A8C4DDDB3B65B /* Voice in Frameworks */,
B72852E1EF52C0E6F8170852 /* Memory in Frameworks */,
EB03A8906003E55271CAF133 /* JarvisVision in Frameworks */,
8F0E066DCBA697FB0A2E59EA /* DevOverlay in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
11046649A6D2E4DB9850EF1A /* Sources */ = {
isa = PBXGroup;
children = (
4D0A7580D059A7364F57697B /* mcp-time */,
);
path = Sources;
sourceTree = "<group>";
};
146263771AC556A87FAB63A6 /* App */ = {
isa = PBXGroup;
children = (
528FED2A364DE6BD1F2BA20F /* AppBusForwarderSink.swift */,
C1517F151F3BA96803143692 /* AppDelegate.swift */,
467AE2D19D58325D227E2F89 /* Assets.xcassets */,
90D238B5CF4BD07EB47F84F0 /* JarvisApp.swift */,
2C42ACA7552D565D9F198399 /* MCPBusGatewayAdapter.swift */,
9583B00B0B1611E34589592F /* Boot */,
F76520C565169D7547EE9608 /* HUD */,
EE585F62F46C659EDFC48DE7 /* MCP */,
35E7CF3C8F80086AD447480E /* MenuBar */,
D80B1ECFB5748E20A6ADF0EB /* Resources */,
8744575CF9C350619AB4A892 /* Settings */,
7B0D5E57F282044CD98E347B /* Tests */,
5CBAF02B001A7FF406642CCA /* Theme */,
2B9B2D87FD5CAD4688A29148 /* Vision */,
BB5926219D1C87B282AAC541 /* Voice */,
922FCD26000A64044B1FF187 /* Wizard */,
);
path = App;
sourceTree = "<group>";
};
153D019325D521C96685E1FC /* Sources */ = {
isa = PBXGroup;
children = (
882B08AE0C21580FDAC65C9F /* mcp-applescript */,
);
path = Sources;
sourceTree = "<group>";
};
208C83303CC662AB2390C1C3 /* mcp-clipboard */ = {
isa = PBXGroup;
children = (
3EF983357F35F736ADCEF1D5 /* MCPClipboardMain.swift */,
D554BFB452EC88ECA9392A2E /* PasteboardReader.swift */,
);
path = "mcp-clipboard";
sourceTree = "<group>";
};
2B9B2D87FD5CAD4688A29148 /* Vision */ = {
isa = PBXGroup;
children = (
8FB47EBED48DF63272C6D77F /* AppDelegateFrameAttachAdapters.swift */,
);
path = Vision;
sourceTree = "<group>";
};
35E7CF3C8F80086AD447480E /* MenuBar */ = {
isa = PBXGroup;
children = (
604976A6CA41878D67AF7B71 /* CAAnimationFactory.swift */,
B5540C076C8C87A8060B8881 /* MenuBarContextMenu.swift */,
4DFECDF801143C9F672B5FB7 /* MenuBarIconController.swift */,
4688BCCE58DB54DE910F9844 /* StatusPanel.swift */,
);
path = MenuBar;
sourceTree = "<group>";
};
4523A7D183060E875587B2F1 /* AppTests */ = {
isa = PBXGroup;
children = (
39DD53A4E2CCED58C85B63FC /* AnthropicKeyValidatorTests.swift */,
AA6BA7673B5FD73B588D9084 /* AppDelegateBusWiringTests.swift */,
A231DEC7B592B6D527B0283C /* AppDelegateEntitlementTests.swift */,
909BFE54FAE9CA6B878D5625 /* AppDelegateWiringTests.swift */,
98DF77D7944DD23250A9AA97 /* HUDBannerCoordinatorTests.swift */,
46CB8B7693CEA625D7331C3E /* HudStateCoordinatorBusWiringTests.swift */,
8B7E85856B679CE0788D38DB /* HudStateCoordinatorTests.swift */,
510B6A716A10A8B7CEEC1D3F /* HudStateEnumTests.swift */,
3527AF52C1E81BAC4EF70766 /* JarvisHUDPanelTests.swift */,
6639284829C6DB4F69ED47F7 /* MCPBusGatewayAdapterTests.swift */,
0B5B16BDAC02919861AA4B0B /* MCPRuntimeWiringTests.swift */,
4AE91F0E707C480DE5724510 /* MemoryInstallWiringTests.swift */,
2468510EF34D9D8D56F5E3B9 /* MenuBarIconControllerTests.swift */,
A10F5B89E8C81DC2D6240986 /* ProductionChunkPumpTests.swift */,
3577EF13419964F207DF4A37 /* VoiceOrchestratorAdapterTests.swift */,
BB9BC03FD0377EB67CC0F7DB /* VoiceWiringTests.swift */,
A16929275D5323F505DF12E9 /* WebviewBundleLoadTests.swift */,
A58FE5BCBC3DE6663E859C0A /* WizardStageAPIKeyViewTests.swift */,
024EE01ED6CC98A61A5CD96C /* WizardStateTests.swift */,
8C27488AAB75A245B580A95B /* WizardTCCStageTests.swift */,
);
path = AppTests;
sourceTree = "<group>";
};
4D0A7580D059A7364F57697B /* mcp-time */ = {
isa = PBXGroup;
children = (
FFCA2C937A1629F873729B75 /* MCPTimeMain.swift */,
);
path = "mcp-time";
sourceTree = "<group>";
};
5CBAF02B001A7FF406642CCA /* Theme */ = {
isa = PBXGroup;
children = (
4BC1E50BF31BB6CCF895FCA3 /* BrandColors.swift */,
0CF7206DB98EC02734975536 /* HudState.swift */,
);
path = Theme;
sourceTree = "<group>";
};
70419DFE15BDA3126E02DEBB /* mcp-applescript */ = {
isa = PBXGroup;
children = (
153D019325D521C96685E1FC /* Sources */,
);
path = "mcp-applescript";
sourceTree = "<group>";
};
7370B301BC3824D8E135198C /* Products */ = {
isa = PBXGroup;
children = (
F2EA89B09E63D9954B6EA5A4 /* Jarvis.app */,
6784683F2262D8AFA439668D /* JarvisAppTests.xctest */,
FFBE24D9C8E23A56E1C1EF57 /* JarvisEntitlementProbeTests.xctest */,
3670E43064CC6F5A307142B2 /* mcp-applescript.app */,
E9CF7C158A5A7699A9CA32DE /* mcp-clipboard.app */,
2857325F1F38B436FFA8AD8B /* mcp-time.app */,
);
name = Products;
sourceTree = "<group>";
};
7B0D5E57F282044CD98E347B /* Tests */ = {
isa = PBXGroup;
children = (
4523A7D183060E875587B2F1 /* AppTests */,
A9211EAD35AE7E8ABF9B4CC6 /* JarvisEntitlementProbeTests */,
);
path = Tests;
sourceTree = "<group>";
};
8744575CF9C350619AB4A892 /* Settings */ = {
isa = PBXGroup;
children = (
1F588561BC4F69D39E71AE4A /* SettingsView.swift */,
7557878944CE73793FEA61CF /* SettingsWindowController.swift */,
);
path = Settings;
sourceTree = "<group>";
};
882B08AE0C21580FDAC65C9F /* mcp-applescript */ = {
isa = PBXGroup;
children = (
1F80410112AAA66BF53BBC28 /* AppleScriptRunner.swift */,
D5077B9E3E7541D72CE0EB1B /* MCPAppleScriptMain.swift */,
);
path = "mcp-applescript";
sourceTree = "<group>";
};
8A023692CD0AAABE9D630843 /* Sources */ = {
isa = PBXGroup;
children = (
208C83303CC662AB2390C1C3 /* mcp-clipboard */,
);
path = Sources;
sourceTree = "<group>";
};
922FCD26000A64044B1FF187 /* Wizard */ = {
isa = PBXGroup;
children = (
77C5BF4E4B659B0A3325E647 /* AnthropicKeyValidator.swift */,
C3B7BF8E7124E4F8B43EA5F3 /* OnboardingWizardController.swift */,
BFEF6C3A66183A4563869131 /* WizardStageAPIKeyView.swift */,
74FC22D7D34AB5E6061959D7 /* WizardStageHotkeyView.swift */,
43886353ECED823D4CB689D3 /* WizardStageTCCView.swift */,
E5B2103B1A123E512CC56B63 /* WizardState.swift */,
A33A1960A6404CD790036C46 /* WizardView.swift */,
);
path = Wizard;
sourceTree = "<group>";
};
9583B00B0B1611E34589592F /* Boot */ = {
isa = PBXGroup;
children = (
54B2C24637464D380D4450AF /* BootHealthProbes.swift */,
);
path = Boot;
sourceTree = "<group>";
};
A7065AE59E83DE43BF345747 /* mcp-time */ = {
isa = PBXGroup;
children = (
11046649A6D2E4DB9850EF1A /* Sources */,
);
path = "mcp-time";
sourceTree = "<group>";
};
A9211EAD35AE7E8ABF9B4CC6 /* JarvisEntitlementProbeTests */ = {
isa = PBXGroup;
children = (
36AC239C99B913A4767C0EE8 /* JarvisEntitlementProbeTests.swift */,
);
path = JarvisEntitlementProbeTests;
sourceTree = "<group>";
};
BB5926219D1C87B282AAC541 /* Voice */ = {
isa = PBXGroup;
children = (
74CE607C95B5D3A95AEB16BF /* ProductionChunkPump.swift */,
A8329406FB8C3A6F017CB832 /* RejectReasonCopy.swift */,
1C47026AC23B268604965C5C /* VoiceBusEmitterAdapter.swift */,
590D5A359A5C3E915D274436 /* VoiceOrchestratorAdapter.swift */,
E24DBC3C9C1B4A6BE1326CB2 /* VoiceOutputWiring.swift */,
718CFD37BC47D00448B86C8D /* VoiceTTSAdapter.swift */,
);
path = Voice;
sourceTree = "<group>";
};
BC0DCAC9B7584481D8C65021 = {
isa = PBXGroup;
children = (
146263771AC556A87FAB63A6 /* App */,
C27D8B6D46DD66A6D5D9AE1D /* mcp-servers */,
EBFF6C47A440673BFB3E17FB /* Packages */,
7370B301BC3824D8E135198C /* Products */,
);
sourceTree = "<group>";
};
C27D8B6D46DD66A6D5D9AE1D /* mcp-servers */ = {
isa = PBXGroup;
children = (
70419DFE15BDA3126E02DEBB /* mcp-applescript */,
F008A8B896C0B896A6BEA1AA /* mcp-clipboard */,
A7065AE59E83DE43BF345747 /* mcp-time */,
);
path = "mcp-servers";
sourceTree = "<group>";
};
D80B1ECFB5748E20A6ADF0EB /* Resources */ = {
isa = PBXGroup;
children = (
8C8267C7BE6D4B16FEE6004E /* webview */,
);
path = Resources;
sourceTree = "<group>";
};
EBFF6C47A440673BFB3E17FB /* Packages */ = {
isa = PBXGroup;
children = (
A1E748E1EAA90C94FA7F3707 /* AgentCore */,
639B5F162E847B0CFC679E30 /* Bus */,
2E9C7A0B14B3AE5C9100CACF /* Config */,
FAA5549717CB3455817BEA7A /* DevOverlay */,
FB5CCC9470306930471B8F6E /* Harness */,
00C01D284ECCFC986C7F2E16 /* Keychain */,
5DE981947E40847F9BAF5641 /* Logging */,
756AA19AD01796D665A09094 /* MCP */,
76EB1FE552FF4A0447691898 /* Memory */,
960E9FC636D6FF3DD68E5FE9 /* Replay */,
3EEB80F86BC4DE366810AB99 /* Shell */,
288436CCFD821C16F6C5995E /* Vision */,
396A767CA8ECD9BE6168EBF8 /* Voice */,
);
path = Packages;
sourceTree = "<group>";
};
EE585F62F46C659EDFC48DE7 /* MCP */ = {
isa = PBXGroup;
children = (
C4723FBC0F20AD2EFF146A24 /* AppDelegateContextBuilderAdapter.swift */,
252A86D40325F2186A86A505 /* InProcessMemoryAdapters.swift */,
906C8E54650D79A94FB3C669 /* InProcessSelfStateAdapters.swift */,
CBF3EF4CDCC653EF50D99AF7 /* MCPRuntimeWiring.swift */,
0358E0CAC1377752398FA3C4 /* ReplayingToolResultObserver.swift */,
);
path = MCP;
sourceTree = "<group>";
};
F008A8B896C0B896A6BEA1AA /* mcp-clipboard */ = {
isa = PBXGroup;
children = (
8A023692CD0AAABE9D630843 /* Sources */,
);
path = "mcp-clipboard";
sourceTree = "<group>";
};
F76520C565169D7547EE9608 /* HUD */ = {
isa = PBXGroup;
children = (
96BF0892A5DFF2AD38A93834 /* BannerContent.swift */,
096AD64E7DB48B0F1EE47F89 /* HUDBanner.swift */,
AA85DE5E4A9500FD19C22D85 /* HUDBannerCoordinator.swift */,
17DC091C938BB7FBEACF0032 /* HUDBannerPanel.swift */,
6569DC91C2ACEB0E1396E1B8 /* HudStateBridge.swift */,
DE712EB628AF5CD6E935E8AF /* HudStateCoordinator.swift */,
511D7B2406F485ED0D4B9E0D /* HudStateIntent.swift */,
4424DD9447F84F35372A48FF /* JarvisHUDPanel.swift */,
);
path = HUD;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
3D0DD086DB85E343B69EB2E8 /* mcp-time */ = {
isa = PBXNativeTarget;
buildConfigurationList = AB916DC2F5487D6404DC84EA /* Build configuration list for PBXNativeTarget "mcp-time" */;
buildPhases = (
72C49B7C0433B488122A9A3C /* Sources */,
523B99889C81F48D09C76DBD /* Frameworks */,
6B7F46C0E5B0E3F12717BC9B /* Copy mcp-time.entitlements into bundle Resources */,
);
buildRules = (
);
dependencies = (
);
name = "mcp-time";
packageProductDependencies = (
003ADC59F1F11095A80EAE32 /* MCP */,
);
productName = "mcp-time";
productReference = 2857325F1F38B436FFA8AD8B /* mcp-time.app */;
productType = "com.apple.product-type.application";
};
461D90920FCD8CAF83348871 /* Jarvis */ = {
isa = PBXNativeTarget;
buildConfigurationList = B6D5E915E8E9BDF0BF748745 /* Build configuration list for PBXNativeTarget "Jarvis" */;
buildPhases = (
6A19A71D8F7B0FED56530812 /* Check bus-harness.html parity (canonical vs bundle) */,
A9F0578ECF5691986EE06B5B /* Check bus protocol version (Swift/TS parity) */,
16B4B1822351AC23B6276002 /* Check no evaluateJavaScript calls (HUD-04) */,
19C4D644D9F5E146304D1FBE /* Check single-writer HUD state (HUD-08) */,
5203E8AC1C13F3256F11567E /* Check no modal presentation (MCP-04) */,
B4DBF90E660994C8B02BACF2 /* Check single memory.mutated emission site (MEM-06) */,
5EEF430098E4393F4C64D226 /* Check single memory.used emission site (D-05) */,
E8D59C61EEC6217BC20FBD62 /* Check presence-vision isolation (VISION-03) */,
C97897E76307F2552E0C7A0A /* Check embedding-dim literal (MEM-02) */,
D122C0A3ED0003CE60D6BF5D /* Check orchestrator.events single-consumer (Phase 9) */,
4B80D79B2A0254274258618C /* Build webview bundle */,
E0992BE4761F337F2AC5BF62 /* Sources */,
C593366D9BBD0DC5F45EA023 /* Resources */,
886D43D159942AB5C149B33B /* Frameworks */,
F77FB129C80991128E902F70 /* Copy voice models into Contents/Resources/Models/ */,
DD1590A06D57152C1B673573 /* Create Contents/Helpers directory */,
45D1C390727A1C150595B1D8 /* Copy MCP helpers into Contents/Helpers/ */,
318A7B75FBCC334BEF639033 /* Verify entitlements (pre-codesign) */,
6B8296F9F78BB0FC4B3EC838 /* Codesign bundle (deepest-first) */,
F902CE3B015FE94FD67700D8 /* Verify entitlements (post-codesign) */,
80CF8C4AEC506191702A625D /* Verify codesign settings (pbxproj lint) */,
);
buildRules = (
);
dependencies = (
054C62B25C6485E4E21A07FB /* PBXTargetDependency */,
3CDFB986AFD9C57D0FAC0AF3 /* PBXTargetDependency */,
DCCA11185E40A50262FDB945 /* PBXTargetDependency */,
);
name = Jarvis;
packageProductDependencies = (
1440CCDB2CC412B099BD0310 /* Keychain */,
61127935D1430B78A6FEACB0 /* Config */,
ED53153FE6F73137C23AD43B /* JarvisLogging */,
6FAD561608B0D1C402015E0D /* Shell */,
FB642DDAD826E62BBE1B8623 /* Bus */,
73CDBE39012C4ECD47291B0E /* AgentCore */,
955423140BB4EC27191C4FA7 /* AgentOrchestrator */,
DE970D2B3CA1AB0097A120D3 /* JarvisMCP */,
8E74C5DEAD36FEDB6342A54D /* Replay */,
D5E0D943EBC768ADB9C87F13 /* Logging */,
254100776001B345FD91877C /* Voice */,
59F56604A76635EC59D2671B /* Memory */,
C1168750998C14962FE14DEC /* JarvisVision */,
C50C1F6C67DE7D3A738845BD /* DevOverlay */,
);
productName = Jarvis;
productReference = F2EA89B09E63D9954B6EA5A4 /* Jarvis.app */;
productType = "com.apple.product-type.application";
};
77D05BC97C3ECFF21FD60D84 /* mcp-applescript */ = {
isa = PBXNativeTarget;
buildConfigurationList = 3A0BA60507713543EC100949 /* Build configuration list for PBXNativeTarget "mcp-applescript" */;
buildPhases = (
A74D94C2242E349A4AFCB5AA /* Sources */,
5E801AA735F5FC16788D2964 /* Frameworks */,
2D727ECAE27A2C9338EB5795 /* Copy mcp-applescript.entitlements into bundle Resources */,
);
buildRules = (
);
dependencies = (
);
name = "mcp-applescript";
packageProductDependencies = (
B97DB4370CDF8433823F370C /* MCP */,
);
productName = "mcp-applescript";
productReference = 3670E43064CC6F5A307142B2 /* mcp-applescript.app */;
productType = "com.apple.product-type.application";
};
93F20AEE91BB60C4ED0C0346 /* JarvisAppTests */ = {
isa = PBXNativeTarget;
buildConfigurationList = C56026A0C29F7E486D873FBB /* Build configuration list for PBXNativeTarget "JarvisAppTests" */;
buildPhases = (
A5FA109B8186C9417E8AF319 /* Sources */,
6341DE8F6C38220389F46936 /* Frameworks */,
);
buildRules = (
);
dependencies = (
958F3CEE3C1DD3F6F86D3E63 /* PBXTargetDependency */,
);
name = JarvisAppTests;
packageProductDependencies = (
4CB4DC60ABEBF2DC7A7FFE4C /* AgentCore */,
9DC9B6B513D7CCE63399A43B /* AgentOrchestrator */,
0AA20E2847670C06A4E77816 /* JarvisMCP */,
DD541498D4EDB1CB45EDBA21 /* Replay */,
8B5C832427B631F1F6EED6C2 /* Logging */,
1058DB02D52D27FA07A79025 /* Config */,
B2A25AADC21AA52E8197BC00 /* Keychain */,
97D6A753B03EF5503BEB726F /* Bus */,
8D3EE6699BA5134A3A067596 /* Shell */,
0216B841D52A80482E6DA800 /* JarvisLogging */,
F8C32F1B64110815E54CFE4F /* Voice */,
2F2268C4CA98018F9214D776 /* Memory */,
);
productName = JarvisAppTests;
productReference = 6784683F2262D8AFA439668D /* JarvisAppTests.xctest */;
productType = "com.apple.product-type.bundle.unit-test";
};
D7D11D4EF8FF2DD490BE1FA6 /* mcp-clipboard */ = {
isa = PBXNativeTarget;
buildConfigurationList = 6473F6964C9C476910464B1E /* Build configuration list for PBXNativeTarget "mcp-clipboard" */;
buildPhases = (
7624DFCC3E95875F83409C6F /* Sources */,
1F63B4089D7994428EDB5B42 /* Frameworks */,
9C0F129D1CD5A60C16660C62 /* Copy mcp-clipboard.entitlements into bundle Resources */,
);
buildRules = (
);
dependencies = (
);
name = "mcp-clipboard";
packageProductDependencies = (
EFBD95BA85DEFC31F7583FF2 /* MCP */,
);
productName = "mcp-clipboard";
productReference = E9CF7C158A5A7699A9CA32DE /* mcp-clipboard.app */;
productType = "com.apple.product-type.application";
};
F7B9CBCDAE3BC101ECD8F687 /* JarvisEntitlementProbeTests */ = {
isa = PBXNativeTarget;
buildConfigurationList = 10D20923AB792314B5DF876E /* Build configuration list for PBXNativeTarget "JarvisEntitlementProbeTests" */;
buildPhases = (
4748801F8593F7264718BA30 /* Sources */,
);
buildRules = (
);
dependencies = (
7DF6190F7FC7F658ED5FC678 /* PBXTargetDependency */,
);
name = JarvisEntitlementProbeTests;
packageProductDependencies = (
);
productName = JarvisEntitlementProbeTests;
productReference = FFBE24D9C8E23A56E1C1EF57 /* JarvisEntitlementProbeTests.xctest */;
productType = "com.apple.product-type.bundle.unit-test";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
33E99CF1F5349721FD0BB40B /* Project object */ = {
isa = PBXProject;
attributes = {
BuildIndependentTargetsInParallel = YES;
LastUpgradeCheck = 1430;
TargetAttributes = {
3D0DD086DB85E343B69EB2E8 = {
ProvisioningStyle = Manual;
};
461D90920FCD8CAF83348871 = {
ProvisioningStyle = Manual;
};
77D05BC97C3ECFF21FD60D84 = {
ProvisioningStyle = Manual;
};
93F20AEE91BB60C4ED0C0346 = {
ProvisioningStyle = Manual;
};
D7D11D4EF8FF2DD490BE1FA6 = {
ProvisioningStyle = Manual;
};
F7B9CBCDAE3BC101ECD8F687 = {
ProvisioningStyle = Manual;
};
};
};
buildConfigurationList = 5FF39917AC552CB1A0BD9FBA /* Build configuration list for PBXProject "Jarvis" */;
developmentRegion = en;
hasScannedForEncodings = 0;
knownRegions = (
Base,
en,
);
mainGroup = BC0DCAC9B7584481D8C65021;
minimizedProjectReferenceProxies = 1;
packageReferences = (
096B8CF3E4F95B22B4E50BE6 /* XCRemoteSwiftPackageReference "swift-log" */,
3C850EFCEBC3B4947F0F7AE1 /* XCRemoteSwiftPackageReference "swift-sdk" */,
7C9A86EDAF8C4170A3BD03EB /* XCLocalSwiftPackageReference "packages/AgentCore" */,
C9F5C5BB642801B788644312 /* XCLocalSwiftPackageReference "packages/Bus" */,
EFF4B62688DB8BC3E515BD34 /* XCLocalSwiftPackageReference "packages/Config" */,
E2A4E8E430F3095E56586E3D /* XCLocalSwiftPackageReference "packages/DevOverlay" */,
44849C6250CB0961C60F92EF /* XCLocalSwiftPackageReference "packages/Harness" */,
22F43C6F6F358E8483EC4DE0 /* XCLocalSwiftPackageReference "packages/Keychain" */,
984FAE3C0A7E82CA2D8C6CB0 /* XCLocalSwiftPackageReference "packages/Logging" */,
6F782D2F097AA8CC6D055E24 /* XCLocalSwiftPackageReference "packages/MCP" */,
D11689767F7244640A017EC8 /* XCLocalSwiftPackageReference "packages/Memory" */,
A5DF717817FCDA729574DE60 /* XCLocalSwiftPackageReference "packages/Replay" */,
041A479A331602AEDB682446 /* XCLocalSwiftPackageReference "packages/Shell" */,
0B603786B39BE01E4DA6E291 /* XCLocalSwiftPackageReference "packages/Vision" */,
6C5461AE3754FA04CB6DE44C /* XCLocalSwiftPackageReference "packages/Voice" */,
);
preferredProjectObjectVersion = 77;
productRefGroup = 7370B301BC3824D8E135198C /* Products */;
projectDirPath = "";
projectRoot = "";
targets = (
461D90920FCD8CAF83348871 /* Jarvis */,
93F20AEE91BB60C4ED0C0346 /* JarvisAppTests */,
F7B9CBCDAE3BC101ECD8F687 /* JarvisEntitlementProbeTests */,
77D05BC97C3ECFF21FD60D84 /* mcp-applescript */,
D7D11D4EF8FF2DD490BE1FA6 /* mcp-clipboard */,
3D0DD086DB85E343B69EB2E8 /* mcp-time */,
);
};
/* End PBXProject section */
/* Begin PBXResourcesBuildPhase section */
C593366D9BBD0DC5F45EA023 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
18CDCC4155A2604BC4D67147 /* Assets.xcassets in Resources */,
9A06E835DE29158C0EC43DE3 /* webview in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXShellScriptBuildPhase section */
16B4B1822351AC23B6276002 /* Check no evaluateJavaScript calls (HUD-04) */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
);
name = "Check no evaluateJavaScript calls (HUD-04)";
outputFileListPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${SRCROOT}/scripts/check-no-evaluate-javascript.sh\"\n";
};
19C4D644D9F5E146304D1FBE /* Check single-writer HUD state (HUD-08) */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
);
name = "Check single-writer HUD state (HUD-08)";
outputFileListPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${SRCROOT}/scripts/check-single-writer-hudstate.sh\"\n";
};
2D727ECAE27A2C9338EB5795 /* Copy mcp-applescript.entitlements into bundle Resources */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
);
name = "Copy mcp-applescript.entitlements into bundle Resources";
outputFileListPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "mkdir -p \"${TARGET_BUILD_DIR}/${WRAPPER_NAME}/Contents/Resources\"\ncp \"${SRCROOT}/mcp-servers/mcp-applescript/Support/mcp-applescript.entitlements\" \\\n \"${TARGET_BUILD_DIR}/${WRAPPER_NAME}/Contents/Resources/mcp-applescript.entitlements\"\n";
};
318A7B75FBCC334BEF639033 /* Verify entitlements (pre-codesign) */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
"$(TARGET_BUILD_DIR)/$(INFOPLIST_PATH)",
);
name = "Verify entitlements (pre-codesign)";
outputFileListPaths = (
);
outputPaths = (
"$(DERIVED_FILE_DIR)/pre-codesign.stamp",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${SRCROOT}/scripts/verify-entitlements.sh\" --pre-codesign\n# Stamp file for build-graph ordering (see comment above). The\n# script's real side effect is on Info.plist, but we expose this\n# stamp as the virtual output so Xcode 26 can sequence later\n# phases (codesign, post-codesign) behind us deterministically.\nmkdir -p \"${DERIVED_FILE_DIR}\"\n/usr/bin/touch \"${DERIVED_FILE_DIR}/pre-codesign.stamp\"\n";
};
45D1C390727A1C150595B1D8 /* Copy MCP helpers into Contents/Helpers/ */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
);
name = "Copy MCP helpers into Contents/Helpers/";
outputFileListPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "# Replace any prior copies wholesale so stale files don't linger after\n# a helper rename or removal. -R preserves the .app bundle structure.\nset -euo pipefail\nDEST=\"${TARGET_BUILD_DIR}/${WRAPPER_NAME}/Contents/Helpers\"\nfor HELPER in mcp-time mcp-clipboard mcp-applescript; do\n SRC=\"${BUILT_PRODUCTS_DIR}/${HELPER}.app\"\n if [ ! -d \"$SRC\" ]; then\n echo \"error: helper bundle missing at $SRC (was the ${HELPER} target built first?)\" >&2\n exit 1\n fi\n rm -rf \"${DEST}/${HELPER}.app\"\n cp -R \"$SRC\" \"${DEST}/${HELPER}.app\"\ndone\n";
};
4B80D79B2A0254274258618C /* Build webview bundle */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
);
name = "Build webview bundle";
outputFileListPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${SRCROOT}/scripts/build-webview.sh\"\n";
};
5203E8AC1C13F3256F11567E /* Check no modal presentation (MCP-04) */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
);
name = "Check no modal presentation (MCP-04)";
outputFileListPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${SRCROOT}/scripts/check-no-modal-presentation.sh\"\n";
};
5EEF430098E4393F4C64D226 /* Check single memory.used emission site (D-05) */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
);
name = "Check single memory.used emission site (D-05)";
outputFileListPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${SRCROOT}/scripts/check-single-memory-used-emit.sh\"\n";
};
6A19A71D8F7B0FED56530812 /* Check bus-harness.html parity (canonical vs bundle) */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
"$(SRCROOT)/webview/bus-harness.html",
"$(SRCROOT)/App/Resources/webview/bus-harness.html",
);
name = "Check bus-harness.html parity (canonical vs bundle)";
outputFileListPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${SRCROOT}/scripts/check-bus-harness-parity.sh\"\n";
};
6B7F46C0E5B0E3F12717BC9B /* Copy mcp-time.entitlements into bundle Resources */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
);
name = "Copy mcp-time.entitlements into bundle Resources";
outputFileListPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "mkdir -p \"${TARGET_BUILD_DIR}/${WRAPPER_NAME}/Contents/Resources\"\ncp \"${SRCROOT}/mcp-servers/mcp-time/Support/mcp-time.entitlements\" \\\n \"${TARGET_BUILD_DIR}/${WRAPPER_NAME}/Contents/Resources/mcp-time.entitlements\"\n";
};
6B8296F9F78BB0FC4B3EC838 /* Codesign bundle (deepest-first) */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
"$(DERIVED_FILE_DIR)/pre-codesign.stamp",
);
name = "Codesign bundle (deepest-first)";
outputFileListPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "# Fall back to CODE_SIGN_IDENTITY (then ad-hoc \"-\") when CODE_SIGNING_ALLOWED=NO,\n# since Xcode does not set EXPANDED_CODE_SIGN_IDENTITY in that case.\nexport EXPANDED_CODE_SIGN_IDENTITY=\"${EXPANDED_CODE_SIGN_IDENTITY:-${CODE_SIGN_IDENTITY:--}}\"\n\"${SRCROOT}/scripts/codesign.sh\"\n";
};
80CF8C4AEC506191702A625D /* Verify codesign settings (pbxproj lint) */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
);
name = "Verify codesign settings (pbxproj lint)";
outputFileListPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${SRCROOT}/scripts/verify-codesign-settings.sh\"\n";
};
9C0F129D1CD5A60C16660C62 /* Copy mcp-clipboard.entitlements into bundle Resources */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
);
name = "Copy mcp-clipboard.entitlements into bundle Resources";
outputFileListPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "mkdir -p \"${TARGET_BUILD_DIR}/${WRAPPER_NAME}/Contents/Resources\"\ncp \"${SRCROOT}/mcp-servers/mcp-clipboard/Support/mcp-clipboard.entitlements\" \\\n \"${TARGET_BUILD_DIR}/${WRAPPER_NAME}/Contents/Resources/mcp-clipboard.entitlements\"\n";
};
A9F0578ECF5691986EE06B5B /* Check bus protocol version (Swift/TS parity) */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
"$(SRCROOT)/packages/Bus/Sources/Bus/Protocol.swift",
"$(SRCROOT)/webview/packages/bus/src/protocol.ts",
);
name = "Check bus protocol version (Swift/TS parity)";
outputFileListPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${SRCROOT}/scripts/check-bus-protocol-version.sh\"\n";
};
B4DBF90E660994C8B02BACF2 /* Check single memory.mutated emission site (MEM-06) */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
);
name = "Check single memory.mutated emission site (MEM-06)";
outputFileListPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${SRCROOT}/scripts/check-single-memory-mutated-emit.sh\"\n";
};
C97897E76307F2552E0C7A0A /* Check embedding-dim literal (MEM-02) */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
);
name = "Check embedding-dim literal (MEM-02)";
outputFileListPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${SRCROOT}/scripts/check-embedding-dim-literal.sh\"\n";
};
D122C0A3ED0003CE60D6BF5D /* Check orchestrator.events single-consumer (Phase 9) */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
);
name = "Check orchestrator.events single-consumer (Phase 9)";
outputFileListPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${SRCROOT}/scripts/check-orchestrator-events-single-consumer.sh\"\n";
};
DD1590A06D57152C1B673573 /* Create Contents/Helpers directory */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
);
name = "Create Contents/Helpers directory";
outputFileListPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "mkdir -p \"${TARGET_BUILD_DIR}/${WRAPPER_NAME}/Contents/Helpers\"\n";
};
E8D59C61EEC6217BC20FBD62 /* Check presence-vision isolation (VISION-03) */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
);
name = "Check presence-vision isolation (VISION-03)";
outputFileListPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${SRCROOT}/scripts/check-presence-vision-isolation.sh\"\n";
};
F77FB129C80991128E902F70 /* Copy voice models into Contents/Resources/Models/ */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
);
name = "Copy voice models into Contents/Resources/Models/";
outputFileListPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${SRCROOT}/scripts/copy-voice-models.sh\"\n";
};
F902CE3B015FE94FD67700D8 /* Verify entitlements (post-codesign) */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
);
name = "Verify entitlements (post-codesign)";
outputFileListPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${SRCROOT}/scripts/verify-entitlements.sh\" --post-codesign\n";
};
/* End PBXShellScriptBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
4748801F8593F7264718BA30 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
6A2D9DE01C3C53094A820DDF /* JarvisEntitlementProbeTests.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
72C49B7C0433B488122A9A3C /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
17072C84550FC4659C4810B9 /* MCPTimeMain.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
7624DFCC3E95875F83409C6F /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
AA6FBB22D0352A50335801C1 /* MCPClipboardMain.swift in Sources */,
267515392F3978AA4A96EFA2 /* PasteboardReader.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
A5FA109B8186C9417E8AF319 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
CD22CB0656265A2623BA7FD0 /* AnthropicKeyValidatorTests.swift in Sources */,
93FDBFFCCEFC0848F1C5E630 /* AppDelegateBusWiringTests.swift in Sources */,
E8CD13B014BB64CAB1ACA632 /* AppDelegateEntitlementTests.swift in Sources */,
66B4B219EF4EC3EBDE5D1A4B /* AppDelegateWiringTests.swift in Sources */,
CFBEF67D687A1227C9C2A6BD /* HUDBannerCoordinatorTests.swift in Sources */,
C9F3B34208084769106C4B07 /* HudStateCoordinatorBusWiringTests.swift in Sources */,
8E4590089A7955545E2146D3 /* HudStateCoordinatorTests.swift in Sources */,
BBD8BBC82E0D3C57E0DB4ED0 /* HudStateEnumTests.swift in Sources */,
461A5FACC5A3C2025FB0A233 /* JarvisHUDPanelTests.swift in Sources */,
70D09A556654E11B140AFBD4 /* MCPBusGatewayAdapterTests.swift in Sources */,
5AD556F5095852328E72BE36 /* MCPRuntimeWiringTests.swift in Sources */,
9F391DC98880FE923E6594CF /* MemoryInstallWiringTests.swift in Sources */,
5B5175F8D07766B3394DF19C /* MenuBarIconControllerTests.swift in Sources */,
68F00CB9ED4EFBE1E630C859 /* ProductionChunkPumpTests.swift in Sources */,
B5416071D18E6C124365A8EC /* VoiceOrchestratorAdapterTests.swift in Sources */,
F6423C84483BB194348837F5 /* VoiceWiringTests.swift in Sources */,
C336B40332A148A5A1F2DDC8 /* WebviewBundleLoadTests.swift in Sources */,
AC359FF68F49110FF9B6E6E5 /* WizardStageAPIKeyViewTests.swift in Sources */,
63C72C019170ED28C4900DB9 /* WizardStateTests.swift in Sources */,
573540593E2D1EB1F0F6F31C /* WizardTCCStageTests.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
A74D94C2242E349A4AFCB5AA /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
781E23F05F4EBBD3D3CB8E3F /* AppleScriptRunner.swift in Sources */,
01787A3F29649644D0B3090D /* MCPAppleScriptMain.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
E0992BE4761F337F2AC5BF62 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
50C095E6F675D26E9C399179 /* AnthropicKeyValidator.swift in Sources */,
925998B6DF1DB8263B4A6280 /* AppBusForwarderSink.swift in Sources */,
8196D4F5AF4011F7F93E48EC /* AppDelegate.swift in Sources */,
2245DEFA1E6C3880E3C78E56 /* AppDelegateContextBuilderAdapter.swift in Sources */,
CCA51A998B128C9C03ED0662 /* AppDelegateFrameAttachAdapters.swift in Sources */,
0288ABA48E6EC8450BE4BC5F /* BannerContent.swift in Sources */,
3CB366DAB60188FE8DCCDCFD /* BootHealthProbes.swift in Sources */,
C3917516BFFF438A4AD5CE80 /* BrandColors.swift in Sources */,
A8F96FFF1766D44AA16665A3 /* CAAnimationFactory.swift in Sources */,
E218ADC35078C6F26F0D0041 /* HUDBanner.swift in Sources */,
B64A0CAA46B3C146B54F9F85 /* HUDBannerCoordinator.swift in Sources */,
A9F18AF7B16BEA1776F76321 /* HUDBannerPanel.swift in Sources */,
78AA6D0286502DC0F1F4304D /* HudState.swift in Sources */,
535CF63FE4AD779CE4EBFA2A /* HudStateBridge.swift in Sources */,
5230995216EF1EE333B51529 /* HudStateCoordinator.swift in Sources */,
896984D88C412595C0F6F97E /* HudStateIntent.swift in Sources */,
98165CEB562FE32CD16BAA1D /* InProcessMemoryAdapters.swift in Sources */,
E7F6C8E910BA8B5F7629DEF7 /* InProcessSelfStateAdapters.swift in Sources */,
526BDF4D6BC5714809B2E937 /* JarvisApp.swift in Sources */,
BEFC509502C7940A21001F9F /* JarvisHUDPanel.swift in Sources */,
CD2C5779101FE0384611ECCC /* MCPBusGatewayAdapter.swift in Sources */,
8EF7109838AD91E95506BD1B /* MCPRuntimeWiring.swift in Sources */,
A20E24D0AB73FFBBE4AB9B9B /* MenuBarContextMenu.swift in Sources */,
9933987292A1035BB048D0B9 /* MenuBarIconController.swift in Sources */,
7EFA9CFF57B04C03347D3174 /* OnboardingWizardController.swift in Sources */,
EF9A869A3403AF044999784F /* ProductionChunkPump.swift in Sources */,
63C78894699F60D1DE3A6715 /* RejectReasonCopy.swift in Sources */,
A30C09AE5D98B07A92945E1F /* ReplayingToolResultObserver.swift in Sources */,
DB7800734578396AA72EADAF /* SettingsView.swift in Sources */,
2C4F2BE06A3AC37B492486DD /* SettingsWindowController.swift in Sources */,
8FE2F607ABF836C4727C372E /* StatusPanel.swift in Sources */,
8684EF1EAC5D350C2CCAB3CF /* VoiceBusEmitterAdapter.swift in Sources */,
B8F411ADE70402B71887E377 /* VoiceOrchestratorAdapter.swift in Sources */,
38E9EAF5506E27D6D47B1F52 /* VoiceOutputWiring.swift in Sources */,
339AAD7A8C3E4A6AF4825F0D /* VoiceTTSAdapter.swift in Sources */,
2BCA466CFD785F3BC989C35F /* WizardStageAPIKeyView.swift in Sources */,
E49FEEFE453A055F65DA31FF /* WizardStageHotkeyView.swift in Sources */,
9F451A31E6DF755ABC86885A /* WizardStageTCCView.swift in Sources */,
29CF0F24C5D0DD0A8F1A0AEE /* WizardState.swift in Sources */,
7270A6A54B0DC1510EB9C56A /* WizardView.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXTargetDependency section */
054C62B25C6485E4E21A07FB /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = 3D0DD086DB85E343B69EB2E8 /* mcp-time */;
targetProxy = 0C47860A5999E2D2FF3E2541 /* PBXContainerItemProxy */;
};
3CDFB986AFD9C57D0FAC0AF3 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = D7D11D4EF8FF2DD490BE1FA6 /* mcp-clipboard */;
targetProxy = 3712067C4D21682FCFB04AE1 /* PBXContainerItemProxy */;
};
7DF6190F7FC7F658ED5FC678 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = 461D90920FCD8CAF83348871 /* Jarvis */;
targetProxy = AA51ED58F753D32E71E8C945 /* PBXContainerItemProxy */;
};
958F3CEE3C1DD3F6F86D3E63 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = 461D90920FCD8CAF83348871 /* Jarvis */;
targetProxy = D219C62B6F700143D5A8973F /* PBXContainerItemProxy */;
};
DCCA11185E40A50262FDB945 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = 77D05BC97C3ECFF21FD60D84 /* mcp-applescript */;
targetProxy = 22F6E0F368503D9A2922877B /* PBXContainerItemProxy */;
};
/* End PBXTargetDependency section */
/* Begin XCBuildConfiguration section */
06169DA02795A8ED87F6F021 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGNING_ALLOWED = NO;
CODE_SIGNING_REQUIRED = NO;
CODE_SIGN_ENTITLEMENTS = App/Jarvis.Debug.entitlements;
CODE_SIGN_IDENTITY = "-";
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
ENABLE_HARDENED_RUNTIME = NO;
GENERATE_INFOPLIST_FILE = NO;
INFOPLIST_FILE = App/Info.plist;
LD_RUNPATH_SEARCH_PATHS = "@executable_path/../Frameworks";
MACOSX_DEPLOYMENT_TARGET = 14.0;
OTHER_CODE_SIGN_FLAGS = "";
PRODUCT_BUNDLE_IDENTIFIER = com.koftwentytwo.jarvis;
PRODUCT_NAME = Jarvis;
SDKROOT = macosx;
SWIFT_ENABLE_DEBUG_DYLIB = NO;
SWIFT_STRICT_CONCURRENCY = complete;
SWIFT_VERSION = 6.0;
};
name = Debug;
};
07E5B71316B4C86D9A7171B5 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGNING_ALLOWED = NO;
CODE_SIGNING_REQUIRED = NO;
CODE_SIGN_ENTITLEMENTS = "mcp-servers/mcp-applescript/Support/mcp-applescript.entitlements";
CODE_SIGN_IDENTITY = "-";
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
DEVELOPMENT_TEAM = 7UC2HETAN9;
ENABLE_HARDENED_RUNTIME = YES;
GENERATE_INFOPLIST_FILE = NO;
INFOPLIST_FILE = "mcp-servers/mcp-applescript/Support/Info.plist";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 14.0;
OTHER_CODE_SIGN_FLAGS = "--options=runtime --timestamp";
PRODUCT_BUNDLE_IDENTIFIER = "com.koftwentytwo.jarvis.mcp-applescript";
PRODUCT_NAME = "mcp-applescript";
SDKROOT = macosx;
SWIFT_STRICT_CONCURRENCY = complete;
SWIFT_VERSION = 6.0;
};
name = Release;
};
3AC3410B6AFDA84D1A773C6C /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
BUNDLE_LOADER = "$(TEST_HOST)";
CODE_SIGNING_ALLOWED = NO;
CODE_SIGNING_REQUIRED = NO;
CODE_SIGN_IDENTITY = "-";
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
GENERATE_INFOPLIST_FILE = NO;
INFOPLIST_FILE = App/Tests/JarvisEntitlementProbeTests/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
"@loader_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 14.0;
OTHER_SWIFT_FLAGS = "-DJARVIS_ENTITLEMENT_PROBE";
PRODUCT_BUNDLE_IDENTIFIER = com.koftwentytwo.jarvis.EntitlementProbeTests;
PRODUCT_NAME = JarvisEntitlementProbeTests;
SDKROOT = macosx;
SWIFT_STRICT_CONCURRENCY = complete;
SWIFT_VERSION = 6.0;
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Jarvis.app/Contents/MacOS/Jarvis";
};
name = Debug;
};
4D0766B9ED0197CF4BCB3B20 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGNING_ALLOWED = NO;
CODE_SIGNING_REQUIRED = NO;
CODE_SIGN_ENTITLEMENTS = "mcp-servers/mcp-clipboard/Support/mcp-clipboard.entitlements";
CODE_SIGN_IDENTITY = "-";
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
DEVELOPMENT_TEAM = 7UC2HETAN9;
ENABLE_HARDENED_RUNTIME = YES;
GENERATE_INFOPLIST_FILE = NO;
INFOPLIST_FILE = "mcp-servers/mcp-clipboard/Support/Info.plist";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 14.0;
OTHER_CODE_SIGN_FLAGS = "--options=runtime --timestamp";
PRODUCT_BUNDLE_IDENTIFIER = "com.koftwentytwo.jarvis.mcp-clipboard";
PRODUCT_NAME = "mcp-clipboard";
SDKROOT = macosx;
SWIFT_STRICT_CONCURRENCY = complete;
SWIFT_VERSION = 6.0;
};
name = Release;
};
79CB820AD9DBDFAC3BAD9AB2 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
BUNDLE_LOADER = "$(TEST_HOST)";
CODE_SIGN_IDENTITY = "-";
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
GENERATE_INFOPLIST_FILE = YES;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
"@loader_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 14.0;
PRODUCT_BUNDLE_IDENTIFIER = com.koftwentytwo.jarvis.AppTests;
PRODUCT_NAME = JarvisAppTests;
SDKROOT = macosx;
SWIFT_STRICT_CONCURRENCY = complete;
SWIFT_VERSION = 6.0;
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Jarvis.app/Contents/MacOS/Jarvis";
};
name = Release;
};
880D5242E99CF972F0FA3BE1 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGNING_ALLOWED = NO;
CODE_SIGNING_REQUIRED = NO;
CODE_SIGN_ENTITLEMENTS = "mcp-servers/mcp-time/Support/mcp-time.entitlements";
CODE_SIGN_IDENTITY = "-";
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
ENABLE_HARDENED_RUNTIME = NO;
GENERATE_INFOPLIST_FILE = NO;
INFOPLIST_FILE = "mcp-servers/mcp-time/Support/Info.plist";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 14.0;
OTHER_CODE_SIGN_FLAGS = "";
PRODUCT_BUNDLE_IDENTIFIER = "com.koftwentytwo.jarvis.mcp-time";
PRODUCT_NAME = "mcp-time";
SDKROOT = macosx;
SWIFT_STRICT_CONCURRENCY = complete;
SWIFT_VERSION = 6.0;
};
name = Debug;
};
8A75D86FEE135E74011AB6D2 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_ENABLE_OBJC_WEAK = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
CODE_SIGN_IDENTITY = "-";
CODE_SIGN_STYLE = Manual;
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = dwarf;
ENABLE_HARDENED_RUNTIME = YES;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
GCC_C_LANGUAGE_STANDARD = gnu11;
GCC_DYNAMIC_NO_PIC = NO;
GCC_NO_COMMON_BLOCKS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PREPROCESSOR_DEFINITIONS = (
"$(inherited)",
"DEBUG=1",
);
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
LD_RUNPATH_SEARCH_PATHS = "@executable_path/../Frameworks";
MACOSX_DEPLOYMENT_TARGET = 14.0;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
ONLY_ACTIVE_ARCH = YES;
OTHER_CODE_SIGN_FLAGS = "--options=runtime --timestamp";
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
SWIFT_STRICT_CONCURRENCY = complete;
SWIFT_VERSION = 6.0;
};
name = Debug;
};
982FE6DD3825769AF0840191 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGNING_ALLOWED = NO;
CODE_SIGNING_REQUIRED = NO;
CODE_SIGN_ENTITLEMENTS = "mcp-servers/mcp-applescript/Support/mcp-applescript.entitlements";
CODE_SIGN_IDENTITY = "-";
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
ENABLE_HARDENED_RUNTIME = NO;
GENERATE_INFOPLIST_FILE = NO;
INFOPLIST_FILE = "mcp-servers/mcp-applescript/Support/Info.plist";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 14.0;
OTHER_CODE_SIGN_FLAGS = "";
PRODUCT_BUNDLE_IDENTIFIER = "com.koftwentytwo.jarvis.mcp-applescript";
PRODUCT_NAME = "mcp-applescript";
SDKROOT = macosx;
SWIFT_STRICT_CONCURRENCY = complete;
SWIFT_VERSION = 6.0;
};
name = Debug;
};
9D360E33867B86D16BD78991 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGNING_ALLOWED = NO;
CODE_SIGNING_REQUIRED = NO;
CODE_SIGN_ENTITLEMENTS = "mcp-servers/mcp-time/Support/mcp-time.entitlements";
CODE_SIGN_IDENTITY = "-";
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
DEVELOPMENT_TEAM = 7UC2HETAN9;
ENABLE_HARDENED_RUNTIME = YES;
GENERATE_INFOPLIST_FILE = NO;
INFOPLIST_FILE = "mcp-servers/mcp-time/Support/Info.plist";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 14.0;
OTHER_CODE_SIGN_FLAGS = "--options=runtime --timestamp";
PRODUCT_BUNDLE_IDENTIFIER = "com.koftwentytwo.jarvis.mcp-time";
PRODUCT_NAME = "mcp-time";
SDKROOT = macosx;
SWIFT_STRICT_CONCURRENCY = complete;
SWIFT_VERSION = 6.0;
};
name = Release;
};
A5A5079A306E1695C2FCBC38 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
BUNDLE_LOADER = "$(TEST_HOST)";
CODE_SIGNING_ALLOWED = NO;
CODE_SIGNING_REQUIRED = NO;
CODE_SIGN_IDENTITY = "-";
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
GENERATE_INFOPLIST_FILE = YES;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
"@loader_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 14.0;
PRODUCT_BUNDLE_IDENTIFIER = com.koftwentytwo.jarvis.AppTests;
PRODUCT_NAME = JarvisAppTests;
SDKROOT = macosx;
SWIFT_STRICT_CONCURRENCY = complete;
SWIFT_VERSION = 6.0;
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Jarvis.app/Contents/MacOS/Jarvis";
};
name = Debug;
};
B2D880C3AD0AE8497C58899E /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
BUNDLE_LOADER = "$(TEST_HOST)";
CODE_SIGN_IDENTITY = "-";
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
GENERATE_INFOPLIST_FILE = NO;
INFOPLIST_FILE = App/Tests/JarvisEntitlementProbeTests/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
"@loader_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 14.0;
OTHER_SWIFT_FLAGS = "-DJARVIS_ENTITLEMENT_PROBE";
PRODUCT_BUNDLE_IDENTIFIER = com.koftwentytwo.jarvis.EntitlementProbeTests;
PRODUCT_NAME = JarvisEntitlementProbeTests;
SDKROOT = macosx;
SWIFT_STRICT_CONCURRENCY = complete;
SWIFT_VERSION = 6.0;
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Jarvis.app/Contents/MacOS/Jarvis";
};
name = Release;
};
B81D099211BB3784F907E95C /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGNING_ALLOWED = NO;
CODE_SIGNING_REQUIRED = NO;
CODE_SIGN_ENTITLEMENTS = App/Jarvis.Release.entitlements;
CODE_SIGN_IDENTITY = "-";
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
DEVELOPMENT_TEAM = 7UC2HETAN9;
ENABLE_HARDENED_RUNTIME = YES;
GENERATE_INFOPLIST_FILE = NO;
INFOPLIST_FILE = App/Info.plist;
LD_RUNPATH_SEARCH_PATHS = "@executable_path/../Frameworks";
MACOSX_DEPLOYMENT_TARGET = 14.0;
OTHER_CODE_SIGN_FLAGS = "--options=runtime --timestamp";
PRODUCT_BUNDLE_IDENTIFIER = com.koftwentytwo.jarvis;
PRODUCT_NAME = Jarvis;
SDKROOT = macosx;
SWIFT_STRICT_CONCURRENCY = complete;
SWIFT_VERSION = 6.0;
};
name = Release;
};
CA2EDC6435E5128E90920A00 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_ENABLE_OBJC_WEAK = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
CODE_SIGN_IDENTITY = "-";
CODE_SIGN_STYLE = Manual;
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = 7UC2HETAN9;
ENABLE_HARDENED_RUNTIME = YES;
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
GCC_C_LANGUAGE_STANDARD = gnu11;
GCC_NO_COMMON_BLOCKS = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
LD_RUNPATH_SEARCH_PATHS = "@executable_path/../Frameworks";
MACOSX_DEPLOYMENT_TARGET = 14.0;
MTL_ENABLE_DEBUG_INFO = NO;
MTL_FAST_MATH = YES;
OTHER_CODE_SIGN_FLAGS = "--options=runtime --timestamp";
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
SWIFT_COMPILATION_MODE = wholemodule;
SWIFT_OPTIMIZATION_LEVEL = "-O";
SWIFT_STRICT_CONCURRENCY = complete;
SWIFT_VERSION = 6.0;
};
name = Release;
};
E4071D1C931E74184FDE8FEC /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGNING_ALLOWED = NO;
CODE_SIGNING_REQUIRED = NO;
CODE_SIGN_ENTITLEMENTS = "mcp-servers/mcp-clipboard/Support/mcp-clipboard.entitlements";
CODE_SIGN_IDENTITY = "-";
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
ENABLE_HARDENED_RUNTIME = NO;
GENERATE_INFOPLIST_FILE = NO;
INFOPLIST_FILE = "mcp-servers/mcp-clipboard/Support/Info.plist";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 14.0;
OTHER_CODE_SIGN_FLAGS = "";
PRODUCT_BUNDLE_IDENTIFIER = "com.koftwentytwo.jarvis.mcp-clipboard";
PRODUCT_NAME = "mcp-clipboard";
SDKROOT = macosx;
SWIFT_STRICT_CONCURRENCY = complete;
SWIFT_VERSION = 6.0;
};
name = Debug;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
10D20923AB792314B5DF876E /* Build configuration list for PBXNativeTarget "JarvisEntitlementProbeTests" */ = {
isa = XCConfigurationList;
buildConfigurations = (
3AC3410B6AFDA84D1A773C6C /* Debug */,
B2D880C3AD0AE8497C58899E /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
};
3A0BA60507713543EC100949 /* Build configuration list for PBXNativeTarget "mcp-applescript" */ = {
isa = XCConfigurationList;
buildConfigurations = (
982FE6DD3825769AF0840191 /* Debug */,
07E5B71316B4C86D9A7171B5 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
};
5FF39917AC552CB1A0BD9FBA /* Build configuration list for PBXProject "Jarvis" */ = {
isa = XCConfigurationList;
buildConfigurations = (
8A75D86FEE135E74011AB6D2 /* Debug */,
CA2EDC6435E5128E90920A00 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
};
6473F6964C9C476910464B1E /* Build configuration list for PBXNativeTarget "mcp-clipboard" */ = {
isa = XCConfigurationList;
buildConfigurations = (
E4071D1C931E74184FDE8FEC /* Debug */,
4D0766B9ED0197CF4BCB3B20 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
};
AB916DC2F5487D6404DC84EA /* Build configuration list for PBXNativeTarget "mcp-time" */ = {
isa = XCConfigurationList;
buildConfigurations = (
880D5242E99CF972F0FA3BE1 /* Debug */,
9D360E33867B86D16BD78991 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
};
B6D5E915E8E9BDF0BF748745 /* Build configuration list for PBXNativeTarget "Jarvis" */ = {
isa = XCConfigurationList;
buildConfigurations = (
06169DA02795A8ED87F6F021 /* Debug */,
B81D099211BB3784F907E95C /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
};
C56026A0C29F7E486D873FBB /* Build configuration list for PBXNativeTarget "JarvisAppTests" */ = {
isa = XCConfigurationList;
buildConfigurations = (
A5A5079A306E1695C2FCBC38 /* Debug */,
79CB820AD9DBDFAC3BAD9AB2 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
};
/* End XCConfigurationList section */
/* Begin XCLocalSwiftPackageReference section */
041A479A331602AEDB682446 /* XCLocalSwiftPackageReference "packages/Shell" */ = {
isa = XCLocalSwiftPackageReference;
relativePath = packages/Shell;
};
0B603786B39BE01E4DA6E291 /* XCLocalSwiftPackageReference "packages/Vision" */ = {
isa = XCLocalSwiftPackageReference;
relativePath = packages/Vision;
};
22F43C6F6F358E8483EC4DE0 /* XCLocalSwiftPackageReference "packages/Keychain" */ = {
isa = XCLocalSwiftPackageReference;
relativePath = packages/Keychain;
};
44849C6250CB0961C60F92EF /* XCLocalSwiftPackageReference "packages/Harness" */ = {
isa = XCLocalSwiftPackageReference;
relativePath = packages/Harness;
};
6C5461AE3754FA04CB6DE44C /* XCLocalSwiftPackageReference "packages/Voice" */ = {
isa = XCLocalSwiftPackageReference;
relativePath = packages/Voice;
};
6F782D2F097AA8CC6D055E24 /* XCLocalSwiftPackageReference "packages/MCP" */ = {
isa = XCLocalSwiftPackageReference;
relativePath = packages/MCP;
};
7C9A86EDAF8C4170A3BD03EB /* XCLocalSwiftPackageReference "packages/AgentCore" */ = {
isa = XCLocalSwiftPackageReference;
relativePath = packages/AgentCore;
};
984FAE3C0A7E82CA2D8C6CB0 /* XCLocalSwiftPackageReference "packages/Logging" */ = {
isa = XCLocalSwiftPackageReference;
relativePath = packages/Logging;
};
A5DF717817FCDA729574DE60 /* XCLocalSwiftPackageReference "packages/Replay" */ = {
isa = XCLocalSwiftPackageReference;
relativePath = packages/Replay;
};
C9F5C5BB642801B788644312 /* XCLocalSwiftPackageReference "packages/Bus" */ = {
isa = XCLocalSwiftPackageReference;
relativePath = packages/Bus;
};
D11689767F7244640A017EC8 /* XCLocalSwiftPackageReference "packages/Memory" */ = {
isa = XCLocalSwiftPackageReference;
relativePath = packages/Memory;
};
E2A4E8E430F3095E56586E3D /* XCLocalSwiftPackageReference "packages/DevOverlay" */ = {
isa = XCLocalSwiftPackageReference;
relativePath = packages/DevOverlay;
};
EFF4B62688DB8BC3E515BD34 /* XCLocalSwiftPackageReference "packages/Config" */ = {
isa = XCLocalSwiftPackageReference;
relativePath = packages/Config;
};
/* End XCLocalSwiftPackageReference section */
/* Begin XCRemoteSwiftPackageReference section */
096B8CF3E4F95B22B4E50BE6 /* XCRemoteSwiftPackageReference "swift-log" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/apple/swift-log.git";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 1.5.0;
};
};
3C850EFCEBC3B4947F0F7AE1 /* XCRemoteSwiftPackageReference "swift-sdk" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/modelcontextprotocol/swift-sdk";
requirement = {
kind = exactVersion;
version = 0.12.0;
};
};
/* End XCRemoteSwiftPackageReference section */
/* Begin XCSwiftPackageProductDependency section */
003ADC59F1F11095A80EAE32 /* MCP */ = {
isa = XCSwiftPackageProductDependency;
package = 3C850EFCEBC3B4947F0F7AE1 /* XCRemoteSwiftPackageReference "swift-sdk" */;
productName = MCP;
};
0216B841D52A80482E6DA800 /* JarvisLogging */ = {
isa = XCSwiftPackageProductDependency;
productName = JarvisLogging;
};
0AA20E2847670C06A4E77816 /* JarvisMCP */ = {
isa = XCSwiftPackageProductDependency;
productName = JarvisMCP;
};
1058DB02D52D27FA07A79025 /* Config */ = {
isa = XCSwiftPackageProductDependency;
productName = Config;
};
1440CCDB2CC412B099BD0310 /* Keychain */ = {
isa = XCSwiftPackageProductDependency;
productName = Keychain;
};
254100776001B345FD91877C /* Voice */ = {
isa = XCSwiftPackageProductDependency;
productName = Voice;
};
2F2268C4CA98018F9214D776 /* Memory */ = {
isa = XCSwiftPackageProductDependency;
productName = Memory;
};
4CB4DC60ABEBF2DC7A7FFE4C /* AgentCore */ = {
isa = XCSwiftPackageProductDependency;
productName = AgentCore;
};
59F56604A76635EC59D2671B /* Memory */ = {
isa = XCSwiftPackageProductDependency;
productName = Memory;
};
61127935D1430B78A6FEACB0 /* Config */ = {
isa = XCSwiftPackageProductDependency;
productName = Config;
};
6FAD561608B0D1C402015E0D /* Shell */ = {
isa = XCSwiftPackageProductDependency;
productName = Shell;
};
73CDBE39012C4ECD47291B0E /* AgentCore */ = {
isa = XCSwiftPackageProductDependency;
productName = AgentCore;
};
8B5C832427B631F1F6EED6C2 /* Logging */ = {
isa = XCSwiftPackageProductDependency;
package = 096B8CF3E4F95B22B4E50BE6 /* XCRemoteSwiftPackageReference "swift-log" */;
productName = Logging;
};
8D3EE6699BA5134A3A067596 /* Shell */ = {
isa = XCSwiftPackageProductDependency;
productName = Shell;
};
8E74C5DEAD36FEDB6342A54D /* Replay */ = {
isa = XCSwiftPackageProductDependency;
productName = Replay;
};
955423140BB4EC27191C4FA7 /* AgentOrchestrator */ = {
isa = XCSwiftPackageProductDependency;
productName = AgentOrchestrator;
};
97D6A753B03EF5503BEB726F /* Bus */ = {
isa = XCSwiftPackageProductDependency;
productName = Bus;
};
9DC9B6B513D7CCE63399A43B /* AgentOrchestrator */ = {
isa = XCSwiftPackageProductDependency;
productName = AgentOrchestrator;
};
B2A25AADC21AA52E8197BC00 /* Keychain */ = {
isa = XCSwiftPackageProductDependency;
productName = Keychain;
};
B97DB4370CDF8433823F370C /* MCP */ = {
isa = XCSwiftPackageProductDependency;
package = 3C850EFCEBC3B4947F0F7AE1 /* XCRemoteSwiftPackageReference "swift-sdk" */;
productName = MCP;
};
C1168750998C14962FE14DEC /* JarvisVision */ = {
isa = XCSwiftPackageProductDependency;
productName = JarvisVision;
};
C50C1F6C67DE7D3A738845BD /* DevOverlay */ = {
isa = XCSwiftPackageProductDependency;
productName = DevOverlay;
};
D5E0D943EBC768ADB9C87F13 /* Logging */ = {
isa = XCSwiftPackageProductDependency;
package = 096B8CF3E4F95B22B4E50BE6 /* XCRemoteSwiftPackageReference "swift-log" */;
productName = Logging;
};
DD541498D4EDB1CB45EDBA21 /* Replay */ = {
isa = XCSwiftPackageProductDependency;
productName = Replay;
};
DE970D2B3CA1AB0097A120D3 /* JarvisMCP */ = {
isa = XCSwiftPackageProductDependency;
productName = JarvisMCP;
};
ED53153FE6F73137C23AD43B /* JarvisLogging */ = {
isa = XCSwiftPackageProductDependency;
productName = JarvisLogging;
};
EFBD95BA85DEFC31F7583FF2 /* MCP */ = {
isa = XCSwiftPackageProductDependency;
package = 3C850EFCEBC3B4947F0F7AE1 /* XCRemoteSwiftPackageReference "swift-sdk" */;
productName = MCP;
};
F8C32F1B64110815E54CFE4F /* Voice */ = {
isa = XCSwiftPackageProductDependency;
productName = Voice;
};
FB642DDAD826E62BBE1B8623 /* Bus */ = {
isa = XCSwiftPackageProductDependency;
productName = Bus;
};
/* End XCSwiftPackageProductDependency section */
};
rootObject = 33E99CF1F5349721FD0BB40B /* Project object */;
}