babincli 1.0.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- babincli-1.0.0/LICENSE +21 -0
- babincli-1.0.0/PKG-INFO +127 -0
- babincli-1.0.0/README.md +94 -0
- babincli-1.0.0/babin_cli/__init__.py +3 -0
- babincli-1.0.0/babin_cli/main.py +97 -0
- babincli-1.0.0/babincli.egg-info/PKG-INFO +127 -0
- babincli-1.0.0/babincli.egg-info/SOURCES.txt +11 -0
- babincli-1.0.0/babincli.egg-info/dependency_links.txt +1 -0
- babincli-1.0.0/babincli.egg-info/entry_points.txt +2 -0
- babincli-1.0.0/babincli.egg-info/requires.txt +4 -0
- babincli-1.0.0/babincli.egg-info/top_level.txt +1 -0
- babincli-1.0.0/pyproject.toml +46 -0
- babincli-1.0.0/setup.cfg +4 -0
babincli-1.0.0/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 KGFCH2
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
babincli-1.0.0/PKG-INFO
ADDED
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: babincli
|
|
3
|
+
Version: 1.0.0
|
|
4
|
+
Summary: BabinCLI: A powerful, interactive terminal assistant powered by Gemini.
|
|
5
|
+
Author-email: KGFCH2 <your-email@example.com>
|
|
6
|
+
License: MIT
|
|
7
|
+
Project-URL: Homepage, https://github.com/KGFCH2/BabinCLI
|
|
8
|
+
Project-URL: Documentation, https://KGFCH2.github.io/BabinCLI/
|
|
9
|
+
Project-URL: Repository, https://github.com/KGFCH2/BabinCLI
|
|
10
|
+
Project-URL: Bug Tracker, https://github.com/KGFCH2/BabinCLI/issues
|
|
11
|
+
Keywords: cli,gemini,ai,terminal,assistant,chatbot
|
|
12
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
13
|
+
Classifier: Environment :: Console
|
|
14
|
+
Classifier: Intended Audience :: Developers
|
|
15
|
+
Classifier: Intended Audience :: End Users/Desktop
|
|
16
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
17
|
+
Classifier: Operating System :: OS Independent
|
|
18
|
+
Classifier: Programming Language :: Python :: 3
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
21
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
22
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
23
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
24
|
+
Classifier: Topic :: Utilities
|
|
25
|
+
Requires-Python: >=3.9
|
|
26
|
+
Description-Content-Type: text/markdown
|
|
27
|
+
License-File: LICENSE
|
|
28
|
+
Requires-Dist: click>=8.0
|
|
29
|
+
Requires-Dist: google-generativeai>=0.3.0
|
|
30
|
+
Requires-Dist: python-dotenv>=1.0.0
|
|
31
|
+
Requires-Dist: rich>=13.0
|
|
32
|
+
Dynamic: license-file
|
|
33
|
+
|
|
34
|
+
# BabinCLI
|
|
35
|
+
|
|
36
|
+
[](https://pypi.org/project/babincli/)
|
|
37
|
+
[](https://www.python.org/downloads/)
|
|
38
|
+
[](https://opensource.org/licenses/MIT)
|
|
39
|
+
|
|
40
|
+
BabinCLI is a powerful terminal assistant powered by Google's Gemini AI. It provides an interactive interface for chatting and a direct command for single queries.
|
|
41
|
+
|
|
42
|
+
## Features
|
|
43
|
+
- Interactive Chat: Continuous conversation with memory.
|
|
44
|
+
- Formatted Output: Markdown support for clear terminal responses.
|
|
45
|
+
- Model Selection: Ability to switch between different Gemini models.
|
|
46
|
+
- Cross-platform: Works on Windows, macOS, and Linux.
|
|
47
|
+
|
|
48
|
+
## Prerequisites
|
|
49
|
+
- Python 3.9 or higher.
|
|
50
|
+
- A Gemini API Key from Google AI Studio.
|
|
51
|
+
|
|
52
|
+
## Installation
|
|
53
|
+
|
|
54
|
+
### Install from PyPI (Recommended)
|
|
55
|
+
```bash
|
|
56
|
+
pip install babincli
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
### Install from GitHub
|
|
60
|
+
```bash
|
|
61
|
+
pip install git+https://github.com/KGFCH2/BabinCLI.git
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
### Install from Source
|
|
65
|
+
If you have downloaded or cloned the source code:
|
|
66
|
+
1. Clone the repository:
|
|
67
|
+
```bash
|
|
68
|
+
git clone https://github.com/KGFCH2/BabinCLI.git
|
|
69
|
+
cd BabinCLI
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
2. Install the package locally:
|
|
73
|
+
```bash
|
|
74
|
+
pip install .
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
Note for Windows Users: If the "babin" command is not recognized after installation, ensure that your Python Scripts folder is added to your System PATH. Alternatively, you can run the tool using:
|
|
78
|
+
```bash
|
|
79
|
+
python -m babin_cli.main chat
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
## Configuration
|
|
83
|
+
|
|
84
|
+
You must set your Gemini API Key as an environment variable for the tool to function.
|
|
85
|
+
|
|
86
|
+
Windows (PowerShell):
|
|
87
|
+
```powershell
|
|
88
|
+
$env:GEMINI_API_KEY="your_api_key_here"
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
Windows (Command Prompt):
|
|
92
|
+
```cmd
|
|
93
|
+
set GEMINI_API_KEY=your_api_key_here
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
Linux or macOS:
|
|
97
|
+
```bash
|
|
98
|
+
export GEMINI_API_KEY="your_api_key_here"
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
## Usage
|
|
102
|
+
|
|
103
|
+
### Interactive Chat Mode
|
|
104
|
+
Run the following command to start a continuous conversation:
|
|
105
|
+
```bash
|
|
106
|
+
babin chat
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
To use a specific model (e.g., if you hit quota limits):
|
|
110
|
+
```bash
|
|
111
|
+
babin --model gemini-flash-latest chat
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
### Single Question
|
|
115
|
+
Ask a quick question without entering chat mode:
|
|
116
|
+
```bash
|
|
117
|
+
babin ask "How do I create a list in Python?"
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
### List Available Models
|
|
121
|
+
Check which models your API key has access to:
|
|
122
|
+
```bash
|
|
123
|
+
babin list-models
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
## Documentation
|
|
127
|
+
Additional documentation and download instructions are available at https://KGFCH2.github.io/BabinCLI/
|
babincli-1.0.0/README.md
ADDED
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
# BabinCLI
|
|
2
|
+
|
|
3
|
+
[](https://pypi.org/project/babincli/)
|
|
4
|
+
[](https://www.python.org/downloads/)
|
|
5
|
+
[](https://opensource.org/licenses/MIT)
|
|
6
|
+
|
|
7
|
+
BabinCLI is a powerful terminal assistant powered by Google's Gemini AI. It provides an interactive interface for chatting and a direct command for single queries.
|
|
8
|
+
|
|
9
|
+
## Features
|
|
10
|
+
- Interactive Chat: Continuous conversation with memory.
|
|
11
|
+
- Formatted Output: Markdown support for clear terminal responses.
|
|
12
|
+
- Model Selection: Ability to switch between different Gemini models.
|
|
13
|
+
- Cross-platform: Works on Windows, macOS, and Linux.
|
|
14
|
+
|
|
15
|
+
## Prerequisites
|
|
16
|
+
- Python 3.9 or higher.
|
|
17
|
+
- A Gemini API Key from Google AI Studio.
|
|
18
|
+
|
|
19
|
+
## Installation
|
|
20
|
+
|
|
21
|
+
### Install from PyPI (Recommended)
|
|
22
|
+
```bash
|
|
23
|
+
pip install babincli
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
### Install from GitHub
|
|
27
|
+
```bash
|
|
28
|
+
pip install git+https://github.com/KGFCH2/BabinCLI.git
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
### Install from Source
|
|
32
|
+
If you have downloaded or cloned the source code:
|
|
33
|
+
1. Clone the repository:
|
|
34
|
+
```bash
|
|
35
|
+
git clone https://github.com/KGFCH2/BabinCLI.git
|
|
36
|
+
cd BabinCLI
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
2. Install the package locally:
|
|
40
|
+
```bash
|
|
41
|
+
pip install .
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
Note for Windows Users: If the "babin" command is not recognized after installation, ensure that your Python Scripts folder is added to your System PATH. Alternatively, you can run the tool using:
|
|
45
|
+
```bash
|
|
46
|
+
python -m babin_cli.main chat
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## Configuration
|
|
50
|
+
|
|
51
|
+
You must set your Gemini API Key as an environment variable for the tool to function.
|
|
52
|
+
|
|
53
|
+
Windows (PowerShell):
|
|
54
|
+
```powershell
|
|
55
|
+
$env:GEMINI_API_KEY="your_api_key_here"
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
Windows (Command Prompt):
|
|
59
|
+
```cmd
|
|
60
|
+
set GEMINI_API_KEY=your_api_key_here
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
Linux or macOS:
|
|
64
|
+
```bash
|
|
65
|
+
export GEMINI_API_KEY="your_api_key_here"
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## Usage
|
|
69
|
+
|
|
70
|
+
### Interactive Chat Mode
|
|
71
|
+
Run the following command to start a continuous conversation:
|
|
72
|
+
```bash
|
|
73
|
+
babin chat
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
To use a specific model (e.g., if you hit quota limits):
|
|
77
|
+
```bash
|
|
78
|
+
babin --model gemini-flash-latest chat
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
### Single Question
|
|
82
|
+
Ask a quick question without entering chat mode:
|
|
83
|
+
```bash
|
|
84
|
+
babin ask "How do I create a list in Python?"
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
### List Available Models
|
|
88
|
+
Check which models your API key has access to:
|
|
89
|
+
```bash
|
|
90
|
+
babin list-models
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
## Documentation
|
|
94
|
+
Additional documentation and download instructions are available at https://KGFCH2.github.io/BabinCLI/
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import click
|
|
2
|
+
import os
|
|
3
|
+
import google.generativeai as genai
|
|
4
|
+
from dotenv import load_dotenv
|
|
5
|
+
from rich.console import Console
|
|
6
|
+
from rich.markdown import Markdown
|
|
7
|
+
from rich.panel import Panel
|
|
8
|
+
from rich.prompt import Prompt
|
|
9
|
+
|
|
10
|
+
# Load environment variables
|
|
11
|
+
load_dotenv()
|
|
12
|
+
|
|
13
|
+
console = Console()
|
|
14
|
+
|
|
15
|
+
@click.group()
|
|
16
|
+
@click.option('--model', default='gemini-flash-latest', help='AI model to use.')
|
|
17
|
+
@click.pass_context
|
|
18
|
+
def cli(ctx, model):
|
|
19
|
+
"""BabinCLI: Your Advanced Gemini-Powered Assistant."""
|
|
20
|
+
ctx.ensure_object(dict)
|
|
21
|
+
ctx.obj['MODEL'] = model
|
|
22
|
+
|
|
23
|
+
@cli.command()
|
|
24
|
+
def list_models():
|
|
25
|
+
"""List all AI models available for your API key."""
|
|
26
|
+
api_key = os.getenv("GEMINI_API_KEY")
|
|
27
|
+
if not api_key:
|
|
28
|
+
console.print("[bold red]Error:[/] GEMINI_API_KEY not found.")
|
|
29
|
+
return
|
|
30
|
+
|
|
31
|
+
genai.configure(api_key=api_key)
|
|
32
|
+
try:
|
|
33
|
+
models = genai.list_models()
|
|
34
|
+
console.print("[bold cyan]Available Models:[/]")
|
|
35
|
+
for m in models:
|
|
36
|
+
if 'generateContent' in m.supported_generation_methods:
|
|
37
|
+
console.print(f" - {m.name}")
|
|
38
|
+
except Exception as e:
|
|
39
|
+
console.print(f"[bold red]Error listing models:[/] {e}")
|
|
40
|
+
|
|
41
|
+
@cli.command()
|
|
42
|
+
@click.pass_context
|
|
43
|
+
def chat(ctx):
|
|
44
|
+
"""Start an interactive chat session with history."""
|
|
45
|
+
model_name = ctx.obj['MODEL']
|
|
46
|
+
api_key = os.getenv("GEMINI_API_KEY")
|
|
47
|
+
if not api_key:
|
|
48
|
+
console.print("[bold red]Error:[/] GEMINI_API_KEY not found.")
|
|
49
|
+
return
|
|
50
|
+
|
|
51
|
+
genai.configure(api_key=api_key)
|
|
52
|
+
try:
|
|
53
|
+
console.print(f"[dim]Using model: {model_name}[/]")
|
|
54
|
+
model = genai.GenerativeModel(model_name)
|
|
55
|
+
chat_session = model.start_chat(history=[])
|
|
56
|
+
console.print(Panel("[bold cyan]BabinCLI Interactive Mode[/]\nType 'exit' or 'quit' to end the session.", border_style="blue"))
|
|
57
|
+
|
|
58
|
+
while True:
|
|
59
|
+
user_input = Prompt.ask("[bold green]You[/]")
|
|
60
|
+
|
|
61
|
+
if user_input.lower() in ["exit", "quit", ""]:
|
|
62
|
+
if user_input.lower() != "":
|
|
63
|
+
console.print("[bold yellow]Goodbye![/]")
|
|
64
|
+
break
|
|
65
|
+
continue
|
|
66
|
+
|
|
67
|
+
with console.status("[bold blue]Thinking...", spinner="dots"):
|
|
68
|
+
response = chat_session.send_message(user_input)
|
|
69
|
+
console.print("\n[bold magenta]AI:[/]")
|
|
70
|
+
console.print(Markdown(response.text))
|
|
71
|
+
console.print("-" * 20)
|
|
72
|
+
except Exception as e:
|
|
73
|
+
console.print(Panel(f"[bold red]Error:[/] {e}\n\n[yellow]Try switching models using --model, e.g.:\n'babin --model gemini-flash-latest chat'[/]", title="Model Access Error"))
|
|
74
|
+
|
|
75
|
+
@cli.command()
|
|
76
|
+
@click.argument('prompt')
|
|
77
|
+
@click.pass_context
|
|
78
|
+
def ask(ctx, prompt):
|
|
79
|
+
"""Ask a single question and get a formatted response."""
|
|
80
|
+
model_name = ctx.obj['MODEL']
|
|
81
|
+
api_key = os.getenv("GEMINI_API_KEY")
|
|
82
|
+
if not api_key:
|
|
83
|
+
console.print("[bold red]Error:[/] GEMINI_API_KEY not found.")
|
|
84
|
+
return
|
|
85
|
+
|
|
86
|
+
try:
|
|
87
|
+
genai.configure(api_key=api_key)
|
|
88
|
+
model = genai.GenerativeModel(model_name)
|
|
89
|
+
with console.status(f"[bold blue]Querying {model_name}..."):
|
|
90
|
+
response = model.generate_content(prompt)
|
|
91
|
+
|
|
92
|
+
console.print(Panel(Markdown(response.text), title=f"[bold cyan]Response ({model_name})", border_style="green"))
|
|
93
|
+
except Exception as e:
|
|
94
|
+
console.print(f"[bold red]Error:[/] {e}")
|
|
95
|
+
|
|
96
|
+
if __name__ == '__main__':
|
|
97
|
+
cli()
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: babincli
|
|
3
|
+
Version: 1.0.0
|
|
4
|
+
Summary: BabinCLI: A powerful, interactive terminal assistant powered by Gemini.
|
|
5
|
+
Author-email: KGFCH2 <your-email@example.com>
|
|
6
|
+
License: MIT
|
|
7
|
+
Project-URL: Homepage, https://github.com/KGFCH2/BabinCLI
|
|
8
|
+
Project-URL: Documentation, https://KGFCH2.github.io/BabinCLI/
|
|
9
|
+
Project-URL: Repository, https://github.com/KGFCH2/BabinCLI
|
|
10
|
+
Project-URL: Bug Tracker, https://github.com/KGFCH2/BabinCLI/issues
|
|
11
|
+
Keywords: cli,gemini,ai,terminal,assistant,chatbot
|
|
12
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
13
|
+
Classifier: Environment :: Console
|
|
14
|
+
Classifier: Intended Audience :: Developers
|
|
15
|
+
Classifier: Intended Audience :: End Users/Desktop
|
|
16
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
17
|
+
Classifier: Operating System :: OS Independent
|
|
18
|
+
Classifier: Programming Language :: Python :: 3
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
21
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
22
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
23
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
24
|
+
Classifier: Topic :: Utilities
|
|
25
|
+
Requires-Python: >=3.9
|
|
26
|
+
Description-Content-Type: text/markdown
|
|
27
|
+
License-File: LICENSE
|
|
28
|
+
Requires-Dist: click>=8.0
|
|
29
|
+
Requires-Dist: google-generativeai>=0.3.0
|
|
30
|
+
Requires-Dist: python-dotenv>=1.0.0
|
|
31
|
+
Requires-Dist: rich>=13.0
|
|
32
|
+
Dynamic: license-file
|
|
33
|
+
|
|
34
|
+
# BabinCLI
|
|
35
|
+
|
|
36
|
+
[](https://pypi.org/project/babincli/)
|
|
37
|
+
[](https://www.python.org/downloads/)
|
|
38
|
+
[](https://opensource.org/licenses/MIT)
|
|
39
|
+
|
|
40
|
+
BabinCLI is a powerful terminal assistant powered by Google's Gemini AI. It provides an interactive interface for chatting and a direct command for single queries.
|
|
41
|
+
|
|
42
|
+
## Features
|
|
43
|
+
- Interactive Chat: Continuous conversation with memory.
|
|
44
|
+
- Formatted Output: Markdown support for clear terminal responses.
|
|
45
|
+
- Model Selection: Ability to switch between different Gemini models.
|
|
46
|
+
- Cross-platform: Works on Windows, macOS, and Linux.
|
|
47
|
+
|
|
48
|
+
## Prerequisites
|
|
49
|
+
- Python 3.9 or higher.
|
|
50
|
+
- A Gemini API Key from Google AI Studio.
|
|
51
|
+
|
|
52
|
+
## Installation
|
|
53
|
+
|
|
54
|
+
### Install from PyPI (Recommended)
|
|
55
|
+
```bash
|
|
56
|
+
pip install babincli
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
### Install from GitHub
|
|
60
|
+
```bash
|
|
61
|
+
pip install git+https://github.com/KGFCH2/BabinCLI.git
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
### Install from Source
|
|
65
|
+
If you have downloaded or cloned the source code:
|
|
66
|
+
1. Clone the repository:
|
|
67
|
+
```bash
|
|
68
|
+
git clone https://github.com/KGFCH2/BabinCLI.git
|
|
69
|
+
cd BabinCLI
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
2. Install the package locally:
|
|
73
|
+
```bash
|
|
74
|
+
pip install .
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
Note for Windows Users: If the "babin" command is not recognized after installation, ensure that your Python Scripts folder is added to your System PATH. Alternatively, you can run the tool using:
|
|
78
|
+
```bash
|
|
79
|
+
python -m babin_cli.main chat
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
## Configuration
|
|
83
|
+
|
|
84
|
+
You must set your Gemini API Key as an environment variable for the tool to function.
|
|
85
|
+
|
|
86
|
+
Windows (PowerShell):
|
|
87
|
+
```powershell
|
|
88
|
+
$env:GEMINI_API_KEY="your_api_key_here"
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
Windows (Command Prompt):
|
|
92
|
+
```cmd
|
|
93
|
+
set GEMINI_API_KEY=your_api_key_here
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
Linux or macOS:
|
|
97
|
+
```bash
|
|
98
|
+
export GEMINI_API_KEY="your_api_key_here"
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
## Usage
|
|
102
|
+
|
|
103
|
+
### Interactive Chat Mode
|
|
104
|
+
Run the following command to start a continuous conversation:
|
|
105
|
+
```bash
|
|
106
|
+
babin chat
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
To use a specific model (e.g., if you hit quota limits):
|
|
110
|
+
```bash
|
|
111
|
+
babin --model gemini-flash-latest chat
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
### Single Question
|
|
115
|
+
Ask a quick question without entering chat mode:
|
|
116
|
+
```bash
|
|
117
|
+
babin ask "How do I create a list in Python?"
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
### List Available Models
|
|
121
|
+
Check which models your API key has access to:
|
|
122
|
+
```bash
|
|
123
|
+
babin list-models
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
## Documentation
|
|
127
|
+
Additional documentation and download instructions are available at https://KGFCH2.github.io/BabinCLI/
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
LICENSE
|
|
2
|
+
README.md
|
|
3
|
+
pyproject.toml
|
|
4
|
+
babin_cli/__init__.py
|
|
5
|
+
babin_cli/main.py
|
|
6
|
+
babincli.egg-info/PKG-INFO
|
|
7
|
+
babincli.egg-info/SOURCES.txt
|
|
8
|
+
babincli.egg-info/dependency_links.txt
|
|
9
|
+
babincli.egg-info/entry_points.txt
|
|
10
|
+
babincli.egg-info/requires.txt
|
|
11
|
+
babincli.egg-info/top_level.txt
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
babin_cli
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = ["setuptools>=68.0", "wheel"]
|
|
3
|
+
build-backend = "setuptools.build_meta"
|
|
4
|
+
|
|
5
|
+
[project]
|
|
6
|
+
name = "babincli"
|
|
7
|
+
version = "1.0.0"
|
|
8
|
+
description = "BabinCLI: A powerful, interactive terminal assistant powered by Gemini."
|
|
9
|
+
readme = "README.md"
|
|
10
|
+
license = {text = "MIT"}
|
|
11
|
+
authors = [{ name = "KGFCH2", email = "your-email@example.com" }]
|
|
12
|
+
requires-python = ">=3.9"
|
|
13
|
+
keywords = ["cli", "gemini", "ai", "terminal", "assistant", "chatbot"]
|
|
14
|
+
classifiers = [
|
|
15
|
+
"Development Status :: 5 - Production/Stable",
|
|
16
|
+
"Environment :: Console",
|
|
17
|
+
"Intended Audience :: Developers",
|
|
18
|
+
"Intended Audience :: End Users/Desktop",
|
|
19
|
+
"License :: OSI Approved :: MIT License",
|
|
20
|
+
"Operating System :: OS Independent",
|
|
21
|
+
"Programming Language :: Python :: 3",
|
|
22
|
+
"Programming Language :: Python :: 3.9",
|
|
23
|
+
"Programming Language :: Python :: 3.10",
|
|
24
|
+
"Programming Language :: Python :: 3.11",
|
|
25
|
+
"Programming Language :: Python :: 3.12",
|
|
26
|
+
"Programming Language :: Python :: 3.13",
|
|
27
|
+
"Topic :: Utilities",
|
|
28
|
+
]
|
|
29
|
+
dependencies = [
|
|
30
|
+
"click>=8.0",
|
|
31
|
+
"google-generativeai>=0.3.0",
|
|
32
|
+
"python-dotenv>=1.0.0",
|
|
33
|
+
"rich>=13.0",
|
|
34
|
+
]
|
|
35
|
+
|
|
36
|
+
[project.urls]
|
|
37
|
+
Homepage = "https://github.com/KGFCH2/BabinCLI"
|
|
38
|
+
Documentation = "https://KGFCH2.github.io/BabinCLI/"
|
|
39
|
+
Repository = "https://github.com/KGFCH2/BabinCLI"
|
|
40
|
+
"Bug Tracker" = "https://github.com/KGFCH2/BabinCLI/issues"
|
|
41
|
+
|
|
42
|
+
[project.scripts]
|
|
43
|
+
babin = "babin_cli.main:cli"
|
|
44
|
+
|
|
45
|
+
[tool.setuptools.packages.find]
|
|
46
|
+
include = ["babin_cli*"]
|
babincli-1.0.0/setup.cfg
ADDED