29 Commits

Author SHA1 Message Date
matt korwel
57601adc90 feat(routing): A/B Test Numerical Complexity Scoring for Gemini 3 (#16041)
Co-authored-by: N. Taylor Mullen <ntaylormullen@google.com>
2026-01-22 22:12:07 +00:00
Christian Gunderman
8030404b08 Behavioral evals framework. (#16047) 2026-01-14 04:49:17 +00:00
N. Taylor Mullen
8bc3cfe29a feat(skills): add pr-creator skill and enable skills (#16232) 2026-01-09 17:25:14 +00:00
N. Taylor Mullen
030847a80a feat(cli): export chat history in /bug and prefill GitHub issue (#16115) 2026-01-08 11:43:55 +00:00
Sandy Tao
70696e364b fix(ui): show command suggestions even on perfect match and sort them (#15287) 2025-12-19 00:05:36 +00:00
Jacob Richman
8b93a5f27d I think the package lock was added in error to .gitignore. (#12405) 2025-10-31 20:29:42 +00:00
Pavel Jbanov
cb208f53d8 Added a a script to setup and run genkit telemetry and dev ui (#12120) 2025-10-28 03:37:43 +00:00
cornmander
31f58a1f04 Fix Windows ripgrep detection (#11492) 2025-10-20 23:17:44 +00:00
Keith Lyons
22a560a990 feat(dev): add pre-commit hook for formatting and linting (#8380)
Co-authored-by: Jacob Richman <jacob314@gmail.com>
2025-09-20 02:07:26 +00:00
joshualitt
7681c595b5 Revert "feat(third_party) Port get-ripgrep." (#8923) 2025-09-19 18:08:41 +00:00
joshualitt
6e4236bf76 feat(third_party) Port get-ripgrep. (#8514) 2025-09-19 15:13:28 +00:00
matt korwel
bfa4140593 more patching (#8787) 2025-09-18 18:22:54 -07:00
Allen Hutchison
ef9469a417 feat(commands): Add new commands for docs, git, and PR review (#7853) 2025-09-09 12:09:42 +00:00
Jerop Kipruto
1049d38845 feat: update .gitignore in /setup-github (#6591) 2025-08-20 01:53:53 +00:00
owenofbrien
dd55a82a28 Log CLI version and git commit hash (v2) (#6176) 2025-08-14 10:12:26 +00:00
Shreya Keshive
e4ed1aabac Include companion VS Code extension VSIX as part of build/release (#4254) 2025-07-16 19:06:39 +00:00
Jayson Dasher
c9e194ec6a feat: Add clipboard image paste support for macOS (#1580)
Co-authored-by: Jacob Richman <jacob314@gmail.com>
Co-authored-by: Scott Densmore <scottdensmore@mac.com>
2025-07-12 04:06:49 +00:00
matt korwel
df938d6ee8 Preflight and integration npx (#1096) 2025-06-16 15:27:29 +00:00
cperry-goog
18d6a11c04 refactor: rename gemini-code to gemini-cli (#822) 2025-06-07 14:27:22 -07:00
Eddie Santos
368e9ab4d8 Add Gemini code review agent to repo (#782) 2025-06-05 21:37:06 -07:00
DeWitt Clinton
27a773d5b2 Display git commit info in the /about section. (#567)
This change detects the most recent git commit short hash and writes it to the `GIT_COMMIT_INFO` constant in `packages/cli/src/generated/git-commit.sh`, optionally appending the string "(local modifications)" if additional local changes after that commit are detected.

If set, this string is displayed in the `/about` dialog as well as passed into the `/bug` template.

Example:

```
> /about

╭───────────────────────────────────────────────────────────────────────────╮
│                                                                           │
│ About Gemini CLI                                                          │
│                                                                           │
│ CLI Version               development                                     │
│ Git Commit                43370ab (local modifications)                   │
│ Model                     gemini-2.5-pro-preview-05-06                    │
│ Sandbox                   sandbox-exec (minimal)                          │
│ OS                        darwin v23.11.0                                 │
│                                                                           │
╰───────────────────────────────────────────────────────────────────────────╯
```

Additionally, this change updates `.gitignore` to ignore the generated files, `scripts/clean.sh` to remove them, and adds a `npm run generate` stage for this and any other generators we need to write.
2025-05-28 00:04:26 -07:00
Allen Hutchison
efee7c6cce Feat: Add test coverage scripts and ignore reports (#477) 2025-05-21 17:03:22 -07:00
Seth Troisi
cd13c5881b Add Logger for command history (#435) 2025-05-21 00:36:22 -07:00
N. Taylor Mullen
7d818b46bc feat: Enable CI test reporting and artifact management (#367) 2025-05-15 22:59:53 -07:00
Taylor Mullen
41b82ce796 Add bundling support.
- This can now be invoked with `npm run bundle`, it creates a `bundle/` folder that has:
  - gemini.js
  - sandbox-macos-minimal.sb
  - sandbox-macos-strict.sb
  - shell.json
  - shell.md

- This doesn't include any sort of automation for auto bundling pieces. It's just the root capability which we can weave into other locations.

Fixes https://b.corp.google.com/issues/411432723
2025-05-08 23:36:42 -07:00
Brandon Keiji
ed0b90644a fix: build image with --no-cache (#275) 2025-05-07 08:18:04 -07:00
Brandon Keiji
4ce897d19d fix: add .env~ to .gitignore (#178) 2025-04-25 21:24:14 +00:00
Allen Hutchison
ce1c83da89 Quick fix gitignore (#49)
* Command line flags got broke. Now to run with flags run:
npm run start -- -m model-id -d data/dir

* Add *.tsbuildinfo to git ignore.
2025-04-19 07:01:54 -07:00
Taylor Mullen
add233c504 Initial commit of Gemini Code CLI
This commit introduces the initial codebase for the Gemini Code CLI, a command-line interface designed to facilitate interaction with the Gemini API for software engineering tasks.

The code was migrated from a previous git repository as a single squashed commit.

Core Features & Components:

*   **Gemini Integration:** Leverages the `@google/genai` SDK to interact with the Gemini models, supporting chat history, streaming responses, and function calling (tools).
*   **Terminal UI:** Built with Ink (React for CLIs) providing an interactive chat interface within the terminal, including input prompts, message display, loading indicators, and tool interaction elements.
*   **Tooling Framework:** Implements a robust tool system allowing Gemini to interact with the local environment. Includes tools for:
    *   File system listing (`ls`)
    *   File reading (`read-file`)
    *   Content searching (`grep`)
    *   File globbing (`glob`)
    *   File editing (`edit`)
    *   File writing (`write-file`)
    *   Executing bash commands (`terminal`)
*   **State Management:** Handles the streaming state of Gemini responses and manages the conversation history.
*   **Configuration:** Parses command-line arguments (`yargs`) and loads environment variables (`dotenv`) for setup.
*   **Project Structure:** Organized into `core`, `ui`, `tools`, `config`, and `utils` directories using TypeScript. Includes basic build (`tsc`) and start scripts.

This initial version establishes the foundation for a powerful CLI tool enabling developers to use Gemini for coding assistance directly in their terminal environment.

---
Created by yours truly: __Gemini Code__
2025-04-17 13:19:55 -04:00