Skip to main content

In this article

RPI Workflow Canvas

The RPI Workflow canvas shows the session the RPI Agent is working on, one phase at a time, in a panel beside the chat. You read the research and the plan as the agent writes them, answer the decisions it asks you about, watch tasks move during implementation, and work through review findings and follow-ups. Anything you add waits in the canvas until you send it, and the agent reads each item back so you can see how it understood you.

The session's files in .copilot-tracking/ stay the record. The canvas never changes them; it shows them, collects your input, and passes that input to the agent, which updates the files.

The screenshots follow one session: the RPI Agent building the docs README check from Your First Full Workflow. The agent moved through the phases on its own, asking about research, planning, and follow-up decisions and making the review decisions itself.

Before You Start​

You need a host that shows canvases and the hve-core plugin, which carries the canvas.

HostWhat to turn on
VS Code desktopTurn on chat.canvases.enabled, start a new local session with the Copilot harness, and send a first message. See Use canvases with agents.
GitHub Copilot appCanvases open in the app's right side panel. See Working with canvas extensions in the GitHub Copilot app.
Copilot CLITurn on experimental features with --experimental or /experimental on.

The hve-core VS Code extension does not carry canvases. Install the hve-core plugin instead, with the Copilot CLI or from VS Code's Agent Customizations editor as described in Agent plugins. VS Code also finds plugins that the Copilot CLI installed.

NOTE

Canvases are a preview feature, so a host update can change how they open or look.

Open the Canvas​

Run /rpi (or let the model discover the rpi skill) or select RPI Agent and describe your task. When the host offers the canvas, the rpi session opens it by itself, once per conversation, and the same panel follows each new loop of the session.

You can also ask the agent to open the RPI Workflow canvas, or open it from the host's canvas list. In VS Code, that is Add Context (+) > Canvas... in the chat input or New Chat (+) > Canvas in the Chat view; in the Agents window, it is Add Tab (+) > Canvas.

A canvas opened from a list doesn't know your session yet, so it shows Not connected:

Screenshot of the Not connected page with Ask the agent, Copy request, and Show the sample session.

Choose Ask the agent, which sends a one-line request naming this canvas to the chat, or Copy request to paste it yourself. The page changes as soon as the agent connects it. Show the sample session opens a made-up session with every phase filled in, which is a safe place to try things.

Find Your Way Around​

The View selector in the document's context bar starts on Focused. It keeps summaries, pending decisions, risks, validation, and required work expanded. Supporting rows show their titles and status badges; select a heading to read its detail.

Choose Full detail to expand the supporting rows for close reading or comparison. No information is removed. Task details, evidence chips, and record sections still have their own controls. Following an ID opens its containing row, and an open editor or pending decision form stays visible.

Your choice follows you across phases and loops while the page remains open. Reloading starts Focused again. In Focused, Source file reveals the artifact path and its actions, and narrow headers keep the primary action labels visible.

The screenshots below show expanded content; use Full detail or expand individual headings to compare those views.

The canvas has four regions, numbered here on the example's Research phase:

Screenshot of the canvas in Research, with numbered markers on the header, navigator, document, and steering panel.

  1. The header holds the task and its session, then the canvas badge with its handle (XWK0 here), which also starts every message this canvas sends to the chat. The phase rail marks the phase the agent works in with Agent, and you can read any other phase meanwhile. Needs you counts the decisions waiting for you and goes to the next one; Review and send opens everything you have not sent; Live shows whether the canvas follows the agent.
  2. The navigator outlines the phase you are reading and filters it.
  3. The document shows the phase's file as rows. Its context bar names the phase, its status, and its file, with Copy and Open in VS Code, and shows the agent's next action. The margin beside each row holds decision cards, research lanes, and your comments.
  4. The steering panel lists Needs your input, Recorded decisions, Your feedback, and Add input.

IDs such as F2, D1, or P02-T01 are links. Hover over one to preview the whole item, or select it to go there; Back and Forward retrace your steps.

