hey-cli-python 1.0.2__tar.gz → 1.0.3__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.2 → hey_cli_python-1.0.3}/PKG-INFO +3 -1
  2. {hey_cli_python-1.0.2 → hey_cli_python-1.0.3}/hey_cli/cli.py +24 -0
  3. {hey_cli_python-1.0.2 → hey_cli_python-1.0.3}/hey_cli_python.egg-info/PKG-INFO +3 -1
  4. {hey_cli_python-1.0.2 → hey_cli_python-1.0.3}/pyproject.toml +3 -1
  5. {hey_cli_python-1.0.2 → hey_cli_python-1.0.3}/LICENSE +0 -0
  6. {hey_cli_python-1.0.2 → hey_cli_python-1.0.3}/README.md +0 -0
  7. {hey_cli_python-1.0.2 → hey_cli_python-1.0.3}/hey_cli/__init__.py +0 -0
  8. {hey_cli_python-1.0.2 → hey_cli_python-1.0.3}/hey_cli/governance.py +0 -0
  9. {hey_cli_python-1.0.2 → hey_cli_python-1.0.3}/hey_cli/history.py +0 -0
  10. {hey_cli_python-1.0.2 → hey_cli_python-1.0.3}/hey_cli/llm.py +0 -0
  11. {hey_cli_python-1.0.2 → hey_cli_python-1.0.3}/hey_cli/models.py +0 -0
  12. {hey_cli_python-1.0.2 → hey_cli_python-1.0.3}/hey_cli/runner.py +0 -0
  13. {hey_cli_python-1.0.2 → hey_cli_python-1.0.3}/hey_cli/skills.py +0 -0
  14. {hey_cli_python-1.0.2 → hey_cli_python-1.0.3}/hey_cli_python.egg-info/SOURCES.txt +0 -0
  15. {hey_cli_python-1.0.2 → hey_cli_python-1.0.3}/hey_cli_python.egg-info/dependency_links.txt +0 -0
  16. {hey_cli_python-1.0.2 → hey_cli_python-1.0.3}/hey_cli_python.egg-info/entry_points.txt +0 -0
  17. {hey_cli_python-1.0.2 → hey_cli_python-1.0.3}/hey_cli_python.egg-info/requires.txt +0 -0
  18. {hey_cli_python-1.0.2 → hey_cli_python-1.0.3}/hey_cli_python.egg-info/top_level.txt +0 -0
  19. {hey_cli_python-1.0.2 → hey_cli_python-1.0.3}/setup.cfg +0 -0
  20. {hey_cli_python-1.0.2 → hey_cli_python-1.0.3}/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.2
3
+ Version: 1.0.3
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
@@ -18,6 +18,8 @@ Classifier: Programming Language :: Python :: 3.9
18
18
  Classifier: Programming Language :: Python :: 3.10
19
19
  Classifier: Programming Language :: Python :: 3.11
20
20
  Classifier: Programming Language :: Python :: 3.12
21
+ Classifier: Programming Language :: Python :: 3.13
22
+ Classifier: Programming Language :: Python :: 3.14
21
23
  Requires-Python: >=3.9
22
24
  Description-Content-Type: text/markdown
23
25
  License-File: LICENSE
@@ -1,15 +1,36 @@
1
1
  import argparse
2
2
  import sys
3
3
  import os
4
+ import urllib.request
5
+ import urllib.error
4
6
 
5
7
  from .governance import GovernanceEngine
6
8
  from .llm import generate_command
7
9
  from .history import HistoryManager
8
10
  from .runner import CommandRunner
9
11
  from rich.console import Console
12
+ from rich.panel import Panel
13
+ from rich.text import Text
10
14
 
11
15
  console = Console()
12
16
 
17
+ def check_ollama():
18
+ """Check if Ollama is reachable at localhost:11434. Exit with instructions if not."""
19
+ try:
20
+ urllib.request.urlopen("http://localhost:11434", timeout=2)
21
+ except Exception:
22
+ msg = Text()
23
+ msg.append("Ollama is not running or not installed.\n\n", style="bold red")
24
+ msg.append("Install Ollama:\n", style="bold white")
25
+ msg.append(" Linux / macOS:\n", style="dim")
26
+ msg.append(" curl -fsSL https://ollama.com/install.sh | sh\n", style="bold cyan")
27
+ msg.append(" Windows:\n", style="dim")
28
+ msg.append(" https://ollama.com/download/windows\n\n", style="bold cyan")
29
+ msg.append("Then pull the default model:\n", style="bold white")
30
+ msg.append(" ollama pull gpt-oss:20b-cloud", style="bold cyan")
31
+ console.print(Panel(msg, title="[bold yellow]⚠ Ollama Required[/bold yellow]", border_style="yellow"))
32
+ sys.exit(1)
33
+
13
34
  def main():
14
35
  parser = argparse.ArgumentParser(
15
36
  description="hey-cli: a secure, zero-bloat CLI companion.",
@@ -49,6 +70,9 @@ def main():
49
70
  if args.check_cache:
50
71
  sys.exit(0)
51
72
 
73
+ # Only check Ollama when we're about to call the LLM
74
+ check_ollama()
75
+
52
76
  piped_data = ""
53
77
  if not sys.stdin.isatty():
54
78
  try:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hey-cli-python
3
- Version: 1.0.2
3
+ Version: 1.0.3
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
@@ -18,6 +18,8 @@ Classifier: Programming Language :: Python :: 3.9
18
18
  Classifier: Programming Language :: Python :: 3.10
19
19
  Classifier: Programming Language :: Python :: 3.11
20
20
  Classifier: Programming Language :: Python :: 3.12
21
+ Classifier: Programming Language :: Python :: 3.13
22
+ Classifier: Programming Language :: Python :: 3.14
21
23
  Requires-Python: >=3.9
22
24
  Description-Content-Type: text/markdown
23
25
  License-File: LICENSE
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "hey-cli-python"
7
- version = "1.0.2"
7
+ version = "1.0.3"
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"
@@ -24,6 +24,8 @@ classifiers = [
24
24
  "Programming Language :: Python :: 3.10",
25
25
  "Programming Language :: Python :: 3.11",
26
26
  "Programming Language :: Python :: 3.12",
27
+ "Programming Language :: Python :: 3.13",
28
+ "Programming Language :: Python :: 3.14",
27
29
  ]
28
30
  dependencies = [
29
31
  "rich>=13.0.0"
File without changes
File without changes
File without changes