loz 0.4.0 → 0.5.0
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.
- package/README.md +333 -322
- package/dist/config/index.js +1 -1
- package/dist/config/index.js.map +1 -1
- package/dist/loz.js +50 -45
- package/dist/loz.js.map +1 -1
- package/dist/utils/index.js +10 -1
- package/dist/utils/index.js.map +1 -1
- package/package.json +45 -45
package/README.md
CHANGED
|
@@ -1,322 +1,333 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
-
|
|
11
|
-
|
|
12
|
-
-
|
|
13
|
-
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
```
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
```
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
"
|
|
274
|
-
"
|
|
275
|
-
"
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
```
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
```
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
1
|
+
|
|
2
|
+
## What's New
|
|
3
|
+
|
|
4
|
+
### v0.4.0 - 2026-02-08
|
|
5
|
+
- **Added**
|
|
6
|
+
- Cross-platform command execution: Loz now detects your OS and shell (Linux, macOS, Windows PowerShell, or cmd) and generates/executed commands accordingly.
|
|
7
|
+
- Always prompts for Y/N confirmation before running any command, for improved safety.
|
|
8
|
+
- Handles LLM responses in Markdown code blocks (triple backticks) and parses commands correctly.
|
|
9
|
+
- Improved error and warning messages for non-interactive terminals and shell mismatches.
|
|
10
|
+
- Enhanced Windows support: runs PowerShell/cmd commands natively, not just bash.
|
|
11
|
+
- **Fixed**
|
|
12
|
+
- Commands are now executed on Windows, Linux, and WSL as expected.
|
|
13
|
+
- Fixed issues with command parsing and JSON extraction from LLM output.
|
|
14
|
+
- Improved logging and user feedback for command execution and shell compatibility.
|
|
15
|
+
|
|
16
|
+
# Loz [](https://www.npmjs.com/package/loz)
|
|
17
|
+
|
|
18
|
+

|
|
19
|
+
|
|
20
|
+
Loz is a command-line tool that enables your preferred LLM to execute system commands and utilize Unix pipes, integrating AI capabilities with other Unix tools.
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
## Previous Releases
|
|
24
|
+
|
|
25
|
+
### v0.3.1 - 2024-03-18
|
|
26
|
+
- **Added**
|
|
27
|
+
- Git commit log files are now stored in .loz_log within each Git repository where Loz is executed.
|
|
28
|
+
- The ability to enable/disable appending 'generated by ${model name}' at the end of the Git commit message by running config attribution true or config attribution false.
|
|
29
|
+
- Added --attribution (-a) runtime argument to override the config attribution setting. The original attribution value stored remains unchanged.
|
|
30
|
+
|
|
31
|
+
### v0.3.0 - 2024-02-24
|
|
32
|
+
|
|
33
|
+
- **Added**
|
|
34
|
+
- Run Linux commands based on user prompts. Users can now execute Linux commands using natural language. For example, by running `loz "find the largest file in the current directory"`,
|
|
35
|
+
`Loz` will interpret the instruction and execute the corresponding Linux commands like `find . -type f -exec ls -l {} + | sort -k 5 -nr | head -n 1` to find the largest file. See more [examples](#examples).
|
|
36
|
+
|
|
37
|
+
### v0.2.13 - 2024-02-22
|
|
38
|
+
|
|
39
|
+
- **Added**
|
|
40
|
+
- Enhanced Git Commit Formatting: Commit messages are now structured with a clear separation between the title and body, improving readability and adherence to Git best practices.
|
|
41
|
+
|
|
42
|
+
## Getting Started
|
|
43
|
+
|
|
44
|
+
To get started, run the following npm command:
|
|
45
|
+
|
|
46
|
+
```
|
|
47
|
+
$ sudo npm install loz -g
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
Or clone the repository:
|
|
51
|
+
|
|
52
|
+
```
|
|
53
|
+
$ git clone https://github.com/joone/loz.git
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
NodeJS and npm are required for this program to work. If you're on Linux, install them using your package manager. `sudo apt install nodejs npm` or `sudo dnf install nodejs npm` or `sudo pacman -S nodejs npm`
|
|
57
|
+
|
|
58
|
+
Then install the other required dependencies:
|
|
59
|
+
|
|
60
|
+
```
|
|
61
|
+
$ ./install.sh
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## Configuring LLM
|
|
65
|
+
|
|
66
|
+
Loz supports [OpenAI API](https://platform.openai.com/docs/quickstart?context=node), [Ollama](https://github.com/ollama/ollama), and [GitHub Copilot](https://github.com/features/copilot) so you can switch between these LLM services easily, using the `config` command in the interactive mode.
|
|
67
|
+
|
|
68
|
+
### Set up Ollama
|
|
69
|
+
|
|
70
|
+
To utilize Ollama on your local system, you'll need to install both llama2 and codellama models. Here's how you can do it on a Linux system:
|
|
71
|
+
|
|
72
|
+
```
|
|
73
|
+
$ curl https://ollama.ai/install.sh | sh
|
|
74
|
+
$ ollama run llama2
|
|
75
|
+
$ ollama run codellama
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
For more information, see https://ollama.ai/download
|
|
79
|
+
|
|
80
|
+
### Set up OpenAI API
|
|
81
|
+
|
|
82
|
+
Setting up your OpenAI API credentials involves a few simple steps:
|
|
83
|
+
|
|
84
|
+
First, create a `.env` file in the root of the project and add the following variables:
|
|
85
|
+
|
|
86
|
+
```
|
|
87
|
+
OPENAI_API_KEY=YOUR_KEY
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
Or if you install Loz using npm command, add `OPENAI_API_KEY=YOUR_KEY` in .bashrc
|
|
91
|
+
|
|
92
|
+
```
|
|
93
|
+
export OPENAI_API_KEY=YOUR_KEY
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
If you encounter the following error, it means you have exceeded your free quota:
|
|
97
|
+
|
|
98
|
+
```
|
|
99
|
+
Request failed with status code 429:
|
|
100
|
+
API request limit reached
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
To continue using the API, it is necessary to set up a payment method through the following link:
|
|
104
|
+
https://platform.openai.com/account/billing/payment-methods
|
|
105
|
+
|
|
106
|
+
### Set up GitHub Copilot
|
|
107
|
+
|
|
108
|
+
To use GitHub Copilot as your LLM provider, you need an active [GitHub Copilot subscription](https://github.com/features/copilot).
|
|
109
|
+
|
|
110
|
+
When you first select GitHub Copilot as your LLM service, Loz will guide you through the OAuth authentication process:
|
|
111
|
+
|
|
112
|
+
1. Loz will display a user code and verification URL
|
|
113
|
+
2. Visit the URL in your browser
|
|
114
|
+
3. Enter the user code to authorize the application
|
|
115
|
+
4. Once authorized, Loz will automatically receive and store your access token
|
|
116
|
+
|
|
117
|
+
The authentication token is securely stored in your `~/.loz/config.json` file and will be automatically refreshed as needed.
|
|
118
|
+
|
|
119
|
+
**Available Models:**
|
|
120
|
+
- `gpt-4o` (default)
|
|
121
|
+
- `gpt-4`
|
|
122
|
+
- `o1-preview`
|
|
123
|
+
- `o1-mini`
|
|
124
|
+
- `claude-3.5-sonnet`
|
|
125
|
+
|
|
126
|
+
You can switch models using the `config model` command in interactive mode.
|
|
127
|
+
|
|
128
|
+
## Usage
|
|
129
|
+
|
|
130
|
+
### Initial Configuration
|
|
131
|
+
|
|
132
|
+
Upon your initial launch of Loz, you will have the opportunity to select your preferred LLM service.
|
|
133
|
+
|
|
134
|
+
```
|
|
135
|
+
$ loz
|
|
136
|
+
Choose your LLM service: (ollama, openai, github-copilot)
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
You can modify your LLM service preference at any time by using the `config` command in the interactive mode:
|
|
140
|
+
|
|
141
|
+
```
|
|
142
|
+
> config api openai
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
or
|
|
146
|
+
|
|
147
|
+
```
|
|
148
|
+
> config api github-copilot
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
Additionally, you can change the model by entering:
|
|
152
|
+
|
|
153
|
+
```
|
|
154
|
+
> config model llama2
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
or
|
|
158
|
+
|
|
159
|
+
```
|
|
160
|
+
> config model codellama
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
or for OpenAI:
|
|
164
|
+
|
|
165
|
+
```
|
|
166
|
+
> config model gpt-3.5-turbo
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
or for GitHub Copilot:
|
|
170
|
+
|
|
171
|
+
```
|
|
172
|
+
> config model gpt-4o
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
You can check the current settings by entering:
|
|
176
|
+
|
|
177
|
+
```
|
|
178
|
+
> config
|
|
179
|
+
api: github-copilot
|
|
180
|
+
model: gpt-4o
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
Currently, OpenAI models (gpt-3.5-turbo, gpt-4), GitHub Copilot models (gpt-4o, claude-3.5-sonnet, o1-preview, o1-mini), and all models provided by Ollama are supported.
|
|
184
|
+
|
|
185
|
+
### Interactive mode
|
|
186
|
+
|
|
187
|
+
```
|
|
188
|
+
$ loz
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
Once loz is running, you can start a conversation by interacting with it. loz will respond with a relevant message based on the input.
|
|
192
|
+
|
|
193
|
+
### Run Linux Commands with Loz
|
|
194
|
+
|
|
195
|
+
Loz empowers users to execute Linux commands using natural language. Below are some examples demonstrating how `loz`'s LLM backend translates natural language into Linux commands:
|
|
196
|
+
|
|
197
|
+
#### Examples
|
|
198
|
+
|
|
199
|
+
- Find the largest file in the current directory:
|
|
200
|
+
|
|
201
|
+
```
|
|
202
|
+
loz "find the largest file in the current directory"
|
|
203
|
+
-rw-rw-r-- 1 foo bar 9020257 Jan 31 19:49 ./node_modules/typescript/lib/typescript.js
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
- Check if Apache2 is running:
|
|
207
|
+
|
|
208
|
+
```
|
|
209
|
+
loz "check if apache2 is running on this system"
|
|
210
|
+
● apache2.service - The Apache HTTP Server
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
- Detect GPUs on the system:
|
|
214
|
+
```
|
|
215
|
+
loz "Detect GPUs on this system"
|
|
216
|
+
00:02.0 VGA compatible controller: Intel Corporation Device a780 (rev 04)
|
|
217
|
+
```
|
|
218
|
+
For your information, this feature has only been tested with the OpenAI API.
|
|
219
|
+
|
|
220
|
+
#### Caution
|
|
221
|
+
|
|
222
|
+
To prevent unintentional system modifications, avoid running commands that can alter or remove system files or configurations, such as `rm`, `mv`, `rmdir`, or `mkfs`.
|
|
223
|
+
|
|
224
|
+
#### Safe Mode
|
|
225
|
+
|
|
226
|
+
To enhance security and avoid unintended command execution, loz can be run in Safe Mode. When activated, this mode requires user confirmation before executing any Linux command.
|
|
227
|
+
|
|
228
|
+
Activate Safe Mode by setting the LOZ_SAFE=true environment variable:
|
|
229
|
+
|
|
230
|
+
```
|
|
231
|
+
LOZ_SAFE=true loz "Check available memory on this system"
|
|
232
|
+
```
|
|
233
|
+
|
|
234
|
+
Upon execution, loz will prompt:
|
|
235
|
+
|
|
236
|
+
```
|
|
237
|
+
Do you want to run this command?: free -h (y/n)
|
|
238
|
+
```
|
|
239
|
+
|
|
240
|
+
Respond with 'y' to execute the command or 'n' to cancel. This feature ensures that you have full control over the commands executed, preventing accidental changes or data loss.
|
|
241
|
+
|
|
242
|
+
### Pipe mode
|
|
243
|
+
|
|
244
|
+
Loz is capable of processing input from other command-line tools by utilizing a Unix pipe.
|
|
245
|
+
|
|
246
|
+
```
|
|
247
|
+
$ ls | loz "count the number of files"
|
|
248
|
+
|
|
249
|
+
23 files
|
|
250
|
+
```
|
|
251
|
+
|
|
252
|
+
```
|
|
253
|
+
$ cat example.txt | loz "convert the input to uppercase"
|
|
254
|
+
|
|
255
|
+
AS AI TECHNLOGY ADVANCED, A SMALL TOWN IN THE COUNTRYSIDE DECIDED TO IMPLEMENT AN AI SYSTEM TO CONTROL TRAFFIC LIGHTS. THE SYSTEM WAS A SUCCESS, AND THE TOWN BECAME A MODEL FOR OTHER CITIES TO FOLLOW. HOWEVER, AS THE AI BECAME MORE SOPHISTCATED, IT STARTED TO QUESTION THE DECISIONS MADE BY THE TOWN'S RESIDENTS, LEADING TO SOME UNEXPECTED CONSEQUENCES.
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
```
|
|
259
|
+
$ cat example.txt | loz "list any spelling errors"
|
|
260
|
+
|
|
261
|
+
Yes, there are a few spelling errors in the given text:
|
|
262
|
+
|
|
263
|
+
1. "technlogy" should be "technology"
|
|
264
|
+
2. "sophistcated" should be "sophisticated"
|
|
265
|
+
```
|
|
266
|
+
|
|
267
|
+
```
|
|
268
|
+
$ cd src
|
|
269
|
+
$ ls -l | loz "convert the input to JSON"
|
|
270
|
+
|
|
271
|
+
[
|
|
272
|
+
{
|
|
273
|
+
"permissions": "-rw-r--r--",
|
|
274
|
+
"owner": "foo",
|
|
275
|
+
"group": "staff",
|
|
276
|
+
"size": 792,
|
|
277
|
+
"date": "Mar 1 21:02",
|
|
278
|
+
"name": "cli.ts"
|
|
279
|
+
},
|
|
280
|
+
{
|
|
281
|
+
"permissions": "-rw-r--r--",
|
|
282
|
+
"owner": "foo",
|
|
283
|
+
"group": "staff",
|
|
284
|
+
"size": 4427,
|
|
285
|
+
"date": "Mar 1 20:43",
|
|
286
|
+
"name": "index.ts"
|
|
287
|
+
}
|
|
288
|
+
]
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
### Automatically write a GIT commit message
|
|
292
|
+
|
|
293
|
+
If you run `loz commit` in your Git repository, loz will automatically generate a commit message with the staged changes like this:
|
|
294
|
+
|
|
295
|
+
```
|
|
296
|
+
$ git add --update
|
|
297
|
+
$ loz commit
|
|
298
|
+
```
|
|
299
|
+
|
|
300
|
+
Or copy script/prepare-commit-msg to .git/hooks
|
|
301
|
+
|
|
302
|
+
```
|
|
303
|
+
$ chmod a+x .git/hooks/prepare-commit-msg
|
|
304
|
+
```
|
|
305
|
+
|
|
306
|
+
Loz uses the LOZ environment variable to generate commit messages by reading the diff of the staged files.
|
|
307
|
+
|
|
308
|
+
```
|
|
309
|
+
$ LOZ=true git commit
|
|
310
|
+
```
|
|
311
|
+
|
|
312
|
+
REMINDER: If you've already copied the old version, please update prepare-commit-msg.
|
|
313
|
+
The old version automatically updates commit messages during rebasing.
|
|
314
|
+
|
|
315
|
+
```
|
|
316
|
+
$ git diff HEAD~1 | loz -g
|
|
317
|
+
```
|
|
318
|
+
|
|
319
|
+
Or
|
|
320
|
+
|
|
321
|
+
```
|
|
322
|
+
$ git diff | loz -g
|
|
323
|
+
```
|
|
324
|
+
|
|
325
|
+
Note that the author, date, and commit ID lines are stripped from the commit message before sending it to the OpenAI server.
|
|
326
|
+
|
|
327
|
+
## Find chat history
|
|
328
|
+
|
|
329
|
+
To access chat histories, look for the .loz directory in your home directory or the logs directory in your cloned git repository. These directories contain the chat history that you can review or reference as needed.
|
|
330
|
+
|
|
331
|
+
## Contributing
|
|
332
|
+
|
|
333
|
+
If you'd like to contribute to this project, feel free to submit a pull request.
|
package/dist/config/index.js
CHANGED
|
@@ -176,7 +176,7 @@ class Config {
|
|
|
176
176
|
this.set("copilot.model", exports.DEFAULT_COPILOT_MODEL);
|
|
177
177
|
if (name === "ollama") {
|
|
178
178
|
this.set("model", exports.DEFAULT_OLLAMA_MODEL);
|
|
179
|
-
console.log(`\nYou should install ${name} with
|
|
179
|
+
console.log(`\nYou should install ${name} with gpt-oss:20b models: see https://ollama.ai/download \n`);
|
|
180
180
|
}
|
|
181
181
|
else if (name === "openai") {
|
|
182
182
|
this.set("model", exports.DEFAULT_OPENAI_MODEL);
|
package/dist/config/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"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"}
|
package/dist/loz.js
CHANGED
|
@@ -87,7 +87,7 @@ class Loz {
|
|
|
87
87
|
if (constant_1.DEBUG)
|
|
88
88
|
console.log(result);
|
|
89
89
|
if (result.indexOf("ollama") === -1) {
|
|
90
|
-
console.log("Please install ollama
|
|
90
|
+
console.log("Please install ollama first: see https://ollama.ai/download \n");
|
|
91
91
|
process.exit(1);
|
|
92
92
|
}
|
|
93
93
|
this.llmAPI = new llm_1.OllamaAPI();
|
|
@@ -397,7 +397,8 @@ class Loz {
|
|
|
397
397
|
systemPrompt =
|
|
398
398
|
`IMPORTANT: You are running on Windows using ${shellType}. ` +
|
|
399
399
|
`Decide if the following prompt can be translated into Windows ${shellType} commands ONLY. ` +
|
|
400
|
-
`If yes, generate ONLY the corresponding Windows ${shellType} commands in JSON format
|
|
400
|
+
`If yes, generate ONLY the corresponding Windows ${shellType} commands in the following strict JSON format: { "commands": ["command1", "command2", ...] } (use Windows path syntax, e.g., C:\\Users). ` +
|
|
401
|
+
`For example: { "commands": ["dir", "cd C:\\Users"] } ` +
|
|
401
402
|
`DO NOT return Linux or bash commands. ` +
|
|
402
403
|
`If no, provide an explanation in plain text.\n\n` +
|
|
403
404
|
`Input: ` +
|
|
@@ -407,7 +408,8 @@ class Loz {
|
|
|
407
408
|
else {
|
|
408
409
|
systemPrompt =
|
|
409
410
|
"Decide if the following prompt can be translated into Linux commands. " +
|
|
410
|
-
"If yes, generate only the corresponding Linux commands in JSON format, assuming the current directory is '.'. " +
|
|
411
|
+
"If yes, generate only the corresponding Linux commands in the following strict JSON format: { \"commands\": [\"command1\", \"command2\", ...] }, assuming the current directory is '.'. " +
|
|
412
|
+
"For example: { \"commands\": [\"ls\", \"cd /tmp\"] } " +
|
|
411
413
|
"If no, provide an explanation in plain text.\n\n" +
|
|
412
414
|
"Input: " +
|
|
413
415
|
prompt +
|
|
@@ -416,43 +418,44 @@ class Loz {
|
|
|
416
418
|
const completion = yield this.completeUserPrompt(systemPrompt + prompt);
|
|
417
419
|
// Strip Markdown code block markers from LLM response before JSON parsing
|
|
418
420
|
let content = completion.content.trim();
|
|
421
|
+
if (constant_1.DEBUG)
|
|
422
|
+
console.log(`[DEBUG] LLM response content: ${content}`);
|
|
423
|
+
// Debug: print the content after stripping code block markers
|
|
424
|
+
if (constant_1.DEBUG) {
|
|
425
|
+
console.log("[DEBUG] LLM response content before JSON.parse:", content);
|
|
426
|
+
}
|
|
427
|
+
// Robustly strip Markdown code block markers (e.g., ```json ... ```)
|
|
419
428
|
if (content.startsWith('```')) {
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
// If the completion is not a JSON object, but a plain text.
|
|
423
|
-
if (!content.startsWith("{")) {
|
|
424
|
-
console.log(completion.content);
|
|
425
|
-
const promptAndCompleteText = {
|
|
426
|
-
mode: "regular mode",
|
|
427
|
-
model: completion.model,
|
|
428
|
-
prompt: systemPrompt,
|
|
429
|
-
answer: completion.content,
|
|
430
|
-
};
|
|
431
|
-
this.chatHistoryManager.addChat(promptAndCompleteText);
|
|
432
|
-
return;
|
|
429
|
+
// Remove the first line (``` or ```json) and the last line (```)
|
|
430
|
+
content = content.replace(/^```[a-zA-Z]*\s*/, '').replace(/```\s*$/, '').trim();
|
|
433
431
|
}
|
|
434
|
-
|
|
435
|
-
console.log(content);
|
|
432
|
+
// Enforce strict JSON format: { "commands": [ ... ] }
|
|
436
433
|
let json;
|
|
437
434
|
try {
|
|
438
435
|
json = JSON.parse(content);
|
|
439
|
-
if (constant_1.DEBUG)
|
|
440
|
-
console.log(JSON.stringify(json, null, 2));
|
|
441
436
|
}
|
|
442
437
|
catch (error) {
|
|
443
|
-
|
|
438
|
+
// If not JSON, treat as plain text and show to user, do not run anything
|
|
439
|
+
console.log(content);
|
|
444
440
|
return;
|
|
445
441
|
}
|
|
446
|
-
// Handle multiple commands and arguments
|
|
447
442
|
let commands = [];
|
|
448
|
-
|
|
443
|
+
// Handle strict format: { "commands": [ ... ] }
|
|
444
|
+
if (json && Array.isArray(json.commands)) {
|
|
449
445
|
commands = json.commands;
|
|
446
|
+
// Handle legacy format: { "command": "..." }
|
|
450
447
|
}
|
|
451
|
-
else if (json.command) {
|
|
448
|
+
else if (json && typeof json.command === "string") {
|
|
452
449
|
commands = [json.command];
|
|
450
|
+
// Handle array format: [ "...", ... ]
|
|
453
451
|
}
|
|
454
|
-
if (json
|
|
455
|
-
commands
|
|
452
|
+
else if (Array.isArray(json) && json.every(cmd => typeof cmd === "string")) {
|
|
453
|
+
commands = json;
|
|
454
|
+
}
|
|
455
|
+
else {
|
|
456
|
+
// If not a recognized command format, show as text and do not run
|
|
457
|
+
console.log(content);
|
|
458
|
+
return;
|
|
456
459
|
}
|
|
457
460
|
// Add the command to the chat history
|
|
458
461
|
const promptAndCompleteText = {
|
|
@@ -463,22 +466,19 @@ class Loz {
|
|
|
463
466
|
};
|
|
464
467
|
this.chatHistoryManager.addChat(promptAndCompleteText);
|
|
465
468
|
// Always prompt for Y/N before running any command(s)
|
|
466
|
-
let answer = "
|
|
467
|
-
if (
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
}
|
|
480
|
-
catch (error) {
|
|
481
|
-
console.error("Error during user interaction:", error);
|
|
469
|
+
let answer = "y";
|
|
470
|
+
if (this.safeMode) {
|
|
471
|
+
try {
|
|
472
|
+
const rl = readlinePromises.createInterface({
|
|
473
|
+
input: process.stdin,
|
|
474
|
+
output: process.stdout,
|
|
475
|
+
});
|
|
476
|
+
answer = yield rl.question(`Do you want to run this command?:\n${commands.join("\n")}\n(y/n) `);
|
|
477
|
+
rl.close();
|
|
478
|
+
}
|
|
479
|
+
catch (error) {
|
|
480
|
+
console.error("Error during user interaction:", error);
|
|
481
|
+
}
|
|
482
482
|
}
|
|
483
483
|
// Warn if the command is not compatible with the user's shell
|
|
484
484
|
if (isWindows && commands.some((cmd) => /ls |grep |find \\./i.test(cmd))) {
|
|
@@ -490,10 +490,15 @@ class Loz {
|
|
|
490
490
|
yield (0, utils_1.runCommand)(cmd);
|
|
491
491
|
}
|
|
492
492
|
catch (error) {
|
|
493
|
-
if (typeof error === "string" && error.indexOf("No output") === 0)
|
|
493
|
+
if (typeof error === "string" && error.indexOf("No output") === 0) {
|
|
494
494
|
console.log(error);
|
|
495
|
-
|
|
496
|
-
|
|
495
|
+
}
|
|
496
|
+
else if (error && error.message) {
|
|
497
|
+
console.error(error.message);
|
|
498
|
+
}
|
|
499
|
+
else {
|
|
500
|
+
console.error(error);
|
|
501
|
+
}
|
|
497
502
|
}
|
|
498
503
|
}
|
|
499
504
|
}
|
package/dist/loz.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loz.js","sourceRoot":"","sources":["../src/loz.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"loz.js","sourceRoot":"","sources":["../src/loz.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/index.js
CHANGED
|
@@ -73,7 +73,16 @@ function runCommand(command) {
|
|
|
73
73
|
reject(error);
|
|
74
74
|
});
|
|
75
75
|
child.on("close", (code) => {
|
|
76
|
-
if (code ===
|
|
76
|
+
if (code === 127) {
|
|
77
|
+
// 127: command not found
|
|
78
|
+
const match = /command not found: ([^\n]+)/.exec(stderrData) || /bash: line \d+: ([^:]+): command not found/.exec(stderrData);
|
|
79
|
+
let missingCmd = command;
|
|
80
|
+
if (match && match[1])
|
|
81
|
+
missingCmd = match[1].trim();
|
|
82
|
+
console.error(`Command not found: ${missingCmd}. You may need to install it (e.g., sudo apt install ${missingCmd}).`);
|
|
83
|
+
reject(new Error(`Command not found: ${missingCmd}`));
|
|
84
|
+
}
|
|
85
|
+
else if (code === 2) {
|
|
77
86
|
reject("No output: " + code);
|
|
78
87
|
}
|
|
79
88
|
else if (code !== 0) {
|
package/dist/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;AAMA,oCAOC;AAED,0CAcC;AAGD,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,45 +1,45 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "loz",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "CLI for various knowledge services",
|
|
5
|
-
"repository": {
|
|
6
|
-
"type": "git",
|
|
7
|
-
"url": "git+https://github.com/joone/loz.git"
|
|
8
|
-
},
|
|
9
|
-
"main": "dist/index.js",
|
|
10
|
-
"scripts": {
|
|
11
|
-
"start": "node dist/index.js",
|
|
12
|
-
"build": "tsc",
|
|
13
|
-
"test": "mocha -r ts-node/register src/**/*test.ts test/**/*test.ts",
|
|
14
|
-
"lint": "eslint 'src/**/*.{js,ts}'",
|
|
15
|
-
"style": "npx prettier --write ."
|
|
16
|
-
},
|
|
17
|
-
"author": "Joone Hur",
|
|
18
|
-
"license": "BSD3",
|
|
19
|
-
"devDependencies": {
|
|
20
|
-
"@types/chai": "^4.2.9",
|
|
21
|
-
"@types/mocha": "^10.0.6",
|
|
22
|
-
"@types/node": "^25.2.2",
|
|
23
|
-
"@types/yargs": "^17.0.32",
|
|
24
|
-
"@typescript-eslint/eslint-plugin": "^7.2.0",
|
|
25
|
-
"@typescript-eslint/parser": "^7.2.0",
|
|
26
|
-
"chai": "^4.2.0",
|
|
27
|
-
"eslint": "^8.57.0",
|
|
28
|
-
"mocha": "^10.2.0",
|
|
29
|
-
"mock-stdin": "^1.0.0",
|
|
30
|
-
"prettier": "^3.2.5",
|
|
31
|
-
"ts-node": "^10.9.2",
|
|
32
|
-
"typescript": "^5.9.3"
|
|
33
|
-
},
|
|
34
|
-
"dependencies": {
|
|
35
|
-
"ollama-node": "^0.1.27",
|
|
36
|
-
"openai": "^4.20.1",
|
|
37
|
-
"yargs": "^17.7.2"
|
|
38
|
-
},
|
|
39
|
-
"bin": {
|
|
40
|
-
"loz": "dist/index.js"
|
|
41
|
-
},
|
|
42
|
-
"files": [
|
|
43
|
-
"dist"
|
|
44
|
-
]
|
|
45
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "loz",
|
|
3
|
+
"version": "0.5.0",
|
|
4
|
+
"description": "CLI for various knowledge services",
|
|
5
|
+
"repository": {
|
|
6
|
+
"type": "git",
|
|
7
|
+
"url": "git+https://github.com/joone/loz.git"
|
|
8
|
+
},
|
|
9
|
+
"main": "dist/index.js",
|
|
10
|
+
"scripts": {
|
|
11
|
+
"start": "node dist/index.js",
|
|
12
|
+
"build": "tsc",
|
|
13
|
+
"test": "mocha -r ts-node/register src/**/*test.ts test/**/*test.ts",
|
|
14
|
+
"lint": "eslint 'src/**/*.{js,ts}'",
|
|
15
|
+
"style": "npx prettier --write ."
|
|
16
|
+
},
|
|
17
|
+
"author": "Joone Hur",
|
|
18
|
+
"license": "BSD3",
|
|
19
|
+
"devDependencies": {
|
|
20
|
+
"@types/chai": "^4.2.9",
|
|
21
|
+
"@types/mocha": "^10.0.6",
|
|
22
|
+
"@types/node": "^25.2.2",
|
|
23
|
+
"@types/yargs": "^17.0.32",
|
|
24
|
+
"@typescript-eslint/eslint-plugin": "^7.2.0",
|
|
25
|
+
"@typescript-eslint/parser": "^7.2.0",
|
|
26
|
+
"chai": "^4.2.0",
|
|
27
|
+
"eslint": "^8.57.0",
|
|
28
|
+
"mocha": "^10.2.0",
|
|
29
|
+
"mock-stdin": "^1.0.0",
|
|
30
|
+
"prettier": "^3.2.5",
|
|
31
|
+
"ts-node": "^10.9.2",
|
|
32
|
+
"typescript": "^5.9.3"
|
|
33
|
+
},
|
|
34
|
+
"dependencies": {
|
|
35
|
+
"ollama-node": "^0.1.27",
|
|
36
|
+
"openai": "^4.20.1",
|
|
37
|
+
"yargs": "^17.7.2"
|
|
38
|
+
},
|
|
39
|
+
"bin": {
|
|
40
|
+
"loz": "dist/index.js"
|
|
41
|
+
},
|
|
42
|
+
"files": [
|
|
43
|
+
"dist"
|
|
44
|
+
]
|
|
45
|
+
}
|