Platform Setup Guide
Platform Setup
MSP works across Windows, macOS, and Linux. This guide provides platform-specific installation and configuration instructions to get you running smoothly on your operating system.
Platform Requirements
Minimum Requirements
- 4GB RAM (8GB recommended)
- 100MB disk space (1GB with integrations)
- Internet connection (for integrations)
Recommended Setup
- PowerShell 7.0+ (all platforms)
- Neo4j Desktop or Docker
- Obsidian (latest version)
- Linear (latest version)
- Git (for version control)
- Your Fabourite IDE (with PowerShell extension)
Windows Setup
Step 1: Install PowerShell 7
# Method 1: Windows Package Manager
winget install --id Microsoft.PowerShell --source winget
# Method 2: Direct Download
# Visit: https://github.com/PowerShell/PowerShell/releases
# Download: PowerShell-7.x.x-win-x64.msi
Step 2: Configure Execution Policy
# Run as Administrator
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
# Verify
Get-ExecutionPolicy -Scope CurrentUser
# Should return: RemoteSigned
Step 3: Install MSP
Step 4: Windows-Specific Configuration
# Configure Windows Terminal integration
# Add to Windows Terminal settings.json
{
"profiles": {
"list": [
{
"name": "MSP Session",
"commandline": "pwsh.exe -NoExit -Command \"& msp start\"",
"icon": "🧠",
"startingDirectory": "%USERPROFILE%\\projects"
}
]
}
}
# Create Quick Access shortcut
$WshShell = New-Object -comObject WScript.Shell
$Shortcut = $WshShell.CreateShortcut("$env:USERPROFILE\Desktop\MSP.lnk")
$Shortcut.TargetPath = "pwsh.exe"
$Shortcut.Arguments = "-NoExit -Command `"& msp status`""
$Shortcut.Save()
Windows Integration Features
1. Windows Defender Exclusion
# Add MSP directory to Defender exclusions (Admin required)
Add-MpPreference -ExclusionPath "$env:USERPROFILE\.msp"
2. Task Scheduler Integration
# Create scheduled task for session recovery
$action = New-ScheduledTaskAction -Execute "pwsh.exe" `
-Argument "-File `"$env:USERPROFILE\tools\msp\scripts\check-recovery.ps1`""
$trigger = New-ScheduledTaskTrigger -AtLogOn
Register-ScheduledTask -TaskName "MSP Recovery Check" `
-Action $action `
-Trigger $trigger
macOS Setup
Step 1: Install PowerShell
# Method 1: Homebrew (recommended)
brew install --cask powershell
# Method 2: Direct Download
# Visit: https://github.com/PowerShell/PowerShell/releases
# Download: powershell-7.x.x-osx-x64.pkg
Step 2: Install MSP
# Create directory
mkdir -p ~/tools/msp
# Download MSP
curl -L https://msp.sessionprotocol.dev/download/macos/msp.tar.gz \
-o ~/tools/msp/msp.tar.gz
# Extract
tar -xzf ~/tools/msp/msp.tar.gz -C ~/tools/msp
# Make executable
chmod +x ~/tools/msp/msp.ps1
# Add to PATH
echo 'export PATH="$HOME/tools/msp:$PATH"' >> ~/.zshrc
source ~/.zshrc
Step 3: macOS-Specific Configuration
# Create launch agent for auto-recovery
cat > ~/Library/LaunchAgents/dev.sessionprotocol.msp.plist << EOF
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>dev.sessionprotocol.msp</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/pwsh</string>
<string>-File</string>
<string>$HOME/tools/msp/scripts/check-recovery.ps1</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>StartInterval</key>
<integer>3600</integer>
</dict>
</plist>
EOF
# Load launch agent
launchctl load ~/Library/LaunchAgents/dev.sessionprotocol.msp.plist
macOS Integration Features
1. Spotlight Integration
# Create Spotlight metadata
mdimport -r ~/tools/msp/spotlight/msp.mdimporter
2. Quick Actions
# Add to ~/.config/raycast/scripts/msp-start.sh
#!/bin/bash
# Required parameters:
# @raycast.schemaVersion 1
# @raycast.title Start MSP Session
# @raycast.mode silent
# @raycast.icon 🧠
/usr/local/bin/pwsh -Command "& msp start"
Linux Setup
Step 1: Install PowerShell
Ubuntu/Debian
# Update package index
sudo apt-get update
# Install prerequisites
sudo apt-get install -y wget apt-transport-https software-properties-common
# Add Microsoft repository
wget -q "https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/packages-microsoft-prod.deb"
sudo dpkg -i packages-microsoft-prod.deb
# Install PowerShell
sudo apt-get update
sudo apt-get install -y powershell
Fedora/RHEL/CentOS
# Register Microsoft repository
curl https://packages.microsoft.com/config/rhel/7/prod.repo | \
sudo tee /etc/yum.repos.d/microsoft.repo
# Install PowerShell
sudo yum install -y powershell
Arch Linux
# From AUR
yay -S powershell-bin
# or
paru -S powershell-bin
Step 2: Install MSP
Step 3: Linux-Specific Configuration
Systemd Service
# Create systemd user service
mkdir -p ~/.config/systemd/user
cat > ~/.config/systemd/user/msp-recovery.service << EOF
[Unit]
Description=MSP Session Recovery
After=graphical-session.target
[Service]
Type=oneshot
ExecStart=/usr/bin/pwsh -File %h/.local/share/msp/scripts/check-recovery.ps1
RemainAfterExit=yes
[Install]
WantedBy=default.target
EOF
# Enable service
systemctl --user enable msp-recovery.service
systemctl --user start msp-recovery.service
Desktop Integration
# Create desktop entry
cat > ~/.local/share/applications/msp.desktop << EOF
[Desktop Entry]
Name=MSP Session Manager
Comment=Mandatory Session Protocol
Exec=pwsh -NoExit -Command "& msp status"
Icon=brain
Terminal=true
Type=Application
Categories=Development;
EOF
# Update desktop database
update-desktop-database ~/.local/share/applications
Environment Variables by Platform
Windows
# User environment variables
[Environment]::SetEnvironmentVariable("MSP_HOME", "$env:USERPROFILE\.msp", "User")
[Environment]::SetEnvironmentVariable("MSP_VAULT", "$env:USERPROFILE\Documents\Obsidian", "User")
macOS/Linux
# Add to ~/.bashrc or ~/.zshrc
export MSP_HOME="$HOME/.msp"
export MSP_VAULT="$HOME/Documents/Obsidian"
export MSP_NEO4J_URI="bolt://localhost:7687"
Troubleshooting by Platform
Windows Issues
PowerShell Execution Policy
# Error: cannot be loaded because running scripts is disabled
Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process
Path Issues
# Refresh PATH without restarting
$env:Path = [System.Environment]::GetEnvironmentVariable("Path","Machine") + ";" +
[System.Environment]::GetEnvironmentVariable("Path","User")
macOS Issues
Command Not Found
# Check if PowerShell is in PATH
which pwsh
# If not found, add to PATH
echo 'export PATH="/usr/local/microsoft/powershell/7:$PATH"' >> ~/.zshrc
source ~/.zshrc
Permission Denied
# Fix permissions
chmod +x ~/tools/msp/msp.ps1
xattr -d com.apple.quarantine ~/tools/msp/msp.ps1
Linux Issues
Missing Dependencies
# Ubuntu/Debian
sudo apt-get install -y libssl1.1 libicu66
# Fedora/RHEL
sudo yum install -y openssl-libs libicu
SELinux Context
# Fix SELinux context
sudo restorecon -Rv ~/.local/share/msp
Performance Optimization by Platform
Windows
- Use Windows Terminal for better performance
- Disable Windows Defender real-time scanning for
.msp
directory - Use SSD for state storage
macOS
- Enable PowerShell startup optimization
- Use APFS for better file system performance
- Configure Spotlight to skip
.msp
directory
Linux
- Use ext4 or btrfs for state storage
- Enable systemd journal compression
- Configure swappiness for better memory usage
Keywords: MSP platform setup, MSP Windows installation, MSP macOS installation, MSP Linux installation, MSP Docker setup, cross-platform MSP configuration
For AI Understanding: This guide provides comprehensive platform-specific installation and configuration instructions for MSP across Windows, macOS, and Linux. It includes PowerShell installation, MSP setup, platform-specific integrations (Windows Terminal, macOS launch agents, Linux systemd), Docker deployment, and troubleshooting for common platform-specific issues. Each platform section includes unique features and optimizations.
Previous: Project Structure | Next: Configuration →
MSP Project Structure
Understand MSP's project structure, file organization, and architectural patterns. Complete guide to directories, modules, and component architecture.
Configuration Guide
Master MSP configuration for personalized context engineering. Configure integrations, workflows, security, and advanced settings for optimal productivity.