fix: restore Claude plugin setup compatibility (#3205)

* fix: stop passing removed Claude plugin config flags

* test: cover current Claude plugin install arguments

* docs: add beginner Windows install walkthrough
This commit is contained in:
asp
2026-09-21 14:32:26 -04:00
committed by GitHub
parent 8d59727633
commit d7cf4584cf
3 changed files with 26 additions and 8 deletions
+25
View File
@@ -173,6 +173,31 @@ For Claude Code plugin setup, updates, scope changes, and hook-profile changes:
npx ecc-universal@2.2.2 setup
```
#### Windows first-time walkthrough
If you are new to command-line tools, use this copy-and-paste path:
1. Install Node.js 18 or newer, Git, and Claude Code.
2. Open **PowerShell** from the Windows Start menu.
3. Confirm that each prerequisite is available:
```powershell
node --version
git --version
claude --version
```
4. Run the guided installer:
```powershell
npx ecc-universal@2.2.2 setup
```
5. For a typical personal setup, choose **Global user**, choose **Standard** hooks, and confirm.
6. Start a new Claude Code session and run `/plugin list` to verify that `ecc@ecc` is enabled.
This path does not require cloning the repository. If any prerequisite command is not found, install or repair that prerequisite before rerunning ECC setup.
If npm reports a version or cache error, confirm the registry version before retrying:
```bash
-3
View File
@@ -570,7 +570,6 @@ function verifyPluginAtScope(options) {
function ensurePluginAtScope(options) {
const run = options.run || runClaude;
const configuredHooks = options.hookConfiguration || hookOptions(options.hooks);
if (options.installed) {
run(
['plugin', 'update', CURRENT_PLUGIN_ID, '--scope', options.scope],
@@ -582,8 +581,6 @@ function ensurePluginAtScope(options) {
[
'plugin', 'install', CURRENT_PLUGIN_ID,
'--scope', options.scope,
'--config', `hooks_enabled=${configuredHooks.hooks_enabled}`,
'--config', `hook_profile=${configuredHooks.hook_profile}`,
],
{ cwd: options.projectRoot, phase: 'plugin-install' }
);
+1 -5
View File
@@ -278,7 +278,7 @@ test('requesting another scope fails without the PR 2 move-scope operation', ()
});
});
test('fresh install follows the exact inventory, marketplace, install, and verification sequence', () => {
test('fresh install uses supported Claude arguments and follows the verification sequence', () => {
withFixture({}, fixture => {
const result = setupClaudePlugin(setupOptions(fixture, {
scope: 'project',
@@ -294,8 +294,6 @@ test('fresh install follows the exact inventory, marketplace, install, and verif
[
'plugin', 'install', 'ecc@ecc',
'--scope', 'project',
'--config', 'hooks_enabled=true',
'--config', 'hook_profile=strict',
],
['plugin', 'list', '--json'],
]);
@@ -724,8 +722,6 @@ test('provider failures stop later operations and leave settings untouched', ()
const installArgv = [
'plugin', 'install', 'ecc@ecc',
'--scope', 'user',
'--config', 'hooks_enabled=true',
'--config', 'hook_profile=standard',
];
withFixture({
failures: [{