Skip to content

Merge reference implementation SDK changes (2026-05-04)#154

Closed
Copilot wants to merge 4 commits intomainfrom
copilot/reference-implementation-sync-again
Closed

Merge reference implementation SDK changes (2026-05-04)#154
Copilot wants to merge 4 commits intomainfrom
copilot/reference-implementation-sync-again

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented May 4, 2026

Resolves #149


Before the change?

  • Java SDK was synced to reference implementation commit e42b726ca42bd1b2e099a956c9287ba9435ba3e5
  • No support for copilotHome, tcpConnectionToken, instructionDirectories, continuePendingWork, or MCP OAuth fields

After the change?

Ports 16 commits from github/copilot-sdk (e42b726c063458).

New client options:

  • copilotHome — sets COPILOT_HOME env var on spawned CLI for custom data directory
  • tcpConnectionToken — optional connection token for TCP servers; auto-generates UUID when SDK spawns CLI in TCP mode

New session config fields:

  • instructionDirectories — additional directories for custom instruction file discovery (create + resume)
  • continuePendingWork — on resume, continue pending tool calls/permission prompts from prior suspend

MCP OAuth support:

  • oauthClientId, oauthPublicClient, oauthGrantType on McpHttpServerConfig
// New copilotHome + tcpConnectionToken usage
var options = new CopilotClientOptions()
    .setCopilotHome("/custom/data")
    .setUseStdio(false)
    .setTcpConnectionToken("my-token");

// instructionDirectories on session create
var session = client.createSession(
    new SessionConfig()
        .setInstructionDirectories(List.of("/extra/instructions"))
).get();

// continuePendingWork on resume
var resumed = client.resumeSession(id,
    new ResumeSessionConfig()
        .setContinuePendingWork(true)
).get();

Not ported (intentionally):

  • 155e887 Replace StreamJsonRpc — Java SDK has its own JSON-RPC impl
  • f8cf846 Derive session event envelopes from schema — generated code only
  • f7f9450/c063458/ced6613 E2E test expansion — snapshots not yet available at old harness commit
  • 6a0e065 Version update logic refinement — internal tooling
  • Doc changes — Python-specific or Docker setup not applicable

Pull request checklist

  • Tests for the changes have been added (for bug fixes / features)
  • Docs have been reviewed and added / updated if needed (for bug fixes / features)
  • mvn spotless:apply has been run to format the code
  • mvn clean verify passes locally

Does this introduce a breaking change?

  • Yes
  • No

Copilot AI and others added 3 commits May 4, 2026 23:28
…ePendingWork, and MCP OAuth fields from reference implementation

Co-authored-by: edburns <75821+edburns@users.noreply.github.com>
…n, instructionDirectories, continuePendingWork

Co-authored-by: edburns <75821+edburns@users.noreply.github.com>
…om.xml CLI version, and update scripts/codegen @github/copilot version

Co-authored-by: edburns <75821+edburns@users.noreply.github.com>
Copilot AI changed the title [WIP] Sync reference implementation with 16 new commits Merge reference implementation SDK changes (2026-05-04) May 4, 2026
Copilot AI requested a review from edburns May 4, 2026 23:37
Copilot finished work on behalf of edburns May 4, 2026 23:37
@edburns
Copy link
Copy Markdown
Collaborator

edburns commented May 5, 2026

Closing: PR #151 was merged first covering most of this content. The remaining features (continuePendingWork, MCP OAuth, .lastmerge sync to c063458) will be picked up by the next scheduled reference-impl sync.

@edburns edburns closed this May 5, 2026
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.

[reference-impl-sync] Reference Implementation sync: 16 new commits (2026-05-04) Reference implementation sync: 15 new commits (2026-05-04)

2 participants