@dyyz1993/pi-coding-agent 0.74.10 → 0.74.11

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.
Files changed (33) hide show
  1. package/dist/core/agent-session.d.ts +5 -0
  2. package/dist/core/agent-session.d.ts.map +1 -1
  3. package/dist/core/agent-session.js +23 -0
  4. package/dist/core/agent-session.js.map +1 -1
  5. package/dist/core/mcp/mcp-manager.d.ts +1 -0
  6. package/dist/core/mcp/mcp-manager.d.ts.map +1 -1
  7. package/dist/core/mcp/mcp-manager.js +36 -0
  8. package/dist/core/mcp/mcp-manager.js.map +1 -1
  9. package/dist/core/settings-manager.d.ts +3 -1
  10. package/dist/core/settings-manager.d.ts.map +1 -1
  11. package/dist/core/settings-manager.js +41 -0
  12. package/dist/core/settings-manager.js.map +1 -1
  13. package/dist/modes/rpc/rpc-client-types.d.ts +2 -0
  14. package/dist/modes/rpc/rpc-client-types.d.ts.map +1 -1
  15. package/dist/modes/rpc/rpc-client-types.js.map +1 -1
  16. package/dist/modes/rpc/rpc-client.d.ts +2 -0
  17. package/dist/modes/rpc/rpc-client.d.ts.map +1 -1
  18. package/dist/modes/rpc/rpc-client.js +6 -0
  19. package/dist/modes/rpc/rpc-client.js.map +1 -1
  20. package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
  21. package/dist/modes/rpc/rpc-mode.js +18 -0
  22. package/dist/modes/rpc/rpc-mode.js.map +1 -1
  23. package/dist/modes/rpc/rpc-types.d.ts +21 -0
  24. package/dist/modes/rpc/rpc-types.d.ts.map +1 -1
  25. package/dist/modes/rpc/rpc-types.js.map +1 -1
  26. package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
  27. package/examples/extensions/custom-provider-anthropic/package.json +1 -1
  28. package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
  29. package/examples/extensions/sandbox/package-lock.json +2 -2
  30. package/examples/extensions/sandbox/package.json +1 -1
  31. package/examples/extensions/with-deps/package-lock.json +2 -2
  32. package/examples/extensions/with-deps/package.json +1 -1
  33. package/package.json +4 -4
@@ -121,6 +121,7 @@ export class AgentSession {
121
121
  _fileSnapshotManager = null;
122
122
  _mcpManager;
123
123
  _mcpToolDefinitions = new Map();
124
+ _mcpServerScopes = new Map();
124
125
  _noMcp;
125
126
  _tierModels = {};
126
127
  // Tool registry for extension getTools/setTools
@@ -182,10 +183,16 @@ export class AgentSession {
182
183
  this._mcpManager.dispose().catch(() => { });
183
184
  this._mcpManager = undefined;
184
185
  }
186
+ this._mcpServerScopes.clear();
187
+ const globalServers = this.settingsManager.getMcpServers("global");
188
+ const projectServers = this.settingsManager.getMcpServers("project");
185
189
  const settings = this.settingsManager.getMergedSettings();
186
190
  const servers = settings?.mcp?.servers;
187
191
  if (!servers || Object.keys(servers).length === 0)
188
192
  return;
193
+ for (const name of Object.keys(servers)) {
194
+ this._mcpServerScopes.set(name, projectServers[name] ? "project" : "global");
195
+ }
189
196
  this._mcpManager = new McpManager({
190
197
  onConnectionChange: (conn) => {
191
198
  this._emit({
@@ -603,8 +610,24 @@ export class AgentSession {
603
610
  fullName: t.fullName,
604
611
  description: t.description,
605
612
  })),
613
+ scope: this._mcpServerScopes.get(c.name) ?? "global",
614
+ disabled: c.config.disabled,
606
615
  }));
607
616
  }
617
+ async toggleMcpServer(name, enabled) {
618
+ if (!this._mcpManager)
619
+ throw new Error("MCP is not initialized");
620
+ const scope = this._mcpServerScopes.get(name);
621
+ if (!scope)
622
+ throw new Error(`MCP server "${name}" not found`);
623
+ await this._mcpManager.setServerEnabled(name, enabled);
624
+ this.settingsManager.setMcpServerDisabled(name, !enabled, scope);
625
+ }
626
+ async restartMcpServer(name) {
627
+ if (!this._mcpManager)
628
+ throw new Error("MCP is not initialized");
629
+ await this._mcpManager.restartServer(name);
630
+ }
608
631
  // =========================================================================
609
632
  // Read-only State Access
610
633
  // =========================================================================