Skip to content

Releases: CanaryCoders/CanaryCodeCli

v0.3.1

Choose a tag to compare

@github-actions github-actions released this 14 Jul 10:45

Added

  • Background shells. The bash tool can now start long-lived commands such
    as dev servers with run_in_background: true. Background processes stay alive
    across agent turns, retain combined stdout/stderr and exit status for polling
    through bash_output, and can be stopped with bash_kill. Any remaining
    process group is terminated when the session closes.

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 09 Jul 10:31

Added

  • Interactive checkpointing. Claude Code sessions can now be checkpointed
    and reseeded, letting you roll a conversation back to an earlier point and
    continue from there.
  • AskUserQuestion alias. The Claude Code loop recognizes the SDK's
    AskUserQuestion tool, and the TUI now requires a double Esc to dismiss a
    prompt so a question is never closed by accident.
  • File-edit previews for SDK tools. Write/Edit/MultiEdit executed by
    the Claude Agent SDK now produce a unified diff — reconstructed by snapshotting
    the file before the write and diffing against disk — so the front-ends can
    preview those changes just like canarycode's own edit tools.

Fixed

  • Native CLI binary resolution under compiled installs. The Claude Agent
    SDK's native claude binary is now resolved from canarycode's own module
    graph and passed explicitly, fixing "Native CLI binary for
    <platform>-<arch> not found" when running as a compiled/standalone
    binary or after an --omit=optional install.

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 07 Jul 10:46

Added

  • Claude Code provider. canarycode can now drive Anthropic's Claude Code
    through the Claude Agent SDK, so a Claude subscription (not just a raw API
    key) can power the agent loop. Select it like any other provider; see the
    README's provider section for setup.
  • Provider-factory seam. Providers are now constructed through a single
    factory, making it straightforward to add new backends (Claude Code is the
    first to use it) without touching the core loop.
  • Provider-qualified model IDs. Model identifiers can be qualified by
    provider (e.g. anthropic/…); the selected model is resolved and persisted
    so it survives across sessions.
  • Ctrl+G opens your $EDITOR. A new external-editor action drops the
    current prompt into your configured editor and reads it back on save, with a
    matching footer chip advertising the shortcut.

Fixed

  • Clipboard copy now works over SSH. Copy actions fall back to an OSC 52
    escape sequence, so copying from a remote canarycode session lands text on
    your local clipboard.

v0.1.2

Choose a tag to compare

@github-actions github-actions released this 06 Jul 11:06

Fixed

  • install.sh aborted with a 403 when resolving the latest release. The
    installer looked up the newest tag through the api.github.com REST endpoint,
    which is rate-limited to 60 requests/hour per IP and returns HTTP 403 once
    exhausted — leaving a fresh curl … | sh to fail with "could not resolve the
    latest release tag". It now resolves the tag from the un-rate-limited
    github.com/…/releases/latest redirect, with the REST API kept as a fallback.
  • Fresh-install "no API key" error now says where to put the key. Running
    canarycode with no key configured printed a bare "anthropic provider requires
    an apiKey" with no next step. The message now spells out both options — the
    recommended CanaryLLM path (CANARYLLM_API_KEY=clk…) and raw Anthropic
    (ANTHROPIC_API_KEY) — and points at ~/.canarycode/config.json. The README
    gains a matching "First run" section.

v0.1.1

Choose a tag to compare

@github-actions github-actions released this 23 Jun 10:26

Fixed

  • Nix flake installed a corrupted binary. The flake's package (used by
    nix run and the Home Manager module) ran the prebuilt release binary through
    autoPatchelfHook and stdenv's default strip. The release binary is a Bun
    single-file executable — the app is an appended payload Bun locates via a
    baked-in byte offset — so rewriting it shifted that payload and the binary
    degraded to the bare Bun CLI (canarycode just printed the Bun version). The
    flake now installs the binary byte-for-byte unmodified and runs it inside an
    FHS env on Linux. The install.sh and GitHub-release binaries were never
    affected — only the Nix install path was. The release workflow also now pins
    Bun for reproducible builds. No source changes.

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 12 Jun 22:29

First public release.

Highlights

  • Interactive TUI built on OpenTUI + React: scrollable transcript with
    mouse support, text selection, keyboard navigation mode, copy commands,
    themed cards, markdown rendering with syntax highlighting, and a help
    overlay.
  • Headless print mode (canarycode -p "<prompt>") for scripting, with --json
    JSONL event streaming and stdin folded into the prompt as context.
  • Providers: Anthropic-compatible and OpenAI-compatible APIs, CanaryLLM,
    OpenAI Codex (ChatGPT subscription) login, and OpenCode Zen models.
  • Modes: read-only plan mode, autonomous auto mode, and extended thinking
    levels (/think off|think|think-hard|ultrathink).
  • Extensions: web search, skills, custom agents and sub-agents, MCP
    servers, lifecycle hooks, a permission engine with an optional AI safety
    checker, and user extensions loaded from ~/.canarycode/extensions/.
  • Sessions: SQLite-backed persistence with --resume/--continue, an
    interactive session picker, and mid-turn input queueing.
  • Project context: CANARYCODE.md/AGENTS.md/CLAUDE.md files are prepended to
    the system prompt; /init generates a starter file.
  • Self-update: canarycode update / /update downloads, checksum-verifies, and
    atomically swaps the release binary; a background check surfaces new
    versions at startup, and /changelog shows what changed.
  • Install anywhere: install.sh for prebuilt binaries, or Nix flake with
    a Home Manager module.