Skip to main content

Linux terminal Gemini client with secure local API key config

Project description

Bro CLI

A lightweight, fast, and secure Linux terminal client for Google's Gemini AI.

bro allows you to interact with Gemini directly from your command line, offering both single-prompt execution and a persistent interactive chat mode. It securely manages your API credentials using standard Linux XDG directories.

Features

  • Interactive & Single-Prompt Modes: Seamlessly switch between quick one-off questions and interactive conversational sessions.
  • Secure Credential Management: API keys are stored securely in ~/.config/bro/config.json with strict user-only (0600) file permissions.
  • Environment Variable Support: Override stored configurations on the fly using the BRO_GEMINI_KEY environment variable.
  • Terminal-Optimized Output: Instructs Gemini to return direct, concise answers without unnecessary markdown formatting or conversational filler.

Requirements

  • Linux
  • Python 3.10 or higher
  • pipx (Required for isolated global CLI installation)

Installation

Install bro-cli globally as an isolated application using pipx.

To install directly from your Git repository:

pipx install git+https://github.com/PromitSarker/Bro-CLI.git

Local Installation: If you have cloned the repository to your local machine, you can navigate to the project folder and install it by running:

pipx install .

Updating: To upgrade to the latest version in the future:

pipx upgrade bro-cli

Configuration

Before using the client, you must configure your Google Gemini API key. Run the following command:

bro config

You will be prompted to paste your API key. It will be saved securely to your system.

Usage

Single Prompt

Ask a direct question. The client will return the answer to your standard output and exit:

bro "Why life so hard ?"

Note: You can also skip the quotes for simple queries:

bro how to go and breathe ?

Interactive Mode

Start a multi-turn chat session by running the command without any arguments:

bro

Inside the interactive prompt, type exit, quit, or press Ctrl+C/Ctrl+D to end the session.

Technical Details

  • Default Model: gemini-2.5-flash-lite
  • SDK: Powered by the official google-genai Python SDK.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bro_cli-0.1.3.tar.gz (7.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bro_cli-0.1.3-py3-none-any.whl (8.4 kB view details)

Uploaded Python 3

File details

Details for the file bro_cli-0.1.3.tar.gz.

File metadata

  • Download URL: bro_cli-0.1.3.tar.gz
  • Upload date:
  • Size: 7.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for bro_cli-0.1.3.tar.gz
Algorithm Hash digest
SHA256 9610765e5d7b9e9ae55c376ea90d1eb9b5b8f427dd8e6273b17fd045fc138565
MD5 c3bbd5ab22bf4cae3888b6065a4a6993
BLAKE2b-256 f9b74f95cdfd6472051cd15677cdff6c5ad490361c30370132359c8b58a2ff48

See more details on using hashes here.

Provenance

The following attestation bundles were made for bro_cli-0.1.3.tar.gz:

Publisher: publish.yml on PromitSarker/Bro-CLI

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bro_cli-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: bro_cli-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 8.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for bro_cli-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 37cfd7a303c5ef735430b9c67023b4de44705d233e6334269a111fb4a94cd148
MD5 73a4c72fedd1c062cbe49e1e24824fae
BLAKE2b-256 2c770c465614a18759d25f3a1d4079d8dea7c2f564768c0b5590d6d82d1a86fd

See more details on using hashes here.

Provenance

The following attestation bundles were made for bro_cli-0.1.3-py3-none-any.whl:

Publisher: publish.yml on PromitSarker/Bro-CLI

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page