Skip to content

chore(deps): bump @github/copilot-sdk from 0.2.2 to 0.3.0#170

Closed
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/npm_and_yarn/github/copilot-sdk-0.3.0
Closed

chore(deps): bump @github/copilot-sdk from 0.2.2 to 0.3.0#170
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/npm_and_yarn/github/copilot-sdk-0.3.0

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot Bot commented on behalf of github Apr 27, 2026

Bumps @github/copilot-sdk from 0.2.2 to 0.3.0.

Release notes

Sourced from @​github/copilot-sdk's releases.

v0.3.0

This release adds new capabilities — per-session authentication, scoped permissions, agent-level tool and skill control, MCP interop utilities, and more — alongside a broad naming cleanup across all four SDK languages. As we close in on a GA release, we've done a deep clean on our naming to bring it closer to the final state, reducing the amount of churn you should expect in subsequent releases. The result is a more consistent, more readable API surface across the board.


New features

Per-session GitHub authentication

Sessions can now carry their own GitHub identity. Different sessions on the same CLI server can have different GitHub users, Copilot plans, and quota limits.

const session = await client.createSession({
    onPermissionRequest: approveAll,
    gitHubToken: userAToken, // Session-level identity
});

This is independent of the client-level gitHubToken (which authenticates the CLI process itself, and is not required if all sessions bring their own auth). The session-level token determines the identity used for content exclusion, model routing, and quota checks.

Per-agent tool visibility

