hey-cli-python 1.0.7__tar.gz → 1.0.9__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.
- {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/PKG-INFO +22 -1
- {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/README.md +21 -0
- {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli/cli.py +24 -7
- {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli_python.egg-info/PKG-INFO +22 -1
- {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/pyproject.toml +1 -1
- {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/LICENSE +0 -0
- {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli/__init__.py +0 -0
- {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli/governance.py +0 -0
- {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli/history.py +0 -0
- {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli/llm.py +0 -0
- {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli/models.py +0 -0
- {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli/runner.py +0 -0
- {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli/skills.py +0 -0
- {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli_python.egg-info/SOURCES.txt +0 -0
- {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli_python.egg-info/dependency_links.txt +0 -0
- {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli_python.egg-info/entry_points.txt +0 -0
- {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli_python.egg-info/requires.txt +0 -0
- {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli_python.egg-info/top_level.txt +0 -0
- {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/setup.cfg +0 -0
- {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/tests/test_cli.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: hey-cli-python
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.9
|
|
4
4
|
Summary: A secure, zero-bloat CLI companion that turns natural language and error logs into executable commands.
|
|
5
5
|
Author: Mohit Singh Sinsniwal
|
|
6
6
|
Project-URL: Homepage, https://github.com/sinsniwal/hey-cli
|
|
@@ -73,6 +73,10 @@ brew tap sinsniwal/hey-cli
|
|
|
73
73
|
brew install hey-cli
|
|
74
74
|
```
|
|
75
75
|
|
|
76
|
+
> [!TIP]
|
|
77
|
+
> **Apple Silicon (M1/M2/M3) Note:** If you see an error about `Rosetta 2` while installing via Homebrew, ensure your terminal is running natively (not under Rosetta emulation). You can force a native installation by running:
|
|
78
|
+
> `arch -arm64 brew install hey-cli`
|
|
79
|
+
|
|
76
80
|
### macOS & Linux (curl)
|
|
77
81
|
|
|
78
82
|
```bash
|
|
@@ -133,6 +137,23 @@ hey <your objective in plain English>
|
|
|
133
137
|
|
|
134
138
|
---
|
|
135
139
|
|
|
140
|
+
|
|
141
|
+
---
|
|
142
|
+
|
|
143
|
+
## Authentication & Custom Endpoints
|
|
144
|
+
|
|
145
|
+
`hey` works locally by default, but it also supports authenticated Ollama instances and custom hosts:
|
|
146
|
+
|
|
147
|
+
- **Standard Login:** Most users should run `ollama login` once to authenticate their terminal with the local or cloud instance.
|
|
148
|
+
- **Auth Key:** If you are in a CI/CD or server environment, you can set the `OLLAMA_API_KEY` environment variable.
|
|
149
|
+
- **Custom Host:** If Ollama is running on a different port or machine, set `OLLAMA_HOST` (e.g., `export OLLAMA_HOST="http://192.168.1.10:11434"`).
|
|
150
|
+
- **Custom Model:** You can provide a custom model via `--model`:
|
|
151
|
+
```bash
|
|
152
|
+
hey "summarize this file" --model llama3
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
---
|
|
156
|
+
|
|
136
157
|
## Security
|
|
137
158
|
|
|
138
159
|
Safety is enforced at runtime via a local governance engine (`~/.hey-rules.json`):
|
|
@@ -45,6 +45,10 @@ brew tap sinsniwal/hey-cli
|
|
|
45
45
|
brew install hey-cli
|
|
46
46
|
```
|
|
47
47
|
|
|
48
|
+
> [!TIP]
|
|
49
|
+
> **Apple Silicon (M1/M2/M3) Note:** If you see an error about `Rosetta 2` while installing via Homebrew, ensure your terminal is running natively (not under Rosetta emulation). You can force a native installation by running:
|
|
50
|
+
> `arch -arm64 brew install hey-cli`
|
|
51
|
+
|
|
48
52
|
### macOS & Linux (curl)
|
|
49
53
|
|
|
50
54
|
```bash
|
|
@@ -105,6 +109,23 @@ hey <your objective in plain English>
|
|
|
105
109
|
|
|
106
110
|
---
|
|
107
111
|
|
|
112
|
+
|
|
113
|
+
---
|
|
114
|
+
|
|
115
|
+
## Authentication & Custom Endpoints
|
|
116
|
+
|
|
117
|
+
`hey` works locally by default, but it also supports authenticated Ollama instances and custom hosts:
|
|
118
|
+
|
|
119
|
+
- **Standard Login:** Most users should run `ollama login` once to authenticate their terminal with the local or cloud instance.
|
|
120
|
+
- **Auth Key:** If you are in a CI/CD or server environment, you can set the `OLLAMA_API_KEY` environment variable.
|
|
121
|
+
- **Custom Host:** If Ollama is running on a different port or machine, set `OLLAMA_HOST` (e.g., `export OLLAMA_HOST="http://192.168.1.10:11434"`).
|
|
122
|
+
- **Custom Model:** You can provide a custom model via `--model`:
|
|
123
|
+
```bash
|
|
124
|
+
hey "summarize this file" --model llama3
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
---
|
|
128
|
+
|
|
108
129
|
## Security
|
|
109
130
|
|
|
110
131
|
Safety is enforced at runtime via a local governance engine (`~/.hey-rules.json`):
|
|
@@ -24,15 +24,17 @@ def check_ollama():
|
|
|
24
24
|
except Exception:
|
|
25
25
|
msg = Text()
|
|
26
26
|
msg.append("Ollama is not running or not installed.\n\n", style="bold red")
|
|
27
|
-
msg.append("Install Ollama:\n", style="bold white")
|
|
28
|
-
msg.append("
|
|
27
|
+
msg.append("1. Install Ollama:\n", style="bold white")
|
|
28
|
+
msg.append(" Linux / macOS:\n", style="dim")
|
|
29
29
|
msg.append(
|
|
30
|
-
"
|
|
30
|
+
" curl -fsSL https://ollama.com/install.sh | sh\n", style="bold cyan"
|
|
31
31
|
)
|
|
32
|
-
msg.append("
|
|
33
|
-
msg.append("
|
|
34
|
-
msg.append("
|
|
35
|
-
msg.append("
|
|
32
|
+
msg.append(" Windows:\n", style="dim")
|
|
33
|
+
msg.append(" https://ollama.com/download/windows\n\n", style="bold cyan")
|
|
34
|
+
msg.append("2. Authenticate:\n", style="bold white")
|
|
35
|
+
msg.append(" ollama login\n\n", style="bold cyan")
|
|
36
|
+
msg.append("3. Pull the default model:\n", style="bold white")
|
|
37
|
+
msg.append(" ollama pull gpt-oss:20b-cloud", style="bold cyan")
|
|
36
38
|
console.print(
|
|
37
39
|
Panel(
|
|
38
40
|
msg,
|
|
@@ -120,9 +122,24 @@ def main():
|
|
|
120
122
|
response = generate_command(
|
|
121
123
|
objective, context=piped_data, model_name=model_name, history=past_messages
|
|
122
124
|
)
|
|
125
|
+
except urllib.error.HTTPError as e:
|
|
126
|
+
if e.code == 401:
|
|
127
|
+
msg = Text()
|
|
128
|
+
msg.append("Ollama authentication required.\n\n", style="bold red")
|
|
129
|
+
msg.append("Your connection to Ollama is not authenticated.\n", style="bold white")
|
|
130
|
+
msg.append("\nPlease run: ", style="dim")
|
|
131
|
+
msg.append("ollama login\n", style="bold cyan")
|
|
132
|
+
msg.append("\nThis will verify your identity with Ollama and allow the request to proceed.", style="dim")
|
|
133
|
+
console.print(Panel(msg, title="[bold yellow]🔑 Authentication Required[/bold yellow]", border_style="yellow"))
|
|
134
|
+
else:
|
|
135
|
+
console.print(f"\n[bold red]● Ollama API error:[/bold red] HTTP {e.code} — {e.reason}")
|
|
136
|
+
sys.exit(1)
|
|
123
137
|
except (urllib.error.URLError, ConnectionError, OSError):
|
|
124
138
|
check_ollama() # shows the panel and exits
|
|
125
139
|
sys.exit(1) # fallback — should never reach here
|
|
140
|
+
except Exception as e:
|
|
141
|
+
console.print(f"\n[bold red]● Error:[/bold red] {e}")
|
|
142
|
+
sys.exit(1)
|
|
126
143
|
|
|
127
144
|
# Save the user query to history IMMEDIATELY
|
|
128
145
|
history_mgr.append("user", user_prompt)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: hey-cli-python
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.9
|
|
4
4
|
Summary: A secure, zero-bloat CLI companion that turns natural language and error logs into executable commands.
|
|
5
5
|
Author: Mohit Singh Sinsniwal
|
|
6
6
|
Project-URL: Homepage, https://github.com/sinsniwal/hey-cli
|
|
@@ -73,6 +73,10 @@ brew tap sinsniwal/hey-cli
|
|
|
73
73
|
brew install hey-cli
|
|
74
74
|
```
|
|
75
75
|
|
|
76
|
+
> [!TIP]
|
|
77
|
+
> **Apple Silicon (M1/M2/M3) Note:** If you see an error about `Rosetta 2` while installing via Homebrew, ensure your terminal is running natively (not under Rosetta emulation). You can force a native installation by running:
|
|
78
|
+
> `arch -arm64 brew install hey-cli`
|
|
79
|
+
|
|
76
80
|
### macOS & Linux (curl)
|
|
77
81
|
|
|
78
82
|
```bash
|
|
@@ -133,6 +137,23 @@ hey <your objective in plain English>
|
|
|
133
137
|
|
|
134
138
|
---
|
|
135
139
|
|
|
140
|
+
|
|
141
|
+
---
|
|
142
|
+
|
|
143
|
+
## Authentication & Custom Endpoints
|
|
144
|
+
|
|
145
|
+
`hey` works locally by default, but it also supports authenticated Ollama instances and custom hosts:
|
|
146
|
+
|
|
147
|
+
- **Standard Login:** Most users should run `ollama login` once to authenticate their terminal with the local or cloud instance.
|
|
148
|
+
- **Auth Key:** If you are in a CI/CD or server environment, you can set the `OLLAMA_API_KEY` environment variable.
|
|
149
|
+
- **Custom Host:** If Ollama is running on a different port or machine, set `OLLAMA_HOST` (e.g., `export OLLAMA_HOST="http://192.168.1.10:11434"`).
|
|
150
|
+
- **Custom Model:** You can provide a custom model via `--model`:
|
|
151
|
+
```bash
|
|
152
|
+
hey "summarize this file" --model llama3
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
---
|
|
156
|
+
|
|
136
157
|
## Security
|
|
137
158
|
|
|
138
159
|
Safety is enforced at runtime via a local governance engine (`~/.hey-rules.json`):
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "hey-cli-python"
|
|
7
|
-
version = "1.0.
|
|
7
|
+
version = "1.0.9"
|
|
8
8
|
description = "A secure, zero-bloat CLI companion that turns natural language and error logs into executable commands."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.9"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|