@calebmabry/wami 0.1.2 → 0.2.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 +58 -26
- package/dist/cli.js +2780 -161
- package/package.json +35 -4
package/README.md
CHANGED
|
@@ -9,26 +9,40 @@
|
|
|
9
9
|
|
|
10
10
|
- 🚀 **Zero Config** - Works instantly in any repo. No setup files needed.
|
|
11
11
|
- 🔍 **Smart Detection** - Auto-detects Node.js, Python, and more
|
|
12
|
+
- 🛠️ **Auto-discover Dev Tools** - Detects ruff, pytest, eslint, prettier, and more from dependencies
|
|
12
13
|
- 📦 **Multi-Package Manager** - Supports npm, yarn, pnpm, bun, poetry, uv, pipenv, pip
|
|
14
|
+
- 🎯 **Task Runner Support** - Poethepoet (poe), npm scripts, and more
|
|
13
15
|
- 📝 **Command History** - Remembers commands with arguments across sessions
|
|
14
16
|
- ✏️ **Interactive Editing** - Add arguments on-the-fly, edit before running
|
|
15
|
-
-
|
|
16
|
-
-
|
|
17
|
+
- ⚡ **Custom Commands** - Create and save custom commands with arguments
|
|
18
|
+
- 🔎 **Smart Search** - Filter through 50+ scripts instantly with fuzzy search
|
|
19
|
+
- 🏢 **Mono-repo Ready** - Intelligently detects and switches between multiple projects
|
|
20
|
+
- ⌨️ **Vim Navigation** - j/k keys for navigation, familiar keyboard shortcuts
|
|
17
21
|
|
|
18
22
|
## 📦 Installation
|
|
19
23
|
|
|
24
|
+
### Try it without installing (npx)
|
|
25
|
+
|
|
20
26
|
```bash
|
|
21
|
-
|
|
22
|
-
|
|
27
|
+
npx @calebmabry/wami
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
Perfect for trying it out or using in CI/CD without global installation!
|
|
31
|
+
|
|
32
|
+
### Install globally
|
|
23
33
|
|
|
34
|
+
```bash
|
|
24
35
|
# Using npm
|
|
25
|
-
npm
|
|
36
|
+
npm i -g @calebmabry/wami
|
|
37
|
+
|
|
38
|
+
# Using bun
|
|
39
|
+
bun install -g @calebmabry/wami
|
|
26
40
|
|
|
27
41
|
# Using pnpm
|
|
28
|
-
pnpm add -g wami
|
|
42
|
+
pnpm add -g @calebmabry/wami
|
|
29
43
|
|
|
30
44
|
# Using yarn
|
|
31
|
-
yarn global add wami
|
|
45
|
+
yarn global add @calebmabry/wami
|
|
32
46
|
```
|
|
33
47
|
|
|
34
48
|
## 🚀 Usage
|
|
@@ -36,36 +50,54 @@ yarn global add wami
|
|
|
36
50
|
Navigate to any project and run:
|
|
37
51
|
|
|
38
52
|
```bash
|
|
53
|
+
# If installed globally
|
|
39
54
|
wami
|
|
55
|
+
|
|
56
|
+
# Or use npx (no installation needed)
|
|
57
|
+
npx @calebmabry/wami
|
|
40
58
|
```
|
|
41
59
|
|
|
42
60
|
### Keyboard Shortcuts
|
|
43
61
|
|
|
44
|
-
|
|
45
|
-
- **
|
|
46
|
-
- **
|
|
47
|
-
- **
|
|
48
|
-
- **
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
- **
|
|
62
|
+
#### Navigation
|
|
63
|
+
- **↑/↓ or j/k** - Navigate through scripts (vim-style)
|
|
64
|
+
- **Enter** - Run selected script immediately
|
|
65
|
+
- **Esc** - Go back/cancel (context-aware)
|
|
66
|
+
- **q** - Quit application
|
|
67
|
+
|
|
68
|
+
#### Actions
|
|
69
|
+
- **a** - Add arguments to command before running
|
|
70
|
+
- **e** - Edit full command before running
|
|
71
|
+
- **c** - Create custom command (or clear search if active)
|
|
72
|
+
- **d** - Delete command from history
|
|
73
|
+
- **/** or **s** - Search/filter scripts
|
|
74
|
+
- **p** - Switch between projects (in mono-repos)
|
|
75
|
+
|
|
76
|
+
#### In Input Modes
|
|
77
|
+
- **Tab** - Switch between fields
|
|
78
|
+
- **←/→** - Move cursor
|
|
79
|
+
- **Backspace** - Delete character
|
|
80
|
+
- **Esc** - Cancel and return
|
|
52
81
|
|
|
53
82
|
## 🎯 Supported Ecosystems
|
|
54
83
|
|
|
55
84
|
### Node.js
|
|
56
|
-
Detects \`package.json\`
|
|
57
|
-
|
|
58
|
-
-
|
|
59
|
-
|
|
60
|
-
|
|
85
|
+
**Detects:** \`package.json\`
|
|
86
|
+
**Package Managers:** npm, yarn, pnpm, bun
|
|
87
|
+
**Auto-detected Tools:** TypeScript, ESLint, Prettier, Biome, Vitest, Jest, Playwright, Cypress
|
|
88
|
+
|
|
89
|
+
Automatically discovers and shows dev tools installed in your dependencies.
|
|
61
90
|
|
|
62
91
|
### Python
|
|
63
|
-
Detects \`pyproject.toml\`, \`Pipfile\`,
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
-
|
|
67
|
-
|
|
68
|
-
|
|
92
|
+
**Detects:** \`pyproject.toml\`, \`Pipfile\`, \`requirements.txt\`
|
|
93
|
+
**Package Managers:** poetry, uv, pipenv, pip, PDM
|
|
94
|
+
**Task Runners:** poethepoet (poe)
|
|
95
|
+
**Auto-detected Tools:** ruff, pytest, black, mypy, pyright, isort, flake8, pylint, coverage, pre-commit, bandit, sphinx
|
|
96
|
+
|
|
97
|
+
Automatically discovers:
|
|
98
|
+
- Scripts from \`[project.scripts]\` (PEP 621)
|
|
99
|
+
- Tasks from \`[tool.poe.tasks]\` (poethepoet)
|
|
100
|
+
- Dev tools from dependencies (both main and dev groups)
|
|
69
101
|
|
|
70
102
|
## 🏗️ How It Works
|
|
71
103
|
|