Skip to content

Conversation

@nikomatsakis
Copy link
Member

The MCP server now gracefully handles cases where VSCode PID discovery fails. This enables the server to work with persistent agents and other scenarios where it's not running from a VSCode terminal.

Changes:

  • Made shell_pid Option throughout the codebase
  • Updated DispatchHandle::new to accept Option
  • Updated IPCCommunicator to store Option for terminal_shell_pid
  • Server::new now logs a warning instead of bailing when PID discovery fails
  • PoloMessage payload is now empty (shell_pid goes in MessageSender)
  • Updated send_polo and send_goodbye to not take shell_pid parameter
  • Fixed test to use Some(12345) for shell_pid

The TypeScript and Swift codebases already had shell_pid as optional, so no changes were needed there.

The MCP server now gracefully handles cases where VSCode PID discovery
fails. This enables the server to work with persistent agents and other
scenarios where it's not running from a VSCode terminal.

Changes:
- Made shell_pid Option<u32> throughout the codebase
- Updated DispatchHandle::new to accept Option<u32>
- Updated IPCCommunicator to store Option<u32> for terminal_shell_pid
- Server::new now logs a warning instead of bailing when PID discovery fails
- PoloMessage payload is now empty (shell_pid goes in MessageSender)
- Updated send_polo and send_goodbye to not take shell_pid parameter
- Fixed test to use Some(12345) for shell_pid

The TypeScript and Swift codebases already had shell_pid as optional,
so no changes were needed there.

Co-authored-by: Claude <claude@anthropic.com>
@nikomatsakis nikomatsakis merged commit 4d9acf5 into symposium-dev:main Sep 29, 2025
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant