cli-guru 0.2.0__tar.gz → 0.2.1__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.
- {cli_guru-0.2.0/src/cli_guru.egg-info → cli_guru-0.2.1}/PKG-INFO +21 -35
- {cli_guru-0.2.0 → cli_guru-0.2.1}/README.md +20 -34
- {cli_guru-0.2.0 → cli_guru-0.2.1}/src/cli_guru/__init__.py +1 -1
- {cli_guru-0.2.0 → cli_guru-0.2.1/src/cli_guru.egg-info}/PKG-INFO +21 -35
- {cli_guru-0.2.0 → cli_guru-0.2.1}/LICENSE +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/pyproject.toml +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/setup.cfg +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/src/cli_guru/backend.py +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/src/cli_guru/cli.py +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/src/cli_guru/config.py +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/src/cli_guru/context.py +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/src/cli_guru/danger.py +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/src/cli_guru/install.py +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/src/cli_guru/manpage.py +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/src/cli_guru/prompts.py +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/src/cli_guru/sanitise.py +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/src/cli_guru/shell/cli-guru.bash +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/src/cli_guru/shell/cli-guru.ps1 +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/src/cli_guru/shell/cli-guru.zsh +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/src/cli_guru.egg-info/SOURCES.txt +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/src/cli_guru.egg-info/dependency_links.txt +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/src/cli_guru.egg-info/entry_points.txt +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/src/cli_guru.egg-info/top_level.txt +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/tests/test_backend.py +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/tests/test_cli.py +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/tests/test_config.py +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/tests/test_context.py +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/tests/test_danger.py +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/tests/test_install.py +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/tests/test_manpage.py +0 -0
- {cli_guru-0.2.0 → cli_guru-0.2.1}/tests/test_sanitise.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: cli-guru
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.1
|
|
4
4
|
Summary: Plain-language shell commands and man-page explanations from a local ollama model.
|
|
5
5
|
License: MIT
|
|
6
6
|
Project-URL: Homepage, https://github.com/erols/cli-guru
|
|
@@ -123,10 +123,9 @@ Already have ollama running?
|
|
|
123
123
|
|
|
124
124
|
```bash
|
|
125
125
|
ollama pull qwen2.5-coder:1.5b
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
cli-guru
|
|
129
|
-
cli-guru install # adds the keybindings to your shell
|
|
126
|
+
pipx install cli-guru
|
|
127
|
+
cli-guru check # confirms ollama is reachable and the model is present
|
|
128
|
+
cli-guru install # adds the keybindings to your shell
|
|
130
129
|
```
|
|
131
130
|
|
|
132
131
|
Open a new terminal, type a question, press **Ctrl-X Ctrl-A**.
|
|
@@ -313,52 +312,42 @@ The server must be listening beyond loopback for that to work
|
|
|
313
312
|
|
|
314
313
|
# Installing cli-guru
|
|
315
314
|
|
|
316
|
-
cli-guru is **not on PyPI yet**, so install it from a clone:
|
|
317
|
-
|
|
318
315
|
```bash
|
|
319
|
-
|
|
320
|
-
pipx install ./cli-guru # recommended — isolated, and puts cli-guru on PATH
|
|
321
|
-
# or
|
|
322
|
-
uv tool install ./cli-guru
|
|
316
|
+
pipx install cli-guru # recommended — isolated, and puts cli-guru on PATH
|
|
323
317
|
# or
|
|
324
|
-
|
|
318
|
+
uv tool install cli-guru
|
|
325
319
|
```
|
|
326
320
|
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
is `pipx install .`, where that lone `.` is the argument and is easy to drop.
|
|
331
|
-
Staying in the parent directory and naming `./cli-guru` is harder to get wrong.
|
|
321
|
+
pipx and uv each give the tool its own virtualenv, which matters more than usual
|
|
322
|
+
here: cli-guru runs on every keypress, so you do not want it sharing an
|
|
323
|
+
environment whose contents can change under it.
|
|
332
324
|
|
|
333
|
-
Confirm it
|
|
325
|
+
Confirm it landed before going further:
|
|
334
326
|
|
|
335
327
|
```bash
|
|
336
328
|
pipx list # cli-guru should appear, with `- cli-guru` under it
|
|
337
329
|
```
|
|
338
330
|
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
To install without cloning first:
|
|
331
|
+
To run the unreleased code instead, install from a clone — note the path is the
|
|
332
|
+
argument, and a bare `pipx install` with nothing after it silently installs
|
|
333
|
+
nothing:
|
|
344
334
|
|
|
345
335
|
```bash
|
|
346
|
-
|
|
336
|
+
git clone https://github.com/erols/cli-guru
|
|
337
|
+
pipx install ./cli-guru
|
|
347
338
|
```
|
|
348
339
|
|
|
349
340
|
### Updating
|
|
350
341
|
|
|
351
342
|
```bash
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
exec bash -l # or open a new terminal
|
|
343
|
+
pipx upgrade cli-guru
|
|
344
|
+
cli-guru install # idempotent — refreshes the rc block
|
|
345
|
+
exec bash -l # or open a new terminal
|
|
356
346
|
```
|
|
357
347
|
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
leaves no doubt about which source was used.
|
|
348
|
+
Installed from a clone instead? Then it is `git pull` followed by
|
|
349
|
+
`pipx install --force ~/path/to/cli-guru`; `pipx upgrade` has no index to check
|
|
350
|
+
against for a path install.
|
|
362
351
|
|
|
363
352
|
**Why `cli-guru install` again.** The rc block holds the adapter's absolute
|
|
364
353
|
path, which lives inside the pipx virtualenv and carries the Python version in
|
|
@@ -383,9 +372,6 @@ cli-guru --version
|
|
|
383
372
|
bind -X | grep cli_guru # in a NEW shell: expect the two bindings
|
|
384
373
|
```
|
|
385
374
|
|
|
386
|
-
Once this is on PyPI, updating becomes `pipx upgrade cli-guru` and this section
|
|
387
|
-
shrinks to that.
|
|
388
|
-
|
|
389
375
|
Check that everything is wired up before going further:
|
|
390
376
|
|
|
391
377
|
```bash
|
|
@@ -92,10 +92,9 @@ Already have ollama running?
|
|
|
92
92
|
|
|
93
93
|
```bash
|
|
94
94
|
ollama pull qwen2.5-coder:1.5b
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
cli-guru
|
|
98
|
-
cli-guru install # adds the keybindings to your shell
|
|
95
|
+
pipx install cli-guru
|
|
96
|
+
cli-guru check # confirms ollama is reachable and the model is present
|
|
97
|
+
cli-guru install # adds the keybindings to your shell
|
|
99
98
|
```
|
|
100
99
|
|
|
101
100
|
Open a new terminal, type a question, press **Ctrl-X Ctrl-A**.
|
|
@@ -282,52 +281,42 @@ The server must be listening beyond loopback for that to work
|
|
|
282
281
|
|
|
283
282
|
# Installing cli-guru
|
|
284
283
|
|
|
285
|
-
cli-guru is **not on PyPI yet**, so install it from a clone:
|
|
286
|
-
|
|
287
284
|
```bash
|
|
288
|
-
|
|
289
|
-
pipx install ./cli-guru # recommended — isolated, and puts cli-guru on PATH
|
|
290
|
-
# or
|
|
291
|
-
uv tool install ./cli-guru
|
|
285
|
+
pipx install cli-guru # recommended — isolated, and puts cli-guru on PATH
|
|
292
286
|
# or
|
|
293
|
-
|
|
287
|
+
uv tool install cli-guru
|
|
294
288
|
```
|
|
295
289
|
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
is `pipx install .`, where that lone `.` is the argument and is easy to drop.
|
|
300
|
-
Staying in the parent directory and naming `./cli-guru` is harder to get wrong.
|
|
290
|
+
pipx and uv each give the tool its own virtualenv, which matters more than usual
|
|
291
|
+
here: cli-guru runs on every keypress, so you do not want it sharing an
|
|
292
|
+
environment whose contents can change under it.
|
|
301
293
|
|
|
302
|
-
Confirm it
|
|
294
|
+
Confirm it landed before going further:
|
|
303
295
|
|
|
304
296
|
```bash
|
|
305
297
|
pipx list # cli-guru should appear, with `- cli-guru` under it
|
|
306
298
|
```
|
|
307
299
|
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
To install without cloning first:
|
|
300
|
+
To run the unreleased code instead, install from a clone — note the path is the
|
|
301
|
+
argument, and a bare `pipx install` with nothing after it silently installs
|
|
302
|
+
nothing:
|
|
313
303
|
|
|
314
304
|
```bash
|
|
315
|
-
|
|
305
|
+
git clone https://github.com/erols/cli-guru
|
|
306
|
+
pipx install ./cli-guru
|
|
316
307
|
```
|
|
317
308
|
|
|
318
309
|
### Updating
|
|
319
310
|
|
|
320
311
|
```bash
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
exec bash -l # or open a new terminal
|
|
312
|
+
pipx upgrade cli-guru
|
|
313
|
+
cli-guru install # idempotent — refreshes the rc block
|
|
314
|
+
exec bash -l # or open a new terminal
|
|
325
315
|
```
|
|
326
316
|
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
leaves no doubt about which source was used.
|
|
317
|
+
Installed from a clone instead? Then it is `git pull` followed by
|
|
318
|
+
`pipx install --force ~/path/to/cli-guru`; `pipx upgrade` has no index to check
|
|
319
|
+
against for a path install.
|
|
331
320
|
|
|
332
321
|
**Why `cli-guru install` again.** The rc block holds the adapter's absolute
|
|
333
322
|
path, which lives inside the pipx virtualenv and carries the Python version in
|
|
@@ -352,9 +341,6 @@ cli-guru --version
|
|
|
352
341
|
bind -X | grep cli_guru # in a NEW shell: expect the two bindings
|
|
353
342
|
```
|
|
354
343
|
|
|
355
|
-
Once this is on PyPI, updating becomes `pipx upgrade cli-guru` and this section
|
|
356
|
-
shrinks to that.
|
|
357
|
-
|
|
358
344
|
Check that everything is wired up before going further:
|
|
359
345
|
|
|
360
346
|
```bash
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: cli-guru
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.1
|
|
4
4
|
Summary: Plain-language shell commands and man-page explanations from a local ollama model.
|
|
5
5
|
License: MIT
|
|
6
6
|
Project-URL: Homepage, https://github.com/erols/cli-guru
|
|
@@ -123,10 +123,9 @@ Already have ollama running?
|
|
|
123
123
|
|
|
124
124
|
```bash
|
|
125
125
|
ollama pull qwen2.5-coder:1.5b
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
cli-guru
|
|
129
|
-
cli-guru install # adds the keybindings to your shell
|
|
126
|
+
pipx install cli-guru
|
|
127
|
+
cli-guru check # confirms ollama is reachable and the model is present
|
|
128
|
+
cli-guru install # adds the keybindings to your shell
|
|
130
129
|
```
|
|
131
130
|
|
|
132
131
|
Open a new terminal, type a question, press **Ctrl-X Ctrl-A**.
|
|
@@ -313,52 +312,42 @@ The server must be listening beyond loopback for that to work
|
|
|
313
312
|
|
|
314
313
|
# Installing cli-guru
|
|
315
314
|
|
|
316
|
-
cli-guru is **not on PyPI yet**, so install it from a clone:
|
|
317
|
-
|
|
318
315
|
```bash
|
|
319
|
-
|
|
320
|
-
pipx install ./cli-guru # recommended — isolated, and puts cli-guru on PATH
|
|
321
|
-
# or
|
|
322
|
-
uv tool install ./cli-guru
|
|
316
|
+
pipx install cli-guru # recommended — isolated, and puts cli-guru on PATH
|
|
323
317
|
# or
|
|
324
|
-
|
|
318
|
+
uv tool install cli-guru
|
|
325
319
|
```
|
|
326
320
|
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
is `pipx install .`, where that lone `.` is the argument and is easy to drop.
|
|
331
|
-
Staying in the parent directory and naming `./cli-guru` is harder to get wrong.
|
|
321
|
+
pipx and uv each give the tool its own virtualenv, which matters more than usual
|
|
322
|
+
here: cli-guru runs on every keypress, so you do not want it sharing an
|
|
323
|
+
environment whose contents can change under it.
|
|
332
324
|
|
|
333
|
-
Confirm it
|
|
325
|
+
Confirm it landed before going further:
|
|
334
326
|
|
|
335
327
|
```bash
|
|
336
328
|
pipx list # cli-guru should appear, with `- cli-guru` under it
|
|
337
329
|
```
|
|
338
330
|
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
To install without cloning first:
|
|
331
|
+
To run the unreleased code instead, install from a clone — note the path is the
|
|
332
|
+
argument, and a bare `pipx install` with nothing after it silently installs
|
|
333
|
+
nothing:
|
|
344
334
|
|
|
345
335
|
```bash
|
|
346
|
-
|
|
336
|
+
git clone https://github.com/erols/cli-guru
|
|
337
|
+
pipx install ./cli-guru
|
|
347
338
|
```
|
|
348
339
|
|
|
349
340
|
### Updating
|
|
350
341
|
|
|
351
342
|
```bash
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
exec bash -l # or open a new terminal
|
|
343
|
+
pipx upgrade cli-guru
|
|
344
|
+
cli-guru install # idempotent — refreshes the rc block
|
|
345
|
+
exec bash -l # or open a new terminal
|
|
356
346
|
```
|
|
357
347
|
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
leaves no doubt about which source was used.
|
|
348
|
+
Installed from a clone instead? Then it is `git pull` followed by
|
|
349
|
+
`pipx install --force ~/path/to/cli-guru`; `pipx upgrade` has no index to check
|
|
350
|
+
against for a path install.
|
|
362
351
|
|
|
363
352
|
**Why `cli-guru install` again.** The rc block holds the adapter's absolute
|
|
364
353
|
path, which lives inside the pipx virtualenv and carries the Python version in
|
|
@@ -383,9 +372,6 @@ cli-guru --version
|
|
|
383
372
|
bind -X | grep cli_guru # in a NEW shell: expect the two bindings
|
|
384
373
|
```
|
|
385
374
|
|
|
386
|
-
Once this is on PyPI, updating becomes `pipx upgrade cli-guru` and this section
|
|
387
|
-
shrinks to that.
|
|
388
|
-
|
|
389
375
|
Check that everything is wired up before going further:
|
|
390
376
|
|
|
391
377
|
```bash
|
|
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
|
|
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
|