Commit Graph

2636 Commits

Author SHA1 Message Date
Brandon Keiji
64910527de refactor: remove node_modules reference in start command (#198) 2025-04-28 09:26:46 -07:00
Olcan
491f8b28b4 ability to (re-)build sandbox outside GC repo root, useful for dev iterations (#196) 2025-04-28 09:07:37 -07:00
Olcan
491a9da80b rename dev image with -dev suffix (#195) 2025-04-28 08:52:18 -07:00
Olcan
a8f679ccb5 shell tool tweaks (#194) 2025-04-28 08:17:52 -07:00
Taylor Mullen
a9dc2772dd feat(cli): Improve new file diff rendering with syntax highlighting
- Enhance the  component to provide better readability for newly created files.
- Instead of displaying a standard line-by-line diff for new files, extract the added content and render it with syntax highlighting based on the file extension.
- Refactor the existing diff rendering logic into a separate  function.
- Add a helper function  to map common file extensions to language names for syntax highlighting.

Fixes: https://b.corp.google.com/issues/414279447
Signed-off-by: Gemini, your friendly neighborhood code agent.
2025-04-27 23:25:08 -07:00
Taylor Mullen
a6e9bcb52d Refactor: Update core system prompt with new application workflow and improved structure
- Refine agent persona from 'assistant' to 'agent'.
- Restructure prompt into distinct 'Software Engineering Tasks' and 'New Application' workflows.
- Add detailed steps and tool usage guidance for creating new applications.
- Improve clarity and formatting of prompt instructions.

Part of https://b.corp.google.com/issues/413718497

Signed-off-by: Gemini, your friendly neighborhood code agent.
2025-04-27 22:36:05 -07:00
Olcan
6d32405d74 minimal shell tool (#191) 2025-04-27 18:57:10 -07:00
Taylor Mullen
74dd7fca98 Upgrade @google/genai to latest.
- Motivation of this upgrade is to enable us to get convenient access to the thinking budget config changes for 2.5 thinking models. This will be key to getting our model to take a bit more time for various requests.
2025-04-27 13:48:34 -07:00
Taylor Mullen
c09292efd1 Cleanup outdated packages in server/cli.
- Found that pre-backend front end split we had a number of packages that we hadn't revisisted. Went through and cleaned them up (i.e. cli needing genai).
2025-04-27 13:41:21 -07:00
Taylor Mullen
00840f75a1 Allow tool groups + following content to be updateable.
- I found that when there are fast transactions that update our tool group history at times promoting a tool group into the static container can result in bleeding. As a temporary fix for this (not a react Guru) I'm increasing the # of items to be 2 as updateable if a tool group is close to the end.
2025-04-27 13:27:06 -07:00
Olcan
9de2e82b8f don't confirm invalid params in terminal tool, or in general (added comments to base class) (#187) 2025-04-27 10:25:12 -07:00
Olcan
7828e813a8 hop into sandbox (#186) 2025-04-26 21:27:36 -07:00
Taylor Mullen
688b2d0da7 Follow up fixes from flickering PR.
- The push for these changes didn't make it through.... Just doing a quick fix here which should have been in: https://github.com/google-gemini/gemini-code/pull/181
2025-04-26 19:32:56 -07:00
Taylor Mullen
5be89befef feat: Fix flickering in iTerm + scrolling + performance issues.
- Refactors history display using Ink's <Static> component to prevent flickering and improve performance by rendering completed items statically.
- Introduces ConsolePatcher component to capture and display console.log, console.warn, and console.error output within the Ink UI, addressing native handling issues.
- Introduce a new content splitting mechanism to work better for static items. Basically when content gets too long we will now split content into multiple blocks for Gemini messages to ensure that we can statically cache larger pieces of history.

Fixes:
- https://b.corp.google.com/issues/411450097
- https://b.corp.google.com/issues/412716309
2025-04-26 16:08:05 -07:00
Taylor Mullen
aa65a4a1fc Prevent console.warn's for tool calls.
- Added helper for extracting text content from responses without warning.

See fixed issue for more detail: https://b.corp.google.com/issues/414005146
2025-04-26 15:50:44 -07:00
Brandon Keiji
d051c0fd0f feat: prototype publish sandbox script with npm package (#182) 2025-04-25 17:30:50 -07:00
Seth Troisi
a5ba681f8d Add /exit and /quit commands 2025-04-25 14:29:00 -07:00
Seth Troisi
ed12a2e133 Pulled manual commands to seperate function 2025-04-25 14:29:00 -07:00
Brandon Keiji
4ce897d19d fix: add .env~ to .gitignore (#178) 2025-04-25 21:24:14 +00:00
Olcan
34f100d6ff drop todo about qualified writes, turns out others don't do it either so nbd (#177) 2025-04-25 14:16:24 -07:00
Olcan
7087c0508e more consistent confirmations, TODO to improve write confirmations, drop "description" from execution confirmation, add confirmation to new (still dummy) shell tool (#176) 2025-04-25 14:05:58 -07:00
Brandon Keiji
1a64268bb0 fix: remove extra initError (#173) 2025-04-25 13:15:05 -07:00
Olcan
86c3a3234f do not clean before package build (#175) 2025-04-25 13:01:40 -07:00
Olcan
415ec91c6d detect missing sandbox image and provide useful error message (#174) 2025-04-25 12:38:38 -07:00
Olcan
320f54e205 instant (dev) sandbox (#171)
* instant (dev) sandbox

* leave Dockerfile as is to pass deploy test

* fix comma

* fix prod build

* do not use "images exists" which docker does not support

* separate dev-mode flag

* Merge remote-tracking branch 'origin/main' into instant_sandbox
2025-04-25 10:58:23 -07:00
Brandon Keiji
eea524f6bb fix: make publish dry-run script match dogfood publish script (#169) 2025-04-25 09:58:27 -07:00
Olcan
b65442a88c more compact cli version in footer (#168) 2025-04-25 15:34:26 +00:00
Olcan
39cdba06a6 pass model env var to sandbox (#167) 2025-04-25 15:28:14 +00:00
Brandon Keiji
f34ac6272c fix: install rsync in publish pipeline (#166) 2025-04-24 19:53:59 -07:00
Olcan
08463e6114 enable json imports (#165)
* enable json imports

* Merge remote-tracking branch 'origin/main' into enable_json_imports
2025-04-24 18:30:19 -07:00
Brandon Keiji
b1b9735889 refactor: make version number shorter (#164) 2025-04-24 18:22:59 -07:00
Olcan
cbba8007b2 shell bones (#160)
* shell bones

* Merge remote-tracking branch 'origin/main' into shell_bones

* add line break

* another line break

* drop the log to avoid breaking terminals

* rename tool to be consistent with terminal

* fix build
2025-04-24 18:03:33 -07:00
Brandon Keiji
a94a9ce3bf docs: update manual publishing section (#162) 2025-04-25 00:52:24 +00:00
Brandon Keiji
7ea3dff49c refactor: change default logs bucket for cloudbuild cicd (#161) 2025-04-24 17:40:23 -07:00
Allen Hutchison
8cf3e1611e Adding a full_context command line argument. (#158)
* Adding a full_context command line argument.

* Update packages/cli/src/config/config.ts

Co-authored-by: N. Taylor Mullen <ntaylormullen@google.com>

* lint fix.

---------

Co-authored-by: N. Taylor Mullen <ntaylormullen@google.com>
2025-04-24 16:08:29 -07:00
Olcan
133f39494e general rules should apply to whole project (#159)
* general rules should apply to whole project

* Merge remote-tracking branch 'origin/main' into fix_eslint

* lint fixes under server package
2025-04-24 15:42:18 -07:00
Brandon Keiji
0510d06ecf infra: automate continuous deployment (#157) 2025-04-24 14:36:58 -07:00
Jacob Richman
4dc98b3c7e Switch Ansi theme to use regular colors to improve readability. (#154) 2025-04-24 14:19:35 -07:00
Olcan
deb11efa89 remove dead code (+ dont reset shellReady unless restarting) (#156) 2025-04-24 13:24:15 -07:00
Brandon Keiji
d394a9f39f feat: add flag to customize package version during pre-release staging (#155) 2025-04-24 13:02:49 -07:00
Olcan
d97d2a4f7b rename read_many_files (#153) 2025-04-24 12:15:49 -07:00
Jacob Richman
19ed2ed630 Add an ansi theme. (#152)
Add the gradient used by the ascii art logo to theme.
2025-04-24 11:56:23 -07:00
Jacob Richman
5790a5d7cf Add a theme preview and update the theme when highlight changes. (#151) 2025-04-24 11:36:34 -07:00
Olcan
d8c0587346 better sandbox check (#150) 2025-04-24 10:32:30 -07:00
Olcan
aed42a726a remove target_dir flag (#149) 2025-04-24 10:21:10 -07:00
Olcan
30bdef9bf5 in sandboxed run scripts, allow .env to be an in any ancestor directory, same as in findEnvFile; also prep for sanboxing with global command (#147) 2025-04-24 08:58:47 -07:00
Olcan
fb1c67219d unban commands (#146) 2025-04-23 19:20:54 -07:00
Seth Troisi
bf6e809abf Pass GEMINI_API_KEY env variable to sandbox 2025-04-23 18:22:58 -07:00
Brandon Keiji
31045e6086 fix: revert pointing npm start to .bin (#144) 2025-04-24 01:21:07 +00:00
Brandon Keiji
c24dc0ec77 feat: add react dev tools (#143) 2025-04-23 18:16:15 -07:00