Skip to content

[ca] Update CLI Versions: Claude Code 2.1.22, Copilot CLI 0.0.397 #12345

Closed

Description

@github-actions

Found 2 CLI version updates available. Constants have been updated but workflow recompilation is blocked by Go toolchain download restrictions in the GitHub Actions environment.

Update Summary

  • Claude Code: 2.1.20 → 2.1.22 (via 2.1.21)
  • Copilot CLI: 0.0.395 → 0.0.397 (via 0.0.396)
  • Constants Updated: ✅ Yes (pkg/constants/constants.go)
  • Recompile Status: ❌ Blocked by Go toolchain download
  • Priority: Medium

Claude Code Updates

Version 2.1.21

Version 2.1.22

CLI Changes

✓ No changes detected in command-line interface between 2.1.20 → 2.1.22

Available commands remain:

  • doctor - Check auto-updater health
  • install - Install native build
  • mcp - Configure and manage MCP servers
  • plugin - Manage plugins
  • setup-token - Set up authentication token
  • update - Check for updates

Key flags:

  • --mcp-config - Load MCP servers from JSON
  • --model - Specify model (sonnet, opus, haiku)
  • --permission-mode - Control permissions
  • --json-schema - Structured output validation
  • --agent - Custom agent selection
View Full Claude Code Help Output
Usage: claude [options] [command] [prompt]

Claude Code - starts an interactive session by default, use -p/--print for
non-interactive output

Arguments:
  prompt                                            Your prompt

Options:
  --add-dir (directories...)                        Additional directories to allow tool access to
  --agent (agent)                                   Agent for the current session. Overrides the 'agent' setting.
  --agents (json)                                   JSON object defining custom agents (e.g. '{"reviewer": {"description": "Reviews code", "prompt": "You are a code reviewer"}}')
  --allow-dangerously-skip-permissions              Enable bypassing all permission checks as an option, without it being enabled by default. Recommended only for sandboxes with no internet access.
  --allowedTools, --allowed-tools (tools...)        Comma or space-separated list of tool names to allow (e.g. "Bash(git:*) Edit")
  --append-system-prompt (prompt)                   Append a system prompt to the default system prompt
  --betas (betas...)                                Beta headers to include in API requests (API key users only)
  --chrome                                          Enable Claude in Chrome integration
  -c, --continue                                    Continue the most recent conversation in the current directory
  --dangerously-skip-permissions                    Bypass all permission checks. Recommended only for sandboxes with no internet access.
  -d, --debug [filter]                              Enable debug mode with optional category filtering (e.g., "api,hooks" or "!statsig,!file")
  --debug-file (path)                               Write debug logs to a specific file path (implicitly enables debug mode)
  --disable-slash-commands                          Disable all skills
  --disallowedTools, --disallowed-tools (tools...)  Comma or space-separated list of tool names to deny (e.g. "Bash(git:*) Edit")
  --fallback-model (model)                          Enable automatic fallback to specified model when default model is overloaded (only works with --print)
  --file (specs...)                                 File resources to download at startup. Format: file_id:relative_path (e.g., --file file_abc:doc.txt file_def:img.png)
  --fork-session                                    When resuming, create a new session ID instead of reusing the original (use with --resume or --continue)
  -h, --help                                        Display help for command
  --ide                                             Automatically connect to IDE on startup if exactly one valid IDE is available
  --include-partial-messages                        Include partial message chunks as they arrive (only works with --print and --output-format=stream-json)
  --input-format (format)                           Input format (only works with --print): "text" (default), or "stream-json" (realtime streaming input) (choices: "text", "stream-json")
  --json-schema (schema)                            JSON Schema for structured output validation. Example: {"type":"object","properties":{"name":{"type":"string"}},"required":["name"]}
  --max-budget-usd (amount)                         Maximum dollar amount to spend on API calls (only works with --print)
  --mcp-config (configs...)                         Load MCP servers from JSON files or strings (space-separated)
  --mcp-debug                                       [DEPRECATED. Use --debug instead] Enable MCP debug mode (shows MCP server errors)
  --model (model)                                   Model for the current session. Provide an alias for the latest model (e.g. 'sonnet' or 'opus') or a model's full name (e.g. 'claude-sonnet-4-5-20250929').
  --no-chrome                                       Disable Claude in Chrome integration
  --no-session-persistence                          Disable session persistence - sessions will not be saved to disk and cannot be resumed (only works with --print)
  --output-format (format)                          Output format (only works with --print): "text" (default), "json" (single result), or "stream-json" (realtime streaming) (choices: "text", "json", "stream-json")
  --permission-mode (mode)                          Permission mode to use for the session (choices: "acceptEdits", "bypassPermissions", "default", "delegate", "dontAsk", "plan")
  --plugin-dir (paths...)                           Load plugins from directories for this session only (repeatable)
  -p, --print                                       Print response and exit (useful for pipes). Note: The workspace trust dialog is skipped when Claude is run with the -p mode. Only use this flag in directories you trust.
  --replay-user-messages                            Re-emit user messages from stdin back on stdout for acknowledgment (only works with --input-format=stream-json and --output-format=stream-json)
  -r, --resume [value]                              Resume a conversation by session ID, or open interactive picker with optional search term
  --session-id (uuid)                               Use a specific session ID for the conversation (must be a valid UUID)
  --setting-sources (sources)                       Comma-separated list of setting sources to load (user, project, local).
  --settings (file-or-json)                         Path to a settings JSON file or a JSON string to load additional settings from
  --strict-mcp-config                               Only use MCP servers from --mcp-config, ignoring all other MCP configurations
  --system-prompt (prompt)                          System prompt to use for the session
  --tools (tools...)                                Specify the list of available tools from the built-in set. Use "" to disable all tools, "default" to use all tools, or specify tool names (e.g. "Bash,Edit,Read").
  --verbose                                         Override verbose mode setting from config
  -v, --version                                     Output the version number

