mirror of
https://github.com/wirenboard/agent-vm.git
synced 2026-07-09 16:00:54 +00:00
Follow-up to the help regroup (f881e07), addressing a code review of
that change.
- The `--help` example `agent-vm shell -- -c 'cargo test'` was wrong
and would not run. The launcher already wraps a Shell agent's
trailing args in `bash -c <shell-escaped args>`, so a literal `-c`
is double-applied: the guest runs `bash -c "-c 'cargo test'"`, bash
takes `-c` as the command name -> `bash: -c: command not found`,
exit 127. Changed to `agent-vm shell -- cargo test`.
- The Examples/Networking/Environment footer hangs off the single
`run::Args` shared by claude/codex/opencode/shell, so it renders
verbatim under every verb. The examples are claude-flavoured
(`-- --model opus`), which read as authoritative under
`agent-vm codex --help`. Labelled the block "(claude shown;
codex/opencode/shell take the same options)" and dropped the
now-false "command-agnostic" comment.
- The Environment section omitted two env vars the launch path
honours: AGENT_VM_STATE_DIR (host_paths::state_root) and
AGENT_VM_INSECURE_REGISTRY (is_plain_http_registry). Added both.
- `--publish` value_name was `[BIND:]HOST:GUEST`; the port fields read
as hostnames. Changed to `[BIND:]HOST_PORT:GUEST_PORT`, matching the
real parse format and the per-flag long help.
- Rewrote the networking cheatsheet: dropped the per-row format
abbreviations (they duplicated the value_names and pushed the
longest row to ~88 cols, which wrap_help reflows and de-aligns on an
80-col terminal) and kept the direction arrows. All footer lines are
now <=76 cols.
- Cargo.toml `description` said "Sandboxed VMs"; `about` says
"microVMs". Aligned to "microVMs".
Presentation-only; no flag, env var, or behaviour changed.
`cargo test -p agent-vm`: 123 passed. Rendered `-h`/`--help` for claude
and codex verified against the rebuilt binary.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
37 lines
1.3 KiB
TOML
37 lines
1.3 KiB
TOML
[package]
|
|
name = "agent-vm"
|
|
description = "Sandboxed microVMs for AI coding agents, built on microsandbox."
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
repository.workspace = true
|
|
|
|
[[bin]]
|
|
name = "agent-vm"
|
|
path = "src/main.rs"
|
|
|
|
[dependencies]
|
|
microsandbox = { path = "../../vendor/microsandbox/crates/microsandbox" }
|
|
tokio = { version = "1.42", features = ["macros", "rt-multi-thread", "time"] }
|
|
# `wrap_help` makes clap detect the terminal width and wrap long help
|
|
# text to it; without it the multi-paragraph `--help` prose renders as
|
|
# unbroken one-line-per-paragraph walls.
|
|
clap = { version = "4.5", features = ["derive", "env", "wrap_help"] }
|
|
anyhow = "1.0"
|
|
base64 = "0.22"
|
|
sha2 = "0.10"
|
|
serde_json = { version = "1", features = ["preserve_order"] }
|
|
tracing = "0.1"
|
|
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
|
|
indicatif = "0.18"
|
|
console = "0.16"
|
|
reqwest = { version = "0.13", default-features = false, features = ["rustls", "json"] }
|
|
libc = "0.2"
|
|
ipnetwork = "0.21"
|
|
|
|
# Integration tests that drive the actual secret-substitution layer
|
|
# end-to-end with the hook's anonymisation logic. Kept out of release
|
|
# deps so production builds don't pull in the entire network stack.
|
|
[dev-dependencies]
|
|
microsandbox-network = { path = "../../vendor/microsandbox/crates/network" }
|
|
tempfile = "3"
|