While Live shows, the canvas moves to the loop and phase the agent works in, backward as well as forward. Choosing another phase, going back, or starting to type input stops following so the page stays where you are. Press Follow agent, or f, to catch up.

On a narrow panel, the steering panel becomes a drawer below 1360 pixels wide and the navigator below 1024 pixels; the toggles at each end of the header open them.

Answer Decisions and Send Your Input​

Answer a Decision​

In the example, research found that two top-level docs folders have no README, so the agent asked what the check should do about them (D1). It also chose a name for the npm script itself (D2):

Screenshot of two research decisions: D1 waits for your answer with three options, and D2 shows the agent's choice with Override.

To answer, choose an option, add a note if you like, and select Answer. Your own answer lets you write something else. A decision the agent made offers Override, where you pick an alternative or say what to do instead.

Comment or Suggest an Edit​

Rows show Comment, and rows that hold a section of the file also show Suggest an edit. Both appear when you hover over the row or move focus into it. A comment can be about a whole row or one part of it: hover a paragraph, list item, or table row and choose its speech bubble, or right-click it. The comment opens in Add input, anchored to that part. Say in your own words whether it is a question, context, or something to research. Suggest an edit opens a Markdown editor, and your suggestion shows beside the section until the agent applies it.

Send It to the Agent​

Answers, overrides, comments, and suggestions wait under Your feedback until you send them. Review and send lists them all. Here it holds the example's answer to D1 and a comment on finding F2:

Screenshot of Review and send listing an answer and a comment, with a message box and the Send now and Queue buttons.

Send now gives the items to the agent at its next step, even in the middle of a task, as one chat message. The chat shows a line such as "RPI canvas XWK0 sent 2 items: 1 answer and 1 comment." Queue keeps them in the canvas until the agent's next checkpoint: when it changes phase, finishes a task, asks you something, or ends its turn. Until then, you can take a queued item back.

Before you send, you can edit or discard any item, add a message for the agent, and open the exact text Send now will deliver.

When the RPI Agent asks you a question in the chat, it also offers Answered in the canvas. Choose it after answering in the canvas, and the agent collects your answers before it goes on.

See How the Agent Understood You​

After the agent updates its files, it reads each item back. The read-back appears under Feedback history in the steering panel:

Screenshot of Feedback history, where the agent's read-back of each item appears with Correct this.

You don't need to confirm a read-back. If the agent got it wrong, Correct this starts a correction that waits to be sent like any other item.

The stages an item moves through
StageWhat it means
Not sentStill yours to edit or discard
Queued for the agentWaiting for the agent's next checkpoint; Take back returns it
SentDelivered to the chat
The agent has itThe agent picked it up: at its next step, in a new turn, after its turn, or from the canvas
Read backThe agent said how it understood the item; it moves to Feedback history

Each item shows its stage and since when. A host that does not report pickups leaves an item at Sent until its read-back.

What Each Phase Shows​

Each phase shows what its file holds, wherever the agent is, so you can read a finished phase while the agent works on a later one.

Research​

Research shows a summary with its readiness, what you may not know, the questions, and each finding with its evidence state and confidence. Evidence chips such as C5 and W2 open their claim and source in place, and a code source opens the cited file at the cited place. When the agent runs research helpers, Research lanes shows each one as queued, running, done, or cancelled. Ask for more research opens a comment where you say what else to look into.

Plan​

The Plan view shows a summary with the critique's verdict, the change map, the phases and tasks, the requirements, and the critique's findings. The change map shows what the plan adds and changes and how those parts connect:

Screenshot of the Plan view's change map, with new parts in dashed borders, changed parts in thick borders, and phase tags.

Dashed borders mark new parts and thick borders mark changed ones, and each tag names the phases that make the change. Highlight shades one phase's parts, and selecting a changed part lists its tasks. The plan's own walk-through of the map sits below it.

Implement​

Implement opens with the task board, which shows the next task ready to start, the task the agent is on with its latest activity, and the task finished last:

Screenshot of the task board with one task waiting, the agent's task in progress with its latest activity, and one done.