Commands:
  doctor                                            Check the health of your Claude Code auto-updater
  install [options] [target]                        Install Claude Code native build. Use [target] to specify version (stable, latest, or specific version)
  mcp                                               Configure and manage MCP servers
  plugin                                            Manage Claude Code plugins
  setup-token                                       Set up a long-lived authentication token (requires Claude subscription)
  update                                            Check for updates and install if available
``````

</details>

#### Impact Assessment
- **Risk**: Low
- **Breaking Changes**: None detected
- **Affects**: Claude Code CLI users in workflows
- **Migration**: Drop-in replacement

### Copilot CLI Updates

#### Version 0.0.396
- **Release Date**: 2026-01-27 20:02 UTC
- **Package**: https://www.npmjs.com/package/`@github/copilot`
- **Interval**: ~19 hours after 0.0.395

#### Version 0.0.397
- **Release Date**: 2026-01-28 15:21 UTC
- **Package**: https://www.npmjs.com/package/`@github/copilot`
- **Interval**: ~19 hours after 0.0.396

#### CLI Changes
✓ No changes detected in command-line interface between 0.0.395 → 0.0.397

**Available commands remain:**
- `help [topic]` - Display help information
- `init` - Initialize Copilot instructions
- `update` - Download latest version
- `version` - Display version and check updates

**Help topics:**
- `config` - Configuration Settings
- `commands` - Interactive Mode Commands
- `environment` - Environment Variables
- `logging` - Logging
- `permissions` - Permissions

**Key flags:**
- `--acp` - Start as Agent Client Protocol server
- `--add-github-mcp-tool` - Enable specific GitHub MCP tools
- `--enable-all-github-mcp-tools` - Enable all GitHub MCP tools
- `--model` - Set AI model (claude-sonnet-4.5, gpt-5.2-codex, etc.)
- `--allow-all` / `--yolo` - Enable all permissions
- `--experimental` - Enable experimental features

<details>
<summary><b>View Full Copilot CLI Help Output</b></summary>

``````
Usage: copilot [options] [command]

GitHub Copilot CLI - An AI-powered coding assistant

