[GH-ISSUE #52] Cline 中使用异常 Gemini Opus均同样问题 #44

Closed
opened 2026-02-27 15:38:06 +03:00 by kerem · 22 comments
Owner

Originally created by @xiewei3536 on GitHub (Feb 22, 2026).
Original GitHub issue: https://github.com/NikkeTryHard/zerogravity/issues/52

What happened?

Image

Docker部属,在Cline 中无论使用哪种模型均报错(图片中仅是其中一种错误,还有其他工具调用的错误)
麻烦佬看看是哪里有问题

How to reproduce

No response

Diagnostic Report

2026-02-22T09:01:24.397611Z  INFO zerogravity::mitm::intercept: MITM: Google returned functionCall! tool_name=execute_command tool_args={"task_progress":"- [ ] Review requirement to split based on \"chapter topics\" (章節題) into about 5 files.\n- [ ] Create a Python script to reliably read and split the txt file exactly without skipping any words.\n- [ ] Ensure UTF-8 encoding is used so no garbage character (亂碼) issue arises.\n- [ ] Output the files in unified '.txt' formats.\n- [ ] Prepare a processing report.\n- [ ] Deliver a response reporting the result without including the original raw text.","command":"cat << 'EOF' > split_script.py\n...[脚本内容略]...\npython split_script.py"} has_thought_sig=true

2026-02-22T09:01:24.397650Z  INFO zerogravity::mitm::store: MITM store: captured functionCall cascade=0b0dc7a5-ec19-47e3-a00f-68f6a2b8a4e4 tool=execute_command args={...}

2026-02-22T09:01:24.397673Z  INFO zerogravity::mitm::proxy: MITM: sending 1 function call(s) via channel

2026-02-22T09:01:24.397706Z  INFO zerogravity::mitm::modify: MITM: rewrote functionCall in response → text placeholder for LS (buffered)

Additional Context

问了下Gemini说是这原因

Image

还有就是希望能在环境变数设定触发轮询账号的阈值,怕用量过猛会触发周限 😅😅
No response

Originally created by @xiewei3536 on GitHub (Feb 22, 2026). Original GitHub issue: https://github.com/NikkeTryHard/zerogravity/issues/52 ### What happened? <img width="515" height="481" alt="Image" src="https://github.com/user-attachments/assets/11e7d371-8322-47c9-b95e-7c6cf0bc1f05" /> Docker部属,在Cline 中无论使用哪种模型均报错(图片中仅是其中一种错误,还有其他工具调用的错误) 麻烦佬看看是哪里有问题 ### How to reproduce _No response_ ### Diagnostic Report ```text 2026-02-22T09:01:24.397611Z INFO zerogravity::mitm::intercept: MITM: Google returned functionCall! tool_name=execute_command tool_args={"task_progress":"- [ ] Review requirement to split based on \"chapter topics\" (章節題) into about 5 files.\n- [ ] Create a Python script to reliably read and split the txt file exactly without skipping any words.\n- [ ] Ensure UTF-8 encoding is used so no garbage character (亂碼) issue arises.\n- [ ] Output the files in unified '.txt' formats.\n- [ ] Prepare a processing report.\n- [ ] Deliver a response reporting the result without including the original raw text.","command":"cat << 'EOF' > split_script.py\n...[脚本内容略]...\npython split_script.py"} has_thought_sig=true 2026-02-22T09:01:24.397650Z INFO zerogravity::mitm::store: MITM store: captured functionCall cascade=0b0dc7a5-ec19-47e3-a00f-68f6a2b8a4e4 tool=execute_command args={...} 2026-02-22T09:01:24.397673Z INFO zerogravity::mitm::proxy: MITM: sending 1 function call(s) via channel 2026-02-22T09:01:24.397706Z INFO zerogravity::mitm::modify: MITM: rewrote functionCall in response → text placeholder for LS (buffered) ``` ### Additional Context 问了下Gemini说是这原因 <img width="1033" height="408" alt="Image" src="https://github.com/user-attachments/assets/2028062e-1d14-4e9c-b84f-96cae24d89b2" /> 还有就是希望能在环境变数设定触发轮询账号的阈值,怕用量过猛会触发周限 😅😅 _No response_
kerem 2026-02-27 15:38:06 +03:00
  • closed this issue
  • added the
    bug
    label
Author
Owner

@NikkeTryHard commented on GitHub (Feb 22, 2026):

已修复,将在下一个版本发布时包含此修复。

根本原因: Gemini 端点在解析 contents 数组时,只提取了 text 部分,忽略了 functionResponse 部分。当 Cline 发送工具调用结果(只包含 functionResponse,没有文本)时,代理返回 400 错误。

修复内容:contents 数组中正确提取 functionResponse,支持标准 Gemini API 的工具调用往返。

发布后请测试并反馈,谢谢!🙏

<!-- gh-comment-id:3940629879 --> @NikkeTryHard commented on GitHub (Feb 22, 2026): 已修复,将在下一个版本发布时包含此修复。 **根本原因:** Gemini 端点在解析 `contents` 数组时,只提取了 `text` 部分,忽略了 `functionResponse` 部分。当 Cline 发送工具调用结果(只包含 `functionResponse`,没有文本)时,代理返回 400 错误。 **修复内容:** 从 `contents` 数组中正确提取 `functionResponse`,支持标准 Gemini API 的工具调用往返。 发布后请测试并反馈,谢谢!🙏
Author
Owner

@xiewei3536 commented on GitHub (Feb 22, 2026):

已修复,将在下一个版本发布时包含此修复。

根本原因: Gemini 端点在解析 contents 数组时,只提取了 text 部分,忽略了 functionResponse 部分。当 Cline 发送工具调用结果(只包含 functionResponse,没有文本)时,代理返回 400 错误。

修复内容:contents 数组中正确提取 functionResponse,支持标准 Gemini API 的工具调用往返。

发布后请测试并反馈,谢谢!🙏

佬,我已经更新新版了,但还是遇到这个问题😅

Image
<!-- gh-comment-id:3940738631 --> @xiewei3536 commented on GitHub (Feb 22, 2026): > 已修复,将在下一个版本发布时包含此修复。 > > **根本原因:** Gemini 端点在解析 `contents` 数组时,只提取了 `text` 部分,忽略了 `functionResponse` 部分。当 Cline 发送工具调用结果(只包含 `functionResponse`,没有文本)时,代理返回 400 错误。 > > **修复内容:** 从 `contents` 数组中正确提取 `functionResponse`,支持标准 Gemini API 的工具调用往返。 > > 发布后请测试并反馈,谢谢!🙏 佬,我已经更新新版了,但还是遇到这个问题😅 <img width="496" height="303" alt="Image" src="https://github.com/user-attachments/assets/8a66d89c-2fbe-48ed-b9f1-e08056bcf8e8" />
Author
Owner

@xiewei3536 commented on GitHub (Feb 22, 2026):

2026-02-22T11:25:29.882919Z DEBUG zerogravity::mitm::store: MITM captured API usage input=9794 output=59 cache_read=0 cache_create=0 thinking=183 response=0 model=Some("gemini-3-flash") provider=Some("google") grpc=None
2026-02-22T11:25:29.886158Z DEBUG zerogravity::mitm::proxy: MITM: forwarding request domain="daily-cloudcode-pa.googleapis.com" req_path=POST /v1internal:recordCodeAssistMetrics content_length=477
2026-02-22T11:25:29.886417Z INFO zerogravity::mitm::proxy: MITM H1: patched empty User-Agent version version="1.18.3"
2026-02-22T11:25:29.887526Z DEBUG zerogravity::mitm::proxy: MITM: forwarding request domain="daily-cloudcode-pa.googleapis.com" req_path=POST /v1internal:generateContent content_length=480
2026-02-22T11:25:29.887754Z INFO zerogravity::mitm::proxy: MITM H1: patched empty User-Agent version version="1.18.3"
2026-02-22T11:25:30.027219Z DEBUG zerogravity::mitm::proxy: MITM: response headers domain="daily-cloudcode-pa.googleapis.com" content_type=application/json; charset=UTF-8 status=200
2026-02-22T11:25:30.029400Z DEBUG zerogravity::mitm::proxy: MITM: chunked response complete domain="daily-cloudcode-pa.googleapis.com"
2026-02-22T11:25:30.217042Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:30.217093Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:31.268794Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:31.268848Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:32.352378Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:32.352418Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:32.801344Z INFO zerogravity::mitm::proxy: MITM: transparent redirect (iptables) domain="play.googleapis.com"
2026-02-22T11:25:32.801641Z DEBUG zerogravity::mitm::proxy: MITM: blocking telemetry domain domain="play.googleapis.com"
2026-02-22T11:25:32.801689Z DEBUG rustls::server::hs: decided upon suite TLS13_AES_128_GCM_SHA256
2026-02-22T11:25:32.801721Z DEBUG rustls::server::tls13::client_hello: Client unwilling to resume, PSK_DHE_KE not offered
2026-02-22T11:25:32.801813Z DEBUG rustls::server::hs: Chosen ALPN protocol ProtocolName(6832)
2026-02-22T11:25:32.802452Z DEBUG rustls::common_state: Sending warning alert CloseNotify
2026-02-22T11:25:32.802475Z DEBUG zerogravity::mitm::proxy: MITM: blocked domain — connection closed cleanly domain="play.googleapis.com"
2026-02-22T11:25:33.400387Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:33.400421Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:34.444511Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:34.444542Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:35.444368Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:35.444397Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:36.484348Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:36.484383Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:37.544346Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:37.544376Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:37.806068Z INFO zerogravity::mitm::proxy: MITM: transparent redirect (iptables) domain="play.googleapis.com"
2026-02-22T11:25:37.807682Z DEBUG zerogravity::mitm::proxy: MITM: blocking telemetry domain domain="play.googleapis.com"
2026-02-22T11:25:37.807789Z DEBUG rustls::server::hs: decided upon suite TLS13_AES_128_GCM_SHA256
2026-02-22T11:25:37.807803Z DEBUG rustls::server::tls13::client_hello: Client unwilling to resume, PSK_DHE_KE not offered
2026-02-22T11:25:37.807928Z DEBUG rustls::server::hs: Chosen ALPN protocol ProtocolName(6832)
2026-02-22T11:25:37.808670Z DEBUG rustls::common_state: Sending warning alert CloseNotify
2026-02-22T11:25:37.808704Z DEBUG zerogravity::mitm::proxy: MITM: blocked domain — connection closed cleanly domain="play.googleapis.com"
2026-02-22T11:25:38.628139Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:38.628233Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:39.668517Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:39.668556Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:40.716611Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:40.716654Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:41.808325Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:41.808358Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:42.811263Z INFO zerogravity::mitm::proxy: MITM: transparent redirect (iptables) domain="play.googleapis.com"
2026-02-22T11:25:42.811513Z DEBUG zerogravity::mitm::proxy: MITM: blocking telemetry domain domain="play.googleapis.com"
2026-02-22T11:25:42.811598Z DEBUG rustls::server::hs: decided upon suite TLS13_AES_128_GCM_SHA256
2026-02-22T11:25:42.811608Z DEBUG rustls::server::tls13::client_hello: Client unwilling to resume, PSK_DHE_KE not offered
2026-02-22T11:25:42.811728Z DEBUG rustls::server::hs: Chosen ALPN protocol ProtocolName(6832)
2026-02-22T11:25:42.812515Z DEBUG rustls::common_state: Sending warning alert CloseNotify
2026-02-22T11:25:42.812553Z DEBUG zerogravity::mitm::proxy: MITM: blocked domain — connection closed cleanly domain="play.googleapis.com"
2026-02-22T11:25:42.824653Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:42.824688Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:43.134291Z WARN zerogravity::mitm::proxy: MITM: no upstream response in 60s domain="daily-cloudcode-pa.googleapis.com"
2026-02-22T11:25:43.134563Z DEBUG zerogravity::mitm::store: Removed cascade cache cascade=02ec1a2b-8d64-4c0d-bb64-11a33fa46b6b
2026-02-22T11:25:43.135432Z DEBUG zerogravity::api::request_queue: Request slot released depth=0
2026-02-22T11:25:43.143573Z DEBUG zerogravity::trace: trace: folder written path=/root/.config/zerogravity/traces/2026-02-22/11-24-43_gemini-3.1-pro-02ec1a2b
2026-02-22T11:25:43.897486Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:43.897554Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:44.900935Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:44.901013Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:45.988145Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:45.988260Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:46.949264Z DEBUG zerogravity::mitm::proxy: MITM: response headers domain="daily-cloudcode-pa.googleapis.com" content_type=application/json; charset=UTF-8 status=200
2026-02-22T11:25:47.020442Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:47.020479Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:47.206061Z DEBUG zerogravity::mitm::proxy: MITM: chunked response complete domain="daily-cloudcode-pa.googleapis.com"
2026-02-22T11:25:47.379462Z INFO zerogravity::mitm::proxy: MITM: forwarding LLM request domain="daily-cloudcode-pa.googleapis.com" req_path=POST /v1internal:streamGenerateContent?alt=sse body_len=158791 cascade=Some("a607e48f-f9e1-449b-8b58-ca62e3f9d469")
2026-02-22T11:25:47.380096Z INFO zerogravity::mitm::proxy: MITM: detected generated image from functionResponse path=/tmp/.agcache/.gemini/antigravity/brain/a607e48f-f9e1-449b-8b58-ca62e3f9d469/class_split_illustration_1771759523052.png
2026-02-22T11:25:47.380132Z DEBUG zerogravity::mitm::store: MITM store: captured generated image path=/tmp/.agcache/.gemini/antigravity/brain/a607e48f-f9e1-449b-8b58-ca62e3f9d469/text_processing_banner_1771759547239.png
2026-02-22T11:25:47.380193Z INFO zerogravity::mitm::proxy: MITM: detected generated image from functionResponse path=/tmp/.agcache/.gemini/antigravity/brain/a607e48f-f9e1-449b-8b58-ca62e3f9d469/text_processing_banner_1771759547239.png
2026-02-22T11:25:47.380315Z DEBUG zerogravity::mitm::proxy: MITM: nonce matched — taking RequestContext cascade=Some("a607e48f-f9e1-449b-8b58-ca62e3f9d469")
2026-02-22T11:25:47.381301Z INFO zerogravity::mitm::modify: MITM: request modified [remove 4/9 content messages, preserved generate_image tool, strip all 20 LS tools, override toolConfig VALIDATED → AUTO (generate_image)] original=158777 modified=121017 saved_bytes=37760 saved_pct=23
2026-02-22T11:25:47.381469Z INFO zerogravity::mitm::proxy: MITM H1: patched empty User-Agent version version="1.18.3"
2026-02-22T11:25:47.816128Z INFO zerogravity::mitm::proxy: MITM: transparent redirect (iptables) domain="play.googleapis.com"
2026-02-22T11:25:47.816620Z DEBUG zerogravity::mitm::proxy: MITM: blocking telemetry domain domain="play.googleapis.com"
2026-02-22T11:25:47.816693Z DEBUG rustls::server::hs: decided upon suite TLS13_AES_128_GCM_SHA256
2026-02-22T11:25:47.816712Z DEBUG rustls::server::tls13::client_hello: Client unwilling to resume, PSK_DHE_KE not offered
2026-02-22T11:25:47.816823Z DEBUG rustls::server::hs: Chosen ALPN protocol ProtocolName(6832)
2026-02-22T11:25:47.817649Z DEBUG rustls::common_state: Sending warning alert CloseNotify
2026-02-22T11:25:47.817674Z DEBUG zerogravity::mitm::proxy: MITM: blocked domain — connection closed cleanly domain="play.googleapis.com"
2026-02-22T11:25:48.113154Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:48.113243Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:49.200381Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:49.200417Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:50.204711Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:50.204748Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:50.716850Z DEBUG zerogravity::backend: GetUserStatus response (200, 6268 bytes, enc=gzip)
2026-02-22T11:25:50.717022Z DEBUG zerogravity::warmup: Lifecycle RPC ok method="GetUserStatus" status=200
2026-02-22T11:25:51.288304Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:51.288342Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:52.316131Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:52.316219Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:52.820679Z INFO zerogravity::mitm::proxy: MITM: transparent redirect (iptables) domain="play.googleapis.com"
2026-02-22T11:25:52.820919Z DEBUG zerogravity::mitm::proxy: MITM: blocking telemetry domain domain="play.googleapis.com"
2026-02-22T11:25:52.820980Z DEBUG rustls::server::hs: decided upon suite TLS13_AES_128_GCM_SHA256
2026-02-22T11:25:52.820993Z DEBUG rustls::server::tls13::client_hello: Client unwilling to resume, PSK_DHE_KE not offered
2026-02-22T11:25:52.821154Z DEBUG rustls::server::hs: Chosen ALPN protocol ProtocolName(6832)
2026-02-22T11:25:52.821915Z DEBUG rustls::common_state: Sending warning alert CloseNotify
2026-02-22T11:25:52.821956Z DEBUG zerogravity::mitm::proxy: MITM: blocked domain — connection closed cleanly domain="play.googleapis.com"
2026-02-22T11:25:53.316380Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:53.316437Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:53.422835Z INFO zerogravity::mitm::proxy: MITM: streaming response domain="daily-cloudcode-pa.googleapis.com" content_type=text/event-stream status=200
2026-02-22T11:25:53.422896Z INFO zerogravity::mitm::intercept: Interceptor: skipping generate_image functionCall (LS Cortex will handle)
2026-02-22T11:25:53.697175Z DEBUG zerogravity::mitm::proxy: MITM: chunked response complete domain="daily-cloudcode-pa.googleapis.com"
2026-02-22T11:25:53.697213Z DEBUG zerogravity::mitm::store: MITM captured API usage input=11291 output=64 cache_read=0 cache_create=0 thinking=16 response=0 model=Some("gemini-3-flash") provider=Some("google") grpc=None
2026-02-22T11:25:53.700066Z DEBUG zerogravity::mitm::proxy: MITM: forwarding request domain="daily-cloudcode-pa.googleapis.com" req_path=POST /v1internal:recordCodeAssistMetrics content_length=440
2026-02-22T11:25:53.700306Z INFO zerogravity::mitm::proxy: MITM H1: patched empty User-Agent version version="1.18.3"
2026-02-22T11:25:53.702775Z DEBUG zerogravity::mitm::proxy: MITM: forwarding request domain="daily-cloudcode-pa.googleapis.com" req_path=POST /v1internal:generateContent content_length=506
2026-02-22T11:25:53.703311Z INFO zerogravity::mitm::proxy: MITM H1: patched empty User-Agent version version="1.18.3"
2026-02-22T11:25:53.827051Z DEBUG zerogravity::mitm::proxy: MITM: response headers domain="daily-cloudcode-pa.googleapis.com" content_type=application/json; charset=UTF-8 status=200
2026-02-22T11:25:53.827552Z DEBUG zerogravity::mitm::proxy: MITM: chunked response complete domain="daily-cloudcode-pa.googleapis.com"
2026-02-22T11:25:54.340405Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:54.340455Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:55.368383Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:55.368415Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:56.093463Z DEBUG Connection{peer=Server}: h2::codec::framed_read: received frame=Headers { stream_id: StreamId(125), flags: (0x4: END_HEADERS) }
2026-02-22T11:25:56.093535Z DEBUG zerogravity::mitm::h2_handler: MITM H2: forwarding request domain="antigravity-unleash.goog" method=POST path=/api/client/metrics grpc=false usage_method=false streaming=false
2026-02-22T11:25:56.093613Z DEBUG Connection{peer=Server}: h2::codec::framed_read: received frame=Data { stream_id: StreamId(125), flags: (0x1: END_STREAM) }
2026-02-22T11:25:56.093978Z INFO zerogravity::mitm::h2_handler: MITM H2: scrubbed Unleash instanceId old_id=root-aaba69a4ec5c new_id=user-3060683c
2026-02-22T11:25:56.094104Z DEBUG Connection{peer=Client}: h2::codec::framed_write: send frame=Headers { stream_id: StreamId(125), flags: (0x4: END_HEADERS) }
2026-02-22T11:25:56.094197Z DEBUG Connection{peer=Client}: h2::codec::framed_write: send frame=Data { stream_id: StreamId(125), flags: (0x1: END_STREAM) }
2026-02-22T11:25:56.094365Z DEBUG Connection{peer=Server}: h2::codec::framed_read: received frame=Headers { stream_id: StreamId(127), flags: (0x5: END_HEADERS | END_STREAM) }
2026-02-22T11:25:56.094392Z DEBUG zerogravity::mitm::h2_handler: MITM H2: forwarding request domain="antigravity-unleash.goog" method=GET path=/api/client/features grpc=false usage_method=false streaming=false
2026-02-22T11:25:56.094418Z DEBUG Connection{peer=Client}: h2::codec::framed_write: send frame=Headers { stream_id: StreamId(127), flags: (0x5: END_HEADERS | END_STREAM) }
2026-02-22T11:25:56.110164Z DEBUG Connection{peer=Client}: h2::codec::framed_read: received frame=Headers { stream_id: StreamId(125), flags: (0x4: END_HEADERS) }
2026-02-22T11:25:56.110208Z DEBUG Connection{peer=Client}: h2::codec::framed_read: received frame=Reset { stream_id: StreamId(125), error_code: PROTOCOL_ERROR }
2026-02-22T11:25:56.110275Z DEBUG Connection{peer=Server}: h2::codec::framed_write: send frame=Headers { stream_id: StreamId(125), flags: (0x5: END_HEADERS | END_STREAM) }
2026-02-22T11:25:56.266209Z DEBUG Connection{peer=Client}: h2::codec::framed_read: received frame=Headers { stream_id: StreamId(127), flags: (0x5: END_HEADERS | END_STREAM) }
2026-02-22T11:25:56.266258Z DEBUG Connection{peer=Client}: h2::codec::framed_read: received frame=Ping { ack: false, payload: [0, 0, 0, 0, 0, 0, 0, 130] }
2026-02-22T11:25:56.266265Z DEBUG Connection{peer=Client}: h2::codec::framed_write: send frame=Ping { ack: true, payload: [0, 0, 0, 0, 0, 0, 0, 130] }
2026-02-22T11:25:56.266360Z DEBUG Connection{peer=Server}: h2::codec::framed_write: send frame=Headers { stream_id: StreamId(127), flags: (0x5: END_HEADERS | END_STREAM) }
2026-02-22T11:25:56.420280Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:56.420311Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:57.472332Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:57.472363Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:57.824977Z INFO zerogravity::mitm::proxy: MITM: transparent redirect (iptables) domain="play.googleapis.com"
2026-02-22T11:25:57.825432Z DEBUG zerogravity::mitm::proxy: MITM: blocking telemetry domain domain="play.googleapis.com"
2026-02-22T11:25:57.825522Z DEBUG rustls::server::hs: decided upon suite TLS13_AES_128_GCM_SHA256
2026-02-22T11:25:57.825535Z DEBUG rustls::server::tls13::client_hello: Client unwilling to resume, PSK_DHE_KE not offered
2026-02-22T11:25:57.825679Z DEBUG rustls::server::hs: Chosen ALPN protocol ProtocolName(6832)
2026-02-22T11:25:57.826529Z DEBUG rustls::common_state: Sending warning alert CloseNotify
2026-02-22T11:25:57.826563Z DEBUG zerogravity::mitm::proxy: MITM: blocked domain — connection closed cleanly domain="play.googleapis.com"
2026-02-22T11:25:58.536404Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:58.536443Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:25:59.532277Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:25:59.532309Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:26:00.425127Z DEBUG zerogravity::backend: GetUserStatus response (200, 6268 bytes, enc=gzip)
2026-02-22T11:26:00.425342Z DEBUG zerogravity::quota: Quota poll: 6 models tracked
2026-02-22T11:26:00.537002Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:26:00.537044Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:26:01.608547Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:26:01.608581Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:26:02.628286Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:26:02.628323Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:26:02.831112Z INFO zerogravity::mitm::proxy: MITM: transparent redirect (iptables) domain="play.googleapis.com"
2026-02-22T11:26:02.831657Z DEBUG zerogravity::mitm::proxy: MITM: blocking telemetry domain domain="play.googleapis.com"
2026-02-22T11:26:02.831721Z DEBUG rustls::server::hs: decided upon suite TLS13_AES_128_GCM_SHA256
2026-02-22T11:26:02.831731Z DEBUG rustls::server::tls13::client_hello: Client unwilling to resume, PSK_DHE_KE not offered
2026-02-22T11:26:02.831838Z DEBUG rustls::server::hs: Chosen ALPN protocol ProtocolName(6832)
2026-02-22T11:26:02.832744Z DEBUG rustls::common_state: Sending warning alert CloseNotify
2026-02-22T11:26:02.832770Z DEBUG zerogravity::mitm::proxy: MITM: blocked domain — connection closed cleanly domain="play.googleapis.com"
2026-02-22T11:26:03.636296Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:26:03.636344Z DEBUG zerogravity::warmup: Heartbeat: 200
2026-02-22T11:26:04.716297Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip)
2026-02-22T11:26:04.716345Z DEBUG zerogravity::warmup: Heartbeat: 200

