Runtime binaire autonome¶
Les release binaries exécutent local-shell-mcp sans Docker ni environnement Python. Utilisez ce runtime lorsque Docker n’est pas disponible ou lorsqu’une VM dédiée, un container host, un serveur de labo ou un compte utilisateur restreint fournit déjà la frontière de sécurité.
Il s’agit d’un choix de runtime. L’accès ChatGPT se configure séparément via un endpoint HTTPS /mcp.
Artifacts de release¶
GitHub Releases construit des executables autonomes pour les plateformes courantes :
| Platform artifact | Archive |
|---|---|
local-shell-mcp-linux-x86_64 |
.tar.gz |
local-shell-mcp-linux-aarch64 |
.tar.gz |
local-shell-mcp-macos-x86_64 |
.tar.gz |
local-shell-mcp-macos-aarch64 |
.tar.gz |
local-shell-mcp-windows-x86_64 |
.zip |
Chaque archive contient l’executable, le README, la license et un court fichier quickstart.
Installation¶
- Téléchargez depuis GitHub Releases l’archive adaptée à votre plateforme.
- Extrayez-la.
- Placez l’executable dans
PATHou notez son chemin absolu. - Exécutez
local-shell-mcp --helppour vérifier que le binary démarre.
Linux et macOS nécessitent généralement le bit executable :
Sous Windows, exécutez local-shell-mcp.exe depuis PowerShell ou ajoutez son répertoire à PATH.
Exécution locale minimale¶
mkdir -p ~/local-shell-mcp-workspace
export LOCAL_SHELL_MCP_WORKSPACE_ROOT=~/local-shell-mcp-workspace
local-shell-mcp --mode mcp
Dans un autre terminal :
Exécution publique HTTP MCP¶
Pour ChatGPT ou un public HTTP MCP client, configurez les catégories suivantes :
| Setting | Purpose |
|---|---|
LOCAL_SHELL_MCP_WORKSPACE_ROOT |
Répertoire contrôlé par les outils |
LOCAL_SHELL_MCP_HOST and LOCAL_SHELL_MCP_PORT |
Adresse bind et port locaux |
LOCAL_SHELL_MCP_PUBLIC_BASE_URL |
Public HTTPS origin, sans /mcp |
LOCAL_SHELL_MCP_AUTH_MODE |
Utilisez oauth pour les deployments publics |
| OAuth PIN and JWT secret settings | Requis pour l’autorisation OAuth publique |
Exposez le port HTTP local via reverse proxy ou tunnel. L’endpoint public est :
Configuration YAML¶
Un YAML config peut stocker des valeurs runtime non secrètes :
host: 127.0.0.1
port: 8765
mode: mcp
workspace_root: /srv/local-shell-mcp/workspace
auth_mode: oauth
public_base_url: https://your-public-host.example.com
Exécutez :
Les environment variables préfixées par LOCAL_SHELL_MCP_ remplacent les valeurs YAML.
Responsabilité du toolchain hôte¶
Le binary contient l’application Python, pas tous les outils de développement. Les outils MCP appellent les programmes disponibles sur l’hôte.
Installez ce dont vos tâches ont besoin :
| Capability | Host packages to consider |
|---|---|
| Search and shell ergonomics | ripgrep, tree, jq, curl, wget; les releases Linux incluent déjà un static tmux helper |
| Git workflows | git, gh, OpenSSH client, credential helpers |
| Python projects | Python, pip, venv, project-specific compilers and headers |
| Node projects | Node.js, npm, pnpm, yarn |
| Rust/Go/Java/C++ | Cargo/rustc, Go, JDK, Maven/Gradle, compilers, CMake, Ninja |
| Browser automation | Playwright browser binaries and OS dependencies |
| Document conversion | LibreOffice, Pandoc, Poppler utilities |
Si vous ne souhaitez pas maintenir ce host toolchain, utilisez Docker Compose.
Service de longue durée¶
Pour un deployment public persistant, exécutez le binary sous le process supervisor de votre système. Respectez les pratiques suivantes :
- Utilisez un compte OS dédié et peu privilégié.
- Utilisez un workspace directory dédié.
- Stockez les valeurs sensibles hors des fichiers world-readable.
- Redémarrez automatiquement en cas d’échec.
- Vérifiez
/healthzaprès chaque redémarrage. - Conservez les logs pour le troubleshooting.
Mises à jour¶
- Téléchargez la nouvelle release archive pour votre plateforme.
- Vérifiez les checksums si vous le souhaitez.
- Remplacez l’executable.
- Redémarrez le process manager.
- Vérifiez
/healthz. - Demandez au client d’exécuter
environment_getavant de poursuivre.
Notes de sécurité¶
Le binary s’exécute avec les privilèges de son utilisateur OS. Pour un deployment public, utilisez un utilisateur dédié et peu privilégié, un workspace dédié et si possible une frontière VM/container.
Ne définissez pas LOCAL_SHELL_MCP_ALLOW_FULL_CONTAINER=true pour un binary exécuté directement sur votre ordinateur personnel. Ce réglage est destiné aux containers ou VM jetables.