@trukhinyuri/gemini-pp 0.27.7 → 0.27.8
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/README.md +16 -19
- package/bundle/docs/cli/settings.md +11 -10
- package/bundle/docs/get-started/configuration.md +7 -0
- package/bundle/docs/hooks/reference.md +2 -0
- package/bundle/gemini.js +10655 -7014
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,29 +1,26 @@
|
|
|
1
|
-
# Gemini
|
|
1
|
+
# Gemini++
|
|
2
2
|
|
|
3
|
-
[](https://github.com/google-gemini/gemini-cli/actions/workflows/ci.yml)
|
|
4
|
-
[](https://github.com/google-gemini/gemini-cli/actions/workflows/chained_e2e.yml)
|
|
5
|
-
[](https://www.npmjs.com/package/@google/gemini-cli)
|
|
6
3
|
[](https://github.com/google-gemini/gemini-cli/blob/main/LICENSE)
|
|
7
|
-
[](https://www.npmjs.com/package/@trukhinyuri/gemini-pp)
|
|
8
5
|
|
|
9
|
-

|
|
10
7
|
|
|
11
8
|
> ** This is an optimized fork of
|
|
12
9
|
> [Google's Gemini CLI](https://github.com/google-gemini/gemini-cli)**
|
|
13
10
|
>
|
|
14
11
|
> **Patches by: Yuri Trukhin <yuri@trukhin.com>**
|
|
15
12
|
|
|
16
|
-
Gemini
|
|
13
|
+
Gemini++ is an open-source AI agent that brings the power of Gemini directly
|
|
17
14
|
into your terminal. It provides lightweight access to Gemini, giving you the
|
|
18
15
|
most direct path from your prompt to our model.
|
|
19
16
|
|
|
20
|
-
Learn all about Gemini
|
|
17
|
+
Learn all about Gemini++ in our [documentation](https://geminicli.com/docs/).
|
|
21
18
|
|
|
22
19
|
---
|
|
23
20
|
|
|
24
21
|
## What's Different in This Fork?
|
|
25
22
|
|
|
26
|
-
This fork removes artificial limitations and optimizes Gemini
|
|
23
|
+
This fork removes artificial limitations and optimizes Gemini++ for **maximum
|
|
27
24
|
quality reasoning** instead of token economy. If you want the smartest possible
|
|
28
25
|
responses and don't mind using more tokens, this fork is for you.
|
|
29
26
|
|
|
@@ -76,7 +73,7 @@ node packages/cli/dist/index.js
|
|
|
76
73
|
|
|
77
74
|
---
|
|
78
75
|
|
|
79
|
-
## 🚀 Why Gemini
|
|
76
|
+
## 🚀 Why Gemini++?
|
|
80
77
|
|
|
81
78
|
- **🎯 Free tier**: 60 requests/min and 1,000 requests/day with personal Google
|
|
82
79
|
account.
|
|
@@ -171,8 +168,8 @@ npm install -g @google/gemini-cli@nightly
|
|
|
171
168
|
|
|
172
169
|
### GitHub Integration
|
|
173
170
|
|
|
174
|
-
Integrate Gemini
|
|
175
|
-
[**Gemini
|
|
171
|
+
Integrate Gemini++ directly into your GitHub workflows with
|
|
172
|
+
[**Gemini++ GitHub Action**](https://github.com/google-github-actions/run-gemini-cli):
|
|
176
173
|
|
|
177
174
|
- **Pull Request Reviews**: Automated code review with contextual feedback and
|
|
178
175
|
suggestions
|
|
@@ -201,7 +198,7 @@ for details)
|
|
|
201
198
|
- **No API key management** - just sign in with your Google account
|
|
202
199
|
- **Automatic updates** to latest models
|
|
203
200
|
|
|
204
|
-
#### Start Gemini
|
|
201
|
+
#### Start Gemini++, then choose _Login with Google_ and follow the browser authentication flow when prompted
|
|
205
202
|
|
|
206
203
|
```bash
|
|
207
204
|
gemini
|
|
@@ -334,7 +331,7 @@ gemini
|
|
|
334
331
|
- [**Custom Commands**](./docs/cli/custom-commands.md) - Create your own
|
|
335
332
|
reusable commands.
|
|
336
333
|
- [**Context Files (GEMINI.md)**](./docs/cli/gemini-md.md) - Provide persistent
|
|
337
|
-
context to Gemini
|
|
334
|
+
context to Gemini++.
|
|
338
335
|
- [**Checkpointing**](./docs/cli/checkpointing.md) - Save and resume
|
|
339
336
|
conversations.
|
|
340
337
|
- [**Token Caching**](./docs/cli/token-caching.md) - Optimize token usage.
|
|
@@ -352,9 +349,9 @@ gemini
|
|
|
352
349
|
|
|
353
350
|
### Advanced Topics
|
|
354
351
|
|
|
355
|
-
- [**Headless Mode (Scripting)**](./docs/cli/headless.md) - Use Gemini
|
|
352
|
+
- [**Headless Mode (Scripting)**](./docs/cli/headless.md) - Use Gemini++ in
|
|
356
353
|
automated workflows.
|
|
357
|
-
- [**Architecture Overview**](./docs/architecture.md) - How Gemini
|
|
354
|
+
- [**Architecture Overview**](./docs/architecture.md) - How Gemini++ works.
|
|
358
355
|
- [**IDE Integration**](./docs/ide-integration/index.md) - VS Code companion.
|
|
359
356
|
- [**Sandboxing & Security**](./docs/cli/sandbox.md) - Safe execution
|
|
360
357
|
environments.
|
|
@@ -376,7 +373,7 @@ gemini
|
|
|
376
373
|
|
|
377
374
|
### Using MCP Servers
|
|
378
375
|
|
|
379
|
-
Configure MCP servers in `~/.gemini/settings.json` to extend Gemini
|
|
376
|
+
Configure MCP servers in `~/.gemini/settings.json` to extend Gemini++ with
|
|
380
377
|
custom tools:
|
|
381
378
|
|
|
382
379
|
```text
|
|
@@ -390,7 +387,7 @@ instructions.
|
|
|
390
387
|
|
|
391
388
|
## 🤝 Contributing
|
|
392
389
|
|
|
393
|
-
We welcome contributions! Gemini
|
|
390
|
+
We welcome contributions! Gemini++ is fully open source (Apache 2.0), and we
|
|
394
391
|
encourage the community to:
|
|
395
392
|
|
|
396
393
|
- Report bugs and suggest features.
|
|
@@ -428,5 +425,5 @@ See the [Uninstall Guide](docs/cli/uninstall.md) for removal instructions.
|
|
|
428
425
|
---
|
|
429
426
|
|
|
430
427
|
<p align="center">
|
|
431
|
-
Built with ❤️ by Google and the open source community
|
|
428
|
+
Built with ❤️ by Google, Yuri Trukhin and the open source community
|
|
432
429
|
</p>
|
|
@@ -90,16 +90,17 @@ they appear in the UI.
|
|
|
90
90
|
|
|
91
91
|
### Tools
|
|
92
92
|
|
|
93
|
-
| UI Label | Setting | Description
|
|
94
|
-
| -------------------------------- | ------------------------------------ |
|
|
95
|
-
| Enable Interactive Shell | `tools.shell.enableInteractiveShell` | Use node-pty for an interactive shell experience. Fallback to child_process still applies.
|
|
96
|
-
| Show Color | `tools.shell.showColor` | Show color in shell output.
|
|
97
|
-
| Auto Accept | `tools.autoAccept` | Automatically accept and execute tool calls that are considered safe (e.g., read-only operations).
|
|
98
|
-
|
|
|
99
|
-
|
|
|
100
|
-
| Tool Output Truncation
|
|
101
|
-
| Tool Output Truncation
|
|
102
|
-
|
|
|
93
|
+
| UI Label | Setting | Description | Default |
|
|
94
|
+
| -------------------------------- | ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------- |
|
|
95
|
+
| Enable Interactive Shell | `tools.shell.enableInteractiveShell` | Use node-pty for an interactive shell experience. Fallback to child_process still applies. | `true` |
|
|
96
|
+
| Show Color | `tools.shell.showColor` | Show color in shell output. | `false` |
|
|
97
|
+
| Auto Accept | `tools.autoAccept` | Automatically accept and execute tool calls that are considered safe (e.g., read-only operations). | `false` |
|
|
98
|
+
| Approval Mode | `tools.approvalMode` | The default approval mode for tool execution. 'default' prompts for approval, 'auto_edit' auto-approves edit tools, and 'plan' is read-only mode. 'yolo' is not supported yet. | `"default"` |
|
|
99
|
+
| Use Ripgrep | `tools.useRipgrep` | Use ripgrep for file content search instead of the fallback implementation. Provides faster search performance. | `true` |
|
|
100
|
+
| Enable Tool Output Truncation | `tools.enableToolOutputTruncation` | Enable truncation of large tool outputs. | `true` |
|
|
101
|
+
| Tool Output Truncation Threshold | `tools.truncateToolOutputThreshold` | Truncate tool output if it is larger than this many characters. Set to -1 to disable. | `4000000` |
|
|
102
|
+
| Tool Output Truncation Lines | `tools.truncateToolOutputLines` | The number of lines to keep when truncating tool output. | `1000` |
|
|
103
|
+
| Disable LLM Correction | `tools.disableLLMCorrection` | Disable LLM-based error correction for edit tools. When enabled, tools will fail immediately if exact string matches are not found, instead of attempting to self-correct. | `true` |
|
|
103
104
|
|
|
104
105
|
### Security
|
|
105
106
|
|
|
@@ -650,6 +650,13 @@ their corresponding top-level category object in your `settings.json` file.
|
|
|
650
650
|
considered safe (e.g., read-only operations).
|
|
651
651
|
- **Default:** `false`
|
|
652
652
|
|
|
653
|
+
- **`tools.approvalMode`** (enum):
|
|
654
|
+
- **Description:** The default approval mode for tool execution. 'default'
|
|
655
|
+
prompts for approval, 'auto_edit' auto-approves edit tools, and 'plan' is
|
|
656
|
+
read-only mode. 'yolo' is not supported yet.
|
|
657
|
+
- **Default:** `"default"`
|
|
658
|
+
- **Values:** `"default"`, `"auto_edit"`, `"plan"`
|
|
659
|
+
|
|
653
660
|
- **`tools.core`** (array):
|
|
654
661
|
- **Description:** Restrict the set of built-in tools with an allowlist. Match
|
|
655
662
|
semantics mirror tools.allowed; see the built-in tools documentation for
|
|
@@ -142,6 +142,8 @@ case is response validation and automatic retries.
|
|
|
142
142
|
- `reason`: Required if denied. This text is sent **to the agent as a new
|
|
143
143
|
prompt** to request a correction.
|
|
144
144
|
- `continue`: Set to `false` to **stop the session** without retrying.
|
|
145
|
+
- `clearContext`: If `true`, clears conversation history (LLM memory) while
|
|
146
|
+
preserving UI display.
|
|
145
147
|
- **Exit Code 2 (Retry)**: Rejects the response and triggers an automatic retry
|
|
146
148
|
turn using `stderr` as the feedback prompt.
|
|
147
149
|
|