<!-- gh-comment-id:3940740851 --> @xiewei3536 commented on GitHub (Feb 22, 2026): 2026-02-22T11:25:29.882919Z DEBUG zerogravity::mitm::store: MITM captured API usage input=9794 output=59 cache_read=0 cache_create=0 thinking=183 response=0 model=Some("gemini-3-flash") provider=Some("google") grpc=None 2026-02-22T11:25:29.886158Z DEBUG zerogravity::mitm::proxy: MITM: forwarding request domain="daily-cloudcode-pa.googleapis.com" req_path=POST /v1internal:recordCodeAssistMetrics content_length=477 2026-02-22T11:25:29.886417Z INFO zerogravity::mitm::proxy: MITM H1: patched empty User-Agent version version="1.18.3" 2026-02-22T11:25:29.887526Z DEBUG zerogravity::mitm::proxy: MITM: forwarding request domain="daily-cloudcode-pa.googleapis.com" req_path=POST /v1internal:generateContent content_length=480 2026-02-22T11:25:29.887754Z INFO zerogravity::mitm::proxy: MITM H1: patched empty User-Agent version version="1.18.3" 2026-02-22T11:25:30.027219Z DEBUG zerogravity::mitm::proxy: MITM: response headers domain="daily-cloudcode-pa.googleapis.com" content_type=application/json; charset=UTF-8 status=200 2026-02-22T11:25:30.029400Z DEBUG zerogravity::mitm::proxy: MITM: chunked response complete domain="daily-cloudcode-pa.googleapis.com" 2026-02-22T11:25:30.217042Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:30.217093Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:31.268794Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:31.268848Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:32.352378Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:32.352418Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:32.801344Z INFO zerogravity::mitm::proxy: MITM: transparent redirect (iptables) domain="play.googleapis.com" 2026-02-22T11:25:32.801641Z DEBUG zerogravity::mitm::proxy: MITM: blocking telemetry domain domain="play.googleapis.com" 2026-02-22T11:25:32.801689Z DEBUG rustls::server::hs: decided upon suite TLS13_AES_128_GCM_SHA256 2026-02-22T11:25:32.801721Z DEBUG rustls::server::tls13::client_hello: Client unwilling to resume, PSK_DHE_KE not offered 2026-02-22T11:25:32.801813Z DEBUG rustls::server::hs: Chosen ALPN protocol ProtocolName(6832) 2026-02-22T11:25:32.802452Z DEBUG rustls::common_state: Sending warning alert CloseNotify 2026-02-22T11:25:32.802475Z DEBUG zerogravity::mitm::proxy: MITM: blocked domain — connection closed cleanly domain="play.googleapis.com" 2026-02-22T11:25:33.400387Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:33.400421Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:34.444511Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:34.444542Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:35.444368Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:35.444397Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:36.484348Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:36.484383Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:37.544346Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:37.544376Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:37.806068Z INFO zerogravity::mitm::proxy: MITM: transparent redirect (iptables) domain="play.googleapis.com" 2026-02-22T11:25:37.807682Z DEBUG zerogravity::mitm::proxy: MITM: blocking telemetry domain domain="play.googleapis.com" 2026-02-22T11:25:37.807789Z DEBUG rustls::server::hs: decided upon suite TLS13_AES_128_GCM_SHA256 2026-02-22T11:25:37.807803Z DEBUG rustls::server::tls13::client_hello: Client unwilling to resume, PSK_DHE_KE not offered 2026-02-22T11:25:37.807928Z DEBUG rustls::server::hs: Chosen ALPN protocol ProtocolName(6832) 2026-02-22T11:25:37.808670Z DEBUG rustls::common_state: Sending warning alert CloseNotify 2026-02-22T11:25:37.808704Z DEBUG zerogravity::mitm::proxy: MITM: blocked domain — connection closed cleanly domain="play.googleapis.com" 2026-02-22T11:25:38.628139Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:38.628233Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:39.668517Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:39.668556Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:40.716611Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:40.716654Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:41.808325Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:41.808358Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:42.811263Z INFO zerogravity::mitm::proxy: MITM: transparent redirect (iptables) domain="play.googleapis.com" 2026-02-22T11:25:42.811513Z DEBUG zerogravity::mitm::proxy: MITM: blocking telemetry domain domain="play.googleapis.com" 2026-02-22T11:25:42.811598Z DEBUG rustls::server::hs: decided upon suite TLS13_AES_128_GCM_SHA256 2026-02-22T11:25:42.811608Z DEBUG rustls::server::tls13::client_hello: Client unwilling to resume, PSK_DHE_KE not offered 2026-02-22T11:25:42.811728Z DEBUG rustls::server::hs: Chosen ALPN protocol ProtocolName(6832) 2026-02-22T11:25:42.812515Z DEBUG rustls::common_state: Sending warning alert CloseNotify 2026-02-22T11:25:42.812553Z DEBUG zerogravity::mitm::proxy: MITM: blocked domain — connection closed cleanly domain="play.googleapis.com" 2026-02-22T11:25:42.824653Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:42.824688Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:43.134291Z WARN zerogravity::mitm::proxy: MITM: no upstream response in 60s domain="daily-cloudcode-pa.googleapis.com" 2026-02-22T11:25:43.134563Z DEBUG zerogravity::mitm::store: Removed cascade cache cascade=02ec1a2b-8d64-4c0d-bb64-11a33fa46b6b 2026-02-22T11:25:43.135432Z DEBUG zerogravity::api::request_queue: Request slot released depth=0 2026-02-22T11:25:43.143573Z DEBUG zerogravity::trace: trace: folder written path=/root/.config/zerogravity/traces/2026-02-22/11-24-43_gemini-3.1-pro-02ec1a2b 2026-02-22T11:25:43.897486Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:43.897554Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:44.900935Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:44.901013Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:45.988145Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:45.988260Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:46.949264Z DEBUG zerogravity::mitm::proxy: MITM: response headers domain="daily-cloudcode-pa.googleapis.com" content_type=application/json; charset=UTF-8 status=200 2026-02-22T11:25:47.020442Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:47.020479Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:47.206061Z DEBUG zerogravity::mitm::proxy: MITM: chunked response complete domain="daily-cloudcode-pa.googleapis.com" 2026-02-22T11:25:47.379462Z INFO zerogravity::mitm::proxy: MITM: forwarding LLM request domain="daily-cloudcode-pa.googleapis.com" req_path=POST /v1internal:streamGenerateContent?alt=sse body_len=158791 cascade=Some("a607e48f-f9e1-449b-8b58-ca62e3f9d469") 2026-02-22T11:25:47.380096Z INFO zerogravity::mitm::proxy: MITM: detected generated image from functionResponse path=/tmp/.agcache/.gemini/antigravity/brain/a607e48f-f9e1-449b-8b58-ca62e3f9d469/class_split_illustration_1771759523052.png 2026-02-22T11:25:47.380132Z DEBUG zerogravity::mitm::store: MITM store: captured generated image path=/tmp/.agcache/.gemini/antigravity/brain/a607e48f-f9e1-449b-8b58-ca62e3f9d469/text_processing_banner_1771759547239.png 2026-02-22T11:25:47.380193Z INFO zerogravity::mitm::proxy: MITM: detected generated image from functionResponse path=/tmp/.agcache/.gemini/antigravity/brain/a607e48f-f9e1-449b-8b58-ca62e3f9d469/text_processing_banner_1771759547239.png 2026-02-22T11:25:47.380315Z DEBUG zerogravity::mitm::proxy: MITM: nonce matched — taking RequestContext cascade=Some("a607e48f-f9e1-449b-8b58-ca62e3f9d469") 2026-02-22T11:25:47.381301Z INFO zerogravity::mitm::modify: MITM: request modified [remove 4/9 content messages, preserved generate_image tool, strip all 20 LS tools, override toolConfig VALIDATED → AUTO (generate_image)] original=158777 modified=121017 saved_bytes=37760 saved_pct=23 2026-02-22T11:25:47.381469Z INFO zerogravity::mitm::proxy: MITM H1: patched empty User-Agent version version="1.18.3" 2026-02-22T11:25:47.816128Z INFO zerogravity::mitm::proxy: MITM: transparent redirect (iptables) domain="play.googleapis.com" 2026-02-22T11:25:47.816620Z DEBUG zerogravity::mitm::proxy: MITM: blocking telemetry domain domain="play.googleapis.com" 2026-02-22T11:25:47.816693Z DEBUG rustls::server::hs: decided upon suite TLS13_AES_128_GCM_SHA256 2026-02-22T11:25:47.816712Z DEBUG rustls::server::tls13::client_hello: Client unwilling to resume, PSK_DHE_KE not offered 2026-02-22T11:25:47.816823Z DEBUG rustls::server::hs: Chosen ALPN protocol ProtocolName(6832) 2026-02-22T11:25:47.817649Z DEBUG rustls::common_state: Sending warning alert CloseNotify 2026-02-22T11:25:47.817674Z DEBUG zerogravity::mitm::proxy: MITM: blocked domain — connection closed cleanly domain="play.googleapis.com" 2026-02-22T11:25:48.113154Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:48.113243Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:49.200381Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:49.200417Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:50.204711Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:50.204748Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:50.716850Z DEBUG zerogravity::backend: GetUserStatus response (200, 6268 bytes, enc=gzip) 2026-02-22T11:25:50.717022Z DEBUG zerogravity::warmup: Lifecycle RPC ok method="GetUserStatus" status=200 2026-02-22T11:25:51.288304Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:51.288342Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:52.316131Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:52.316219Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:52.820679Z INFO zerogravity::mitm::proxy: MITM: transparent redirect (iptables) domain="play.googleapis.com" 2026-02-22T11:25:52.820919Z DEBUG zerogravity::mitm::proxy: MITM: blocking telemetry domain domain="play.googleapis.com" 2026-02-22T11:25:52.820980Z DEBUG rustls::server::hs: decided upon suite TLS13_AES_128_GCM_SHA256 2026-02-22T11:25:52.820993Z DEBUG rustls::server::tls13::client_hello: Client unwilling to resume, PSK_DHE_KE not offered 2026-02-22T11:25:52.821154Z DEBUG rustls::server::hs: Chosen ALPN protocol ProtocolName(6832) 2026-02-22T11:25:52.821915Z DEBUG rustls::common_state: Sending warning alert CloseNotify 2026-02-22T11:25:52.821956Z DEBUG zerogravity::mitm::proxy: MITM: blocked domain — connection closed cleanly domain="play.googleapis.com" 2026-02-22T11:25:53.316380Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:53.316437Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:53.422835Z INFO zerogravity::mitm::proxy: MITM: streaming response domain="daily-cloudcode-pa.googleapis.com" content_type=text/event-stream status=200 2026-02-22T11:25:53.422896Z INFO zerogravity::mitm::intercept: Interceptor: skipping generate_image functionCall (LS Cortex will handle) 2026-02-22T11:25:53.697175Z DEBUG zerogravity::mitm::proxy: MITM: chunked response complete domain="daily-cloudcode-pa.googleapis.com" 2026-02-22T11:25:53.697213Z DEBUG zerogravity::mitm::store: MITM captured API usage input=11291 output=64 cache_read=0 cache_create=0 thinking=16 response=0 model=Some("gemini-3-flash") provider=Some("google") grpc=None 2026-02-22T11:25:53.700066Z DEBUG zerogravity::mitm::proxy: MITM: forwarding request domain="daily-cloudcode-pa.googleapis.com" req_path=POST /v1internal:recordCodeAssistMetrics content_length=440 2026-02-22T11:25:53.700306Z INFO zerogravity::mitm::proxy: MITM H1: patched empty User-Agent version version="1.18.3" 2026-02-22T11:25:53.702775Z DEBUG zerogravity::mitm::proxy: MITM: forwarding request domain="daily-cloudcode-pa.googleapis.com" req_path=POST /v1internal:generateContent content_length=506 2026-02-22T11:25:53.703311Z INFO zerogravity::mitm::proxy: MITM H1: patched empty User-Agent version version="1.18.3" 2026-02-22T11:25:53.827051Z DEBUG zerogravity::mitm::proxy: MITM: response headers domain="daily-cloudcode-pa.googleapis.com" content_type=application/json; charset=UTF-8 status=200 2026-02-22T11:25:53.827552Z DEBUG zerogravity::mitm::proxy: MITM: chunked response complete domain="daily-cloudcode-pa.googleapis.com" 2026-02-22T11:25:54.340405Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:54.340455Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:55.368383Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:55.368415Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:56.093463Z DEBUG Connection{peer=Server}: h2::codec::framed_read: received frame=Headers { stream_id: StreamId(125), flags: (0x4: END_HEADERS) } 2026-02-22T11:25:56.093535Z DEBUG zerogravity::mitm::h2_handler: MITM H2: forwarding request domain="antigravity-unleash.goog" method=POST path=/api/client/metrics grpc=false usage_method=false streaming=false 2026-02-22T11:25:56.093613Z DEBUG Connection{peer=Server}: h2::codec::framed_read: received frame=Data { stream_id: StreamId(125), flags: (0x1: END_STREAM) } 2026-02-22T11:25:56.093978Z INFO zerogravity::mitm::h2_handler: MITM H2: scrubbed Unleash instanceId old_id=root-aaba69a4ec5c new_id=user-3060683c 2026-02-22T11:25:56.094104Z DEBUG Connection{peer=Client}: h2::codec::framed_write: send frame=Headers { stream_id: StreamId(125), flags: (0x4: END_HEADERS) } 2026-02-22T11:25:56.094197Z DEBUG Connection{peer=Client}: h2::codec::framed_write: send frame=Data { stream_id: StreamId(125), flags: (0x1: END_STREAM) } 2026-02-22T11:25:56.094365Z DEBUG Connection{peer=Server}: h2::codec::framed_read: received frame=Headers { stream_id: StreamId(127), flags: (0x5: END_HEADERS | END_STREAM) } 2026-02-22T11:25:56.094392Z DEBUG zerogravity::mitm::h2_handler: MITM H2: forwarding request domain="antigravity-unleash.goog" method=GET path=/api/client/features grpc=false usage_method=false streaming=false 2026-02-22T11:25:56.094418Z DEBUG Connection{peer=Client}: h2::codec::framed_write: send frame=Headers { stream_id: StreamId(127), flags: (0x5: END_HEADERS | END_STREAM) } 2026-02-22T11:25:56.110164Z DEBUG Connection{peer=Client}: h2::codec::framed_read: received frame=Headers { stream_id: StreamId(125), flags: (0x4: END_HEADERS) } 2026-02-22T11:25:56.110208Z DEBUG Connection{peer=Client}: h2::codec::framed_read: received frame=Reset { stream_id: StreamId(125), error_code: PROTOCOL_ERROR } 2026-02-22T11:25:56.110275Z DEBUG Connection{peer=Server}: h2::codec::framed_write: send frame=Headers { stream_id: StreamId(125), flags: (0x5: END_HEADERS | END_STREAM) } 2026-02-22T11:25:56.266209Z DEBUG Connection{peer=Client}: h2::codec::framed_read: received frame=Headers { stream_id: StreamId(127), flags: (0x5: END_HEADERS | END_STREAM) } 2026-02-22T11:25:56.266258Z DEBUG Connection{peer=Client}: h2::codec::framed_read: received frame=Ping { ack: false, payload: [0, 0, 0, 0, 0, 0, 0, 130] } 2026-02-22T11:25:56.266265Z DEBUG Connection{peer=Client}: h2::codec::framed_write: send frame=Ping { ack: true, payload: [0, 0, 0, 0, 0, 0, 0, 130] } 2026-02-22T11:25:56.266360Z DEBUG Connection{peer=Server}: h2::codec::framed_write: send frame=Headers { stream_id: StreamId(127), flags: (0x5: END_HEADERS | END_STREAM) } 2026-02-22T11:25:56.420280Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:56.420311Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:57.472332Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:57.472363Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:57.824977Z INFO zerogravity::mitm::proxy: MITM: transparent redirect (iptables) domain="play.googleapis.com" 2026-02-22T11:25:57.825432Z DEBUG zerogravity::mitm::proxy: MITM: blocking telemetry domain domain="play.googleapis.com" 2026-02-22T11:25:57.825522Z DEBUG rustls::server::hs: decided upon suite TLS13_AES_128_GCM_SHA256 2026-02-22T11:25:57.825535Z DEBUG rustls::server::tls13::client_hello: Client unwilling to resume, PSK_DHE_KE not offered 2026-02-22T11:25:57.825679Z DEBUG rustls::server::hs: Chosen ALPN protocol ProtocolName(6832) 2026-02-22T11:25:57.826529Z DEBUG rustls::common_state: Sending warning alert CloseNotify 2026-02-22T11:25:57.826563Z DEBUG zerogravity::mitm::proxy: MITM: blocked domain — connection closed cleanly domain="play.googleapis.com" 2026-02-22T11:25:58.536404Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:58.536443Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:25:59.532277Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:25:59.532309Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:26:00.425127Z DEBUG zerogravity::backend: GetUserStatus response (200, 6268 bytes, enc=gzip) 2026-02-22T11:26:00.425342Z DEBUG zerogravity::quota: Quota poll: 6 models tracked 2026-02-22T11:26:00.537002Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:26:00.537044Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:26:01.608547Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:26:01.608581Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:26:02.628286Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:26:02.628323Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:26:02.831112Z INFO zerogravity::mitm::proxy: MITM: transparent redirect (iptables) domain="play.googleapis.com" 2026-02-22T11:26:02.831657Z DEBUG zerogravity::mitm::proxy: MITM: blocking telemetry domain domain="play.googleapis.com" 2026-02-22T11:26:02.831721Z DEBUG rustls::server::hs: decided upon suite TLS13_AES_128_GCM_SHA256 2026-02-22T11:26:02.831731Z DEBUG rustls::server::tls13::client_hello: Client unwilling to resume, PSK_DHE_KE not offered 2026-02-22T11:26:02.831838Z DEBUG rustls::server::hs: Chosen ALPN protocol ProtocolName(6832) 2026-02-22T11:26:02.832744Z DEBUG rustls::common_state: Sending warning alert CloseNotify 2026-02-22T11:26:02.832770Z DEBUG zerogravity::mitm::proxy: MITM: blocked domain — connection closed cleanly domain="play.googleapis.com" 2026-02-22T11:26:03.636296Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:26:03.636344Z DEBUG zerogravity::warmup: Heartbeat: 200 2026-02-22T11:26:04.716297Z DEBUG zerogravity::backend: Heartbeat response (200, 2 bytes, enc=gzip) 2026-02-22T11:26:04.716345Z DEBUG zerogravity::warmup: Heartbeat: 200
Author
Owner

