Skip to content

v1.6.0

Choose a tag to compare

@anyrobert anyrobert released this 14 Oct 15:49
· 96 commits to main since this release

Image and video input over ACP, Codex namespace tools, and Grok models in ACP mode.

Highlights:

  • Image and video input (ACP) (#53, thanks @frenude): Chat Completions image_url, Responses input_image and Anthropic image blocks are forwarded as native ACP image blocks. Video (MP4, QuickTime, WebM) is sampled into up to 3 frames with ffmpeg, now included in the Docker image.
    • Remote URLs must be public HTTPS. Loopback, private, link-local, and IPv6 forms that embed an IPv4 address are rejected, every redirect is re-checked, the connection is pinned to the validated IP, and downloads have size limits and a 30 s deadline.
    • At most 12 images per request, newest first. Older history images become text placeholders, so long conversations keep working.
    • Without ACP, media stays a text placeholder as before and the proxy logs a warning.
  • Responses namespace tool groups (#46, thanks @peterlyoo): Codex CLI 0.154+ requests no longer fail with Unsupported tool type: namespace. Members are flattened for the agent and reported back as name + namespace. Host builtins such as web_search are dropped, and tool_choice: "required" with no callable tool left returns 400.
  • Grok models in ACP mode (#54, thanks @curious2improve): cursor-grok-4.x-<effort>[-fast] ids now resolve to the ACP catalog, so tool calls work with Grok (fixes #55). Catalog misses name the requested model.

Known issues:

  • Codex CLI still cannot use ACP tool passthrough, because it sends store: false (#56).
  • Some listed Claude ids, such as claude-4.6-sonnet-medium, still fail ACP model resolution (#57).
  • On image prompts, the Cursor CLI sometimes appends Error: RetriableError: WritableIterable is closed to an otherwise correct answer. This comes from the Cursor CLI.

Published on npm as cursor-api-proxy@1.6.0.