Feature request: inspect and safely prune SDK-managed CLI caches
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
調査の方向性
Start with rust/src/embeddedcli.rs to understand the versioned extraction cache, then review issue #2524 and PR #1480 for related lifecycle context. A contribution is ready to scope only after maintainers decide ownership, supported languages and layouts, and safeguards; done would be agreed implementation, tests, and documentation.
索引モデルが issue の本文から書いたものです。
説明
Feature request: inspect and safely prune SDK-managed CLI caches
Problem
The SDK intentionally stores CLI versions side by side for compatibility. Across application updates, historical copies can accumulate, but I could not find a supported cache inspection/pruning workflow or retention control in the examined implementations.
On one macOS 26.7 arm64 machine, a read-only inspection found 9 cached CLI versions totaling 1.353 GB under ~/Library/Caches/github-copilot-sdk/cli/. Each contained a copilot executable and .copilot-cli.ok size marker. The versions were 1.0.69-2, 1.0.71, 1.0.71-2, 1.0.73, 1.0.78-2, 1.0.79-5, 1.0.80, 1.0.83, 1.0.84-5.
Two running processes from GitHub Copilot.app used 1.0.84-5. This does not establish that the eight other versions are unneeded; they may serve inactive consumers. No cache entries were deleted.
Implementation context
The Rust bundled CLI installer lazily extracts into a version-specific directory and reuses an existing valid copy. The observed marker/layout matches this mechanism. I did not establish the source revision used by each historical binary, or which app created every copy.
Requested capability
Would maintainers consider a documented inspection/pruning API or utility, or identify the existing supported cleanup mechanism if I missed it?
Suggested starting scope:
- Enumerate cached versions and sizes.
- Explicit opt-in pruning with a dry-run mode and caller-specified keep versions.
- Safeguards for in-use versions and concurrent installation.
- Clear offline/re-extraction behavior per SDK provisioning mode.
- Documentation explaining ownership between shared SDK caches and consumer applications.
Automatic deletion of all but the newest version is not the request: that would break intentional cross-app version coexistence.
Related context: https://github.com/github/copilot-sdk/issues/2524 tracks v2 runtime discovery, acquisition and embedding. This request concerns historical-version cache lifecycle rather than replacing that work.
Additional related work found in a follow-up search:
- https://github.com/github/copilot-sdk/pull/1480 (merged): recovery when a build-time-extracted cache binary disappears.
- https://github.com/github/copilot-cli/issues/4728 (open): CLI auto-update overwriting a desktop app's version-pinned SDK-cache binary.
- The standalone CLI changelog already documents old auto-update package cleanup (0.0.388 and 1.0.40). This request is specifically about the SDK-managed versioned extraction cache, not that separate package cache.
No direct duplicate was found in targeted public issue/PR and Discussion searches; this is not a claim that none exists.
Questions before a PR
- Does this belong in the SDK, its desktop consumer, or both?
- Is there existing/planned cache-lifecycle work to extend?
- Which languages and cache layouts should a first contribution cover?
I can contribute a scoped implementation and tests once the intended design and ownership are agreed.
Reproduction status
This report is backed by a measured local cache and process ancestry. A controlled reproduction using sequential bundled CLI versions in an isolated cache is proposed but has not yet been executed. File timestamps were not treated as reliable last-use records.
- 主要言語
- TypeScript
- スター
- 10.5k
- フォーク
- 1.5k
- 平均マージ
- 1日 7時間
- マージ済み PR(30日)
- 98
環境構築
このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
github/copilot-sdk のほかの issue
-
documentation
難易度 1/5 1時間未満 初心者へのやさしさ 92/100
github/copilot-sdk#2804 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
github/copilot-sdk#2798 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
github/copilot-sdk#2793 ·
メンテナーはふだん 1 日以内に返信
-
agentic-workflows
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
github/copilot-sdk#2782 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
github/copilot-sdk#2781 ·
メンテナーはふだん 1 日以内に返信
github/copilot-sdk の issue をすべて見る
似ている issue
-
check:failed streams:add
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
iptv-org/iptv#53974 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
type: bug
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
interledger/rafiki#3986 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
Doist/todoist-cli#576 ·
メンテナーはふだん 1 日以内に返信
-
feature
難易度 1/5 1時間未満 初心者へのやさしさ 72/100
vercel-labs/skills#2370 ·
メンテナーはふだん 1 日以内に返信
-
🐛 Bug supabase/cli
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
メンテナーはふだん 1 日以内に返信