AgentKit
Tài liệuBộ kitTham chiếu CLIỨng dụng Desktop
BetaBạn đang đọc tài liệu kênh beta (2.13.0-beta.20). Tính năng có thể thay đổi trước bản stable tiếp theo.Chuyển sang stable →

Tham chiếu CLI

ak self-update

Kiểm tra, xác minh, stage hoặc áp dụng cập nhật AgentKit CLI và Desktop tuỳ chọn có chữ ký, với giới hạn ownership và khôi phục rõ ràng.

Dùng ak self-update cho vòng đời binary AgentKit. Lệnh không refresh tệp Kit trong project hoặc user scope; hãy dùng ak update hoặc ak kit refresh cho các lớp đó.

Cách dùng

ak self-update

Lệnh không nhận argument theo vị trí.

Trước khi chạy

Khi thiếu --yes, lệnh chỉ kiểm tra khả dụng và không tải artifact. Lệnh không bao giờ hỏi tương tác, bất kể TTY hay stdin. Binary channel mặc định là channel cập nhật đã lưu, hoặc beta khi chưa có tuỳ chọn; hãy chọn --channel stable nếu đó là track bạn muốn.

AgentKit phát hiện ownership của executable đang chạy trước. Bản cài Homebrew hoặc Scoop đã xác minh không bị thay tại chỗ; kết quả báo brew upgrade ak hoặc scoop update ak và không gửi release request. Ownership của package manager không chắc chắn sẽ bị từ chối an toàn.

Tuỳ chọn

CờMặc địnhMô tả
--betafalseViết tắt của --channel beta; xung đột với channel không phải beta được đặt rõ.
--changelogfalseIn changelog bản phát hành đã xác minh mà không kiểm tra hay áp dụng cập nhật.
--channel <channel>Config hoặc betaChọn dev, beta hoặc stable.
--checkfalseKiểm tra metadata có chữ ký mà không tải artifact.
--disable-auto-updatefalseTắt kiểm tra auto-update Desktop và staged apply.
--dry-runfalseTải và xác minh artifact đã chọn trong thư mục tạm mà không thay bản cài.
--enable-auto-updatefalseBật kiểm tra auto-update Desktop và staged apply.
--include-desktopfalseYêu cầu cả artifact CLI và Desktop khớp platform hiện tại.
--kit <name>TrốngVới --changelog, lọc một Kit công khai: engineer hoặc marketing.
--registry-url <url>Biến môi trường hoặc mặc định của bản phát hànhGhi đè release root binary có chữ ký.
--target <targets>TrốngVới --changelog, lọc all, cli, app, kits, engineer hoặc marketing; có thể lặp/phân tách bằng dấu phẩy.
--version <version>Channel pointerResolve một binary version chính xác.

Các cờ dùng chung được mô tả trong quy ước CLI.

Check, dry-run và apply

ak self-update --check --channel stable
ak self-update --dry-run --channel stable
ak self-update --channel stable --yes
  • Check fetch và xác minh channel pointer có chữ ký cùng manifest bất biến, nhưng không tải artifact. Lỗi availability trở thành status=unknown, thường kèm reason=release_check_unavailable, và vẫn thoát 0.
  • Dry-run tải artifact cho platform, xác minh, ghi thư mục staging tạm rồi xoá nó. Lệnh không thay CLI hay ghi binary cache/pending state lâu dài.
  • Apply yêu cầu --yes. Lệnh xác minh chữ ký Ed25519, digest manifest trong channel pointer, compatibility của manifest, cùng size và SHA-256 được khai báo của từng artifact trước khi thay thế.

--enable-auto-update--disable-auto-update ghi ~/.agentkit/config.yaml mà không cần --yes, rồi tiếp tục bằng check trừ khi có thêm --dry-run. Hai cờ này không apply binary trong cùng lần gọi, kể cả khi có thêm --yes.

Hành vi thay thế và Desktop

Với cập nhật chỉ CLI không do package manager quản lý, artifact được stage dưới ~/.agentkit/cache/binaries/<version> (AGENTKIT_HOME thay đổi thư mục gốc):

  • Trên macOS và Linux, AgentKit ghi executable tạm cùng cấp, đổi tên executable cũ thành backup tạm, cài candidate rồi xoá backup sau khi thành công. Nếu bước rename cuối thất bại, lệnh thử khôi phục ngay.
  • Trên Windows, thay thế chỉ CLI được stage để trusted helper tách rời hoàn tất sau khi process hiện tại thoát.
  • Với --include-desktop --yes trên platform không phải Windows được hỗ trợ, artifact CLI và GUI khớp nhau được stage thành một transaction đang chờ. Hãy khởi động lại ứng dụng AgentKit Desktop để xác minh lại và hoàn tất. Windows từ chối paired Desktop apply.

Sau khi thay thế thành công, không có bản rollback dành cho người dùng được giữ lại. Nếu xác minh hay thay thế thất bại, hãy giữ đường dẫn staging/pending được báo, chạy lại check và dùng package manager khi ownership được báo. Không tự thay bằng byte chưa xác minh.

Chế độ changelog

ak self-update --changelog
ak self-update --changelog --target cli --json

Chế độ changelog fetch catalog/body đã xác minh và chỉ đọc. Không thể kết hợp với cờ update, settings, --version hoặc --yes.

Đầu ra và luồng

Kết quả dành cho người dùng được ghi ra stdout. JSON thành công thông thường dùng kind=self_update với các trường data:

available, status, reason, current_version, latest_version,
auto_update, channel, applied, restart_required, message,
updated_paths, pending_path, staging_dir, install_manager, upgrade_command

Trường tuỳ chọn bị lược bỏ khi rỗng. JSON changelog dùng kind=self_update.changelog.

Lỗi validation ở cấp lệnh và lỗi apply trả về trước success renderer; đừng yêu cầu error envelope có cấu trúc trong chế độ --json. Lỗi parse cờ vẫn là plain text. Hãy dùng trạng thái process làm tín hiệu lỗi và capture stderr ở chế độ dành cho người dùng.

Kết quả và mã thoát

Mã thoátÝ nghĩaBước tiếp theo an toàn
0Check, báo managed install, đổi settings rồi check, dry-run đã xác minh, changelog hoặc apply đã hoàn tất. status=unknown cũng thoát 0.Kiểm tra status, reason, appliedrestart_required.
1Config, phát hiện manager, network apply, chữ ký/digest, compatibility, artifact, staging, replacement hoặc changelog availability thất bại.Không bỏ qua xác minh; dùng lệnh manager được báo hoặc thử lại signed flow.
2Argument, cờ, tổ hợp channel hoặc bộ lọc changelog không hợp lệ.Sửa cách gọi.

Không có mã thoát từ chối vì lệnh không bao giờ hỏi.

Lệnh liên quan và giới hạn