Skip to main content

GitHub Copilot CLI

Install, authenticate, and resume GitHub Copilot CLI inside Daintree, including the /login flow, the OS keychain, and the --resume session flag.

Reviewed

GitHub Copilot CLI

GitHub Copilot CLI is GitHub's CLI coding agent. It runs as a process in its own Daintree terminal panel with full PTY emulation, like every other built-in agent.

Commandcopilot
Shortcut— (assignable in Keyboard settings)
RenderingAlt-screen — Copilot draws its own full-screen TUI
Resumecopilot --resume=<session-id>. No resume-latest fallback
Quit command/exit
Permission bypassNone declared
PlatformsmacOS, Windows, Linux

Install & Authenticate

Install Copilot CLI from npm. The command is the same on macOS, Windows, and Linux, and requires Node.js 22 or later. GitHub also publishes WinGet, Homebrew and install-script builds; Daintree's inline install helper offers the npm path.

npm install -g @github/copilot

On first launch, if you aren't already signed in to GitHub, Copilot prompts you to run the /login slash command and walks you through authorizing the session. For automation you can authenticate with a fine-grained personal access token carrying the Copilot Requests permission. The token lands in your OS keychain, falling back to ~/.copilot/config.json on headless Linux and in CI — that file is what Daintree probes, so keychain-only users show as needing login while still launching normally.

Copilot CLI supports 13 models without configuration (Claude Sonnet, Opus, and Haiku; GPT-5.x; Gemini 2.5/3 Pro) and has a 160,000-token context window. Switch models mid-session with /model, or pin the CLI to one at launch with copilot --model <name>.

Resuming Sessions

Daintree captures Copilot's session ID on shutdown and resumes with copilot --resume=<session-id>. Quit with /exit so the ID is captured: Copilot declares no resume-latest fallback, so a missed capture means the next launch starts a fresh session rather than reopening the most recent one.

The store the ID points at is local (~/.copilot/) and global rather than path-keyed, so a captured ID resumes from any folder. A resumed session does carry the original absolute path in its workspace metadata, so after moving a project you may need /cwd <new path> to point it at the new location. See Session Management for how resumable sessions are stored and pruned.

Launch flags, custom presets and display titles are covered in Agent Presets. What the working, waiting and exited badges on a running agent mean is covered in Agent States.

Tip
If copilot isn't detected after install, confirm it's on your PATH (which copilot on macOS/Linux, where copilot on Windows), then restart Daintree.