Nightly Build / build (push) Successful in 7m13s
scripts/ held the pre-marketplace MCP servers (gmail, gcal, gmaps, ssh, weather, google_trends, whatsapp, serpapi_flights). Nothing referenced them any more: connectors are admin-curated and installed into connectors/ from the marketplace, and ci/package.sh never shipped scripts/ in the first place — so on every installed box requirements.txt was pulling google-auth, googlemaps, paramiko, trendspyg and friends for files that did not exist there. requirements.txt now states what it is actually for: the two TTS plugins, which spawn a bare `python3` on an embedded server script and so have no dependency reconciler of their own. A connector's deps stay with the connector — `ensure_installed` puts them in .pydeps/node_modules inside the user's container, `ensure_installed_host` beside the files for a global one. The venv itself stays load-bearing for those two plugins and for the host pip that installs a global connector's deps, so the run/install/update scripts keep creating it — but their "Python MCP servers will be unavailable" warning was naming the one thing that no longer depends on it, and now says what really breaks. CONNECTOR_MANIFEST_GUIDE.md moves to the repo root: it was the one thing in scripts/ still referenced (CLAUDE.md), and being under a gitignored directory it had never been committed at all. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
59 lines
1.9 KiB
Batchfile
59 lines
1.9 KiB
Batchfile
@echo off
|
|
REM Supervisor loop for personal-agent (Windows).
|
|
REM
|
|
REM - Runs `cargo run`.
|
|
REM - If the app exits with 255 (Rust's exit(-1)), rebuild and rerun.
|
|
REM - If the app exits with 0 (graceful shutdown, e.g. Ctrl+C), stop.
|
|
REM - Any other exit code is treated as an error and stops the loop.
|
|
|
|
setlocal enabledelayedexpansion
|
|
|
|
cd /d "%~dp0"
|
|
|
|
REM ── Python venv setup (optional) ─────────────────────────────────────────────
|
|
set VENV_DIR=.venv
|
|
set REQUIREMENTS=requirements.txt
|
|
|
|
if not exist "%VENV_DIR%\Scripts\python3.exe" (
|
|
where uv >nul 2>nul
|
|
if !ERRORLEVEL! equ 0 (
|
|
echo [run.bat] Setting up Python venv with uv ...
|
|
call uv venv "%VENV_DIR%" && call uv pip install -r "%REQUIREMENTS%"
|
|
if !ERRORLEVEL! equ 0 ( echo [run.bat] Python venv ready. ) else ( echo [run.bat] Warning: Python venv setup failed )
|
|
) else (
|
|
where python3 >nul 2>nul
|
|
if !ERRORLEVEL! equ 0 (
|
|
echo [run.bat] Setting up Python venv ...
|
|
call python3 -m venv "%VENV_DIR%" && call "%VENV_DIR%\Scripts\pip" install -r "%REQUIREMENTS%"
|
|
if !ERRORLEVEL! equ 0 ( echo [run.bat] Python venv ready. ) else ( echo [run.bat] Warning: Python venv setup failed )
|
|
) else (
|
|
echo [run.bat] Warning: python3 not found -- the TTS plugins and host-run connectors will be unavailable.
|
|
)
|
|
)
|
|
)
|
|
|
|
REM Prepend venv to PATH if available
|
|
if exist "%VENV_DIR%\Scripts\python3.exe" (
|
|
set "PATH=%CD%\%VENV_DIR%\Scripts;%PATH%"
|
|
)
|
|
|
|
set "TS_RS_EXPERIMENT=this_is_unstable_software"
|
|
|
|
:loop
|
|
echo [run.bat] Starting ...
|
|
set RUSTFLAGS=-A warnings
|
|
cargo run
|
|
set code=!ERRORLEVEL!
|
|
|
|
if "!code!"=="0" (
|
|
echo [run.bat] App exited cleanly. Stopping.
|
|
exit /b 0
|
|
)
|
|
if "!code!"=="255" (
|
|
echo [run.bat] App requested restart (exit -1). Rebuilding ...
|
|
goto loop
|
|
)
|
|
|
|
echo [run.bat] App exited with code !code!. Stopping.
|
|
exit /b !code!
|