mirror of
https://github.com/openclaw/openclaw.git
synced 2026-06-03 22:54:09 +00:00
Persist GitHub Copilot SDK session ids in the plugin-state SQLite store so separate OpenClaw process turns can resume the same Copilot-side session when the compatibility fingerprint still matches. The fingerprint covers provider/model/cwd, resolved agent id, resolved Copilot home, and auth identity. Plugin-state lookup/register/delete failures are non-fatal, stale rows are invalidated, and reset delete failures use an in-process tombstone so reset does not accidentally reuse a durable binding. Also routes the QQBot token POST through the plugin SDK SSRF guard with capture disabled for the secret-bearing request, preserving the current token lifetime validation from main. Verification: focused Copilot and QQBot Vitest suites, raw channel fetch guard, autoreview clean, Blacksmith Testbox pnpm check:changed tbx_01kst9fwjmsfzwaxqatszcbf40, live local Copilot two-turn smoke with the same SDK session id persisted in SQLite. Refs #88064
GitHub Copilot agent runtime (OpenClaw plugin)
Bundled OpenClaw plugin that registers a copilot agent harness backed
by @github/copilot-sdk and the GitHub Copilot CLI.
The harness claims the canonical subscription github-copilot provider and
is opt-in only — selection requires explicit agentRuntime.id: "copilot"
on a model or provider entry; auto never picks it. PI remains the default
embedded runtime.
See GitHub Copilot agent runtime for configuration, doctor probes, transcript mirroring, compaction, side questions, replay, and the supported-surface contract. See qa/copilot-capabilities.md for the SDK capability inventory the harness is pinned to.