Skip to content

v0.2.61: GitHub Copilot and Sub Fix

Choose a tag to compare

@Shashikant86 Shashikant86 released this 29 Jul 14:30

Added

  • Single GitHub Copilot connection entry. Prefers the official Python SDK when installed, otherwise
    uses an installed Copilot CLI over GitHub's ACP server. A CLI-only account now works immediately instead
    of being blocked behind an SDK setup prompt. When both are present, the SDK reuses the installed CLI,
    skipping its first-use runtime download and sharing the same copilot login state.
  • :copilot login runs GitHub's official OAuth device flow inside the TUI, after an explicit
    confirmation.
  • :copilot mode selects the Copilot CLI session mode (Agent, Plan, Autopilot). Works on every
    plan, including Copilot Free.

Fixed

  • Headless runs no longer hang. superqode -p read stdin whenever it was not a TTY, and read()
    blocks until EOF, so CI runners and agent harnesses that pass an open pipe waited forever. Readability
    is now polled first (SUPERQODE_STDIN_WAIT, default 0.2s). Real pipes such as cat file | superqode -p "review" still work.

  • Failed headless runs print their reason instead of ending with a blank line and a bare exit code

  • ACP profiles no longer answer as a different vendor. A one-shot --connect copilot-cli silently
    fell through to the default provider and answered from OpenAI. It now exits with a usage error.

  • :copilot model no longer confirms a change that never happened. The Copilot CLI reports success
    even for an unusable model id. Plans with no selectable models (Copilot Free) now say Copilot picks the
    model itself.

  • :copilot sessions and :copilot resume name the SDK requirement on a CLI-only install instead
    of failing with an internal error.

Changed

  • Claude Pro and Max are no longer connection profiles. Anthropic documents those subscriptions for
    its own clients and bills API usage separately, so Claude is reached through BYOK or the
    claude-agent-sdk runtime with an API key.
  • External installers are manual-only in the connection flow. Only SuperQode's own Python extras
    install automatically; the command is regenerated from an allow-list rather than trusting UI state.