@NikkeTryHard commented on GitHub (Feb 22, 2026):

感谢反馈!原始的 #52 bug(functionResponse 解析错误导致 400)已在 v1.3.2 中修复。

从你的新日志来看,这是一个不同的问题

  1. 60秒超时: MITM: no upstream response in 60s — Google 的上游没有响应
  2. Cline 错误: "returned tool calls that Cline cannot process" — 这是 Cline 解析工具调用格式的问题,不是原来的 400 错误

需要更多信息来诊断:

# 在 Docker 容器里运行:
docker exec zerogravity zg report

# 或者提供最近的 trace:
docker exec zerogravity zg trace errors

请把 zg report 的输出贴上来,这样我可以看到完整的请求/响应链。

另外,请确认:

  1. 你用的是哪个 Cline 版本?
  2. Cline 配置的 API 类型是什么?(OpenAI Compatible / Gemini)
  3. 用的是哪个模型?(从日志看是 gemini-3-flash 和 gemini-3.1-pro)

这个会作为一个新问题跟进。

<!-- gh-comment-id:3940768529 --> @NikkeTryHard commented on GitHub (Feb 22, 2026): 感谢反馈!原始的 #52 bug(`functionResponse` 解析错误导致 400)已在 v1.3.2 中修复。 从你的新日志来看,这是一个**不同的问题**: 1. **60秒超时**: `MITM: no upstream response in 60s` — Google 的上游没有响应 2. **Cline 错误**: "returned tool calls that Cline cannot process" — 这是 Cline 解析工具调用格式的问题,不是原来的 400 错误 需要更多信息来诊断: ```bash # 在 Docker 容器里运行: docker exec zerogravity zg report # 或者提供最近的 trace: docker exec zerogravity zg trace errors ``` 请把 `zg report` 的输出贴上来,这样我可以看到完整的请求/响应链。 另外,请确认: 1. 你用的是哪个 Cline 版本? 2. Cline 配置的 API 类型是什么?(OpenAI Compatible / Gemini) 3. 用的是哪个模型?(从日志看是 gemini-3-flash 和 gemini-3.1-pro) 这个会作为一个新问题跟进。
Author
Owner

