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.
Files changed (20) hide show
  1. {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/PKG-INFO +22 -1
  2. {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/README.md +21 -0
  3. {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli/cli.py +24 -7
  4. {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli_python.egg-info/PKG-INFO +22 -1
  5. {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/pyproject.toml +1 -1
  6. {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/LICENSE +0 -0
  7. {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli/__init__.py +0 -0
  8. {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli/governance.py +0 -0
  9. {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli/history.py +0 -0
  10. {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli/llm.py +0 -0
  11. {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli/models.py +0 -0
  12. {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli/runner.py +0 -0
  13. {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli/skills.py +0 -0
  14. {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli_python.egg-info/SOURCES.txt +0 -0
  15. {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli_python.egg-info/dependency_links.txt +0 -0
  16. {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli_python.egg-info/entry_points.txt +0 -0
  17. {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli_python.egg-info/requires.txt +0 -0
  18. {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/hey_cli_python.egg-info/top_level.txt +0 -0
  19. {hey_cli_python-1.0.7 → hey_cli_python-1.0.9}/setup.cfg +0 -0
  20. {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.7
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(" Linux / macOS:\n", style="dim")
27
+ msg.append("1. Install Ollama:\n", style="bold white")
28
+ msg.append(" Linux / macOS:\n", style="dim")
29
29
  msg.append(
30
- " curl -fsSL https://ollama.com/install.sh | sh\n", style="bold cyan"
30
+ " curl -fsSL https://ollama.com/install.sh | sh\n", style="bold cyan"
31
31
  )
32
- msg.append(" Windows:\n", style="dim")
33
- msg.append(" https://ollama.com/download/windows\n\n", style="bold cyan")
34
- msg.append("Then pull the default model:\n", style="bold white")
35
- msg.append(" ollama pull gpt-oss:20b-cloud", style="bold cyan")
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.7
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"
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