Options:
  --acp                               Start as Agent Client Protocol server
  --add-dir (directory)               Add a directory to the allowed list for
                                      file access (can be used multiple times)
  --add-github-mcp-tool (tool)        Add a tool to enable for the GitHub MCP
                                      server instead of the default CLI subset
                                      (can be used multiple times). Use "*" for
                                      all tools.
  --add-github-mcp-toolset (toolset)  Add a toolset to enable for the GitHub MCP
                                      server instead of the default CLI subset
                                      (can be used multiple times). Use "all"
                                      for all toolsets.
  --additional-mcp-config (json)      Additional MCP servers configuration as
                                      JSON string or file path (prefix with @)
                                      (can be used multiple times; augments
                                      config from ~/.copilot/mcp-config.json for
                                      this session)
  --agent (agent)                     Specify a custom agent to use
  --allow-all                         Enable all permissions (equivalent to
                                      --allow-all-tools --allow-all-paths
                                      --allow-all-urls)
  --allow-all-paths                   Disable file path verification and allow
                                      access to any path
  --allow-all-tools                   Allow all tools to run automatically
                                      without confirmation; required for
                                      non-interactive mode (env:
                                      COPILOT_ALLOW_ALL)
  --allow-all-urls                    Allow access to all URLs without
                                      confirmation
  --allow-tool [tools...]             Tools the CLI has permission to use; will
                                      not prompt for permission
  --allow-url [urls...]               Allow access to specific URLs or domains
  --available-tools [tools...]        Only these tools will be available to the
                                      model
  --banner                            Show the startup banner
  --config-dir (directory)            Set the configuration directory (default:
                                      ~/.copilot)
  --continue                          Resume the most recent session
  --deny-tool [tools...]              Tools the CLI does not have permission to
                                      use; will not prompt for permission
  --deny-url [urls...]                Deny access to specific URLs or domains,
                                      takes precedence over --allow-url
  --disable-builtin-mcps              Disable all built-in MCP servers
                                      (currently: github-mcp-server)
  --disable-mcp-server (server-name)  Disable a specific MCP server (can be used
                                      multiple times)
  --disable-parallel-tools-execution  Disable parallel execution of tools (LLM
                                      can still make parallel tool calls, but
                                      they will be executed sequentially)
  --disallow-temp-dir                 Prevent automatic access to the system
                                      temporary directory
  --enable-all-github-mcp-tools       Enable all GitHub MCP server tools instead
                                      of the default CLI subset. Overrides
                                      --add-github-mcp-toolset and
                                      --add-github-mcp-tool options.
  --excluded-tools [tools...]         These tools will not be available to the
                                      model
  --experimental                      Enable experimental features (use
                                      --no-experimental to disable)
  -h, --help                          display help for command
  -i, --interactive (prompt)          Start interactive mode and automatically
                                      execute this prompt
  --log-dir (directory)               Set log file directory (default:
                                      ~/.copilot/logs/)
  --log-level (level)                 Set the log level (choices: "none",
                                      "error", "warning", "info", "debug",
                                      "all", "default")
  --model (model)                     Set the AI model to use (choices:
                                      "claude-sonnet-4.5", "claude-haiku-4.5",
                                      "claude-opus-4.5", "claude-sonnet-4",
                                      "gemini-3-pro-preview", "gpt-5.2-codex",
                                      "gpt-5.2", "gpt-5.1-codex-max",
                                      "gpt-5.1-codex", "gpt-5.1", "gpt-5",
                                      "gpt-5.1-codex-mini", "gpt-5-mini",
                                      "gpt-4.1")
  --no-ask-user                       Disable the ask_user tool (agent works
                                      autonomously without asking questions)
  --no-auto-update                    Disable downloading CLI update
                                      automatically
  --no-color                          Disable all color output
  --no-custom-instructions            Disable loading of custom instructions
                                      from AGENTS.md and related files
  -p, --prompt (text)                 Execute a prompt in non-interactive mode
                                      (exits after completion)
  --plain-diff                        Disable rich diff rendering (syntax
                                      highlighting via diff tool specified by
                                      git config)
  --resume [sessionId]                Resume from a previous session (optionally
                                      specify session ID)
  -s, --silent                        Output only the agent response (no stats),
                                      useful for scripting with -p
  --screen-reader                     Enable screen reader optimizations
  --share [path]                      Share session to markdown file after
                                      completion in non-interactive mode
                                      (default: ./copilot-session-(id).md)
  --share-gist                        Share session to a secret GitHub gist
                                      after completion in non-interactive mode
  --stream (mode)                     Enable or disable streaming mode (choices:
                                      "on", "off")
  -v, --version                       show version information
  --yolo                              Enable all permissions (equivalent to
                                      --allow-all-tools --allow-all-paths
                                      --allow-all-urls)

