Files
40c9634e1f agent host: update to AHP 0.9.0 (#333275)
* agent host: update to AHP 0.9.0

Updates VS Code to the AHP 0.9.0 protocol and Rust crates.

- Renames the automation catalog state and adopts the entries collection.
- Treats normalized automation channel URIs as equivalent on both ends.
- Updates generated protocol types and handwritten automation consumers.
- Updates the Rust AHP dependencies and new request fields.

(Commit message generated by Copilot)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* agent host: preserve AHP compatibility

Keeps the AHP 0.9 update compatible with supported hosts and stored data.

- Excludes AHP 0.8 from client negotiation because its automation wire shape differs.
- Migrates version 1 automation catalogs from automations to entries.
- Writes migrated automation storage with version 2.
- Adds regression coverage for protocol negotiation and storage migration.

(Commit message generated by Copilot)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* agent host: keep automation storage at version 1

Preserves the existing durable automation format while adopting the AHP 0.9 runtime model.

- Keeps stored catalogs in the version 1 automations collection.
- Maps stored automations to protocol entries when the service loads.
- Maps protocol entries back to automations before persistence.
- Updates storage fixtures to verify the stable format.

(Commit message generated by Copilot)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Dmitriy Vasyura <dmitriv@microsoft.com>
2026-08-31 21:17:03 +00:00

91 lines
2.9 KiB
TOML

[package]
name = "code-cli"
version = "0.1.0"
edition = "2021"
default-run = "code"
[lib]
name = "cli"
path = "src/lib.rs"
[[bin]]
name = "code"
[dependencies]
futures = "0.3.28"
clap = { version = "4.3.0", features = ["derive", "env"] }
open = "4.1.0"
reqwest = { version = "0.13", default-features = false, features = ["json", "stream", "native-tls"] }
tokio = { version = "1.52", features = ["full"] }
tokio-util = { version = "0.7.8", features = ["compat", "codec"] }
flate2 = { version = "1.0.26", default-features = false, features = ["zlib"] }
zip = { version = "0.6.6", default-features = false, features = ["time", "deflate-zlib"] }
regex = "1.8.3"
sysinfo = { version = "0.29.0", default-features = false }
serde = { version = "1.0.163", features = ["derive"] }
serde_json = "1.0.96"
rmp-serde = "1.1.1"
uuid = { version = "1.4", features = ["serde", "v4"] }
dirs = "5.0.1"
rand = "0.8.6"
serde_bytes = "0.11.9"
jiff = { version = "0.2", default-features = false, features = ["std", "serde"] }
http = "1"
gethostname = "0.4.3"
libc = "0.2.144"
tunnels = { git = "https://github.com/microsoft/dev-tunnels", rev = "64048c1409ff56cb958b879de7ea069ec71edc8b", default-features = false, features = ["connections"] }
keyring = { version = "2.0.3", default-features = false, features = ["linux-secret-service-rt-tokio-crypto-openssl", "platform-windows", "platform-macos", "linux-keyutils"] }
dialoguer = "0.10.4"
hyper = { version = "1", features = ["server", "http1", "client"] }
hyper-util = { version = "0.1", features = ["tokio", "server-auto"] }
http-body-util = "0.1"
tokio-tungstenite = { version = "0.29", features = ["native-tls"] }
indicatif = "0.17.4"
tempfile = "3.5.0"
clap_lex = "1"
url = "2.5.4"
log = "0.4.18"
const_format = "0.2.31"
sha2 = "0.10.6"
base64 = "0.22"
shell-escape = "0.1.5"
thiserror = "2"
cfg-if = "1.0.0"
pin-project = "1.1.0"
console = "0.15.7"
bytes = "1.11.1"
tar = "0.4.46"
local-ip-address = "0.6"
ahp = "0.9.0"
ahp-types = "0.9.0"
[build-dependencies]
serde = { version="1.0.163", features = ["derive"] }
serde_json = "1.0.96"
winresource = "0.1"
[target.'cfg(windows)'.dependencies]
winreg = "0.56"
winapi = "0.3.9"
windows-sys = { version = "0.61", features = ["Win32_Foundation", "Win32_Security", "Win32_Security_Authorization", "Win32_System_Console", "Win32_System_Threading", "Win32_UI_Input_KeyboardAndMouse"] }
[target.'cfg(target_os = "macos")'.dependencies]
core-foundation = "0.9.3"
[target.'cfg(target_os = "linux")'.dependencies]
zbus = { version = "3.13.1", default-features = false, features = ["tokio"] }
[patch.crates-io]
russh = { git = "https://github.com/microsoft/vscode-russh", branch = "main" }
russh-cryptovec = { git = "https://github.com/microsoft/vscode-russh", branch = "main" }
russh-keys = { git = "https://github.com/microsoft/vscode-russh", branch = "main" }
[profile.release]
strip = true
lto = "thin"
[features]
default = []
vsda = []
vscode-encrypt = []