A new defaultAgent.excludedTools option lets you hide tools from the default agent while keeping them available to custom sub-agents, enabling the orchestrator pattern where the default agent delegates to specialized sub-agents. (#1098)

Per-agent skills

Custom agents can now declare skills: string[] to eagerly inject specific skills into their context at startup. Skills are opt-in — agents receive no skills by default, and sub-agents do not inherit skills from the parent. (#995)

Sub-agent streaming content

When streaming is enabled, assistant.message_delta and assistant.reasoning_delta events are now also delivered for sub-agents. Each event carries an agentId field identifying which sub-agent produced it (absent for the root agent). If your application renders all streaming deltas to the UI, you'll want to filter by agentId (or for pure back-compat, set includeSubAgentStreamingEvents: false on SessionConfig to get the old behavior of only streaming main-agent content updates). (#1108)

Session idle timeout

A new sessionIdleTimeoutSeconds client option configures automatic session cleanup after inactivity. When set, sessions without activity for the specified duration are cleaned up. Disabled by default (sessions live indefinitely). Previously, sessions would always time out after 30 minutes of idleness - this change fixes that. (#1093)

Custom HTTP headers for BYOK model providers

Provider headers and per-message requestHeaders can now be passed through createSession, resumeSession, and send, enabling custom header forwarding to bring-your-own-key model providers. (#1094)

MCP CallToolResult conversion

A new convertMcpCallToolResult() utility function converts MCP CallToolResult objects (with content arrays of text, image, and resource blocks) into the SDK's ToolResultObject format. This makes it easy to use MCP tool servers as backends for SDK tool handlers. (#1049)

ProviderConfig exported

ProviderConfig is now re-exported from the Node.js and Python SDK entry points, so consumers no longer need to duplicate the type locally when configuring Responses API providers. (#1048)

New RPC methods

... (truncated)

Changelog

Sourced from @​github/copilot-sdk's changelog.

Changelog

All notable changes to the Copilot SDK are documented in this file.

This changelog is automatically generated by an AI agent when stable releases are published. See GitHub Releases for the full list.

Commits
  • dd2dcbc Per-session GitHub authentication for all SDK languages, plus update runtime ...
  • b4ef955 Add configurable session idle timeout option (#1093)
  • a3e273c SessionFs structured error contract and codegen changes
  • b1b0df5 feat: add per-agent tool visibility via defaultAgent.excludedTools (#1098)
  • 922959f Expose IncludeSubAgentStreamingEvents in all four SDKs (#1108)
  • fd0495c Update @​github/copilot to 1.0.32 (#1107)
  • cf5694c Update @​github/copilot to 1.0.32-1 (#1105)
  • 48e244d Clean up redundant Python codegen lambdas (#1104)
  • dbcea81 Add deprecated schema support to all four code generators (#1099)
  • 883cc02 Update @​github/copilot to 1.0.30 (#1096)
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [@github/copilot-sdk](https://github.com/github/copilot-sdk) from 0.2.2 to 0.3.0.
- [Release notes](https://github.com/github/copilot-sdk/releases)
- [Changelog](https://github.com/github/copilot-sdk/blob/main/CHANGELOG.md)
- [Commits](github/copilot-sdk@v0.2.2...v0.3.0)

---
updated-dependencies:
- dependency-name: "@github/copilot-sdk"
  dependency-version: 0.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code labels Apr 27, 2026
@dependabot dependabot Bot requested a review from devartifex as a code owner April 27, 2026 16:49
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code labels Apr 27, 2026
@devartifex
Copy link
Copy Markdown
Owner

Superseded by #189 which consolidates this bump into a single SDK 1.0.0-beta.8 upgrade + dependabot sweep.

@devartifex devartifex closed this May 27, 2026
@dependabot @github
Copy link
Copy Markdown
Contributor Author

dependabot Bot commented on behalf of github May 27, 2026

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@dependabot dependabot Bot deleted the dependabot/npm_and_yarn/github/copilot-sdk-0.3.0 branch May 27, 2026 17:24
devartifex added a commit that referenced this pull request May 28, 2026
…on support (#189)

* feat(sdk): upgrade to @github/copilot-sdk 1.0.0-beta.8 + remote sessions

Consolidates 9 dependabot PRs and migrates to the latest beta SDK so we can
expose cloud / remote-session control (the feature behind 'copilot --remote' /
'/remote' in the official CLI).

Dependency bumps
- @github/copilot-sdk 0.2.2 -> 1.0.0-beta.8 (pinned exact; beta API)
- @sveltejs/kit ^2.57.1 -> ^2.61.1
- svelte ^5.55.4 -> ^5.55.9
- vite ^8.0.8 -> ^8.0.14, ws ^8.18 -> ^8.21
- dompurify ^3.4 -> ^3.4.7, marked ^18.0.2 -> ^18.0.4
- dev-deps group: @playwright/test, vite-plugin-svelte, @types/node,
  @vitest/coverage-v8, jsdom, lint-staged, svelte-check

SDK breaking-change migration
- CopilotClient now takes a RuntimeConnection (forStdio/forUri/forTcp)
- githubToken -> gitHubToken; cwd -> workingDirectory
- COPILOT_HOME env -> baseDirectory option
- SystemPromptSection -> SystemMessageSection
- onPermissionRequest optional; getQuota({}) takes params object
- hook input shapes: timestamp is Date; cwd dropped from session/error hooks;
  workingDirectory required on Pre/Post tool hook inputs
- session-fs.ts removed (runtime writes session-state under baseDirectory)

New SDK features wired in (all unit tested)
- Per-session remoteSession mode (off | export | on), threaded through
  CreateSessionOptions and the WS new-session handler; persisted setting field
  added (default off).
- Cloud sessions REST wrapper (cloud-sessions.ts) talking to
  api.individual.githubcopilot.com/agents/sessions (the same endpoint the
  official CLI uses for the remote-sessions view), with timeout + graceful
  error handling.
- New GET /api/sessions/remote returns authenticated user's cloud sessions
  (passes through 401/403, 502 on other upstream errors).
- New GET /api/sessions/last using client.getLastSessionId() +
  getSessionMetadata() for one-tap resume.
- Graceful + forceful shutdown: destroyPoolEntry races client.stop() against
  a 5s timer and falls back to client.forceStop() to prevent hung CLI subs.

Config
- New ENABLE_REMOTE_SESSIONS env var (default true) wired into
  CopilotClient.enableRemoteSessions; sessions still need per-session opt-in.

Verification
- svelte-check: 0 errors / 0 warnings
- vitest: 430 passed (41 files); +21 new tests covering cloud-sessions,
  /api/sessions/remote, /api/sessions/last, remoteSession threading, and
  forceStop fallback
- npm run build succeeds; smoke boot: /health returns 200

Supersedes dependabot PRs #170, #172, #177, #178, #181, #182, #185, #186, #188.
Out of scope (left open with comments): #176 (node:26-slim too new),
#167 (release-please v5 breaking inputs), #187 (@github/copilot CLI is not a
direct dep). Playwright E2E should be run in CI.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix: drop /api/sessions/remote — endpoint does not exist in public CLI

Investigating node_modules/@github/copilot/app.js (the official CLI we
ship in node_modules via @github/copilot-sdk peer) showed that the
hostname I guessed earlier — api.individual.githubcopilot.com — is not
present anywhere in the bundle. The CLI only uses:

  - api.githubcopilot.com (default)
  - api.enterprise.githubcopilot.com (enterprise plan)

And the agents endpoint is per-session (PUT/GET /agents/sessions/{id}),
not a list. There is no 'list all my remote sessions' REST endpoint in
the public CLI; that view is rendered on github.com using a different,
internal API path that requires a Copilot bearer (exchanged from the GH
OAuth token via a CLI-internal endpoint not exposed to integrators).

Rather than ship a route that returns 502/empty results, I'm removing:

  - src/lib/server/copilot/cloud-sessions.ts
  - src/lib/server/copilot/cloud-sessions.test.ts
  - src/routes/api/sessions/remote/+server.ts
  - src/routes/api/sessions/remote/server.test.ts

What stays (and is fully tested):

  - Per-session remoteSession mode wired through CreateSessionOptions
    and the WS new-session handler — the SDK takes care of publishing
    to api.githubcopilot.com under the hood when this is set.
  - GET /api/sessions/last (uses real SDK getLastSessionId + getSessionMetadata)
  - destroyPoolEntry forceStop fallback
  - ENABLE_REMOTE_SESSIONS env var

New Playwright spec tests/sessions-endpoints.spec.ts hits the new
/api/sessions/last on a real built server and verifies the 401 path
end-to-end. Full suite: 57 desktop Playwright tests + 419 unit tests
all pass.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* docs(readme): SDK 1.0.0-beta.8 + remote-session publishing

- Bump copilot-sdk badge & tech-stack line to v1.0.0-beta.8.
- New Features bullets for remote session publishing and resume-last-session.
- New 'Remote session publishing' subsection under CLI <-> Browser Sync
  explaining what off/export/on do AND being explicit about what's NOT in
  this release (no in-app remote session browser, no steering of other
  remote sessions) so future users don't expect that capability.
- Add ENABLE_REMOTE_SESSIONS env var to the All-options table.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix: address rubber-duck PR review findings

- MCP server config: rename cwd → workingDirectory (SDK 1.0 rename)
- /api/sessions/last: pass copilotConfigDir to createCopilotClient so
  the SDK reads from the correct baseDirectory
- new-session handler: honor ENABLE_REMOTE_SESSIONS server kill-switch;
  ignore client-supplied remoteSession when the feature is disabled
- destroyPoolEntry: clear timeout on stop() resolve, attach .catch() to
  the in-flight stop promise (no unhandled rejection), guard forceStop
  with a settled flag so it cannot race a clean stop

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* ci: bump e2e timeout from 15 to 30 minutes

The Playwright desktop suite grew to 126 tests. With 1 CI worker
and 2 retries (CI defaults from playwright.config.ts), the worst-
case wall clock now exceeds the prior 15-minute budget — every
recent CI run on this repo (including dependabot PRs) has been
hitting the job timeout during the Playwright step.

This is a narrow infra fix: extend the budget so the suite can
actually finish. It does not skip, disable, or weaken any tests.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant