GitHub Copilot
The Copilot adapter drives GitHub Copilot through a pinned version of the Copilot SDK. As with the other first-party runtimes, the pin is deliberate: the adapter is verified against one known SDK shape, and a drift guard fails the build when the SDK grows a capability the adapter hasn’t been taught to project.
Requirements
Section titled “Requirements”The copilot executable on the bridge machine’s PATH, authenticated
with copilot login. The adapter detects install and auth posture and
reports it; the login itself happens in your own terminal.
Copilot registers as a machine agent with folder facets — one registration per machine, with per-folder rows underneath it.
What the adapter supports
Section titled “What the adapter supports”Streaming. Assistant text, tool calls, and tool output stream into the transcript as the turn runs, with file edits rendered as diffs.
Approvals. Permission requests surface as cards in the app. Answer from wherever you are and the turn continues.
Structured questions. Copilot’s ask-the-user requests render as the same choice cards used everywhere else in Helmora, and pending questions are rebuilt after a reconnect rather than being lost.
Plans. Copilot is the runtime that declares plan support unconditionally, so plan output renders without needing a special mode.
Background tasks. Copilot maintains an authoritative task registry, and Helmora projects it: long-running background work appears in the footer and in the background-tasks sheet, with a per-row Stop. Because the registry is the provider’s own, Helmora can resume tracking tasks across a reconnect rather than losing sight of them.
Per-chat model selection. Models are chosen per session and take effect on the next turn. The effort scale comes straight from Copilot’s own model catalog rather than a Helmora-invented mapping.
Working-directory changes. The working directory for a Copilot session can be changed without tearing the session down.
Permission posture. The permission-mode picker uses Copilot’s own vocabulary, applied from the next turn.
Monthly plan usage. Tapping the session gauge shows your Copilot plan usage for the current period alongside the session’s context consumption.
Compaction. Copilot runs its own automatic background and blocking compaction near the context limit, and the SDK also exposes a manual history-compaction call. Helmora maps both onto the same gauge, marker, and resume experience the other runtimes use, so the transcript always records where compaction happened.
MCP management. Configured MCP servers are listed and manageable from the Tools panel, with a live status pill.
Diagnostics. Copilot reports adapter-level diagnostics into the Diagnostics tab.
External-session mirroring. Sessions started outside Helmora are picked up from the SDK’s event log and appear in the app.
Known boundaries
Section titled “Known boundaries”- Steering aborts rather than injects. Copilot cannot inject a redirect into a live turn. When you steer, Helmora declines any parked question, aborts the current turn, and dispatches your redirect as a fresh turn. The composer shows this as its own mode rather than pretending the two behave identically.
- No sub-agent grid. Sub-agent activity is not projected for Copilot.
- Hooks are partial — only an event-log mirror, not a configurable pipeline.
- Sign-in is detection-only. The app tells you when Copilot needs a login and points you at the CLI.
- Slash commands, a tools catalog, per-session rename, and Live Activities are not wired for Copilot.
The app renders only what the active adapter declares — see Architecture.