Skip to content

Commit dbe9d27

Browse files
Rust SDK API review fixes (#1367)
1 parent f4d22d7 commit dbe9d27

72 files changed

Lines changed: 2963 additions & 7097 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,
@@ -754,7 +754,7 @@ public async Task<CopilotSession> ResumeSessionAsync(string sessionId, ResumeSes
754754
config.ExcludedTools,
755755
config.Provider,
756756
config.EnableSessionTelemetry,
757-
(bool?)true,
757+
config.OnPermissionRequest != null ? true : null,
758758
config.OnUserInputRequest != null ? true : null,
759759
config.OnExitPlanModeRequest != null ? true : null,
760760
config.OnAutoModeSwitchRequest != null ? true : null,

go/client.go

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -666,7 +666,9 @@ func (c *Client) CreateSession(ctx context.Context, config *SessionConfig) (*Ses
666666
config.Hooks.OnErrorOccurred != nil) {
667667
req.Hooks = Bool(true)
668668
}
669-
req.RequestPermission = Bool(true)
669+
if config.OnPermissionRequest != nil {
670+
req.RequestPermission = Bool(true)
671+
}
670672

671673
traceparent, tracestate := getTraceContext(ctx)
672674
req.Traceparent = traceparent
@@ -841,7 +843,9 @@ func (c *Client) ResumeSessionWithOptions(ctx context.Context, sessionID string,
841843
req.InfiniteSessions = config.InfiniteSessions
842844
req.GitHubToken = config.GitHubToken
843845
req.RemoteSession = config.RemoteSession
844-
req.RequestPermission = Bool(true)
846+
if config.OnPermissionRequest != nil {
847+
req.RequestPermission = Bool(true)
848+
}
845849

846850
if len(config.Commands) > 0 {
847851
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
@@ -863,7 +863,7 @@ export class CopilotClient {
863863
provider: config.provider,
864864
enableSessionTelemetry: config.enableSessionTelemetry,
865865
modelCapabilities: config.modelCapabilities,
866-
requestPermission: true,
866+
requestPermission: !!config.onPermissionRequest,
867867
requestUserInput: !!config.onUserInputRequest,
868868
requestElicitation: !!config.onElicitationRequest,
869869
requestExitPlanMode: !!config.onExitPlanModeRequest,

python/copilot/client.py

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

1512-
# Always enable permission request callback
1513-
payload["requestPermission"] = True
1512+
# Enable permission request callback if handler provided
1513+
payload["requestPermission"] = bool(on_permission_request)
15141514

15151515
# Enable user input request callback if handler provided
15161516
if on_user_input_request:
@@ -1904,8 +1904,8 @@ async def resume_session(
19041904
else True
19051905
)
19061906

1907-
# Always enable permission request callback
1908-
payload["requestPermission"] = True
1907+
# Enable permission request callback if handler provided
1908+
payload["requestPermission"] = bool(on_permission_request)
19091909

19101910
if on_user_input_request:
19111911
payload["requestUserInput"] = True

0 commit comments

Comments
 (0)