github / github/app

open_canvas: Invalid input error when 'scope' field is missing from editor canvas

Open
#1,175 0 comments 0 reactions 0 assignees View on GitHub
Bugs
Dominant language
No language data
Stars
2.1k
Forks
153
PR merge metrics
No merged PRs in 30d

Description

### Short summary

`open_canvas` for the `editor` canvas type returns an invalid input error when the `scope` field is not provided, even though it is not documented as required.

### Affected version or release

1.0.64-0

### Installation context

GitHub Copilot CLI chat session (general chat, not tied to a project session)

### What happened?

When calling `open_canvas` with `canvasId: "editor"` and a valid `path` in the input, the tool returned:

```
dDe: Invalid input for canvas "editor" open input: (root): "scope" is a required property. Inspect the canvas declaration for the expected input schema.
```

The canvas did not open. No `scope` field is listed or described in the canvas documentation or tool description.

### Steps to reproduce

1. From a general chat session (not a project session), call `open_canvas` with:
```json
{
"canvasId": "editor",
"instanceId": "my-canvas-instance",
"input": {
"path": "C:\\Users\\\\.copilot\\session-state\\\\files\\example.md"
}
}
```
2. Observe the error response.

### Expected behavior

The editor canvas should open with the specified file, or the error message should clearly indicate that `scope` is a required field and document valid values (e.g., `user`, `project`, `session`).

### Additional context

- The `list_canvas_capabilities` tool would reveal the schema, but the error message itself gives no hint.
- The `open_canvas` tool description does not mention a required `scope` field for the `editor` canvas.
- Surfacing required fields in the error message or tool description would prevent this confusion.

Contributor guide

Open the contributing guide

Research direction

Reproduce the issue in a general GitHub Copilot CLI chat using open_canvas with canvasId "editor" and a valid path but no scope. Inspect list_canvas_capabilities and the open_canvas tool description to compare the declared schema with the documented inputs. Done means either the editor opens without scope or the required field and valid values are clearly surfaced.

Written by the indexing model from the issue text.

Assessment

Tech stack
github
Domain
cli, tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.