Skip to content

Commit 8541da5

Browse files
committed
Merge remote-tracking branch 'origin/main' into feat/mcp-apps-support
# Conflicts: # rust/src/types.rs
2 parents c3e1524 + dbe9d27 commit 8541da5

72 files changed

Lines changed: 2994 additions & 7130 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

docs/features/remote-sessions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ session.On((SessionEvent e) =>
100100
use github_copilot_sdk::{Client, ClientOptions, PermissionRequestResult, SessionConfig};
101101

102102
let client = Client::start(
103-
ClientOptions::new().with_remote(true)
103+
ClientOptions::new().with_enable_remote_sessions(true)
104104
).await?;
105105
let session = client.create_session(
106106
SessionConfig::new("/path/to/github-repo")

dotnet/src/Client.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -595,7 +595,7 @@ public async Task<CopilotSession> CreateSessionAsync(SessionConfig config, Cance
595595
config.ExcludedTools,
596596
config.Provider,
597597
config.EnableSessionTelemetry,
598-
(bool?)true,
598+
config.OnPermissionRequest != null ? true : null,
599599
config.OnUserInputRequest != null ? true : null,
600600
config.OnExitPlanModeRequest != null ? true : null,
601601
config.OnAutoModeSwitchRequest != null ? true : null,
@@ -756,7 +756,7 @@ public async Task<CopilotSession> ResumeSessionAsync(string sessionId, ResumeSes
756756
config.ExcludedTools,
757757
config.Provider,
758758
config.EnableSessionTelemetry,
759-
(bool?)true,
759+
config.OnPermissionRequest != null ? true : null,
760760
config.OnUserInputRequest != null ? true : null,
761761
config.OnExitPlanModeRequest != null ? true : null,
762762
config.OnAutoModeSwitchRequest != null ? true : null,

go/client.go

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -688,7 +688,9 @@ func (c *Client) CreateSession(ctx context.Context, config *SessionConfig) (*Ses
688688
config.Hooks.OnErrorOccurred != nil) {
689689
req.Hooks = Bool(true)
690690
}
691-
req.RequestPermission = Bool(true)
691+
if config.OnPermissionRequest != nil {
692+
req.RequestPermission = Bool(true)
693+
}
692694

693695
traceparent, tracestate := getTraceContext(ctx)
694696
req.Traceparent = traceparent
@@ -864,7 +866,9 @@ func (c *Client) ResumeSessionWithOptions(ctx context.Context, sessionID string,
864866
req.InfiniteSessions = config.InfiniteSessions
865867
req.GitHubToken = config.GitHubToken
866868
req.RemoteSession = config.RemoteSession
867-
req.RequestPermission = Bool(true)
869+
if config.OnPermissionRequest != nil {
870+
req.RequestPermission = Bool(true)
871+
}
868872

869873
if len(config.Commands) > 0 {
870874
cmds := make([]wireCommand, 0, len(config.Commands))

nodejs/src/client.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -882,7 +882,7 @@ export class CopilotClient {
882882
provider: config.provider,
883883
enableSessionTelemetry: config.enableSessionTelemetry,
884884
modelCapabilities: config.modelCapabilities,
885-
requestPermission: true,
885+
requestPermission: !!config.onPermissionRequest,
886886
requestUserInput: !!config.onUserInputRequest,
887887
requestElicitation: !!config.onElicitationRequest,
888888
requestMcpApps: !!config.enableMcpApps,

python/copilot/client.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1537,8 +1537,8 @@ async def create_session(
15371537
if excluded_tools is not None:
15381538
payload["excludedTools"] = excluded_tools
15391539

1540-
# Always enable permission request callback
1541-
payload["requestPermission"] = True
1540+
# Enable permission request callback if handler provided
1541+
payload["requestPermission"] = bool(on_permission_request)
15421542

15431543
# Enable user input request callback if handler provided
15441544
if on_user_input_request:
@@ -1935,8 +1935,8 @@ async def resume_session(
19351935
else True
19361936
)
19371937

1938-
# Always enable permission request callback
1939-
payload["requestPermission"] = True
1938+
# Enable permission request callback if handler provided
1939+
payload["requestPermission"] = bool(on_permission_request)
19401940

19411941
if on_user_input_request:
19421942
payload["requestUserInput"] = True

0 commit comments

Comments
 (0)