npm release

This commit is contained in:
Matyi Kari 2025-03-05 17:02:41 -06:00
parent 053946fa2e
commit 8c4d3768be
4 changed files with 80 additions and 38 deletions

View File

@ -8,28 +8,62 @@ Before using this tool, you need to configure your API key and preferences.
Get an OpenAI API key at https://platform.openai.com/api-keys Get an OpenAI API key at https://platform.openai.com/api-keys
Alternatively, sign up for VVK Cloud at https://vvk.ai/ Alternatively, sign up for VVK Cloud at https://vvk.ai/
## **Development** ## Installation
To set up the development environment: ### Prerequisites
- Node.js 18+
Verify with:
```bash ```bash
# Clone the repository node --version
git clone https://github.com/matyik/vvk.git
# Install dependencies
pnpm install
# Build the project
pnpm build
# Create a global link
pnpm link --global
# Now you can use the development version globally
vvk <command>
``` ```
### **Setup Configuration** ### Install as a Global CLI Tool
```bash
# Using npm
npm install -g vvk
# Using pnpm
pnpm add -g vvk
# Using yarn
yarn global add vvk
```
### Verify Installation
```bash
vvk --version
```
### Update
```bash
npm update -g vvk
# or
pnpm update -g vvk
```
### Uninstall
```bash
npm uninstall -g vvk
# or
pnpm remove -g vvk
```
### Troubleshooting
- **Permission Errors**: Use `sudo` (not recommended) or fix npm permissions:
```bash
# Reset npm permissions
npm config set prefix ~/.npm-global
echo 'export PATH="$PATH:$HOME/.npm-global/bin"' >> ~/.bashrc
source ~/.bashrc
```
## **Setup Configuration**
Use the `vvk config set` command to configure your settings: Use the `vvk config set` command to configure your settings:
@ -50,7 +84,7 @@ You can check your current settings with:
vvk config list vvk config list
``` ```
### **Login** ## **Login**
Use the `vvk login` command to log in in the browser: Use the `vvk login` command to log in in the browser:
@ -93,6 +127,27 @@ The tool will:
3. Show you the command for confirmation (if enabled) 3. Show you the command for confirmation (if enabled)
4. Execute the command upon your approval 4. Execute the command upon your approval
## **Development**
To set up the development environment:
```bash
# Clone the repository
git clone https://github.com/matyik/vvk.git
# Install dependencies
pnpm install
# Build the project
pnpm build
# Create a global link
pnpm link --global
# Now you can use the development version globally
vvk <command>
```
## **License** ## **License**
MIT License - see LICENSE file for details MIT License - see LICENSE file for details

View File

@ -1,14 +1,19 @@
{ {
"name": "vvk", "name": "vvk",
"version": "1.1.0", "version": "1.1.1",
"description": "A command-line interface tool that converts natural language instructions into shell commands using OpenAI's GPT-4.", "description": "A command-line interface tool that converts natural language instructions into shell commands using OpenAI's GPT-4.",
"main": "index.js", "main": "dist/index.js",
"scripts": { "scripts": {
"build": "rimraf dist && webpack" "build": "rimraf dist && webpack"
}, },
"bin": { "bin": {
"vvk": "dist/index.js" "vvk": "dist/index.js"
}, },
"files": [
"dist/",
"README.md",
"LICENSE"
],
"keywords": [], "keywords": [],
"author": "Matyi Kari", "author": "Matyi Kari",
"license": "MIT", "license": "MIT",
@ -23,8 +28,6 @@
}, },
"dependencies": { "dependencies": {
"axios": "^1.8.1", "axios": "^1.8.1",
"child_process": "^1.0.2", "openai": "^4.85.4"
"openai": "^4.85.4",
"readline": "^1.3.0"
} }
} }

16
pnpm-lock.yaml generated
View File

@ -11,15 +11,9 @@ importers:
axios: axios:
specifier: ^1.8.1 specifier: ^1.8.1
version: 1.8.1 version: 1.8.1
child_process:
specifier: ^1.0.2
version: 1.0.2
openai: openai:
specifier: ^4.85.4 specifier: ^4.85.4
version: 4.86.0 version: 4.86.0
readline:
specifier: ^1.3.0
version: 1.3.0
devDependencies: devDependencies:
'@types/node': '@types/node':
specifier: ^22.13.5 specifier: ^22.13.5
@ -277,9 +271,6 @@ packages:
resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
engines: {node: '>=10'} engines: {node: '>=10'}
child_process@1.0.2:
resolution: {integrity: sha512-Wmza/JzL0SiWz7kl6MhIKT5ceIlnFPJX+lwUGj7Clhy5MMldsSoJR0+uvRzOS5Kv45Mq7t1PoE8TsOA9bzvb6g==}
chrome-trace-event@1.0.4: chrome-trace-event@1.0.4:
resolution: {integrity: sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==} resolution: {integrity: sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==}
engines: {node: '>=6.0'} engines: {node: '>=6.0'}
@ -660,9 +651,6 @@ packages:
randombytes@2.1.0: randombytes@2.1.0:
resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==}
readline@1.3.0:
resolution: {integrity: sha512-k2d6ACCkiNYz222Fs/iNze30rRJ1iIicW7JuX/7/cozvih6YCkFZH+J6mAFDVgv0dRBaAyr4jDqC95R2y4IADg==}
rechoir@0.8.0: rechoir@0.8.0:
resolution: {integrity: sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==} resolution: {integrity: sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==}
engines: {node: '>= 10.13.0'} engines: {node: '>= 10.13.0'}
@ -1155,8 +1143,6 @@ snapshots:
ansi-styles: 4.3.0 ansi-styles: 4.3.0
supports-color: 7.2.0 supports-color: 7.2.0
child_process@1.0.2: {}
chrome-trace-event@1.0.4: {} chrome-trace-event@1.0.4: {}
clone-deep@4.0.1: clone-deep@4.0.1:
@ -1470,8 +1456,6 @@ snapshots:
dependencies: dependencies:
safe-buffer: 5.2.1 safe-buffer: 5.2.1
readline@1.3.0: {}
rechoir@0.8.0: rechoir@0.8.0:
dependencies: dependencies:
resolve: 1.22.10 resolve: 1.22.10

View File

@ -29,7 +29,7 @@ if (args[0] === 'config') {
`); `);
process.exit(0); process.exit(0);
} else if ((args[0] === '--version' || args[0] === '-v') && args.length === 1) { } else if ((args[0] === '--version' || args[0] === '-v') && args.length === 1) {
console.log('1.1.0'); console.log('1.1.1');
} else if (args[0] === 'login' && args.length === 1) { } else if (args[0] === 'login' && args.length === 1) {
login(); login();
} else if (args[0] === 'logout' && args.length === 1) { } else if (args[0] === 'logout' && args.length === 1) {