Skip to content

fmind/gemini-enterprise-cli

Repository files navigation

Gemini Enterprise CLI

License: MIT PyPI CI CD

Bring the power of Gemini Enterprise to the command line.

Overview

This repository aims to build a Command Line Interface (CLI) to interact with Google Gemini Enterprise.

Project Status

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.

Disclaimer

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

Setup

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:

  1. 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.
  2. 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).
  3. 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.

Installation

To set up the project, ensure you have uv installed. Then, run the following commands:

uv sync

Usage

Once installed, you can use the CLI. More details on specific commands will be added as the project evolves.

Commands

This project uses just for task automation. Here are the available commands, grouped by task file.

check

  • just check: run check tasks
  • just check-code: check code quality
  • just check-coverage: check code coverage
  • just check-format: check code format
  • just check-lock: check code lock
  • just check-test: check unit tests
  • just check-type: check code typing

clean

  • just clean: run clean tasks
  • just clean-all: run all clean tasks
  • just clean-coverage: clean coverage files
  • just clean-dist: clean dist folders
  • just clean-docs: clean docs folder
  • just clean-lock: clean uv lock
  • just clean-pytest: clean pytest cache
  • just clean-python: clean python caches
  • just clean-ruff: clean ruff cache
  • just clean-venv: clean venv folder

cloud

  • just cloud: run cloud tasks
  • just cloud-auth: authenticate to cloud
  • just cloud-settings: configure cloud settings

dist

  • just dist: run dist tasks
  • just dist-build: build python package (group: package)

doc

  • just doc: run doc tasks
  • just doc-build: build the documentation
  • just doc-serve: serve the documentation

format

  • just format: run format tasks
  • just format-import: format code import
  • just format-source: format code source

install

  • just install: run install tasks
  • just install-hooks: install git hooks
  • just install-project: install the project

License

This project is licensed under the MIT License - see the LICENSE.txt file for details.

About

A powerful CLI client for interacting with Gemini Enterprise, empowering developers with AI-assisted terminal workflows.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

Packages

 
 
 

Contributors