Summary
The Computer Use backend (\packages/computer-use/src/maka-cu-backend.ts) is deeply coupled to macOS-specific APIs (AXRaise, AXMenu, ScreenCaptureKit, macOS seatbelt). A platform abstraction layer is needed to support future Linux/Windows backends.
Current State
- **\packages/computer-use/src/maka-cu-backend.ts**: 1300+ lines of macOS-specific code
- **\packages/computer-use/src/select-backend.ts**: Hardcoded platform check
- **\�pps/desktop/src/main/computer-use/**: 7 macOS-only Electron components
Proposed Solution
- Define a \ComputerUseBackend\ interface abstracting platform operations
- Move macOS-specific code into a \DarwinComputerUseBackend\ implementation
- Create stub implementations for Linux (\LinuxComputerUseBackend) and Windows (\WindowsComputerUseBackend)
- Update \select-backend.ts\ to use the abstraction layer
- Add platform guards to desktop computer-use components
Acceptance Criteria
Labels
enhancement, help wanted
Summary
The Computer Use backend (\packages/computer-use/src/maka-cu-backend.ts) is deeply coupled to macOS-specific APIs (AXRaise, AXMenu, ScreenCaptureKit, macOS seatbelt). A platform abstraction layer is needed to support future Linux/Windows backends.
Current State
Proposed Solution
Acceptance Criteria
Labels
enhancement, help wanted