Live: CLI backend smoke (Claude, Gemini, or other local CLIs)

Example:

  APUS_LIVE_CLI_BACKEND=1 \
  APUS_LIVE_CLI_BACKEND_MODEL="claude-cli/claude-sonnet-4-6" \
  pnpm test:live src/server/gateway/gateway-cli-backend.live.test.ts

Cheap Gemini MCP config smoke:

APUS_LIVE_TEST=1 \
  pnpm test:live src/agent/agents/cli-runner/bundle-mcp.gemini.live.test.ts

This does not ask Gemini to generate a response. It writes the same system settings Apus gives Gemini, then runs gemini --debug mcp list to prove a saved transport: "streamable-http" server is normalized to Gemini's HTTP MCP shape and can connect to a local streamable-HTTP MCP server.

Docker recipe:

pnpm test:docker:live-cli-backend

Single-provider Docker recipes:

pnpm test:docker:live-cli-backend:claude
pnpm test:docker:live-cli-backend:claude:cache
pnpm test:docker:live-cli-backend:claude-subscription
pnpm test:docker:live-cli-backend:gemini

Notes:

Live: APNs HTTP/2 proxy reachability