@oh-my-pi/cli 0.9.2 → 1.3.37
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 +52 -35
- package/dist/cli.js +1155 -1035
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/doctor.d.ts +0 -2
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/enable.d.ts +2 -2
- package/dist/commands/enable.d.ts.map +1 -1
- package/dist/commands/env.d.ts.map +1 -1
- package/dist/commands/features.d.ts.map +1 -1
- package/dist/commands/init.d.ts +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/install.d.ts +0 -2
- package/dist/commands/install.d.ts.map +1 -1
- package/dist/commands/link.d.ts +0 -2
- package/dist/commands/link.d.ts.map +1 -1
- package/dist/commands/list.d.ts +0 -2
- package/dist/commands/list.d.ts.map +1 -1
- package/dist/commands/outdated.d.ts +0 -2
- package/dist/commands/outdated.d.ts.map +1 -1
- package/dist/commands/uninstall.d.ts +0 -2
- package/dist/commands/uninstall.d.ts.map +1 -1
- package/dist/commands/update.d.ts +0 -2
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/why.d.ts +0 -2
- package/dist/commands/why.d.ts.map +1 -1
- package/dist/loader.d.ts +4 -4
- package/dist/loader.d.ts.map +1 -1
- package/dist/lock.d.ts +2 -2
- package/dist/lock.d.ts.map +1 -1
- package/dist/lockfile.d.ts +6 -6
- package/dist/lockfile.d.ts.map +1 -1
- package/dist/manifest.d.ts +23 -10
- package/dist/manifest.d.ts.map +1 -1
- package/dist/paths.d.ts +15 -44
- package/dist/paths.d.ts.map +1 -1
- package/dist/runtime.d.ts +3 -3
- package/dist/runtime.d.ts.map +1 -1
- package/dist/symlinks.d.ts +12 -7
- package/dist/symlinks.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -60,7 +60,7 @@ omp update
|
|
|
60
60
|
|
|
61
61
|
## How It Works
|
|
62
62
|
|
|
63
|
-
omp installs plugins via npm and sets up your pi configuration:
|
|
63
|
+
omp installs plugins globally via npm and sets up your pi configuration:
|
|
64
64
|
|
|
65
65
|
```
|
|
66
66
|
~/.pi/
|
|
@@ -80,49 +80,54 @@ omp installs plugins via npm and sets up your pi configuration:
|
|
|
80
80
|
|
|
81
81
|
**Tools** are loaded directly from node_modules via a generated loader. Plugins specify `omp.tools` pointing to their tool factory. This allows tools to use npm dependencies without workarounds.
|
|
82
82
|
|
|
83
|
-
##
|
|
83
|
+
## Project-Level Overrides
|
|
84
84
|
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
| Scope | Config Location | Agent Directory | Use Case |
|
|
88
|
-
| ------ | ---------------- | --------------- | ------------------------ |
|
|
89
|
-
| Global | `~/.pi/plugins/` | `~/.pi/agent/` | Personal defaults |
|
|
90
|
-
| Local | `.pi/` | `.pi/agent/` | Project-specific plugins |
|
|
85
|
+
While plugins are installed globally, you can customize their behavior per-project using `.pi/overrides.json`:
|
|
91
86
|
|
|
92
87
|
```bash
|
|
93
|
-
#
|
|
94
|
-
omp
|
|
95
|
-
omp install -l @oh-my-pi/subagents # Local
|
|
88
|
+
# Initialize project overrides
|
|
89
|
+
omp init
|
|
96
90
|
|
|
97
|
-
#
|
|
98
|
-
omp
|
|
91
|
+
# Disable a plugin for this project only
|
|
92
|
+
omp disable @oh-my-pi/subagents -l
|
|
93
|
+
|
|
94
|
+
# Enable different features in this project
|
|
95
|
+
omp features @oh-my-pi/exa --set search -l
|
|
96
|
+
|
|
97
|
+
# Override config variables for this project
|
|
98
|
+
omp config @oh-my-pi/exa apiKey sk-project-specific -l
|
|
99
99
|
```
|
|
100
100
|
|
|
101
|
-
|
|
101
|
+
Project overrides are stored in:
|
|
102
|
+
|
|
103
|
+
- `.pi/overrides.json` - disabled plugins list
|
|
104
|
+
- `.pi/store/` - feature and config overrides (merged with global, project takes precedence)
|
|
105
|
+
|
|
106
|
+
The loader automatically merges project overrides at runtime.
|
|
102
107
|
|
|
103
108
|
## Commands
|
|
104
109
|
|
|
105
|
-
| Command | Alias | Description
|
|
106
|
-
| ---------------------- | ----- |
|
|
107
|
-
| `omp install [pkg...]` | `i` | Install plugin(s). No args = install from
|
|
108
|
-
| `omp uninstall <pkg>` | `rm` | Remove plugin and its symlinks
|
|
109
|
-
| `omp update [pkg]` | `up` | Update to latest within semver range
|
|
110
|
-
| `omp list` | `ls` | Show installed plugins
|
|
111
|
-
| `omp search <query>` | | Search npm for plugins
|
|
112
|
-
| `omp info <pkg>` | | Show plugin details before install
|
|
113
|
-
| `omp outdated` | | List plugins with newer versions
|
|
114
|
-
| `omp doctor` | | Check for broken symlinks, conflicts
|
|
115
|
-
| `omp link <path>` | | Symlink local plugin (dev mode)
|
|
116
|
-
| `omp create <name>` | | Scaffold new plugin from template
|
|
117
|
-
| `omp init` | | Create .pi/
|
|
118
|
-
| `omp why <file>` | | Show which plugin installed a file
|
|
119
|
-
| `omp enable <name>` | | Enable a disabled plugin
|
|
120
|
-
| `omp disable <name>` | | Disable plugin without uninstalling
|
|
121
|
-
| `omp features <name>` | | List or configure plugin features
|
|
122
|
-
| `omp config <name>` | | Get or set plugin configuration
|
|
123
|
-
| `omp env` | | Print environment variables for shell eval
|
|
124
|
-
|
|
125
|
-
|
|
110
|
+
| Command | Alias | Description |
|
|
111
|
+
| ---------------------- | ----- | -------------------------------------------------------- |
|
|
112
|
+
| `omp install [pkg...]` | `i` | Install plugin(s). No args = install from package.json |
|
|
113
|
+
| `omp uninstall <pkg>` | `rm` | Remove plugin and its symlinks |
|
|
114
|
+
| `omp update [pkg]` | `up` | Update to latest within semver range |
|
|
115
|
+
| `omp list` | `ls` | Show installed plugins |
|
|
116
|
+
| `omp search <query>` | | Search npm for plugins |
|
|
117
|
+
| `omp info <pkg>` | | Show plugin details before install |
|
|
118
|
+
| `omp outdated` | | List plugins with newer versions |
|
|
119
|
+
| `omp doctor` | | Check for broken symlinks, conflicts |
|
|
120
|
+
| `omp link <path>` | | Symlink local plugin (dev mode) |
|
|
121
|
+
| `omp create <name>` | | Scaffold new plugin from template |
|
|
122
|
+
| `omp init` | | Create .pi/overrides.json for project-local config |
|
|
123
|
+
| `omp why <file>` | | Show which plugin installed a file |
|
|
124
|
+
| `omp enable <name>` | | Enable a disabled plugin (-l for project override) |
|
|
125
|
+
| `omp disable <name>` | | Disable plugin without uninstalling (-l for project) |
|
|
126
|
+
| `omp features <name>` | | List or configure plugin features (-l for project) |
|
|
127
|
+
| `omp config <name>` | | Get or set plugin configuration (-l for project) |
|
|
128
|
+
| `omp env` | | Print environment variables for shell eval (-l to merge) |
|
|
129
|
+
|
|
130
|
+
Commands that modify plugin state (enable, disable, features, config, env) accept `-l`/`--local` to use project-level overrides instead of global config.
|
|
126
131
|
|
|
127
132
|
## Feature Selection
|
|
128
133
|
|
|
@@ -161,6 +166,9 @@ omp features @oh-my-pi/exa --disable search
|
|
|
161
166
|
|
|
162
167
|
# Set exact feature list
|
|
163
168
|
omp features @oh-my-pi/exa --set search,websets
|
|
169
|
+
|
|
170
|
+
# Override features for current project only
|
|
171
|
+
omp features @oh-my-pi/exa --set search -l
|
|
164
172
|
```
|
|
165
173
|
|
|
166
174
|
## Plugin Configuration
|
|
@@ -179,6 +187,9 @@ omp config @oh-my-pi/exa apiKey sk-xxx
|
|
|
179
187
|
|
|
180
188
|
# Reset to default
|
|
181
189
|
omp config @oh-my-pi/exa apiKey --delete
|
|
190
|
+
|
|
191
|
+
# Override for current project only
|
|
192
|
+
omp config @oh-my-pi/exa apiKey sk-project -l
|
|
182
193
|
```
|
|
183
194
|
|
|
184
195
|
Variables with `env` mappings can be exported as environment variables:
|
|
@@ -190,6 +201,9 @@ eval "$(omp env)"
|
|
|
190
201
|
# Fish shell
|
|
191
202
|
omp env --fish | source
|
|
192
203
|
|
|
204
|
+
# Merge project overrides
|
|
205
|
+
eval "$(omp env -l)"
|
|
206
|
+
|
|
193
207
|
# Persist in your shell config
|
|
194
208
|
omp env >> ~/.bashrc
|
|
195
209
|
```
|
|
@@ -337,6 +351,9 @@ omp disable @oh-my-pi/subagents
|
|
|
337
351
|
|
|
338
352
|
# Re-enable it later
|
|
339
353
|
omp enable @oh-my-pi/subagents
|
|
354
|
+
|
|
355
|
+
# Disable just for this project
|
|
356
|
+
omp disable @oh-my-pi/subagents -l
|
|
340
357
|
```
|
|
341
358
|
|
|
342
359
|
## Credits
|