Commands:
  help [topic]                        Display help information
  init                                Initialize Copilot instructions for this
                                      repository
  update                              Download the latest version
  version                             Display version information and check for
                                      updates

Help Topics:
  config       Configuration Settings
  commands     Interactive Mode Commands
  environment  Environment Variables
  logging      Logging
  permissions  Permissions

Examples:
  # Start interactive mode
  $ copilot

  # Start interactive mode and automatically execute a prompt
  $ copilot -i "Fix the bug in main.js"

  # Execute a prompt in non-interactive mode (exits after completion)
  $ copilot -p "Fix the bug in main.js" --allow-all-tools

  # Enable all permissions with a single flag
  $ copilot -p "Fix the bug in main.js" --allow-all
  $ copilot -p "Fix the bug in main.js" --yolo

  # Start with a specific model
  $ copilot --model gpt-5

  # Resume the most recent session
  $ copilot --continue

  # Resume a previous session using session picker
  $ copilot --resume

  # Resume with auto-approval
  $ copilot --allow-all-tools --resume

  # Allow access to additional directory
  $ copilot --add-dir /home/user/projects

  # Allow multiple directories
  $ copilot --add-dir ~/workspace --add-dir /tmp

  # Disable path verification (allow access to any path)
  $ copilot --allow-all-paths

  # Allow all git commands except git push
  $ copilot --allow-tool 'shell(git:*)' --deny-tool 'shell(git push)'

  # Allow all file editing
  $ copilot --allow-tool 'write'

  # Allow all but one specific tool from MCP server with name "MyMCP"
  $ copilot --deny-tool 'MyMCP(denied_tool)' --allow-tool 'MyMCP'

  # Allow GitHub API access (defaults to HTTPS)
  $ copilot --allow-url github.com

  # Deny access to specific domain over HTTPS
  $ copilot --deny-url (redacted)
  $ copilot --deny-url malicious-site.com

  # Allow all URLs without confirmation
  $ copilot --allow-all-urls

  # Initialize Copilot instructions for a repository
  $ copilot init

Impact Assessment

  • Risk: Medium (per WARNING in constants.go)
  • Breaking Changes: None detected
  • Affects: Copilot CLI users in workflows
  • Migration: Drop-in replacement
  • Note: "UPGRADING COPILOT CLI REQUIRES A FULL INTEGRATION TEST RUN TO ENSURE COMPATIBILITY"

Recommendations

Immediate Actions

  1. Manual Recompile Required: Run make recompile in a local environment with Go toolchain access to regenerate workflow lock files
  2. Testing: Verify both CLIs work correctly in workflow environment
  3. Integration Tests: Full test run required for Copilot CLI per warning in constants

Update Priority

  • Claude Code: Medium - Patch version updates, likely bug fixes
  • Copilot CLI: Medium - Requires integration testing per policy

Technical Details

Files Modified

  • pkg/constants/constants.go:256 - Claude Code version constant
  • pkg/constants/constants.go:261 - Copilot CLI version constant

Recompile Issue

go: download go1.25.0: golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64: 
Get "(redacted) Forbidden

This is a known limitation in the GitHub Actions environment. The recompile must be performed in an environment with Go toolchain access.

Package Links

Claude Code:

Copilot CLI:

References:

AI generated by CLI Version Checker

Activity

  1. github-actions commented on Jan 28, 2026

    @github-actions
    ContributorAuthor

    🍪 Issue Monster has assigned this to Copilot!

    I've identified this issue as a good candidate for automated resolution and assigned it to the Copilot agent.

    The Copilot agent will analyze the issue and create a pull request with the fix.

    Om nom nom! 🍪

    AI generated by Issue Monster

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

automationcookieIssue Monster Loves Cookies!dependenciesPull requests that update a dependency file

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions