[CLI Flag Review] Weekly Analysis #7919
Closed
Replies: 1 comment
|
This discussion was automatically closed because it expired on 2026-09-07T18:09:54.917Z.
|
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Automated weekly analysis comparing the AWF CLI implementation (
src/cli-options.ts,src/commands/subcommands.ts) against user-facing docs (docs/usage.md,docs-site/.../cli-reference.md,README.md,AGENTS.md,CLAUDE.md).📊 Summary
src/cli-options.ts): 85src/commands/subcommands.ts): 17README.md,AGENTS.md, andCLAUDE.md; treated as soft gaps, not hard errors. The main hard comparisons are againstdocs/usage.mdand especiallydocs-site/.../cli-reference.md.✅ Flags Status
--config <path>-d, --allow-domains <domains>--allow-domains-file <path>--ruleset-file <path>--block-domains <domains>--block-domains-file <path>--ssl-bump--allow-urls <urls>-b, --build-local--agent-image <value>--image-registry <registry>--image-tag <tag>--skip-pull--docker-host <socket>--docker-host-path-prefix <prefix>--container-runtime <runtime>--cloud-hypervisor-preview--cloud-hypervisor-mount-policy <policy>--cloud-hypervisor-binary <path>--cloud-hypervisor-kernel <path>--cloud-hypervisor-rootfs <path>--cloud-hypervisor-supervisor <path>--cloud-hypervisor-artifact-manifest <path>--cloud-hypervisor-artifact-manifest-bundle <path>--cloud-hypervisor-artifact-release-tag <tag>--cloud-hypervisor-development-allow-unattested-artifacts--cloud-hypervisor-vcpus <count>--cloud-hypervisor-memory-mib <mib>--cloud-hypervisor-api-timeout-ms <ms>--cloud-hypervisor-binary-sha256 <digest>--cloud-hypervisor-virtiofsd-sha256 <digest>--cloud-hypervisor-kernel-sha256 <digest>--cloud-hypervisor-rootfs-sha256 <digest>--cloud-hypervisor-supervisor-sha256 <digest>-e, --env <KEY=VALUE>--env-all--exclude-env <name>--env-file <path>-v, --mount <host_path:container_path[:mode]>--container-workdir <dir>--memory-limit <limit>--pids-limit <limit>--tty--dns-servers <servers>--dns-over-https [resolver-url]--upstream-proxy <url>--enable-host-access--network-isolation--no-network-isolation--topology-attach <name>--allow-host-ports <ports>--allow-host-service-ports <ports>--enable-dind--legacy-security--security-mode <mode>--enable-dlp--enable-api-proxy--no-enable-api-proxy--copilot-api-target <host>--openai-api-target <host>--openai-base-url-env <name>--openai-api-base-path <path>--anthropic-api-target <host>--anthropic-api-base-path <path>--openai-api-auth-header <name>--anthropic-api-auth-header <name>--gemini-api-target <host>--gemini-api-base-path <path>--vertex-api-target <host>--vertex-api-base-path <path>--api-proxy-ca-cert <path>--anthropic-auto-cache--anthropic-cache-tail-ttl <5m|1h>--rate-limit-rpm <n>--rate-limit-rph <n>--rate-limit-bytes-pm <n>--no-rate-limit--max-model-multiplier <model:multiplier,...>--max-model-multiplier-cap <number>--max-permission-denied <number>--max-cache-misses <number>--enable-token-steering--difc-proxy-host <host:port>--difc-proxy-ca-cert <path>--log-level <level>-k, --keep-containers--agent-timeout <minutes>--work-dir <dir>--proxy-logs-dir <path>--audit-dir <path>--session-state-dir <path>--diagnostic-logs--reflectpredownload --image-registry <registry>predownload --image-tag <tag>predownload --agent-image <value>predownload --enable-api-proxypredownload --difc-proxypredownload --config <path>logs -f, --followlogs --format <format>logs --source <path>logs --listlogs --with-pidlogs stats --format <format>logs stats --source <path>logs summary --format <format>logs summary --source <path>logs audit --format <format>logs audit --source <path>logs audit --rule <id>logs audit --domain <domain>logs audit --decision <decision>1) Hard doc gaps in the canonical CLI reference
Location:
docs-site/src/content/docs/reference/cli-reference.mdIssue: Missing implemented flags:
--docker-host-path-prefix,--pids-limit,--network-isolation,--topology-attach,--legacy-security,--anthropic-auto-cache,--anthropic-cache-tail-ttl,predownload --config.Expected: Full reference should cover every supported public flag, especially advanced ones.
Current: These flags exist in code and partly in
docs/usage.md, but not in the reference.Suggestion: Add explicit entries and detail sections, or mark them intentionally internal if that is the product decision.
2) Entire advanced flag families are undocumented
Location:
docs/usage.md,cli-reference.md, READMEIssue: No documentation for
--container-runtime, all--cloud-hypervisor-*flags,--openai-api-auth-header,--anthropic-api-auth-header,--vertex-api-target,--vertex-api-base-path,--max-model-multiplier,--max-model-multiplier-cap,--max-permission-denied,--max-cache-misses,--no-network-isolation,--security-mode(hidden/deprecated).Expected: Either documented in the reference or clearly designated hidden/internal-only.
Current: They are implemented and user-settable but absent from docs.
Suggestion: Decide which are public. Document public ones in
cli-reference.md; hide/internalize the rest consistently.3)
--enable-api-proxydocs are staleLocation:
docs/usage.md,cli-reference.md,AGENTS.md,CLAUDE.mdIssue: Docs describe it as enabling an optional sidecar, but code marks it deprecated/ignored on the main command (
[DEPRECATED] The API proxy is always enabled. This flag is ignored.);--no-enable-api-proxyis defined as removed/error; subcommandpredownload --enable-api-proxyis still meaningful.Expected: Main-command docs should say always enabled / deprecated flag ignored.
Current: Docs still describe opt-in behavior.
Suggestion: Split semantics clearly — main command: deprecated, always on;
predownload: still meaningful for image pull selection.4)
--reflectis only surfaced in READMELocation:
docs/usage.md,cli-reference.mdIssue: Implemented flag missing from both main docs.
Expected: Present in usage and reference, especially because README advertises it.
Current: Only README mentions it.
Suggestion: Add option entry and example.
5) Default-value mismatches for host-access behavior
Location:
docs/usage.md,cli-reference.mdIssue: Docs say
--allow-host-portsdefaults to80,443and imply--enable-host-accesspermits only 80/443 by default; other prose inusage.mdsays "all ports currently allowed."Expected: One authoritative description matching implementation.
Current: Internal contradiction across sections.
Suggestion: Reconcile host-access semantics and update all sections together.
6) Rate-limit defaults overstated in reference
Location:
cli-reference.mdIssue: Reference lists concrete defaults (
--rate-limit-rpm=600,--rate-limit-rph=10000,--rate-limit-bytes-pm=52428800), but code does not define CLI defaults in.option(...); later prose says defaults apply only "when rate limiting is enabled."Expected: Default column should reflect CLI default accurately, likely "—" or "applies when feature enabled."
Current: Table implies unconditional CLI defaults.
Suggestion: Clarify "effective runtime default when enabled," not "Commander default."
7)
--container-workdirdefault mismatchLocation:
cli-reference.mdIssue: Reference says default is "User home." Code defines no commander default.
Expected: Either "—" or a precise runtime-derived default if guaranteed elsewhere.
Suggestion: Change default column or annotate as runtime behavior.
8) Missing short aliases in reference/README
Location:
cli-reference.md, READMEIssue: Short forms absent or inconsistently surfaced:
-d/--allow-domains,-b/--build-local,-e/--env,-v/--mount,-k/--keep-containers,-f/logs --follow.Suggestion: Normalize tables to include full short/long forms.
9) Subcommand doc gap:
predownload --configLocation:
docs/usage.md,cli-reference.mdIssue: Implemented in
src/commands/subcommands.tsbut not documented.Suggestion: Add to both subcommand docs, noting it pulls only pinned images declared by
container.images.10) AGENTS.md / CLAUDE.md contain stale architectural flag semantics
Location:
AGENTS.md,CLAUDE.mdIssue: Both still describe API proxy as optional and enabled via
--enable-api-proxy; DNS section says default is Google DNS, while code auto-detects from host if omitted.Suggestion: Refresh those files to match current defaults and deprecations.
📋 Recommendations
High Priority
cli-reference.mdto be truly exhaustive for all public flags, especially advanced/runtime flags.--enable-api-proxydocumentation everywhere to reflect main-command deprecation and always-enabled behavior.--reflectandpredownload --configin bothusage.mdandcli-reference.md.Medium Priority
4. Resolve default mismatches for
--allow-host-ports,--container-workdir, and rate-limit flags.5. Add missing short aliases to
cli-reference.md.6. Decide public vs internal status for Cloud Hypervisor, runtime, Vertex, auth-header, and token-budget flags.
Low Priority
7. Refresh README/AGENTS/CLAUDE wording so architectural summaries stop describing superseded behavior.
8. Add an "advanced/internal flags" section if intentional omission from beginner docs is desired.
📁 Files Analyzed
src/cli-options.tssrc/commands/subcommands.tsdocs/usage.mddocs-site/src/content/docs/reference/cli-reference.mdREADME.mdAGENTS.mdCLAUDE.mdAll reactions