@openeryc/pi-coding-agent 0.75.52 → 0.75.54

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4613,8 +4613,9 @@ export class InteractiveMode {
4613
4613
  this.ui.requestRender();
4614
4614
  }
4615
4615
  showMcpSelector(highlightServer) {
4616
- const configured = this.settingsManager.getMcpServers();
4617
4616
  const buildItems = () => {
4617
+ // Fetch fresh config each time so toggle reflects immediately
4618
+ const configured = this.settingsManager.getMcpServers();
4618
4619
  const statuses = this.session.getMcpStatuses();
4619
4620
  const statusMap = new Map(statuses.map((s) => [s.serverName, s]));
4620
4621
  return (configured ? Object.entries(configured) : []).map(([name, c]) => {
@@ -4627,7 +4628,7 @@ export class InteractiveMode {
4627
4628
  : st?.status === "connected"
4628
4629
  ? "connected"
4629
4630
  : st?.status === "reconnecting"
4630
- ? "disconnected" // show as disconnected but will reconnect
4631
+ ? "disconnected"
4631
4632
  : "disconnected",
4632
4633
  toolCount: st?.toolCount ?? 0,
4633
4634
  transport: c.url ? (c.transport ?? "sse") : c.command ? "stdio" : "unknown",
@@ -4642,21 +4643,22 @@ export class InteractiveMode {
4642
4643
  return;
4643
4644
  }
4644
4645
  if (highlightServer) {
4646
+ const configured = this.settingsManager.getMcpServers();
4645
4647
  const server = configured?.[highlightServer];
4646
4648
  if (server) {
4647
4649
  const currentEnabled = server.enabled !== false;
4648
4650
  this.settingsManager.setMcpServerEnabled(highlightServer, !currentEnabled);
4649
- this.session.reloadMcp();
4651
+ this.session.reloadMcp(highlightServer);
4650
4652
  }
4651
4653
  }
4652
4654
  this.showSelector((done) => {
4653
4655
  const selector = new McpSelectorComponent("MCP Servers", items, async (name) => {
4654
- const server = configured?.[name];
4656
+ const cur = this.settingsManager.getMcpServers();
4657
+ const server = cur?.[name];
4655
4658
  if (!server)
4656
4659
  return;
4657
- const currentEnabled = server.enabled !== false;
4658
- this.settingsManager.setMcpServerEnabled(name, !currentEnabled);
4659
- await this.session.reloadMcp();
4660
+ this.settingsManager.setMcpServerEnabled(name, server.enabled === false);
4661
+ await this.session.reloadMcp(name);
4660
4662
  selector.setItems(buildItems());
4661
4663
  }, () => done());
4662
4664
  return { component: selector, focus: selector };