Below the board, Phases and tasks shows the work in progress by default, with Backlog, Done, and All filters, and an expanded task shows its changes and discoveries. The change map marks each part done, in progress, or still needed. Further down, the changes record lists what changed under each task with its files and validation, then the discoveries and the plan updates they caused.

Review​

Review shows the assessment with a count of findings by severity, then each finding with what was expected and what was observed side by side:

Screenshot of a review finding with Expected and Observed side by side and the agent's decision with Question this decision.

The card beside each finding gives the decision on it and where the work goes next. Question this decision starts a comment about that finding. The decision history follows the findings.

Follow-up​

Follow-up ranks the work that remains. Required items keep the session open, and optional ones never block it:

Screenshot of ranked follow-ups: two required review fixes and one optional item, each with Select as next loop and Skip.

Select as next loop and Skip each add a request for the agent, which waits in Review and send with your other input. Below the list, Loops in this session shows each loop the conversation worked on, parent first.

Earlier Documents​

When one session takes on a new request, the new work gets its own research, plan, changes record, and review. A Document switcher in the context bar then lists each phase's earlier documents by title and time. An earlier document opens read-only, with a button back to the current one.

Themes, Accessibility, and Keyboard​

The Appearance menu in the header offers System, Light, and Dark, plus More contrast. System follows your editor or operating system:

Screenshot of the canvas in the dark theme with the Appearance menu open, showing System, Light, Dark, and More contrast.

The canvas targets WCAG 2.2 AA in every theme and contrast setting. Status always pairs an icon and a word with its color, so nothing depends on color alone. Forced colors keep every border and edge, and reduced motion turns off animation except the small ring that shows a preview locking. Everything works from the keyboard. The style guide records the palette, measured contrast, and keyboard model.

Keyboard shortcuts
KeyAction
1 to 5View Research, Plan, Implement, Review, or Follow-up
nGo to the next item that needs you
fFollow the agent, or stop following
[ and ]Previous and next row
eSuggest an edit to the focused row
cComment on the focused row
/Filter the navigator
b and sShow or hide the navigator and the steering panel
lShow what the IDs and icons mean
?Show the shortcut list
Alt+Left and Alt+RightGo back and forward
Shift+F10 or MenuOpen the canvas menu for the focused item

Single-key shortcuts pause while you type, and the shortcut list has a switch that turns them off.

Troubleshooting​

ProblemWhat to do
No canvas menu, or the RPI Workflow canvas is not listedCheck chat.canvases.enabled, start a new session with the Copilot harness, and send a message. Install the hve-core plugin; the VS Code extension does not carry canvases.
The RPI Agent did not open the canvasAsk the agent to open the RPI Workflow canvas. If it never opens the canvas by itself, update the hve-core plugin, because an older RPI Agent may not.
The host reports multiple matching canvas providersAsk the agent to retry lookup or opening with a host-reported extensionId, such as project:rpi-workflow when offered, and reuse that provider when reopening.
The canvas says Not connectedChoose Ask the agent or Copy request.
The canvas stopped moving with the agentFollowing stopped when you chose another phase or started typing. Press Follow agent or f.
Review and send says it cannot sendThe host does not accept messages from extensions. Use Queue, and the agent collects your items at its next checkpoint.
An item stays at SentSome hosts do not report pickups. The read-back still arrives.
Open in VS Code is missingThe canvas shows that button only when it finds VS Code. Use Copy path, or read the file in the canvas.
A list of problems appears above the phaseThe canvas names what it cannot read in the session's files. The RPI Agent fixes the files it is writing.

The repository project entry and an installed plugin can both provide the canvas. The agent keeps a saved provider if still available; otherwise it prefers an offered workspace/project provider. If that attempt fails, it reports the reason and recovery action and continues the RPI session without a canvas.

The canvas README covers the agent actions, storage, security, and known limitations.


🤖 Crafted with precision by ✨Copilot following brilliant human instruction, then carefully refined by our team of discerning human reviewers.