@google/gemini-cli 0.56.0 → 0.57.0-preview.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundle/builtin/antigravity-support/SKILL.md +55 -18
- package/bundle/builtin/skill-creator/SKILL.md +221 -84
- package/bundle/{chunk-3KYPKZPU.js → chunk-3BVBON3V.js} +1 -1
- package/bundle/{chunk-DGFXNTHD.js → chunk-3NPMAHLX.js} +1 -1
- package/bundle/{chunk-IG5K7R25.js → chunk-4ALCU2HQ.js} +1 -1
- package/bundle/{chunk-ISEPPPFO.js → chunk-4SNEOO5E.js} +2 -2
- package/bundle/{chunk-CNSLGANE.js → chunk-65C235NM.js} +10 -9
- package/bundle/{chunk-R34LMPUE.js → chunk-AKCYXG7C.js} +10 -9
- package/bundle/{chunk-C5FHWCAU.js → chunk-ALVDOQNA.js} +1 -1
- package/bundle/{chunk-3YGHKCB7.js → chunk-EAK33LFP.js} +1 -1
- package/bundle/{chunk-7IXYIWSX.js → chunk-FHDRG5U4.js} +70 -56
- package/bundle/{chunk-LZUWGCRJ.js → chunk-G65GW52B.js} +1708 -1352
- package/bundle/{chunk-KUIZDCN6.js → chunk-GK7NUJ35.js} +8 -5
- package/bundle/{chunk-VBIDFL63.js → chunk-GMQ6QNZB.js} +1 -1
- package/bundle/chunk-LNXGFWGZ.js +17332 -0
- package/bundle/{chunk-TV27OEQP.js → chunk-MBWROXYM.js} +2 -2
- package/bundle/{chunk-M6D6BI7B.js → chunk-NMMXRZ53.js} +2 -2
- package/bundle/{chunk-NUVMJEWM.js → chunk-NPOI4K6X.js} +9291 -15583
- package/bundle/{chunk-435NYDJB.js → chunk-NQ4RH42O.js} +9 -8
- package/bundle/{chunk-MYCBWRZE.js → chunk-O7SBKM7M.js} +1770 -1378
- package/bundle/{chunk-HAZMOWRC.js → chunk-Q73BPF7A.js} +1 -1
- package/bundle/{chunk-Y3KSGWY2.js → chunk-QJP6CMLN.js} +3 -3
- package/bundle/{chunk-BIPFNROE.js → chunk-RLDNUS35.js} +1 -1
- package/bundle/{chunk-ZXYNNAXR.js → chunk-S5UX3QS5.js} +3 -3
- package/bundle/{chunk-Y734TK7O.js → chunk-SCBVGZXH.js} +1 -1
- package/bundle/chunk-SWQAIZEQ.js +102506 -0
- package/bundle/{chunk-MKKOABMJ.js → chunk-UMQE7UC6.js} +3 -3
- package/bundle/{chunk-JFVPVDW6.js → chunk-VBK54QCZ.js} +1 -1
- package/bundle/chunk-VGGWKRAC.js +154 -0
- package/bundle/chunk-W23OOD2C.js +118 -0
- package/bundle/chunk-WDFSF5L4.js +397601 -0
- package/bundle/chunk-XESAM7IL.js +512 -0
- package/bundle/chunk-Y3APL4PE.js +1571 -0
- package/bundle/chunk-ZMPGHLGO.js +398 -0
- package/bundle/{cleanup-IZHI7N6V.js → cleanup-2W5DPMY3.js} +2 -2
- package/bundle/{cleanup-JZLQPF2L.js → cleanup-OTHE7RNU.js} +2 -2
- package/bundle/{cleanup-LJAAR5DT.js → cleanup-SM67K64R.js} +2 -2
- package/bundle/cleanup-XAUT5CMD.js +32 -0
- package/bundle/{core-TJ2XBV6Y.js → core-US34OW5M.js} +9 -1
- package/bundle/{devtoolsService-KFURCXJN.js → devtoolsService-5J53UK6Z.js} +2 -2
- package/bundle/{devtoolsService-BFW3BN3D.js → devtoolsService-GU2GQSOF.js} +2 -2
- package/bundle/{devtoolsService-NWA77XKC.js → devtoolsService-JBFUXTCT.js} +4 -3
- package/bundle/devtoolsService-V46GUHRF.js +4359 -0
- package/bundle/{dist-7KO3HJ4C.js → dist-5TYMQVIZ.js} +9 -1
- package/bundle/{core-BQJQAXVF.js → dist-OWKHVWTR.js} +9 -1
- package/bundle/dist-V5VJYW6J.js +2180 -0
- package/bundle/docs/changelogs/latest.md +224 -3
- package/bundle/docs/get-started/authentication.mdx +1 -1
- package/bundle/docs/reference/commands.md +7 -5
- package/bundle/{gemini-54R2PJOR.js → gemini-3M22N2C3.js} +19 -16
- package/bundle/{gemini-KK7AERSF.js → gemini-LSMTDETS.js} +19 -16
- package/bundle/{gemini-2RHAL2LS.js → gemini-OZOYJF22.js} +219 -200
- package/bundle/gemini-W2B6CLJC.js +17091 -0
- package/bundle/gemini.js +7 -7
- package/bundle/{interactiveCli-QBZRIN4M.js → interactiveCli-D6H37PJQ.js} +60 -30
- package/bundle/{interactiveCli-BAGEJ4VO.js → interactiveCli-L3ZXOVEV.js} +367 -318
- package/bundle/{interactiveCli-F5YXG24U.js → interactiveCli-LQJM6LRE.js} +60 -30
- package/bundle/interactiveCli-RGOYDSMH.js +34984 -0
- package/bundle/{liteRtServerManager-CYBHL4LH.js → liteRtServerManager-3BY6TBHG.js} +4 -4
- package/bundle/{liteRtServerManager-DMTHAOJH.js → liteRtServerManager-C5WZRQUF.js} +4 -4
- package/bundle/{liteRtServerManager-7LTDMYKI.js → liteRtServerManager-IGKUGGP4.js} +4 -4
- package/bundle/liteRtServerManager-IJ4I2PZA.js +65 -0
- package/bundle/{oauth2-provider-NOSS4GIR.js → oauth2-provider-KSRLPOK3.js} +1 -1
- package/bundle/{oauth2-provider-S2564L6K.js → oauth2-provider-RWKTMYJF.js} +1 -1
- package/bundle/{oauth2-provider-HNMIIJDH.js → oauth2-provider-VHNLCU4Y.js} +38 -72
- package/bundle/oauth2-provider-ZT4OFVMK.js +235 -0
- package/bundle/{start-L2WLGVI3.js → start-EXAQFM4Y.js} +6 -6
- package/bundle/{start-UGLCJG5Y.js → start-IPZF32E3.js} +6 -6
- package/bundle/{start-5F3JQ7EX.js → start-SVNTSNHV.js} +6 -6
- package/bundle/start-ZXU5BFZY.js +18 -0
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
# Latest stable release: v0.
|
|
1
|
+
# Latest stable release: v0.55.1
|
|
2
2
|
|
|
3
|
-
Released: August
|
|
3
|
+
Released: August 11, 2026
|
|
4
4
|
|
|
5
5
|
For most users, our latest stable release is the recommended release. Install
|
|
6
6
|
the latest stable version with:
|
|
@@ -27,6 +27,227 @@ npm install -g @google/gemini-cli
|
|
|
27
27
|
|
|
28
28
|
## What's Changed
|
|
29
29
|
|
|
30
|
+
- fix/verify release npm ci ignore scripts by @rmedranollamas in
|
|
31
|
+
[#28116](https://github.com/google-gemini/gemini-cli/pull/28116)
|
|
32
|
+
- fix(ci): prevent workspace binary shadowing in release verification by
|
|
33
|
+
@galdawave in [#28132](https://github.com/google-gemini/gemini-cli/pull/28132)
|
|
34
|
+
- Feat/tool registry discovery by @ved015 in
|
|
35
|
+
[#28113](https://github.com/google-gemini/gemini-cli/pull/28113)
|
|
36
|
+
- fix(ci): prevent bad NPM releases and promote job crashes by @galdawave in
|
|
37
|
+
[#28147](https://github.com/google-gemini/gemini-cli/pull/28147)
|
|
38
|
+
- Changelog for v0.50.0-preview.1 by @gemini-cli-robot in
|
|
39
|
+
[#28150](https://github.com/google-gemini/gemini-cli/pull/28150)
|
|
40
|
+
- Fix no_proxy test by @jerrylin3321 in
|
|
41
|
+
[#28131](https://github.com/google-gemini/gemini-cli/pull/28131)
|
|
42
|
+
- chore(release): bump version to 0.51.0-nightly.20260625.g3fbf93e26 by
|
|
43
|
+
@gemini-cli-robot in
|
|
44
|
+
[#28151](https://github.com/google-gemini/gemini-cli/pull/28151)
|
|
45
|
+
- Vertex base url update by @DavidAPierce in
|
|
46
|
+
[#28145](https://github.com/google-gemini/gemini-cli/pull/28145)
|
|
47
|
+
- fix(security): enforce case-insensitive sensitive path blocklist and vscode
|
|
48
|
+
hitl by @luisfelipe-alt in
|
|
49
|
+
[#27966](https://github.com/google-gemini/gemini-cli/pull/27966)
|
|
50
|
+
- fix(core-tools): resolve defensive path resolution for at-reference files and
|
|
51
|
+
fix macOS tests by @luisfelipe-alt in
|
|
52
|
+
[#28053](https://github.com/google-gemini/gemini-cli/pull/28053)
|
|
53
|
+
- feat(caretaker): implement Cloud Run webhook ingestion service by @chadd28 in
|
|
54
|
+
[#28015](https://github.com/google-gemini/gemini-cli/pull/28015)
|
|
55
|
+
- fix(core): resolve symbolic link directory escape in memory import processor
|
|
56
|
+
by @luisfelipe-alt in
|
|
57
|
+
[#28233](https://github.com/google-gemini/gemini-cli/pull/28233)
|
|
58
|
+
- feat(caretaker): egress cloud run service skeleton by @chadd28 in
|
|
59
|
+
[#28167](https://github.com/google-gemini/gemini-cli/pull/28167)
|
|
60
|
+
- fix(sandbox): make ~/.gitconfig read-only in the macOS sandbox by
|
|
61
|
+
@ompatel-aiml in
|
|
62
|
+
[#28221](https://github.com/google-gemini/gemini-cli/pull/28221)
|
|
63
|
+
- fix(core): preserve escape sequences in string literals for modern models by
|
|
64
|
+
@luisfelipe-alt in
|
|
65
|
+
[#28299](https://github.com/google-gemini/gemini-cli/pull/28299)
|
|
66
|
+
- fix(core): strip thoughts from scrubbed history turns and resolve thought
|
|
67
|
+
leakage by @amelidev in
|
|
68
|
+
[#27971](https://github.com/google-gemini/gemini-cli/pull/27971)
|
|
69
|
+
- Refactor: exclude transient CI configuration files from workspace context by
|
|
70
|
+
@DavidAPierce in
|
|
71
|
+
[#28216](https://github.com/google-gemini/gemini-cli/pull/28216)
|
|
72
|
+
- feat(caretaker-triage): add triage worker core foundational modules by
|
|
73
|
+
@chadd28 in [#28163](https://github.com/google-gemini/gemini-cli/pull/28163)
|
|
74
|
+
- feat(caretaker-egress): implement octokit github action handler for egress
|
|
75
|
+
service by @chadd28 in
|
|
76
|
+
[#28303](https://github.com/google-gemini/gemini-cli/pull/28303)
|
|
77
|
+
- chore(release): bump version to 0.52.0-nightly.20260707.g27a3da3e8 by
|
|
78
|
+
@gemini-cli-robot in
|
|
79
|
+
[#28323](https://github.com/google-gemini/gemini-cli/pull/28323)
|
|
80
|
+
- Changelog for v0.51.0-preview.0 by @gemini-cli-robot in
|
|
81
|
+
[#28320](https://github.com/google-gemini/gemini-cli/pull/28320)
|
|
82
|
+
- Changelog for v0.50.0 by @gemini-cli-robot in
|
|
83
|
+
[#28322](https://github.com/google-gemini/gemini-cli/pull/28322)
|
|
84
|
+
- fix(core-tools): bypass LLM correction for JSON and IPYNB files in write_file
|
|
85
|
+
and replace by @amelidev in
|
|
86
|
+
[#28223](https://github.com/google-gemini/gemini-cli/pull/28223)
|
|
87
|
+
- fix(core): use unambiguous previous intent label in fallback summary by
|
|
88
|
+
@amelidev in [#28343](https://github.com/google-gemini/gemini-cli/pull/28343)
|
|
89
|
+
- feat(caretaker-triage): implement main worker execution loop and egress action
|
|
90
|
+
publisher by @chadd28 in
|
|
91
|
+
[#28306](https://github.com/google-gemini/gemini-cli/pull/28306)
|
|
92
|
+
- fix(privacy): show a clear message when the account has no Code Assist tier by
|
|
93
|
+
@ompatel-aiml in
|
|
94
|
+
[#28304](https://github.com/google-gemini/gemini-cli/pull/28304)
|
|
95
|
+
- fix(core): enrich shared project quota limit errors with setup hint by
|
|
96
|
+
@amelidev in [#28391](https://github.com/google-gemini/gemini-cli/pull/28391)
|
|
97
|
+
- fix(a2a-server): ensure task cancellation aborts execution loop by
|
|
98
|
+
@luisfelipe-alt in
|
|
99
|
+
[#28316](https://github.com/google-gemini/gemini-cli/pull/28316)
|
|
100
|
+
- fix(core): simplify plan mode write policy to support relative paths by
|
|
101
|
+
@DavidAPierce in
|
|
102
|
+
[#28398](https://github.com/google-gemini/gemini-cli/pull/28398)
|
|
103
|
+
- feat(core): Bump node google-auth-library version to 10.9.0 by @jerrylin3321
|
|
104
|
+
in [#28385](https://github.com/google-gemini/gemini-cli/pull/28385)
|
|
105
|
+
- chore/release: bump version to 0.52.0-nightly.20260715.gfa975395b by
|
|
106
|
+
@gemini-cli-robot in
|
|
107
|
+
[#28402](https://github.com/google-gemini/gemini-cli/pull/28402)
|
|
108
|
+
- fix(core,a2a): group cancelled tool responses and coalesce consecutive roles
|
|
109
|
+
to prevent 400 Bad Request by @luisfelipe-alt in
|
|
110
|
+
[#28407](https://github.com/google-gemini/gemini-cli/pull/28407)
|
|
111
|
+
- feat(caretaker-triage): implement LLM triage orchestrator and container build
|
|
112
|
+
by @chadd28 in
|
|
113
|
+
[#28345](https://github.com/google-gemini/gemini-cli/pull/28345)
|
|
114
|
+
- refactor(cli): align macOS permissive Seatbelt profiles with deny-default
|
|
115
|
+
model by @ompatel-aiml in
|
|
116
|
+
[#28424](https://github.com/google-gemini/gemini-cli/pull/28424)
|
|
117
|
+
- fix(core): mitigate infinite ReAct loops and prompt injection loops by
|
|
118
|
+
@amelidev in [#28429](https://github.com/google-gemini/gemini-cli/pull/28429)
|
|
119
|
+
- fix(a2a-server): enforce workspace trust and task isolation to prevent RCE by
|
|
120
|
+
@luisfelipe-alt in
|
|
121
|
+
[#28470](https://github.com/google-gemini/gemini-cli/pull/28470)
|
|
122
|
+
- fix(core): sequentially verify cached credentials and restore
|
|
123
|
+
GOOGLE_APPLICATION_CREDENTIALS fallback by @luisfelipe-alt in
|
|
124
|
+
[#28472](https://github.com/google-gemini/gemini-cli/pull/28472)
|
|
125
|
+
- feat(evals): add eval coverage report command by @ved015 in
|
|
126
|
+
[#28169](https://github.com/google-gemini/gemini-cli/pull/28169)
|
|
127
|
+
- Changelog for v0.53.0-preview.0 by @gemini-cli-robot in
|
|
128
|
+
[#28507](https://github.com/google-gemini/gemini-cli/pull/28507)
|
|
129
|
+
- Changelog for v0.52.0 by @gemini-cli-robot in
|
|
130
|
+
[#28508](https://github.com/google-gemini/gemini-cli/pull/28508)
|
|
131
|
+
- chore(release): bump version to 0.54.0-nightly.20260722.gf743ab579 by
|
|
132
|
+
@gemini-cli-robot in
|
|
133
|
+
[#28510](https://github.com/google-gemini/gemini-cli/pull/28510)
|
|
134
|
+
- fix(caretaker): sanitize and wrap issue title in untrusted_context by @chadd28
|
|
135
|
+
in [#28352](https://github.com/google-gemini/gemini-cli/pull/28352)
|
|
136
|
+
- chore(caretaker): update vitest to v3.2.4 and add package-lock.json files by
|
|
137
|
+
@chadd28 in [#28409](https://github.com/google-gemini/gemini-cli/pull/28409)
|
|
138
|
+
- fix(core): rotate session ID on model fallback to prevent stateful API errors
|
|
139
|
+
by @amelidev in
|
|
140
|
+
[#28469](https://github.com/google-gemini/gemini-cli/pull/28469)
|
|
141
|
+
- feat(caretaker-triage): post comment before auto-closing issues by @chadd28 in
|
|
142
|
+
[#28411](https://github.com/google-gemini/gemini-cli/pull/28411)
|
|
143
|
+
- fix(core): enforce HTTPS for GoogleCredentialsAuthProvider to prevent
|
|
144
|
+
cleartext leakage by @amelidev in
|
|
145
|
+
[#28517](https://github.com/google-gemini/gemini-cli/pull/28517)
|
|
146
|
+
- fix(core): filter out thought parts from getHistoryTurns when context
|
|
147
|
+
management is disabled by @DavidAPierce in
|
|
148
|
+
[#28509](https://github.com/google-gemini/gemini-cli/pull/28509)
|
|
149
|
+
- fix(a2a-server): normalize CRLF line endings to LF in getProposedContent by
|
|
150
|
+
@luisfelipe-alt in
|
|
151
|
+
[#28531](https://github.com/google-gemini/gemini-cli/pull/28531)
|
|
152
|
+
- fix(core): enforce explicit tag length and validation in file keychain by
|
|
153
|
+
@luisfelipe-alt in
|
|
154
|
+
[#28523](https://github.com/google-gemini/gemini-cli/pull/28523)
|
|
155
|
+
- chore/release: bump version to 0.54.0-nightly.20260728.gbef611950 by
|
|
156
|
+
@gemini-cli-robot in
|
|
157
|
+
[#28552](https://github.com/google-gemini/gemini-cli/pull/28552)
|
|
158
|
+
- feat(pr-generator-db): implement Firestore concurrency dual-locking and test
|
|
159
|
+
ingestion utilities by @joneba-google in
|
|
160
|
+
[#28432](https://github.com/google-gemini/gemini-cli/pull/28432)
|
|
161
|
+
- feat(pr-generator-agent): implement Antigravity agent runner and prompt
|
|
162
|
+
templates … by @joneba-google in
|
|
163
|
+
[#28434](https://github.com/google-gemini/gemini-cli/pull/28434)
|
|
164
|
+
- fix(core): skip merged function-response turns when finding the active loop by
|
|
165
|
+
@adamfweidman in
|
|
166
|
+
[#28565](https://github.com/google-gemini/gemini-cli/pull/28565)
|
|
167
|
+
- chore(release): bump version to 0.55.0-nightly.20260728.gd29268d36 by
|
|
168
|
+
@gemini-cli-robot in
|
|
169
|
+
[#28569](https://github.com/google-gemini/gemini-cli/pull/28569)
|
|
170
|
+
- Changelog for v0.54.0-preview.0 by @gemini-cli-robot in
|
|
171
|
+
[#28567](https://github.com/google-gemini/gemini-cli/pull/28567)
|
|
172
|
+
- Changelog for v0.53.0 by @gemini-cli-robot in
|
|
173
|
+
[#28568](https://github.com/google-gemini/gemini-cli/pull/28568)
|
|
174
|
+
- chore/release: bump version to 0.55.0-nightly.20260729.g3499c84f7 by
|
|
175
|
+
@gemini-cli-robot in
|
|
176
|
+
[#28573](https://github.com/google-gemini/gemini-cli/pull/28573)
|
|
177
|
+
- fix(core): classify capacity exhaustion as terminal to prevent retry hangs by
|
|
178
|
+
@luisfelipe-alt in
|
|
179
|
+
[#28599](https://github.com/google-gemini/gemini-cli/pull/28599)
|
|
180
|
+
- fix(core,cli): propagate InvalidStreamError details to UI for specific empty
|
|
181
|
+
response guidance by @DavidAPierce in
|
|
182
|
+
[#28566](https://github.com/google-gemini/gemini-cli/pull/28566)
|
|
183
|
+
- fix(cli): fall back to embedded macOS seatbelt profiles if missing by
|
|
184
|
+
@amelidev in [#28551](https://github.com/google-gemini/gemini-cli/pull/28551)
|
|
185
|
+
- feat(pr-generator-core): add environment config parser, command executor,
|
|
186
|
+
GitHub R… by @joneba-google in
|
|
187
|
+
[#28435](https://github.com/google-gemini/gemini-cli/pull/28435)
|
|
188
|
+
- feat(pr-generator-orchestrator): implement iterative bug-fixing state machine
|
|
189
|
+
and container worker entrypoint by @joneba-google in
|
|
190
|
+
[#28433](https://github.com/google-gemini/gemini-cli/pull/28433)
|
|
191
|
+
- feat(pr-generator-infra): configure Cloud Run job, Workflows definition, and
|
|
192
|
+
Dockerfile by @joneba-google in
|
|
193
|
+
[#28431](https://github.com/google-gemini/gemini-cli/pull/28431)
|
|
194
|
+
- fix(release): handle npm dist-tag deletion failures on registries that forbid
|
|
195
|
+
it by @DavidAPierce in
|
|
196
|
+
[#28694](https://github.com/google-gemini/gemini-cli/pull/28694)
|
|
197
|
+
- fix(core): stop a new user message fusing into an unanswered tool response by
|
|
198
|
+
@adamfweidman in
|
|
199
|
+
[#28700](https://github.com/google-gemini/gemini-cli/pull/28700)
|
|
200
|
+
- fix(core,cli): repair /compress session reload and quota-fallback tool
|
|
201
|
+
response loss by @adamfweidman in
|
|
202
|
+
[#28672](https://github.com/google-gemini/gemini-cli/pull/28672)
|
|
203
|
+
- fix(core): preserve functionCall thoughtSignature when stripping thought parts
|
|
204
|
+
by @sarbojitrana in
|
|
205
|
+
[#28607](https://github.com/google-gemini/gemini-cli/pull/28607)
|
|
206
|
+
- fix(core): unwrap and parse nested gaxios streaming errors from cause message
|
|
207
|
+
by @luisfelipe-alt in
|
|
208
|
+
[#28689](https://github.com/google-gemini/gemini-cli/pull/28689)
|
|
209
|
+
- Changelog for v0.55.0-preview.1 by @gemini-cli-robot in
|
|
210
|
+
[#28706](https://github.com/google-gemini/gemini-cli/pull/28706)
|
|
211
|
+
- chore(release): bump version to 0.56.0-nightly.20260806.g761f604c1 by
|
|
212
|
+
@gemini-cli-robot in
|
|
213
|
+
[#28707](https://github.com/google-gemini/gemini-cli/pull/28707)
|
|
214
|
+
- Changelog for v0.54.0 by @gemini-cli-robot in
|
|
215
|
+
[#28708](https://github.com/google-gemini/gemini-cli/pull/28708)
|
|
216
|
+
- Reclassifying Capacity Exhaustion as Terminal Error by @luisfelipe-alt in
|
|
217
|
+
[#28716](https://github.com/google-gemini/gemini-cli/pull/28716)
|
|
218
|
+
- feat(caretaker): update Firestore schema with error, and pr_number fields by
|
|
219
|
+
@chadd28 in [#28467](https://github.com/google-gemini/gemini-cli/pull/28467)
|
|
220
|
+
- feat(caretaker-triage): prompt hill-climbing & orchestrator updates by
|
|
221
|
+
@chadd28 in [#28524](https://github.com/google-gemini/gemini-cli/pull/28524)
|
|
222
|
+
- feat(caretaker): add triage Cloud Run job workflow by @chadd28 in
|
|
223
|
+
[#28468](https://github.com/google-gemini/gemini-cli/pull/28468)
|
|
224
|
+
- feat(caretaker-evals): add triage evaluation framework and judge runner by
|
|
225
|
+
@chadd28 in [#28530](https://github.com/google-gemini/gemini-cli/pull/28530)
|
|
226
|
+
- feat(caretaker-evals): add local golden issue collection and firestore sync
|
|
227
|
+
tools by @chadd28 in
|
|
228
|
+
[#28532](https://github.com/google-gemini/gemini-cli/pull/28532)
|
|
229
|
+
- feat(caretaker): publish workable spec event to ready-for-code Pub/Sub topic
|
|
230
|
+
by @chadd28 in
|
|
231
|
+
[#28588](https://github.com/google-gemini/gemini-cli/pull/28588)
|
|
232
|
+
- feat(caretaker): add GCP deployment script for caretaker agent services by
|
|
233
|
+
@chadd28 in [#28529](https://github.com/google-gemini/gemini-cli/pull/28529)
|
|
234
|
+
- feat(caretaker-evals): add Cloud Run job entrypoint for eval runner by
|
|
235
|
+
@chadd28 in [#28727](https://github.com/google-gemini/gemini-cli/pull/28727)
|
|
236
|
+
- fix(caretaker): clear lock on NEEDS_HUMAN transition by @chadd28 in
|
|
237
|
+
[#28601](https://github.com/google-gemini/gemini-cli/pull/28601)
|
|
238
|
+
- feat(ingestion): add issue comment handling and re-triage workflow by @chadd28
|
|
239
|
+
in [#28690](https://github.com/google-gemini/gemini-cli/pull/28690)
|
|
240
|
+
- fix(core): refresh MCP OAuth tokens with the stored client ID by
|
|
241
|
+
@ParthivNaresh in
|
|
242
|
+
[#28481](https://github.com/google-gemini/gemini-cli/pull/28481)
|
|
243
|
+
- fix(core,cli): resolve false model capacity exhaustion and fix core quota
|
|
244
|
+
lookup model mapping by @DavidAPierce in
|
|
245
|
+
[#28730](https://github.com/google-gemini/gemini-cli/pull/28730)
|
|
246
|
+
- feat(evals): add local report command and developer documentation by @ved015
|
|
247
|
+
in [#28369](https://github.com/google-gemini/gemini-cli/pull/28369)
|
|
248
|
+
- fix(core): dynamically resolve Cloud Workstations proxy redirect URI for OAuth
|
|
249
|
+
flows by @amelidev in
|
|
250
|
+
[#28688](https://github.com/google-gemini/gemini-cli/pull/28688)
|
|
30
251
|
- Changelog for v0.53.0-preview.0 by @gemini-cli-robot in
|
|
31
252
|
[#28507](https://github.com/google-gemini/gemini-cli/pull/28507)
|
|
32
253
|
- Changelog for v0.52.0 by @gemini-cli-robot in
|
|
@@ -73,4 +294,4 @@ npm install -g @google/gemini-cli
|
|
|
73
294
|
[#28609](https://github.com/google-gemini/gemini-cli/pull/28609)
|
|
74
295
|
|
|
75
296
|
**Full Changelog**:
|
|
76
|
-
https://github.com/google-gemini/gemini-cli/compare/v0.53.1...v0.
|
|
297
|
+
https://github.com/google-gemini/gemini-cli/compare/v0.53.1...v0.55.1
|
|
@@ -131,7 +131,7 @@ following authentication options:
|
|
|
131
131
|
|
|
132
132
|
Regardless of your authentication method for Vertex AI, you'll need to set
|
|
133
133
|
`GOOGLE_CLOUD_PROJECT` to your Google Cloud project ID with the Vertex AI API
|
|
134
|
-
enabled, and `GOOGLE_CLOUD_LOCATION` to the location of your Vertex AI resources
|
|
134
|
+
enabled, and `GOOGLE_CLOUD_LOCATION` to the [location of your Vertex AI resources](https://cloud.google.com/vertex-ai/generative-ai/docs/learn/locations)
|
|
135
135
|
or the location where you want to run your jobs.
|
|
136
136
|
|
|
137
137
|
For example:
|
|
@@ -101,11 +101,13 @@ Slash commands provide meta-level control over the CLI itself.
|
|
|
101
101
|
|
|
102
102
|
### `/clear`
|
|
103
103
|
|
|
104
|
-
- **Description:** Clear the
|
|
105
|
-
history and
|
|
106
|
-
history
|
|
107
|
-
|
|
108
|
-
|
|
104
|
+
- **Description:** Clear the agent conversation context (active conversation
|
|
105
|
+
history) and start a new session, in addition to clearing the visible terminal
|
|
106
|
+
screen, history, and scrollback within the CLI.
|
|
107
|
+
- **Keyboard shortcut:** Press **Ctrl+L** at any time to perform a visual clear
|
|
108
|
+
action (note that **Ctrl+L** only clears the terminal display and redraws the
|
|
109
|
+
UI, preserving the active conversation context; use `/clear` to start a new
|
|
110
|
+
session).
|
|
109
111
|
|
|
110
112
|
### `/commands`
|
|
111
113
|
|
|
@@ -2,7 +2,7 @@ const require = (await import('node:module')).createRequire(import.meta.url); co
|
|
|
2
2
|
import {
|
|
3
3
|
startCommand,
|
|
4
4
|
startServer
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-S5UX3QS5.js";
|
|
6
6
|
import {
|
|
7
7
|
BuiltinCommandLoader,
|
|
8
8
|
CommandService,
|
|
@@ -45,11 +45,11 @@ import {
|
|
|
45
45
|
updateAllUpdatableExtensions,
|
|
46
46
|
updateExtension,
|
|
47
47
|
validateAuthMethod
|
|
48
|
-
} from "./chunk-
|
|
48
|
+
} from "./chunk-AKCYXG7C.js";
|
|
49
49
|
import {
|
|
50
50
|
exitCli,
|
|
51
51
|
require_source
|
|
52
|
-
} from "./chunk-
|
|
52
|
+
} from "./chunk-SCBVGZXH.js";
|
|
53
53
|
import {
|
|
54
54
|
appEvents
|
|
55
55
|
} from "./chunk-5PS3AYFU.js";
|
|
@@ -87,11 +87,11 @@ import {
|
|
|
87
87
|
resolveGemmaConfig,
|
|
88
88
|
saveModelChange,
|
|
89
89
|
stripAnsi
|
|
90
|
-
} from "./chunk-
|
|
90
|
+
} from "./chunk-ALVDOQNA.js";
|
|
91
91
|
import {
|
|
92
92
|
RELAUNCH_EXIT_CODE
|
|
93
|
-
} from "./chunk-
|
|
94
|
-
import "./chunk-
|
|
93
|
+
} from "./chunk-4SNEOO5E.js";
|
|
94
|
+
import "./chunk-VBK54QCZ.js";
|
|
95
95
|
import {
|
|
96
96
|
cleanupCheckpoints,
|
|
97
97
|
registerCleanup,
|
|
@@ -100,7 +100,7 @@ import {
|
|
|
100
100
|
runExitCleanup,
|
|
101
101
|
runSyncCleanup,
|
|
102
102
|
setupSignalHandlers
|
|
103
|
-
} from "./chunk-
|
|
103
|
+
} from "./chunk-Q73BPF7A.js";
|
|
104
104
|
import {
|
|
105
105
|
ASK_USER_TOOL_NAME,
|
|
106
106
|
AuthType,
|
|
@@ -196,6 +196,7 @@ import {
|
|
|
196
196
|
getProjectRootForWorktree,
|
|
197
197
|
getPty,
|
|
198
198
|
getRealPath,
|
|
199
|
+
getSafeGitEnv,
|
|
199
200
|
getToolCallDataSchema,
|
|
200
201
|
getVersion,
|
|
201
202
|
homedir,
|
|
@@ -237,7 +238,7 @@ import {
|
|
|
237
238
|
updatePolicy,
|
|
238
239
|
writeToStderr,
|
|
239
240
|
writeToStdout
|
|
240
|
-
} from "./chunk-
|
|
241
|
+
} from "./chunk-O7SBKM7M.js";
|
|
241
242
|
import "./chunk-664ZODQF.js";
|
|
242
243
|
import "./chunk-IUUIT4SU.js";
|
|
243
244
|
import "./chunk-TUDYL3X4.js";
|
|
@@ -7831,7 +7832,7 @@ async function loadSandboxConfig(settings, argv) {
|
|
|
7831
7832
|
}
|
|
7832
7833
|
const command2 = getSandboxCommand(sandboxValue);
|
|
7833
7834
|
const packageJson = await getPackageJson(__dirname3);
|
|
7834
|
-
const image = process.env["GEMINI_SANDBOX_IMAGE"] ?? "us-docker.pkg.dev/gemini-code-dev/gemini-cli/sandbox:0.
|
|
7835
|
+
const image = process.env["GEMINI_SANDBOX_IMAGE"] ?? "us-docker.pkg.dev/gemini-code-dev/gemini-cli/sandbox:0.57.0-preview.0" ?? customImage ?? packageJson?.config?.sandboxImageUri;
|
|
7835
7836
|
const isNative = command2 === "windows-native" || command2 === "sandbox-exec" || command2 === "lxc";
|
|
7836
7837
|
return command2 && (image || isNative) ? { enabled: true, allowedPaths, networkAccess, command: command2, image } : void 0;
|
|
7837
7838
|
}
|
|
@@ -8655,7 +8656,8 @@ async function resolveWorktreeSettings(cwd) {
|
|
|
8655
8656
|
let worktreePath;
|
|
8656
8657
|
try {
|
|
8657
8658
|
const { stdout } = await execa("git", ["rev-parse", "--show-toplevel"], {
|
|
8658
|
-
cwd
|
|
8659
|
+
cwd,
|
|
8660
|
+
env: getSafeGitEnv()
|
|
8659
8661
|
});
|
|
8660
8662
|
const toplevel = stdout.trim();
|
|
8661
8663
|
const projectRoot = await getProjectRootForWorktree(toplevel);
|
|
@@ -8671,7 +8673,8 @@ async function resolveWorktreeSettings(cwd) {
|
|
|
8671
8673
|
let worktreeBaseSha;
|
|
8672
8674
|
try {
|
|
8673
8675
|
const { stdout } = await execa("git", ["rev-parse", "HEAD"], {
|
|
8674
|
-
cwd: worktreePath
|
|
8676
|
+
cwd: worktreePath,
|
|
8677
|
+
env: getSafeGitEnv()
|
|
8675
8678
|
});
|
|
8676
8679
|
worktreeBaseSha = stdout.trim();
|
|
8677
8680
|
} catch (e) {
|
|
@@ -10836,7 +10839,7 @@ async function runNonInteractive({
|
|
|
10836
10839
|
}
|
|
10837
10840
|
});
|
|
10838
10841
|
if (process.env["GEMINI_CLI_ACTIVITY_LOG_TARGET"]) {
|
|
10839
|
-
const { setupInitialActivityLogger } = await import("./devtoolsService-
|
|
10842
|
+
const { setupInitialActivityLogger } = await import("./devtoolsService-5J53UK6Z.js");
|
|
10840
10843
|
setupInitialActivityLogger(config);
|
|
10841
10844
|
}
|
|
10842
10845
|
const { stdout: workingStdout } = createWorkingStdio();
|
|
@@ -11346,7 +11349,7 @@ async function runNonInteractive2(params) {
|
|
|
11346
11349
|
}
|
|
11347
11350
|
});
|
|
11348
11351
|
if (process.env["GEMINI_CLI_ACTIVITY_LOG_TARGET"]) {
|
|
11349
|
-
const { setupInitialActivityLogger } = await import("./devtoolsService-
|
|
11352
|
+
const { setupInitialActivityLogger } = await import("./devtoolsService-5J53UK6Z.js");
|
|
11350
11353
|
setupInitialActivityLogger(config);
|
|
11351
11354
|
}
|
|
11352
11355
|
const { stdout: workingStdout } = createWorkingStdio();
|
|
@@ -16556,7 +16559,7 @@ async function resolveSessionId(resumeArg, sessionIdArg, sessionFileArg) {
|
|
|
16556
16559
|
}
|
|
16557
16560
|
}
|
|
16558
16561
|
async function startInteractiveUI(config, settings, startupWarnings, workspaceRoot = process.cwd(), resumedSessionData, initializationResult) {
|
|
16559
|
-
const { startInteractiveUI: doStartUI } = await import("./interactiveCli-
|
|
16562
|
+
const { startInteractiveUI: doStartUI } = await import("./interactiveCli-LQJM6LRE.js");
|
|
16560
16563
|
await doStartUI(
|
|
16561
16564
|
config,
|
|
16562
16565
|
settings,
|
|
@@ -16765,7 +16768,7 @@ ${finalArgs[promptIndex + 1]}`;
|
|
|
16765
16768
|
await config.storage.initialize();
|
|
16766
16769
|
adminControlsListner.setConfig(config);
|
|
16767
16770
|
if (config.isInteractive() && settings.merged.general.devtools) {
|
|
16768
|
-
const { setupInitialActivityLogger } = await import("./devtoolsService-
|
|
16771
|
+
const { setupInitialActivityLogger } = await import("./devtoolsService-5J53UK6Z.js");
|
|
16769
16772
|
setupInitialActivityLogger(config);
|
|
16770
16773
|
}
|
|
16771
16774
|
registerTelemetryConfig(config);
|
|
@@ -16824,7 +16827,7 @@ ${finalArgs[promptIndex + 1]}`;
|
|
|
16824
16827
|
const initAppHandle = startupProfiler.start("initialize_app");
|
|
16825
16828
|
const initializationResult = await initializeApp(config, settings);
|
|
16826
16829
|
initAppHandle?.end();
|
|
16827
|
-
import("./liteRtServerManager-
|
|
16830
|
+
import("./liteRtServerManager-3BY6TBHG.js").then(({ LiteRtServerManager }) => {
|
|
16828
16831
|
const mergedGemma = settings.merged.experimental?.gemmaModelRouter;
|
|
16829
16832
|
if (!mergedGemma) return;
|
|
16830
16833
|
const userGemma = settings.forScope("User" /* User */).settings.experimental?.gemmaModelRouter;
|
|
@@ -2,7 +2,7 @@ const require = (await import('node:module')).createRequire(import.meta.url); co
|
|
|
2
2
|
import {
|
|
3
3
|
startCommand,
|
|
4
4
|
startServer
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-W23OOD2C.js";
|
|
6
6
|
import {
|
|
7
7
|
BuiltinCommandLoader,
|
|
8
8
|
CommandService,
|
|
@@ -45,11 +45,11 @@ import {
|
|
|
45
45
|
updateAllUpdatableExtensions,
|
|
46
46
|
updateExtension,
|
|
47
47
|
validateAuthMethod
|
|
48
|
-
} from "./chunk-
|
|
48
|
+
} from "./chunk-FHDRG5U4.js";
|
|
49
49
|
import {
|
|
50
50
|
exitCli,
|
|
51
51
|
require_source
|
|
52
|
-
} from "./chunk-
|
|
52
|
+
} from "./chunk-Y3APL4PE.js";
|
|
53
53
|
import {
|
|
54
54
|
appEvents
|
|
55
55
|
} from "./chunk-5PS3AYFU.js";
|
|
@@ -87,11 +87,11 @@ import {
|
|
|
87
87
|
resolveGemmaConfig,
|
|
88
88
|
saveModelChange,
|
|
89
89
|
stripAnsi
|
|
90
|
-
} from "./chunk-
|
|
90
|
+
} from "./chunk-GK7NUJ35.js";
|
|
91
91
|
import {
|
|
92
92
|
RELAUNCH_EXIT_CODE
|
|
93
|
-
} from "./chunk-
|
|
94
|
-
import "./chunk-
|
|
93
|
+
} from "./chunk-MBWROXYM.js";
|
|
94
|
+
import "./chunk-XESAM7IL.js";
|
|
95
95
|
import {
|
|
96
96
|
cleanupCheckpoints,
|
|
97
97
|
registerCleanup,
|
|
@@ -100,7 +100,7 @@ import {
|
|
|
100
100
|
runExitCleanup,
|
|
101
101
|
runSyncCleanup,
|
|
102
102
|
setupSignalHandlers
|
|
103
|
-
} from "./chunk-
|
|
103
|
+
} from "./chunk-3NPMAHLX.js";
|
|
104
104
|
import {
|
|
105
105
|
ASK_USER_TOOL_NAME,
|
|
106
106
|
ApprovalMode,
|
|
@@ -212,6 +212,7 @@ import {
|
|
|
212
212
|
getProjectRootForWorktree,
|
|
213
213
|
getPty,
|
|
214
214
|
getRealPath,
|
|
215
|
+
getSafeGitEnv,
|
|
215
216
|
getToolCallDataSchema,
|
|
216
217
|
getVersion,
|
|
217
218
|
homedir,
|
|
@@ -253,7 +254,7 @@ import {
|
|
|
253
254
|
updatePolicy,
|
|
254
255
|
writeToStderr,
|
|
255
256
|
writeToStdout
|
|
256
|
-
} from "./chunk-
|
|
257
|
+
} from "./chunk-G65GW52B.js";
|
|
257
258
|
import "./chunk-664ZODQF.js";
|
|
258
259
|
import "./chunk-IUUIT4SU.js";
|
|
259
260
|
import "./chunk-TUDYL3X4.js";
|
|
@@ -7847,7 +7848,7 @@ async function loadSandboxConfig(settings, argv) {
|
|
|
7847
7848
|
}
|
|
7848
7849
|
const command2 = getSandboxCommand(sandboxValue);
|
|
7849
7850
|
const packageJson = await getPackageJson(__dirname3);
|
|
7850
|
-
const image = process.env["GEMINI_SANDBOX_IMAGE"] ?? "us-docker.pkg.dev/gemini-code-dev/gemini-cli/sandbox:0.
|
|
7851
|
+
const image = process.env["GEMINI_SANDBOX_IMAGE"] ?? "us-docker.pkg.dev/gemini-code-dev/gemini-cli/sandbox:0.57.0-preview.1" ?? customImage ?? packageJson?.config?.sandboxImageUri;
|
|
7851
7852
|
const isNative = command2 === "windows-native" || command2 === "sandbox-exec" || command2 === "lxc";
|
|
7852
7853
|
return command2 && (image || isNative) ? { enabled: true, allowedPaths, networkAccess, command: command2, image } : void 0;
|
|
7853
7854
|
}
|
|
@@ -8671,7 +8672,8 @@ async function resolveWorktreeSettings(cwd) {
|
|
|
8671
8672
|
let worktreePath;
|
|
8672
8673
|
try {
|
|
8673
8674
|
const { stdout } = await execa("git", ["rev-parse", "--show-toplevel"], {
|
|
8674
|
-
cwd
|
|
8675
|
+
cwd,
|
|
8676
|
+
env: getSafeGitEnv()
|
|
8675
8677
|
});
|
|
8676
8678
|
const toplevel = stdout.trim();
|
|
8677
8679
|
const projectRoot = await getProjectRootForWorktree(toplevel);
|
|
@@ -8687,7 +8689,8 @@ async function resolveWorktreeSettings(cwd) {
|
|
|
8687
8689
|
let worktreeBaseSha;
|
|
8688
8690
|
try {
|
|
8689
8691
|
const { stdout } = await execa("git", ["rev-parse", "HEAD"], {
|
|
8690
|
-
cwd: worktreePath
|
|
8692
|
+
cwd: worktreePath,
|
|
8693
|
+
env: getSafeGitEnv()
|
|
8691
8694
|
});
|
|
8692
8695
|
worktreeBaseSha = stdout.trim();
|
|
8693
8696
|
} catch (e) {
|
|
@@ -10852,7 +10855,7 @@ async function runNonInteractive({
|
|
|
10852
10855
|
}
|
|
10853
10856
|
});
|
|
10854
10857
|
if (process.env["GEMINI_CLI_ACTIVITY_LOG_TARGET"]) {
|
|
10855
|
-
const { setupInitialActivityLogger } = await import("./devtoolsService-
|
|
10858
|
+
const { setupInitialActivityLogger } = await import("./devtoolsService-JBFUXTCT.js");
|
|
10856
10859
|
setupInitialActivityLogger(config);
|
|
10857
10860
|
}
|
|
10858
10861
|
const { stdout: workingStdout } = createWorkingStdio();
|
|
@@ -11362,7 +11365,7 @@ async function runNonInteractive2(params) {
|
|
|
11362
11365
|
}
|
|
11363
11366
|
});
|
|
11364
11367
|
if (process.env["GEMINI_CLI_ACTIVITY_LOG_TARGET"]) {
|
|
11365
|
-
const { setupInitialActivityLogger } = await import("./devtoolsService-
|
|
11368
|
+
const { setupInitialActivityLogger } = await import("./devtoolsService-JBFUXTCT.js");
|
|
11366
11369
|
setupInitialActivityLogger(config);
|
|
11367
11370
|
}
|
|
11368
11371
|
const { stdout: workingStdout } = createWorkingStdio();
|
|
@@ -16572,7 +16575,7 @@ async function resolveSessionId(resumeArg, sessionIdArg, sessionFileArg) {
|
|
|
16572
16575
|
}
|
|
16573
16576
|
}
|
|
16574
16577
|
async function startInteractiveUI(config, settings, startupWarnings, workspaceRoot = process.cwd(), resumedSessionData, initializationResult) {
|
|
16575
|
-
const { startInteractiveUI: doStartUI } = await import("./interactiveCli-
|
|
16578
|
+
const { startInteractiveUI: doStartUI } = await import("./interactiveCli-D6H37PJQ.js");
|
|
16576
16579
|
await doStartUI(
|
|
16577
16580
|
config,
|
|
16578
16581
|
settings,
|
|
@@ -16781,7 +16784,7 @@ ${finalArgs[promptIndex + 1]}`;
|
|
|
16781
16784
|
await config.storage.initialize();
|
|
16782
16785
|
adminControlsListner.setConfig(config);
|
|
16783
16786
|
if (config.isInteractive() && settings.merged.general.devtools) {
|
|
16784
|
-
const { setupInitialActivityLogger } = await import("./devtoolsService-
|
|
16787
|
+
const { setupInitialActivityLogger } = await import("./devtoolsService-JBFUXTCT.js");
|
|
16785
16788
|
setupInitialActivityLogger(config);
|
|
16786
16789
|
}
|
|
16787
16790
|
registerTelemetryConfig(config);
|
|
@@ -16840,7 +16843,7 @@ ${finalArgs[promptIndex + 1]}`;
|
|
|
16840
16843
|
const initAppHandle = startupProfiler.start("initialize_app");
|
|
16841
16844
|
const initializationResult = await initializeApp(config, settings);
|
|
16842
16845
|
initAppHandle?.end();
|
|
16843
|
-
import("./liteRtServerManager-
|
|
16846
|
+
import("./liteRtServerManager-IGKUGGP4.js").then(({ LiteRtServerManager }) => {
|
|
16844
16847
|
const mergedGemma = settings.merged.experimental?.gemmaModelRouter;
|
|
16845
16848
|
if (!mergedGemma) return;
|
|
16846
16849
|
const userGemma = settings.forScope("User" /* User */).settings.experimental?.gemmaModelRouter;
|