78 lines
1.6 KiB
Markdown
78 lines
1.6 KiB
Markdown
# AI Workspace macOS Menu Bar App
|
|
|
|
Minimal SwiftUI `MenuBarExtra` app for controlling local AI Workspace services.
|
|
|
|
The app is intentionally a thin UI over the service manager. It reads live status from:
|
|
|
|
```bash
|
|
python3 scripts/aiw/services.py status --profile fidelity --json
|
|
```
|
|
|
|
and sends lifecycle actions through `scripts/aiw/services.py`.
|
|
|
|
## Build
|
|
|
|
```bash
|
|
swift build --package-path apps/mac/AIWorkspace
|
|
```
|
|
|
|
## Package as `.app`
|
|
|
|
```bash
|
|
apps/mac/AIWorkspace/scripts/package-app.sh
|
|
```
|
|
|
|
Install to `~/Applications/AIWorkspace.app`:
|
|
|
|
```bash
|
|
apps/mac/AIWorkspace/scripts/package-app.sh --install
|
|
```
|
|
|
|
One-step local install, optionally enabling start at login and opening the app:
|
|
|
|
```bash
|
|
apps/mac/AIWorkspace/scripts/install.sh --start-at-login --open
|
|
```
|
|
|
|
## Start at login
|
|
|
|
After installing the app bundle:
|
|
|
|
```bash
|
|
apps/mac/AIWorkspace/scripts/install-start-at-login.sh
|
|
```
|
|
|
|
To remove the login item:
|
|
|
|
```bash
|
|
apps/mac/AIWorkspace/scripts/uninstall-start-at-login.sh
|
|
```
|
|
|
|
## Run during development
|
|
|
|
```bash
|
|
swift run --package-path apps/mac/AIWorkspace AIWorkspace
|
|
```
|
|
|
|
## Current actions
|
|
|
|
- Refresh status
|
|
- Start Fidelity services
|
|
- Stop Fidelity services
|
|
- Restart Context MCP
|
|
- Open Mattermost through the service manager
|
|
- Open Mattermost through the local proxy-managed launcher
|
|
- Run Doctor
|
|
- Copy Doctor JSON
|
|
- Copy Photo Inbox URL
|
|
- Copy recent logs
|
|
- Open MCP Health
|
|
- Open logs folder
|
|
- Open project knowledge
|
|
|
|
## Notes
|
|
|
|
- This is not yet packaged as a signed `.app` bundle.
|
|
- Start at login should be implemented later through a LaunchAgent or app login item.
|
|
- The app should remain a UI layer; service lifecycle remains in `scripts/aiw/services.py`.
|