Bring the power of Gemini Enterprise to the command line.
This repository aims to build a Command Line Interface (CLI) to interact with Google Gemini Enterprise.
Important
This project is a Proof of Concept (POC). We are waiting for more features on the Gemini Enterprise API to push this project forward.
Warning
This project currently only works with a handful of data sources such as:
- Cloud Storage
- BigQuery
It does NOT support OAuth-based data sources like:
- Gmail
- Google Drive
- Google Calendar
To use this CLI, you need to set up Gemini Enterprise in your Google Cloud project. Please follow the official documentation for detailed instructions.
Here is a quick summary of the steps:
-
Prerequisites:
- A Google Cloud project with billing enabled.
- Enable the following APIs: Vertex AI, Gemini Enterprise (Discovery Engine), Cloud Storage, IAM.
- Ensure you have the Discovery Engine Admin role.
-
Create a Gemini Enterprise App:
- Go to the Gemini Enterprise page in the Google Cloud Console.
- Click Create app and select Gemini Enterprise.
- Fill in the app name and company name.
- Select a location (e.g., global).
-
Create a Data Store (e.g., Cloud Storage):
- Create a new data store and select Cloud Storage as the source.
- Choose Unstructured documents.
- Use the sample data path:
gs://cloud-samples-data/gen-app-builder/search/cymbal-bank-employee(or your own data). - Link the data store to your app.
To set up the project, ensure you have uv installed. Then, run the following commands:
uv syncOnce installed, you can use the CLI. More details on specific commands will be added as the project evolves.
This project uses just for task automation. Here are the available commands, grouped by task file.
just check: run check tasksjust check-code: check code qualityjust check-coverage: check code coveragejust check-format: check code formatjust check-lock: check code lockjust check-test: check unit testsjust check-type: check code typing
just clean: run clean tasksjust clean-all: run all clean tasksjust clean-coverage: clean coverage filesjust clean-dist: clean dist foldersjust clean-docs: clean docs folderjust clean-lock: clean uv lockjust clean-pytest: clean pytest cachejust clean-python: clean python cachesjust clean-ruff: clean ruff cachejust clean-venv: clean venv folder
just cloud: run cloud tasksjust cloud-auth: authenticate to cloudjust cloud-settings: configure cloud settings
just dist: run dist tasksjust dist-build: build python package (group:package)
just doc: run doc tasksjust doc-build: build the documentationjust doc-serve: serve the documentation
just format: run format tasksjust format-import: format code importjust format-source: format code source
just install: run install tasksjust install-hooks: install git hooksjust install-project: install the project
This project is licensed under the MIT License - see the LICENSE.txt file for details.