Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Canvas extensibility parity: Python, Go, .NET, Java

Open
#1,373 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
45/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Quiet
Tech stack
csharp, go, java, node.js, python, rust, typescript

Research direction

Start by reading PR #1372, using the Node implementation as the canonical reference and the Rust diff where the TypeScript schema is ambiguous. Compare the corresponding SDK entry points in python/copilot/, go/, dotnet/src/, and java/src/ before adding the listed canvas configuration, factory, and lifecycle surfaces with each language’s naming conventions. Done means all four SDK checklists provide parity with the stabilized contract.

Written by the indexing model from the issue text.

Description

enhancement

PR #1372 adds canvas extensibility (Canvas / createCanvas, SessionConfig.canvases, requestCanvasRenderer, requestExtensions, and ResumeSessionConfig.openCanvasInstances, plus the session.canvas.* lifecycle events and hostExtension.invoke RPC dispatch) to the Node and Rust SDKs only.

Once the wire contract has stabilized through real usage by the immediate consumers (Copilot CLI runtime, Tauri app, canvas v1 testing extension), the same surface needs to be brought to the remaining SDKs for parity:

  • Python (python/copilot/): canvases, request_canvas_renderer, request_extensions, open_canvas_instances, plus Canvas / create_canvas factory
  • Go (go/): Canvases, RequestCanvasRenderer, RequestExtensions, OpenCanvasInstances, plus Canvas / CreateCanvas
  • .NET (dotnet/src/): Canvases, RequestCanvasRenderer, RequestExtensions, OpenCanvasInstances, plus Canvas / CreateCanvas
  • Java (java/src/): equivalent surface following Java naming conventions

The Node implementation in PR #1372 is the canonical reference. Treat the Rust diff there as a co-canonical spec where the TypeScript schema is ambiguous.

Dominant language
Java
Stars
10.5k
Forks
1.5k
Avg merge
1d 9h
Merged PRs (30d)
131

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from github/copilot-sdk

All issues in github/copilot-sdk

Similar issues

More Java issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.