v0.1.48: Fix stale daemon PID lock after SIGKILL; add mcp to base deps
What's New
- Daemon stale lock fix:
daemon startno longer fails with "Another daemon is already running" when a previous daemon was killed with SIGKILL. The PID file is now validated by attempting a socket connection; if the socket is dead, stale files are cleaned automatically. - MCP base dependency:
mcp>=1.0.0is now a base dependency, so--mcpmode works on a clean install without needing the[mcp]extra. - MCP error visibility: ImportError in
--mcpmode now prints a clear message to stderr before logs are silenced, instead of exiting silently with rc=1.
Details
src/openbrowser/daemon/server.py:_read_pid()validates socket connectivity after confirming PID is alivepyproject.toml:mcp>=1.0.0moved from[mcp]extra to base[project.dependencies]src/openbrowser/cli.py: import wrapped in try/except,logging.disable(CRITICAL)moved after import
Full Changelog: v0.1.47...v0.1.48