Skip to content

Commit f4f332d

Browse files
ik-gemini-botruomengzsripasgSandyTao520gemini-cli-robot
authored
chore: resync fork to gemini-cli v0.39.0 (#4)
* refactor(plan): simplify policy priorities and consolidate read-only rules (google-gemini#24849) * feat(test-utils): add memory usage integration test harness (google-gemini#24876) * feat(memory): add /memory inbox command for reviewing extracted skills (google-gemini#24544) * chore(release): bump version to 0.39.0-nightly.20260408.e77b22e63 (google-gemini#24939) * fix(core): ensure robust sandbox cleanup in all process execution paths (google-gemini#24763) Co-authored-by: Spencer <spencertang@google.com> * chore: update ink version to 6.6.8 (google-gemini#24934) * Changelog for v0.38.0-preview.0 (google-gemini#24938) Co-authored-by: gemini-cli-robot <224641728+gemini-cli-robot@users.noreply.github.com> Co-authored-by: g-samroberts <samroberts@google.com> * chore: ignore conductor directory (google-gemini#22128) Co-authored-by: Coco Sheng <cocosheng@google.com> * Changelog for v0.37.0 (google-gemini#24940) Co-authored-by: gemini-cli-robot <224641728+gemini-cli-robot@users.noreply.github.com> Co-authored-by: Sam Roberts <158088236+g-samroberts@users.noreply.github.com> * feat(plan): require user confirmation for activate_skill in Plan Mode (google-gemini#24946) * feat(test-utils): add CPU performance integration test harness (google-gemini#24951) * fix(core): resolve windows symlink bypass and stabilize sandbox integration tests (google-gemini#24834) * test(sdk): add unit tests for GeminiCliSession (google-gemini#21897) * fix(cli): restore file path display in edit and write tool confirmations (google-gemini#24974) * fix(cli-ui): enable Ctrl+Backspace for word deletion in Windows Terminal (google-gemini#21447) * fix(core): dynamic session ID injection to resolve resume bugs (google-gemini#24972) * Update ink version to 6.6.9 (google-gemini#24980) * feat(core): refine shell tool description display logic (google-gemini#24903) * Generalize evals infra to support more types of evals, organization and queuing of named suites (google-gemini#24941) * fix(cli): optimize startup with lightweight parent process (google-gemini#24667) * refactor(sandbox): use centralized sandbox paths in macOS Seatbelt implementation (google-gemini#24984) * feat(cli): refine tool output formatting for compact mode (google-gemini#24677) * fix(sdk): skip broken sendStream tests to unblock nightly (google-gemini#25000) * refactor(core): use centralized path resolution for Linux sandbox (google-gemini#24985) * Support ctrl+shift+g (google-gemini#25035) * feat(core): refactor subagent tool to unified invoke_subagent tool (google-gemini#24489) * fix(core): add explicit git identity env vars to prevent sandbox checkpointing error (google-gemini#19775) Co-authored-by: David Pierce <davidapierce@google.com> * fix: respect hideContextPercentage when FooterConfigDialog is closed without changes (google-gemini#24773) Co-authored-by: Coco Sheng <cocosheng@google.com> * fix(cli): suppress unhandled AbortError logs during request cancellation (google-gemini#22621) * Automated documentation audit (google-gemini#24567) * feat(cli): implement useAgentStream hook (google-gemini#24292) Co-authored-by: Adam Weidman <adamfweidman@gmail.com> Co-authored-by: Adam Weidman <adamfweidman@google.com> * refactor(core): remove legacy subagent wrapping tools (google-gemini#25053) * refactor(plan) Clean default plan toml (google-gemini#25037) * fix(core): honor retryDelay in RetryInfo for 503 errors (google-gemini#25057) * fix(core): remediate subagent memory leaks using AbortSignal in MessageBus (google-gemini#25048) * feat(cli): wire up useAgentStream in AppContainer (google-gemini#24297) Co-authored-by: Adam Weidman <adamfweidman@gmail.com> Co-authored-by: Adam Weidman <adamfweidman@google.com> * feat(core): migrate chat recording to JSONL streaming (google-gemini#23749) * fix(core): clear 5-minute timeouts in oauth flow to prevent memory leaks (google-gemini#24968) * fix(sandbox): centralize async git worktree resolution and enforce read-only security (google-gemini#25040) * feat(test): add high-volume shell test and refine perf harness (google-gemini#24983) * fix(core): silently handle EPERM when listing dir structure (google-gemini#25066) * Changelog for v0.37.1 (google-gemini#25055) Co-authored-by: gemini-cli-robot <224641728+gemini-cli-robot@users.noreply.github.com> * fix: decode Uint8Array and multi-byte UTF-8 in API error messages (google-gemini#23341) Co-authored-by: Coco Sheng <cocosheng@google.com> * Automated documentation audit results (google-gemini#22755) * debugging(ui): add optional debugRainbow setting (google-gemini#25088) * fix: resolve lifecycle memory leaks by cleaning up listeners and root closures (google-gemini#25049) * docs(cli): updates f12 description to be more precise (google-gemini#15816) * fix(cli): mark /settings as unsafe to run concurrently (google-gemini#25061) * fix(core): remove buffer slice to prevent OOM on large output streams (google-gemini#25094) * feat(core): persist subagent agentId in tool call records (google-gemini#25092) * chore(core): increase codebase investigator turn limits to 50 (google-gemini#25125) * refactor(core): consolidate execute() arguments into ExecuteOptions (google-gemini#25101) * feat(core): add Strategic Re-evaluation guidance to system prompt (google-gemini#25062) * fix(core): preserve shell execution config fields on update (google-gemini#25113) * docs: add vi shortcuts and clarify MCP sandbox setup (google-gemini#21679) Co-authored-by: Jenna Inouye <jinouye@google.com> * fix(cli): pass session id to interactive shell executions (google-gemini#25114) * fix(cli): resolve text sanitization data loss due to C1 control characters (google-gemini#22624) * feat(core): add large memory regression test (google-gemini#25059) * fix(core): resolve PTY exhaustion and orphan MCP subprocess leaks (google-gemini#25079) * chore: switch from keytar to @github/keytar (google-gemini#25143) * chore(deps): update vulnerable dependencies via npm audit fix (google-gemini#25140) * perf(sandbox): optimize Windows sandbox initialization via native ACL application (google-gemini#25077) * fix: improve audio MIME normalization and validation in file reads (google-gemini#21636) Co-authored-by: Coco Sheng <cocosheng@google.com> * docs: Update docs-audit to include changes in PR body (google-gemini#25153) * docs: correct documentation for enforced authentication type (google-gemini#25142) * fix(cli): exclude update_topic from confirmation queue count (google-gemini#24945) * Memory fix for trace's streamWrapper. (google-gemini#25089) * fix(core): fix quota footer for non-auto models and improve display (google-gemini#25121) * docs(contributing): clarify self-assignment policy for issues (google-gemini#23087) * feat(core): add skill patching support with /memory inbox integration (google-gemini#25148) * Stop suppressing thoughts and text in model response (google-gemini#25073) * fix(release): prefix git hash in nightly versions to prevent semver normalization (google-gemini#25304) * feat(cli): extract QuotaContext and resolve infinite render loop (google-gemini#24959) * refactor(core): extract and centralize sandbox path utilities (google-gemini#25305) Co-authored-by: David Pierce <davidapierce@google.com> * feat(ui): added enhancements to scroll momentum (google-gemini#24447) * fix(core): replace custom binary detection with isbinaryfile to correctly handle UTF-8 (U+FFFD) (google-gemini#25297) * feat(agent): implement tool-controlled display protocol (Steps 2-3) (google-gemini#25134) * Stop showing scrollbar unless we are in terminalBuffer mode (google-gemini#25320) * fix(core): expose GEMINI_PLANS_DIR to hook environment (google-gemini#25296) Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * feat: support auth block in MCP servers config in agents (google-gemini#24770) * feat(core): implement silent fallback for Plan Mode model routing (google-gemini#25317) * fix: correct redirect count increment in fetchJson (google-gemini#24896) Co-authored-by: Tommaso Sciortino <sciortino@gmail.com> * fix(core): prevent secondary crash in ModelRouterService finally block (google-gemini#25333) * feat(core): introduce decoupled ContextManager and Sidecar architecture (google-gemini#24752) * docs(core): update generalist agent documentation (google-gemini#25325) * chore(mcp): check MCP error code over brittle string match (google-gemini#25381) * test(core): improve sandbox integration test coverage and fix OS-specific failures (google-gemini#25307) Co-authored-by: David Pierce <davidapierce@google.com> * feat(plan): update plan mode prompt to allow showing plan content (google-gemini#25058) * fix(core): use debug level for keychain fallback logging (google-gemini#25398) * feat(test): add a performance test in asian language (google-gemini#25392) * feat(cli): enable mouse clicking for cursor positioning in AskUser multi-line answers (google-gemini#24630) * fix(core): detect kmscon terminal as supporting true color (google-gemini#25282) Co-authored-by: Adib234 <30782825+Adib234@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * ci: add agent session drift check workflow (google-gemini#25389) * use macos-latest-large runner where applicable. (google-gemini#25413) * Changelog for v0.37.2 (google-gemini#25336) Co-authored-by: gemini-cli-robot <224641728+gemini-cli-robot@users.noreply.github.com> * chore(release): v0.39.0-preview.0 * fix(patch): cherry-pick a4e98c0 to release/v0.39.0-preview.0-pr-25138 to patch version v0.39.0-preview.0 and create version 0.39.0-preview.1 (google-gemini#25766) Co-authored-by: Mahima Shanware <mahima.shanware@gmail.com> * chore(release): v0.39.0-preview.1 * fix(patch): cherry-pick d6f88f8 to release/v0.39.0-preview.1-pr-25670 to patch version v0.39.0-preview.1 and create version 0.39.0-preview.2 (google-gemini#25776) Co-authored-by: Adam Weidman <65992621+adamfweidman@users.noreply.github.com> * chore(release): v0.39.0-preview.2 * chore(release): v0.39.0 --------- Co-authored-by: ruomeng <ruomeng@google.com> Co-authored-by: Sri Pasumarthi <111310667+sripasg@users.noreply.github.com> Co-authored-by: Sandy Tao <sandytao520@icloud.com> Co-authored-by: gemini-cli-robot <gemini-cli-robot@google.com> Co-authored-by: Emily Hedlund <ehedlund@google.com> Co-authored-by: Spencer <spencertang@google.com> Co-authored-by: Jacob Richman <jacob314@gmail.com> Co-authored-by: gemini-cli-robot <224641728+gemini-cli-robot@users.noreply.github.com> Co-authored-by: g-samroberts <samroberts@google.com> Co-authored-by: JAYADITYA <96861162+JayadityaGit@users.noreply.github.com> Co-authored-by: Coco Sheng <cocosheng@google.com> Co-authored-by: Sam Roberts <158088236+g-samroberts@users.noreply.github.com> Co-authored-by: Adamya Singh <adamyasingh54@gmail.com> Co-authored-by: Jarrod Whelan <150866123+jwhelangoog@users.noreply.github.com> Co-authored-by: dogukanozen <dogukannozen@hotmail.com> Co-authored-by: Tommaso Sciortino <sciortino@gmail.com> Co-authored-by: Christian Gunderman <gundermanc@google.com> Co-authored-by: Sehoon Shon <sshon@google.com> Co-authored-by: Abhi <43648792+abhipatel12@users.noreply.github.com> Co-authored-by: MD. MOHIBUR RAHMAN <35300157+mrpmohiburrahman@users.noreply.github.com> Co-authored-by: David Pierce <davidapierce@google.com> Co-authored-by: chernistry <73943355+chernistry@users.noreply.github.com> Co-authored-by: euxaristia <25621994+euxaristia@users.noreply.github.com> Co-authored-by: Michael Bleigh <mbleigh@mbleigh.com> Co-authored-by: Adam Weidman <adamfweidman@gmail.com> Co-authored-by: Adam Weidman <adamfweidman@google.com> Co-authored-by: Yuna Seol <yunaseol@gmail.com> Co-authored-by: June <kimjune01@gmail.com> Co-authored-by: Aishanee Shah <aishaneeshah@google.com> Co-authored-by: Jason Matthew Suhari <jasonmatthewsuhari@gmail.com> Co-authored-by: Christopher Thomas <cobekgn@gmail.com> Co-authored-by: Jenna Inouye <jinouye@google.com> Co-authored-by: cynthialong0-0 <82900738+cynthialong0-0@users.noreply.github.com> Co-authored-by: M Junaid Shaukat <154750865+junaiddshaukat@users.noreply.github.com> Co-authored-by: Abhijit Balaji <abhijitbalaji@google.com> Co-authored-by: Mark Griffith <anthraxmilkshake@hotmail.com> Co-authored-by: Jack Wotherspoon <jackwoth@google.com> Co-authored-by: Jesse Rosenstock <jesse.rosenstock@gmail.com> Co-authored-by: Adib234 <30782825+Adib234@users.noreply.github.com> Co-authored-by: Dev Randalpura <devrandalpura@google.com> Co-authored-by: Anjaligarhwal <anjaligarhwal1610@gmail.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: Tanmay Vartak <9002434+TanmayVartak@users.noreply.github.com> Co-authored-by: Jerop Kipruto <jerop@google.com> Co-authored-by: Kevin Zhao <kevin8093@126.com> Co-authored-by: joshualitt <joshualitt@google.com> Co-authored-by: Clay <claygeo6@gmail.com> Co-authored-by: Adam Weidman <65992621+adamfweidman@users.noreply.github.com> Co-authored-by: Mahima Shanware <mahima.shanware@gmail.com> Co-authored-by: codex-bot <spigelly+gh-bot@gmail.com>
1 parent 17c101d commit f4f332d

511 files changed

Lines changed: 859967 additions & 7501 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 118 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,118 @@
1+
---
2+
name: gemini-cli-fork-resyncer
3+
description: >-
4+
Updates this fork to a newly released upstream gemini-cli version while
5+
preserving fork-specific patches, versioning, and validation gates.
6+
---
7+
8+
# Procedure: Resync Fork to New Upstream Release
9+
10+
## Objective
11+
12+
Upgrade this fork to a target upstream release tag (for example `v0.40.0`) and
13+
carry forward fork-specific behavior safely and repeatably.
14+
15+
## Inputs
16+
17+
- `target_tag`: Upstream release tag to sync to (required), for example
18+
`v0.39.0`.
19+
- `fork_version_suffix`: Fork version strategy (required), for example
20+
`spigell.YYYYMMDD.<shortsha>`.
21+
- `fork_patch_source`: Where fork-only patches come from (required):
22+
`existing-fork-commits` or `patch-branch`.
23+
- `validation_level` (optional): `targeted` or `full`.
24+
25+
## Required Safety Rules
26+
27+
- Use `git-mcp` for all git operations.
28+
- Always run git with full path: `git -C /project/my-shared-infra/my-gemini-cli ...`
29+
- Do not rewrite remotes.
30+
- Do not use destructive git commands unless explicitly requested.
31+
- Preserve unrelated existing work; do not revert user changes.
32+
33+
## Step 1: Baseline and Branch Setup
34+
35+
1. Verify working tree and branch state.
36+
2. Fetch upstream tag.
37+
3. Create a branch named:
38+
`spigell/chore/update-to-<target_tag_without_v>`
39+
4. Confirm the tag exists locally and points to the expected upstream commit.
40+
41+
## Step 2: Isolate Fork-Only Delta
42+
43+
1. Compute fork-only diff against the previous synced upstream baseline.
44+
2. Split fork delta into:
45+
- Functional patches (code behavior).
46+
- Release/version metadata updates.
47+
- Temporary or accidental files (must not be carried).
48+
3. Build a replay list with commit SHAs or file-scoped patch groups.
49+
50+
## Step 3: Replay Patches onto Target Release
51+
52+
1. Start from the target upstream tag.
53+
2. Replay only functional fork patches first.
54+
3. Resolve conflicts with this policy:
55+
- Prefer upstream for broad refactors and generated files.
56+
- Re-apply fork intent at behavior level, not raw hunk copying.
57+
- Keep conflict resolution minimal and auditable.
58+
4. Ensure no temporary artifacts are introduced (for example `.COMMIT_MSG.txt`).
59+
60+
## Step 4: Normalize Fork Versioning
61+
62+
1. Set versions in root and workspace `package.json` files to:
63+
`X.Y.Z-<fork_version_suffix>`.
64+
2. Update `sandboxImageUri` tags to the same fork version in root and CLI
65+
package config where present.
66+
3. Regenerate lockfile with `npm install --ignore-scripts` if prepare/bundle
67+
scripts are unstable during merge state.
68+
4. Stage all resolved manifest and lockfile changes.
69+
70+
## Step 5: Validate
71+
72+
Minimum validation:
73+
74+
- `npm run build`
75+
- Targeted tests for fork-modified logic (for example fallback and MCP retry
76+
paths).
77+
78+
If `validation_level=full`:
79+
80+
- `npm run test`
81+
- Optional `npm run preflight` at the end only when needed.
82+
83+
When failures occur:
84+
85+
1. Fix only regressions introduced by replay/conflict resolution.
86+
2. Re-run the smallest failing scope first.
87+
3. Re-run full requested validation after targeted fixes pass.
88+
89+
## Step 6: Finalize Merge/Commits
90+
91+
1. Confirm no unresolved conflicts remain.
92+
2. Create clean commit(s):
93+
- Commit A: functional replay/conflict resolutions.
94+
- Commit B: fork version/lockfile metadata.
95+
3. Commit message format:
96+
- Line 1: concise summary.
97+
- Line 2: blank.
98+
- Line 3: why this update was needed and what it preserves.
99+
100+
## Step 7: Push and PR
101+
102+
1. Push branch to origin.
103+
2. Open/update PR with:
104+
- Target upstream tag.
105+
- Fork patches carried forward.
106+
- Validation commands run and results.
107+
- Known residual risks, if any.
108+
3. If requested, request developer review.
109+
110+
## Output Contract
111+
112+
Always report:
113+
114+
- Target tag synced.
115+
- Fork patch set applied (list of commits or behavioral groups).
116+
- Files materially changed by fork logic.
117+
- Validation status with pass/fail and key errors.
118+
- Final branch name and push status.

.gemini/settings.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"experimental": {
33
"extensionReloading": true,
44
"modelSteering": true,
5-
"memoryManager": false,
5+
"memoryManager": true,
66
"topicUpdateNarration": true
77
},
88
"general": {

.gemini/skills/docs-changelog/SKILL.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -162,5 +162,7 @@ instructions for the other section.
162162

163163
## Finalize
164164

165-
- After making changes, run `npm run format` ONLY to ensure consistency.
165+
- After making changes, if `npm run format` fails, it may be necessary to run
166+
`npm install` first to ensure all formatting dependencies are available.
167+
Then, run `npm run format` to ensure consistency.
166168
- Delete any temporary files created during the process.

.gemini/skills/docs-writer/SKILL.md

Lines changed: 18 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
name: docs-writer
33
description:
4-
Always use this skill when the task involves writing, reviewing, or editing
4+
Always use this skill when the task involves writing, reviewing, or editing
55
files in the `/docs` directory or any `.md` files in the repository.
66
---
77

@@ -24,7 +24,7 @@ approach.
2424

2525
- **Perspective and tense:** Address the reader as "you." Use active voice and
2626
present tense (e.g., "The API returns...").
27-
- **Tone:** Professional, friendly, and direct.
27+
- **Tone:** Professional, friendly, and direct.
2828
- **Clarity:** Use simple vocabulary. Avoid jargon, slang, and marketing hype.
2929
- **Global Audience:** Write in standard US English. Avoid idioms and cultural
3030
references.
@@ -47,8 +47,8 @@ Write precisely to ensure your instructions are unambiguous.
4747
"foo" or "bar."
4848
- **Quota and limit terminology:** For any content involving resource capacity
4949
or using the word "quota" or "limit", strictly adhere to the guidelines in
50-
the `quota-limit-style-guide.md` resource file. Generally, Use "quota" for the
51-
administrative bucket and "limit" for the numerical ceiling.
50+
the `quota-limit-style-guide.md` resource file. Generally, Use "quota" for
51+
the administrative bucket and "limit" for the numerical ceiling.
5252

5353
### Formatting and syntax
5454
Apply consistent formatting to make documentation visually organized and
@@ -120,7 +120,7 @@ accessible.
120120
> This is an experimental feature currently under active development.
121121
122122
- **Headings:** Use hierarchical headings to support the user journey.
123-
- **Procedures:**
123+
- **Procedures:**
124124
- Introduce lists of steps with a complete sentence.
125125
- Start each step with an imperative verb.
126126
- Number sequential steps; use bullets for non-sequential lists.
@@ -134,7 +134,7 @@ accessible.
134134

135135
## Phase 2: Preparation
136136
Before modifying any documentation, thoroughly investigate the request and the
137-
surrounding context.
137+
surrounding context.
138138

139139
1. **Clarify:** Understand the core request. Differentiate between writing new
140140
content and editing existing content. If the request is ambiguous (e.g.,
@@ -145,6 +145,8 @@ surrounding context.
145145
4. **Connect:** Identify all referencing pages if changing behavior. Check if
146146
`docs/sidebar.json` needs updates.
147147
5. **Plan:** Create a step-by-step plan before making changes.
148+
6. **Audit Docset:** If asked to audit the documentation, follow the procedural
149+
guide in [docs-auditing.md](./references/docs-auditing.md).
148150

149151
## Phase 3: Execution
150152
Implement your plan by either updating existing files or creating new ones
@@ -157,7 +159,7 @@ documentation.
157159

158160
- **Gaps:** Identify areas where the documentation is incomplete or no longer
159161
reflects existing code.
160-
- **Structure:** Apply "Structure (New Docs)" rules (BLUF, headings, etc.) when
162+
- **Structure:** Apply "Structure (New Docs)" rules (BLUF, headings, etc.) when
161163
adding new sections to existing pages.
162164
- **Headers**: If you change a header, you must check for links that lead to
163165
that header and update them.
@@ -168,15 +170,16 @@ documentation.
168170
documents.
169171

170172
## Phase 4: Verification and finalization
171-
Perform a final quality check to ensure that all changes are correctly formatted
172-
and that all links are functional.
173+
Perform a final quality check to ensure that all changes are correctly
174+
formatted and that all links are functional.
173175

174176
1. **Accuracy:** Ensure content accurately reflects the implementation and
175177
technical behavior.
176178
2. **Self-review:** Re-read changes for formatting, correctness, and flow.
177-
3. **Link check:** Verify all new and existing links leading to or from modified
178-
pages. If you changed a header, ensure that any links that lead to it are
179-
updated.
180-
4. **Format:** Once all changes are complete, ask to execute `npm run format`
181-
to ensure consistent formatting across the project. If the user confirms,
182-
execute the command.
179+
3. **Link check:** Verify all new and existing links leading to or from
180+
modified pages. If you changed a header, ensure that any links that lead to
181+
it are updated.
182+
4. **Format:** If `npm run format` fails, it may be necessary to run `npm
183+
install` first to ensure all formatting dependencies are available. Once all
184+
changes are complete, ask to execute `npm run format` to ensure consistent
185+
formatting across the project. If the user confirms, execute the command.

0 commit comments

Comments
 (0)