agent-proxy

agent-proxy implementation tasks

This file tracks work derived from SPEC.md and ROADMAP.md. A task is complete only when its listed validation passes.

Last updated: 2026-07-23

Phase 1: Linux service baseline

Status: Complete

Phase exit gate:

npm ci
npm run typecheck
npm test
npm run build
for script in start.sh scripts/*.sh; do
  bash -n "$script"
done
shellcheck start.sh scripts/*.sh
shfmt -d start.sh scripts/*.sh
scripts/test-linux-install.sh
scripts/test-linux-service.sh
scripts/test-release.sh
systemd-analyze verify packaging/systemd/agent-proxy.service
systemd-analyze security --offline=yes \
  packaging/systemd/agent-proxy.service

Phase 2: OpenAI Responses compatibility

Status: Complete

Completed: 2026-07-23

Phase exit gate:

npm run typecheck
npm test -- packages/server/src/routes/v1/responses.test.ts
npm run build
scripts/test-responses-compat.sh

Pause point: keep the endpoint labeled experimental until Phase 3 live client acceptance passes for every enabled production provider.

Phase 3: Native CLI and Open WebUI compatibility

Status: Complete

Entry gate verified: 2026-07-23

Phase started: 2026-07-25

Completed: 2026-07-26

Codex passed its required-live matrix. The operator explicitly waived Claude live validation because no Claude subscription is available and waived Grok live validation because its xAI device login would not complete. Both waived providers remain implemented and offline-tested but are disabled in the production service profile.

Phase exit gate:

npm run typecheck
npm test
scripts/test-client-compat.sh --client codex --require-live
scripts/test-provider-auth.sh --providers codex --require-live
OPEN_WEBUI_MODELS=gpt-5.6-sol OPEN_WEBUI_ALLOW_BOUNDED_DETACH=true \
  scripts/test-open-webui-compat.sh --all --require-live
OPEN_WEBUI_MODELS=gpt-5.6-sol scripts/test-open-webui-topologies.sh --all

Rollback: keep Chat Completions available and remove unsupported models from Open WebUI discovery while a client-specific regression is corrected.

Phase 4: Provider reliability

Status: Planned

Phase exit gate:

npm run typecheck
npm test
scripts/test-provider-stress.sh
scripts/test-open-webui-load.sh

Phase 5: Security and privacy

Status: Planned

Phase exit gate:

npm run typecheck
npm test
scripts/test-security.sh
scripts/test-open-webui-topologies.sh --security
scripts/scan-secrets.sh

Phase 6: Observability and operations

Status: Planned

Phase exit gate:

npm run typecheck
npm test
scripts/test-observability.sh
scripts/test-backup-restore.sh
scripts/acceptance-check.sh --require-live

Phase 7: Stable release

Status: Planned

Phase exit gate:

npm ci
npm run typecheck
npm test
npm run build
for script in start.sh scripts/*.sh; do
  bash -n "$script"
done
shellcheck start.sh scripts/*.sh
shfmt -d start.sh scripts/*.sh
scripts/test-linux-install.sh
scripts/test-linux-service.sh
scripts/test-release.sh
scripts/test-responses-compat.sh
scripts/test-client-compat.sh --all --require-live
scripts/test-provider-auth.sh --providers codex,grok --require-live
scripts/test-provider-stress.sh
scripts/test-security.sh
scripts/test-observability.sh
scripts/test-backup-restore.sh
scripts/test-open-webui-compat.sh --all --require-live
scripts/test-open-webui-topologies.sh --all
scripts/acceptance-check.sh --require-live
scripts/release-gate.sh --require-live

Coverage matrix

Specification area Primary tasks
Responses API and provider-independent protocol P2-01 through P2-08
Claude Code, Codex, and Grok client compatibility P3-01 through P3-04
Subscription-backed service-account authentication P3-05, P3-11, P4-09, P6-05, P6-06, P7-05
Open WebUI discovery, chat, streaming, tools, and topology P3-06 through P3-10, P4-10, P6-07, P7-06
Provider lifecycle, queues, retry, fallback, and isolation P4-01 through P4-10
Safe chat-only and opt-in tool-enabled execution P5-03, P5-04, P5-08, P5-09
Secrets, debug data, abuse resistance, and threat model P5-01, P5-02, P5-05 through P5-10
Logging, metrics, health, backup, diagnostics, and alerts P6-01 through P6-09
Runtime, clean install, upgrade, rollback, and stable release P7-01 through P7-09