@xiewei3536 commented on GitHub (Feb 22, 2026):

感谢反馈!原始的 #52 bug(functionResponse 解析错误导致 400)已在 v1.3.2 中修复。

从你的新日志来看,这是一个不同的问题

  1. 60秒超时: MITM: no upstream response in 60s — Google 的上游没有响应
  2. Cline 错误: "returned tool calls that Cline cannot process" — 这是 Cline 解析工具调用格式的问题,不是原来的 400 错误

需要更多信息来诊断:

在 Docker 容器里运行:

docker exec zerogravity zg report

或者提供最近的 trace:

docker exec zerogravity zg trace errors
请把 zg report 的输出贴上来,这样我可以看到完整的请求/响应链。

另外,请确认:

  1. 你用的是哪个 Cline 版本?
  2. Cline 配置的 API 类型是什么?(OpenAI Compatible / Gemini)
  3. 用的是哪个模型?(从日志看是 gemini-3-flash 和 gemini-3.1-pro)

这个会作为一个新问题跟进。

佬 我看到原因了。
但不知道为何会是image额度空了?
我选的是gemini 3.1 pro

Image
<!-- gh-comment-id:3940792492 --> @xiewei3536 commented on GitHub (Feb 22, 2026): > 感谢反馈!原始的 [#52](https://github.com/NikkeTryHard/zerogravity/issues/52) bug(`functionResponse` 解析错误导致 400)已在 v1.3.2 中修复。 > > 从你的新日志来看,这是一个**不同的问题**: > > 1. **60秒超时**: `MITM: no upstream response in 60s` — Google 的上游没有响应 > 2. **Cline 错误**: "returned tool calls that Cline cannot process" — 这是 Cline 解析工具调用格式的问题,不是原来的 400 错误 > > 需要更多信息来诊断: > > # 在 Docker 容器里运行: > docker exec zerogravity zg report > > # 或者提供最近的 trace: > docker exec zerogravity zg trace errors > 请把 `zg report` 的输出贴上来,这样我可以看到完整的请求/响应链。 > > 另外,请确认: > > 1. 你用的是哪个 Cline 版本? > 2. Cline 配置的 API 类型是什么?(OpenAI Compatible / Gemini) > 3. 用的是哪个模型?(从日志看是 gemini-3-flash 和 gemini-3.1-pro) > > 这个会作为一个新问题跟进。 佬 我看到原因了。 但不知道为何会是image额度空了? 我选的是gemini 3.1 pro <img width="783" height="286" alt="Image" src="https://github.com/user-attachments/assets/2f0d38ff-2dcd-4afa-9659-f5fe4c102c92" />
Author
Owner

@NikkeTryHard commented on GitHub (Feb 22, 2026):

感谢反馈!原始的 #52 bug(functionResponse 解析错误导致 400)已在 v1.3.2 中修复。
从你的新日志来看,这是一个不同的问题

  1. 60秒超时: MITM: no upstream response in 60s — Google 的上游没有响应
  2. Cline 错误: "returned tool calls that Cline cannot process" — 这是 Cline 解析工具调用格式的问题,不是原来的 400 错误

需要更多信息来诊断:

在 Docker 容器里运行:

docker exec zerogravity zg report

或者提供最近的 trace:

docker exec zerogravity zg trace errors
请把 zg report 的输出贴上来,这样我可以看到完整的请求/响应链。
另外,请确认:

  1. 你用的是哪个 Cline 版本?
  2. Cline 配置的 API 类型是什么?(OpenAI Compatible / Gemini)
  3. 用的是哪个模型?(从日志看是 gemini-3-flash 和 gemini-3.1-pro)

这个会作为一个新问题跟进。

佬 我看到原因了。 但不知道为何会是image额度空了? 我选的是gemini 3.1 pro

Image

@xiewei3536

Image
<!-- gh-comment-id:3940794540 --> @NikkeTryHard commented on GitHub (Feb 22, 2026): > > 感谢反馈!原始的 [#52](https://github.com/NikkeTryHard/zerogravity/issues/52) bug(`functionResponse` 解析错误导致 400)已在 v1.3.2 中修复。 > > 从你的新日志来看,这是一个**不同的问题**: > > > > 1. **60秒超时**: `MITM: no upstream response in 60s` — Google 的上游没有响应 > > 2. **Cline 错误**: "returned tool calls that Cline cannot process" — 这是 Cline 解析工具调用格式的问题,不是原来的 400 错误 > > > > 需要更多信息来诊断: > > # 在 Docker 容器里运行: > > docker exec zerogravity zg report > > # 或者提供最近的 trace: > > docker exec zerogravity zg trace errors > > 请把 `zg report` 的输出贴上来,这样我可以看到完整的请求/响应链。 > > 另外,请确认: > > > > 1. 你用的是哪个 Cline 版本? > > 2. Cline 配置的 API 类型是什么?(OpenAI Compatible / Gemini) > > 3. 用的是哪个模型?(从日志看是 gemini-3-flash 和 gemini-3.1-pro) > > > > 这个会作为一个新问题跟进。 > > 佬 我看到原因了。 但不知道为何会是image额度空了? 我选的是gemini 3.1 pro > > <img alt="Image" width="783" height="286" src="https://private-user-images.githubusercontent.com/29998329/553185300-2f0d38ff-2dcd-4afa-9659-f5fe4c102c92.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzE3NjE3OTYsIm5iZiI6MTc3MTc2MTQ5NiwicGF0aCI6Ii8yOTk5ODMyOS81NTMxODUzMDAtMmYwZDM4ZmYtMmRjZC00YWZhLTk2NTktZjVmZTRjMTAyYzkyLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNjAyMjIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjYwMjIyVDExNTgxNlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWYwMTA0MzJjYjhjZWUwYmIwNzBhOWY0OWMyZDYyMDI1ZmZlYjMxYWU5MWM3YTY0ZjM4OWUxNGVmZTkzM2Y2YmImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.iXahNVRV6RRoYVcRg9m3vSUC0g-lMdevIgFtUSrsRuo"> @xiewei3536 <img width="651" height="223" alt="Image" src="https://github.com/user-attachments/assets/822655f2-e634-496a-9d19-267d6bb6320c" />
Author
Owner

@xiewei3536 commented on GitHub (Feb 22, 2026):

感谢反馈!原始的 #52 bug(functionResponse 解析错误导致 400)已在 v1.3.2 中修复。
从你的新日志来看,这是一个不同的问题

  1. 60秒超时: MITM: no upstream response in 60s — Google 的上游没有响应
  2. Cline 错误: "returned tool calls that Cline cannot process" — 这是 Cline 解析工具调用格式的问题,不是原来的 400 错误

需要更多信息来诊断:

在 Docker 容器里运行:

docker exec zerogravity zg report

或者提供最近的 trace:

docker exec zerogravity zg trace errors
请把 zg report 的输出贴上来,这样我可以看到完整的请求/响应链。
另外,请确认:

  1. 你用的是哪个 Cline 版本?
  2. Cline 配置的 API 类型是什么?(OpenAI Compatible / Gemini)
  3. 用的是哪个模型?(从日志看是 gemini-3-flash 和 gemini-3.1-pro)

这个会作为一个新问题跟进。

佬 我看到原因了。 但不知道为何会是image额度空了? 我选的是gemini 3.1 pro
Image

@xiewei3536

Image
Image

我想传的,但没有生成出报告文件,我刷新好多回了...我再试试

<!-- gh-comment-id:3940800923 --> @xiewei3536 commented on GitHub (Feb 22, 2026): > > > 感谢反馈!原始的 [#52](https://github.com/NikkeTryHard/zerogravity/issues/52) bug(`functionResponse` 解析错误导致 400)已在 v1.3.2 中修复。 > > > 从你的新日志来看,这是一个**不同的问题**: > > > > > > 1. **60秒超时**: `MITM: no upstream response in 60s` — Google 的上游没有响应 > > > 2. **Cline 错误**: "returned tool calls that Cline cannot process" — 这是 Cline 解析工具调用格式的问题,不是原来的 400 错误 > > > > > > 需要更多信息来诊断: > > > # 在 Docker 容器里运行: > > > docker exec zerogravity zg report > > > # 或者提供最近的 trace: > > > docker exec zerogravity zg trace errors > > > 请把 `zg report` 的输出贴上来,这样我可以看到完整的请求/响应链。 > > > 另外,请确认: > > > > > > 1. 你用的是哪个 Cline 版本? > > > 2. Cline 配置的 API 类型是什么?(OpenAI Compatible / Gemini) > > > 3. 用的是哪个模型?(从日志看是 gemini-3-flash 和 gemini-3.1-pro) > > > > > > 这个会作为一个新问题跟进。 > > > > > > 佬 我看到原因了。 但不知道为何会是image额度空了? 我选的是gemini 3.1 pro > > <img alt="Image" width="783" height="286" src="https://private-user-images.githubusercontent.com/29998329/553185300-2f0d38ff-2dcd-4afa-9659-f5fe4c102c92.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzE3NjE3OTYsIm5iZiI6MTc3MTc2MTQ5NiwicGF0aCI6Ii8yOTk5ODMyOS81NTMxODUzMDAtMmYwZDM4ZmYtMmRjZC00YWZhLTk2NTktZjVmZTRjMTAyYzkyLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNjAyMjIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjYwMjIyVDExNTgxNlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWYwMTA0MzJjYjhjZWUwYmIwNzBhOWY0OWMyZDYyMDI1ZmZlYjMxYWU5MWM3YTY0ZjM4OWUxNGVmZTkzM2Y2YmImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.iXahNVRV6RRoYVcRg9m3vSUC0g-lMdevIgFtUSrsRuo"> > > [@xiewei3536](https://github.com/xiewei3536) > > <img alt="Image" width="651" height="223" src="https://private-user-images.githubusercontent.com/111729769/553185490-822655f2-e634-496a-9d19-267d6bb6320c.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzE3NjE4NjYsIm5iZiI6MTc3MTc2MTU2NiwicGF0aCI6Ii8xMTE3Mjk3NjkvNTUzMTg1NDkwLTgyMjY1NWYyLWU2MzQtNDk2YS05ZDE5LTI2N2Q2YmI2MzIwYy5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjYwMjIyJTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI2MDIyMlQxMTU5MjZaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT04OTM0NWJhMTEyYjQyYzRjYTg0OGNhOTg4OTY0OTA5ZjljYzM5NDExMGFlODQxZGUwODIyNGU4NjVkZjFhYjU1JlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCJ9.M9XPNYwpj3FL7sEsWixI-2AYhbeJXw3kdE-AwYSuNPk"> <img width="1620" height="828" alt="Image" src="https://github.com/user-attachments/assets/d6a22cfb-9291-437f-bf10-4b613682aeec" /> 我想传的,但没有生成出报告文件,我刷新好多回了...我再试试
Author
Owner

@xiewei3536 commented on GitHub (Feb 22, 2026):

docker exec zerogravity zg report说会保存至/root/.config/zerogravity/diagnostic.toon
但我打开路径完全找不到,重复生成多次、刷新均找不到

<!-- gh-comment-id:3940824679 --> @xiewei3536 commented on GitHub (Feb 22, 2026): docker exec zerogravity zg report说会保存至/root/.config/zerogravity/diagnostic.toon 但我打开路径完全找不到,重复生成多次、刷新均找不到
Author
Owner

@NikkeTryHard commented on GitHub (Feb 22, 2026):

看了下代码,Image 配额是 Google 那边 GetUserStatus 直接报回来的,proxy 这边只是显示,不会主动消耗。不过 Gemini 3.1 Pro 确实可能自己触发 generate_image 调用(模型觉得你需要图就会自己调)。

光看配额数字没法确认根因,需要 trace 才能判断。麻烦跑一下:

# Docker 里:
docker exec zerogravity zg report

# 然后把生成的 .tar.gz 文件发出来
# 路径会打印在终端里

如果 zg report 找不到文件,试试:

docker exec zerogravity zg trace ls
# 复制最近的 trace ID,然后:
docker exec zerogravity zg report <trace-id>

拿到 trace 我才能看到底是不是 generate_image 被触发了

<!-- gh-comment-id:3940840744 --> @NikkeTryHard commented on GitHub (Feb 22, 2026): 看了下代码,Image 配额是 Google 那边 `GetUserStatus` 直接报回来的,proxy 这边只是显示,不会主动消耗。不过 Gemini 3.1 Pro 确实可能自己触发 `generate_image` 调用(模型觉得你需要图就会自己调)。 光看配额数字没法确认根因,需要 trace 才能判断。麻烦跑一下: ```bash # Docker 里: docker exec zerogravity zg report # 然后把生成的 .tar.gz 文件发出来 # 路径会打印在终端里 ``` 如果 `zg report` 找不到文件,试试: ```bash docker exec zerogravity zg trace ls # 复制最近的 trace ID,然后: docker exec zerogravity zg report <trace-id> ``` 拿到 trace 我才能看到底是不是 `generate_image` 被触发了
Author
Owner

@xiewei3536 commented on GitHub (Feb 22, 2026):

看了下代码,Image 配额是 Google 那边 GetUserStatus 直接报回来的,proxy 这边只是显示,不会主动消耗。不过 Gemini 3.1 Pro 确实可能自己触发 generate_image 调用(模型觉得你需要图就会自己调)。

光看配额数字没法确认根因,需要 trace 才能判断。麻烦跑一下:

Docker 里:

docker exec zerogravity zg report

然后把生成的 .tar.gz 文件发出来

路径会打印在终端里

如果 zg report 找不到文件,试试:

docker exec zerogravity zg trace ls

复制最近的 trace ID,然后:

docker exec zerogravity zg report
拿到 trace 我才能看到底是不是 generate_image 被触发了

佬 麻烦看一下
diagnostic.toon 链接:https://drive.google.com/file/d/1MsXw1Q-LORYfMGZx0tcuiP6bwm4jD1CB/view?usp=sharing
trace ID 链接:https://drive.google.com/file/d/1Lb-5UQ9xxi8cxXvPNn7wYccmBl7gdlHt/view?usp=sharing

<!-- gh-comment-id:3940866327 --> @xiewei3536 commented on GitHub (Feb 22, 2026): > 看了下代码,Image 配额是 Google 那边 `GetUserStatus` 直接报回来的,proxy 这边只是显示,不会主动消耗。不过 Gemini 3.1 Pro 确实可能自己触发 `generate_image` 调用(模型觉得你需要图就会自己调)。 > > 光看配额数字没法确认根因,需要 trace 才能判断。麻烦跑一下: > > # Docker 里: > docker exec zerogravity zg report > > # 然后把生成的 .tar.gz 文件发出来 > # 路径会打印在终端里 > 如果 `zg report` 找不到文件,试试: > > docker exec zerogravity zg trace ls > # 复制最近的 trace ID,然后: > docker exec zerogravity zg report <trace-id> > 拿到 trace 我才能看到底是不是 `generate_image` 被触发了 佬 麻烦看一下 diagnostic.toon 链接:https://drive.google.com/file/d/1MsXw1Q-LORYfMGZx0tcuiP6bwm4jD1CB/view?usp=sharing trace ID 链接:https://drive.google.com/file/d/1Lb-5UQ9xxi8cxXvPNn7wYccmBl7gdlHt/view?usp=sharing
Author
Owner

@xiewei3536 commented on GitHub (Feb 22, 2026):

另外顺带一提,我有设定阈值0.8,我不知道他如何无视我的设定直接清空额度😅

<!-- gh-comment-id:3940902071 --> @xiewei3536 commented on GitHub (Feb 22, 2026): 另外顺带一提,我有设定阈值0.8,我不知道他如何无视我的设定直接清空额度😅
Author
Owner

@NikkeTryHard commented on GitHub (Feb 22, 2026):

奇怪了trace不可以提取

<!-- gh-comment-id:3940902746 --> @NikkeTryHard commented on GitHub (Feb 22, 2026): 奇怪了trace不可以提取
Author
Owner

@NikkeTryHard commented on GitHub (Feb 22, 2026):

Image
<!-- gh-comment-id:3940902993 --> @NikkeTryHard commented on GitHub (Feb 22, 2026): <img width="1102" height="501" alt="Image" src="https://github.com/user-attachments/assets/8e36bcc1-6205-4aa0-9264-cae7e9e1d2c6" />
Author
Owner

@xiewei3536 commented on GitHub (Feb 22, 2026):

Image

新链接:https://1drv.ms/u/c/df58f7035cb69f3d/IQAl6LCPjobmS6gfKy1m3-kiAUpVxh_CRjwALe7yJ83-IY4

<!-- gh-comment-id:3940906484 --> @xiewei3536 commented on GitHub (Feb 22, 2026): > <img alt="Image" width="1102" height="501" src="https://private-user-images.githubusercontent.com/111729769/553191041-8e36bcc1-6205-4aa0-9264-cae7e9e1d2c6.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzE3NjU2OTEsIm5iZiI6MTc3MTc2NTM5MSwicGF0aCI6Ii8xMTE3Mjk3NjkvNTUzMTkxMDQxLThlMzZiY2MxLTYyMDUtNGFhMC05MjY0LWNhZTdlOWUxZDJjNi5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjYwMjIyJTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI2MDIyMlQxMzAzMTFaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT1mYzg1YzcxOGY1M2RlNTM0YmM3NzBlYTk3NDJjYTY2NjE5OGRmYzhhMTgzN2NkMjJhNTQ4OTUzNzA2YTQ2ZjNhJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCJ9.XWbxr_r1WcCWuiPkjHKLGndctTd-R2lt9SVdN6r5bNk"> 新链接:https://1drv.ms/u/c/df58f7035cb69f3d/IQAl6LCPjobmS6gfKy1m3-kiAUpVxh_CRjwALe7yJ83-IY4
Author
Owner

@NikkeTryHard commented on GitHub (Feb 22, 2026):

Image收到了

<!-- gh-comment-id:3940911831 --> @NikkeTryHard commented on GitHub (Feb 22, 2026): <img width="1697" height="788" alt="Image" src="https://github.com/user-attachments/assets/61de70fd-00bf-4935-9418-e08f4143132a" />收到了
Author
Owner

@NikkeTryHard commented on GitHub (Feb 22, 2026):

Image Native tool calling 打开

<!-- gh-comment-id:3940917519 --> @NikkeTryHard commented on GitHub (Feb 22, 2026): <img width="512" height="586" alt="Image" src="https://github.com/user-attachments/assets/e52da05f-6e86-48a5-8b17-c2ab7200cb18" /> Native tool calling 打开
Author
Owner

@xiewei3536 commented on GitHub (Feb 22, 2026):

有的,我已经有打开过

Image
<!-- gh-comment-id:3940930932 --> @xiewei3536 commented on GitHub (Feb 22, 2026): 有的,我已经有打开过 <img width="522" height="1021" alt="Image" src="https://github.com/user-attachments/assets/3349a62a-fa99-450c-8642-23dbf38813c7" />
Author
Owner

@xiewei3536 commented on GitHub (Feb 22, 2026):

可能是vscode的问题
我用cursor 反重力目前都没有报那个错误😅

目前问题就剩下image额度还有上限额度的环境变数似乎无效的问题

<!-- gh-comment-id:3940983155 --> @xiewei3536 commented on GitHub (Feb 22, 2026): 可能是vscode的问题 我用cursor 反重力目前都没有报那个错误😅 目前问题就剩下image额度还有上限额度的环境变数似乎无效的问题
Author
Owner

@xiewei3536 commented on GitHub (Feb 22, 2026):

我还以为没问题了 没想到问题又来了
opus4.6也是同样问题 这次用在cursor
但很奇怪,我用windows就正常,只有gemini不能用(3.1 not available ),但至少opus回应都正常,工具也正常
docker部属却全部都不正常😟

Image
<!-- gh-comment-id:3941029220 --> @xiewei3536 commented on GitHub (Feb 22, 2026): 我还以为没问题了 没想到问题又来了 opus4.6也是同样问题 这次用在cursor 但很奇怪,我用windows就正常,只有gemini不能用(3.1 not available ),但至少opus回应都正常,工具也正常 docker部属却全部都不正常😟 <img width="609" height="303" alt="Image" src="https://github.com/user-attachments/assets/ca6ab4e2-b2a3-43da-beab-351267cef1ba" />
Author
Owner

@NikkeTryHard commented on GitHub (Feb 23, 2026):

This has been identified and fixed in main (52dde87).

Root cause: Non-image models (like gemini-3.1-pro) were incorrectly preserving the LS-internal generate_image tool and overriding toolConfig to AUTO. This caused Google to return native function calls (e.g. execute_command) instead of letting the model respond with text. The MITM proxy then rewrote these function calls to text placeholders for the LS, which broke Cline's parsing. Additionally, the generate_image tool being active on text models drained image quota unnecessarily.

Fix: Non-image models now strip ALL LS-internal tools (including generate_image) and remove toolConfig entirely. The model falls back to XML-based tool calling in text content, which Cline parses correctly.

If you have access to the private source repo you can rebuild from main now. Otherwise this will be included in the next release.

<!-- gh-comment-id:3942044230 --> @NikkeTryHard commented on GitHub (Feb 23, 2026): This has been identified and fixed in `main` ([52dde87](https://github.com/NikkeTryHard/zerogravity-src/commit/52dde87)). **Root cause:** Non-image models (like `gemini-3.1-pro`) were incorrectly preserving the LS-internal `generate_image` tool and overriding `toolConfig` to `AUTO`. This caused Google to return native function calls (e.g. `execute_command`) instead of letting the model respond with text. The MITM proxy then rewrote these function calls to text placeholders for the LS, which broke Cline's parsing. Additionally, the `generate_image` tool being active on text models drained image quota unnecessarily. **Fix:** Non-image models now strip ALL LS-internal tools (including `generate_image`) and remove `toolConfig` entirely. The model falls back to XML-based tool calling in text content, which Cline parses correctly. If you have access to the private source repo you can rebuild from `main` now. Otherwise this will be included in the next release.
Author
Owner

@xiewei3536 commented on GitHub (Feb 23, 2026):

Image

我是不是该放弃cline了😅
已经更新目前新版

<!-- gh-comment-id:3942608019 --> @xiewei3536 commented on GitHub (Feb 23, 2026): <img width="456" height="512" alt="Image" src="https://github.com/user-attachments/assets/c1681e35-8437-40dd-be79-506d99a668fc" /> 我是不是该放弃cline了😅 已经更新目前新版
Author
Owner

@NikkeTryHard commented on GitHub (Feb 23, 2026):

我真的不想说第二遍了。提供一下zg report <trace-id>

<!-- gh-comment-id:3942759364 --> @NikkeTryHard commented on GitHub (Feb 23, 2026): 我真的不想说第二遍了。提供一下`zg report <trace-id>`
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/zerogravity#44
No description provided.