Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion plugins/explanatory-output-style/hooks/hooks.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
"hooks": [
{
"type": "command",
"command": "${CLAUDE_PLUGIN_ROOT}/hooks-handlers/session-start.sh"
"command": "bash -c 'bash \"${CLAUDE_PLUGIN_ROOT//\\\\//}/hooks-handlers/session-start.sh\"'"
}
]
}
Expand Down
2 changes: 1 addition & 1 deletion plugins/learning-output-style/hooks/hooks.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
"hooks": [
{
"type": "command",
"command": "${CLAUDE_PLUGIN_ROOT}/hooks-handlers/session-start.sh"
"command": "bash -c 'bash \"${CLAUDE_PLUGIN_ROOT//\\\\//}/hooks-handlers/session-start.sh\"'"
}
]
}
Expand Down
14 changes: 7 additions & 7 deletions plugins/plugin-dev/skills/command-development/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -553,7 +553,7 @@ Review results and report findings.

```markdown
# Execute plugin script
!`bash ${CLAUDE_PLUGIN_ROOT}/scripts/script.sh`
!`bash "${CLAUDE_PLUGIN_ROOT}/scripts/script.sh"`

# Load plugin configuration
@${CLAUDE_PLUGIN_ROOT}/config/settings.json
Expand Down Expand Up @@ -635,9 +635,9 @@ description: Complete build workflow
allowed-tools: Bash(*)
---

Build: !`bash ${CLAUDE_PLUGIN_ROOT}/scripts/build.sh`
Test: !`bash ${CLAUDE_PLUGIN_ROOT}/scripts/test.sh`
Package: !`bash ${CLAUDE_PLUGIN_ROOT}/scripts/package.sh`
Build: !`bash "${CLAUDE_PLUGIN_ROOT}/scripts/build.sh"`
Test: !`bash "${CLAUDE_PLUGIN_ROOT}/scripts/test.sh"`
Package: !`bash "${CLAUDE_PLUGIN_ROOT}/scripts/package.sh"`

Review outputs and report workflow status.
```
Expand Down Expand Up @@ -796,8 +796,8 @@ allowed-tools: Bash(test:*)
---

Validate plugin setup:
- Script: !`test -x ${CLAUDE_PLUGIN_ROOT}/bin/analyze && echo "✓" || echo "✗"`
- Config: !`test -f ${CLAUDE_PLUGIN_ROOT}/config.json && echo "✓" || echo "✗"`
- Script: !`test -x "${CLAUDE_PLUGIN_ROOT}/bin/analyze" && echo "✓" || echo "✗"`
- Config: !`test -f "${CLAUDE_PLUGIN_ROOT}/config.json" && echo "✓" || echo "✗"`

If all checks pass, run analysis.
Otherwise, report missing components.
Expand All @@ -811,7 +811,7 @@ description: Build with error handling
allowed-tools: Bash(*)
---

Execute build: !`bash ${CLAUDE_PLUGIN_ROOT}/scripts/build.sh 2>&1 || echo "BUILD_FAILED"`
Execute build: !`bash "${CLAUDE_PLUGIN_ROOT}/scripts/build.sh" 2>&1 || echo "BUILD_FAILED"`

If build succeeded:
Report success and output location
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,13 +65,13 @@ model: sonnet
Running complete audit on $1:

**Security scan:**
!`bash ${CLAUDE_PLUGIN_ROOT}/scripts/security-scan.sh $1`
!`bash "${CLAUDE_PLUGIN_ROOT}/scripts/security-scan.sh" $1`

**Performance analysis:**
!`bash ${CLAUDE_PLUGIN_ROOT}/scripts/perf-analyze.sh $1`
!`bash "${CLAUDE_PLUGIN_ROOT}/scripts/perf-analyze.sh" $1`

**Best practices check:**
!`bash ${CLAUDE_PLUGIN_ROOT}/scripts/best-practices.sh $1`
!`bash "${CLAUDE_PLUGIN_ROOT}/scripts/best-practices.sh" $1`

Analyze all results and create comprehensive report including:
- Critical issues requiring immediate attention
Expand Down Expand Up @@ -141,16 +141,16 @@ allowed-tools: Bash(*), Read
Executing release workflow for version $1:

**Step 1 - Pre-release validation:**
!`bash ${CLAUDE_PLUGIN_ROOT}/scripts/pre-release-check.sh $1`
!`bash "${CLAUDE_PLUGIN_ROOT}/scripts/pre-release-check.sh" $1`

**Step 2 - Build artifacts:**
!`bash ${CLAUDE_PLUGIN_ROOT}/scripts/build-release.sh $1`
!`bash "${CLAUDE_PLUGIN_ROOT}/scripts/build-release.sh" $1`

**Step 3 - Run test suite:**
!`bash ${CLAUDE_PLUGIN_ROOT}/scripts/run-tests.sh`
!`bash "${CLAUDE_PLUGIN_ROOT}/scripts/run-tests.sh"`

**Step 4 - Package release:**
!`bash ${CLAUDE_PLUGIN_ROOT}/scripts/package.sh $1`
!`bash "${CLAUDE_PLUGIN_ROOT}/scripts/package.sh" $1`

Review all step outputs and report:
1. Any failures or warnings
Expand Down Expand Up @@ -358,17 +358,17 @@ allowed-tools: Bash(*)

Validate environment argument: !`echo "$1" | grep -E "^(dev|staging|prod)$" && echo "VALID" || echo "INVALID"`

Check build script exists: !`test -x ${CLAUDE_PLUGIN_ROOT}/scripts/build.sh && echo "EXISTS" || echo "MISSING"`
Check build script exists: !`test -x "${CLAUDE_PLUGIN_ROOT}/scripts/build.sh" && echo "EXISTS" || echo "MISSING"`

Verify configuration available: !`test -f ${CLAUDE_PLUGIN_ROOT}/config/$1.json && echo "FOUND" || echo "NOT_FOUND"`
Verify configuration available: !`test -f "${CLAUDE_PLUGIN_ROOT}/config/$1.json" && echo "FOUND" || echo "NOT_FOUND"`

If all validations pass:

**Configuration:** @${CLAUDE_PLUGIN_ROOT}/config/$1.json

**Execute build:** !`bash ${CLAUDE_PLUGIN_ROOT}/scripts/build.sh $1 2>&1`
**Execute build:** !`bash "${CLAUDE_PLUGIN_ROOT}/scripts/build.sh" $1 2>&1`

**Validation results:** !`bash ${CLAUDE_PLUGIN_ROOT}/scripts/validate-build.sh $1 2>&1`
**Validation results:** !`bash "${CLAUDE_PLUGIN_ROOT}/scripts/validate-build.sh" $1 2>&1`

Report build status and any issues.

Expand Down Expand Up @@ -408,14 +408,14 @@ Load environment configuration: @${CLAUDE_PLUGIN_ROOT}/config/$1-checks.json
Determine check level: !`echo "$1" | grep -E "^prod$" && echo "FULL" || echo "BASIC"`

**For production environment:**
- Full test suite: !`bash ${CLAUDE_PLUGIN_ROOT}/scripts/test-full.sh`
- Security scan: !`bash ${CLAUDE_PLUGIN_ROOT}/scripts/security-scan.sh`
- Performance audit: !`bash ${CLAUDE_PLUGIN_ROOT}/scripts/perf-check.sh`
- Compliance check: !`bash ${CLAUDE_PLUGIN_ROOT}/scripts/compliance.sh`
- Full test suite: !`bash "${CLAUDE_PLUGIN_ROOT}/scripts/test-full.sh"`
- Security scan: !`bash "${CLAUDE_PLUGIN_ROOT}/scripts/security-scan.sh"`
- Performance audit: !`bash "${CLAUDE_PLUGIN_ROOT}/scripts/perf-check.sh"`
- Compliance check: !`bash "${CLAUDE_PLUGIN_ROOT}/scripts/compliance.sh"`

**For non-production environments:**
- Basic tests: !`bash ${CLAUDE_PLUGIN_ROOT}/scripts/test-basic.sh`
- Quick lint: !`bash ${CLAUDE_PLUGIN_ROOT}/scripts/lint.sh`
- Basic tests: !`bash "${CLAUDE_PLUGIN_ROOT}/scripts/test-basic.sh"`
- Quick lint: !`bash "${CLAUDE_PLUGIN_ROOT}/scripts/lint.sh"`

Analyze results based on environment requirements:

Expand Down Expand Up @@ -474,7 +474,7 @@ Use for: Validating command arguments

### Pattern: Resource Validation
```markdown
Check exists: !`test -f ${CLAUDE_PLUGIN_ROOT}/path/file && echo "YES" || echo "NO"`
Check exists: !`test -f "${CLAUDE_PLUGIN_ROOT}/path/file" && echo "YES" || echo "NO"`
```
Use for: Verifying required plugin files exist

Expand Down Expand Up @@ -529,7 +529,7 @@ Use for: Verifying required plugin files exist
---
allowed-tools: Bash(*)
---
!`bash ${CLAUDE_PLUGIN_ROOT}/scripts/script.sh`
!`bash "${CLAUDE_PLUGIN_ROOT}/scripts/script.sh"`
```

3. **Not validating inputs:**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -154,7 +154,7 @@ description: Complete plugin workflow
allowed-tools: Bash(*), Read
---

Step 1 - Prepare: !`bash ${CLAUDE_PLUGIN_ROOT}/scripts/prepare.sh $1`
Step 1 - Prepare: !`bash "${CLAUDE_PLUGIN_ROOT}/scripts/prepare.sh" $1`
Step 2 - Config: @${CLAUDE_PLUGIN_ROOT}/config/$1.json
Step 3 - Execute: !`${CLAUDE_PLUGIN_ROOT}/bin/execute $1`

Expand All @@ -179,7 +179,7 @@ Review results and report status.
allowed-tools: Bash(test:*), Read
---

!`test -f ${CLAUDE_PLUGIN_ROOT}/config.json && echo "exists" || echo "missing"`
!`test -f "${CLAUDE_PLUGIN_ROOT}/config.json" && echo "exists" || echo "missing"`

If config exists, load it: @${CLAUDE_PLUGIN_ROOT}/config.json
Otherwise, use defaults...
Expand All @@ -198,7 +198,7 @@ Review results and report status.

4. **Combine with arguments:**
```markdown
Run: !`${CLAUDE_PLUGIN_ROOT}/bin/process.sh $1 $2`
Run: !`bash "${CLAUDE_PLUGIN_ROOT}/bin/process.sh" $1 $2`
```

### Troubleshooting
Expand Down Expand Up @@ -274,9 +274,9 @@ description: Complete build and test workflow
allowed-tools: Bash(*)
---

Build: !`bash ${CLAUDE_PLUGIN_ROOT}/scripts/build.sh`
Validate: !`bash ${CLAUDE_PLUGIN_ROOT}/scripts/validate.sh`
Test: !`bash ${CLAUDE_PLUGIN_ROOT}/scripts/test.sh`
Build: !`bash "${CLAUDE_PLUGIN_ROOT}/scripts/build.sh"`
Validate: !`bash "${CLAUDE_PLUGIN_ROOT}/scripts/validate.sh"`
Test: !`bash "${CLAUDE_PLUGIN_ROOT}/scripts/test.sh"`

Review all outputs and report:
1. Build status
Expand Down Expand Up @@ -510,9 +510,9 @@ allowed-tools: Bash(test:*)
---

Validate plugin setup:
- Config exists: !`test -f ${CLAUDE_PLUGIN_ROOT}/config.json && echo "✓" || echo "✗"`
- Scripts exist: !`test -d ${CLAUDE_PLUGIN_ROOT}/scripts && echo "✓" || echo "✗"`
- Tools available: !`test -x ${CLAUDE_PLUGIN_ROOT}/bin/analyze && echo "✓" || echo "✗"`
- Config exists: !`test -f "${CLAUDE_PLUGIN_ROOT}/config.json" && echo "✓" || echo "✗"`
- Scripts exist: !`test -d "${CLAUDE_PLUGIN_ROOT}/scripts" && echo "✓" || echo "✗"`
- Tools available: !`test -x "${CLAUDE_PLUGIN_ROOT}/bin/analyze" && echo "✓" || echo "✗"`

If all checks pass, proceed with analysis.
Otherwise, report missing components and installation steps.
Expand All @@ -528,7 +528,7 @@ description: Build and validate output
allowed-tools: Bash(*)
---

Build: !`bash ${CLAUDE_PLUGIN_ROOT}/scripts/build.sh`
Build: !`bash "${CLAUDE_PLUGIN_ROOT}/scripts/build.sh"`

Validate output:
- Exit code: !`echo $?`
Expand Down
12 changes: 6 additions & 6 deletions plugins/plugin-dev/skills/hook-development/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ Execute bash commands for deterministic checks:
```json
{
"type": "command",
"command": "bash ${CLAUDE_PLUGIN_ROOT}/scripts/validate.sh",
"command": "bash \"${CLAUDE_PLUGIN_ROOT}/scripts/validate.sh\"",
"timeout": 60
}
```
Expand Down Expand Up @@ -90,7 +90,7 @@ Execute bash commands for deterministic checks:
"hooks": [
{
"type": "command",
"command": "${CLAUDE_PLUGIN_ROOT}/hooks/validate.sh"
"command": "bash \"${CLAUDE_PLUGIN_ROOT}/hooks/validate.sh\""
}
]
}
Expand Down Expand Up @@ -248,7 +248,7 @@ Execute when Claude Code session begins. Use to load context and set environment
"hooks": [
{
"type": "command",
"command": "bash ${CLAUDE_PLUGIN_ROOT}/scripts/load-context.sh"
"command": "bash \"${CLAUDE_PLUGIN_ROOT}/scripts/load-context.sh\""
}
]
}
Expand Down Expand Up @@ -333,7 +333,7 @@ Available in all command hooks:
```json
{
"type": "command",
"command": "bash ${CLAUDE_PLUGIN_ROOT}/scripts/validate.sh"
"command": "bash \"${CLAUDE_PLUGIN_ROOT}/scripts/validate.sh\""
}
```

Expand Down Expand Up @@ -371,7 +371,7 @@ In plugins, define hooks in `hooks/hooks.json`:
"hooks": [
{
"type": "command",
"command": "bash ${CLAUDE_PLUGIN_ROOT}/scripts/load-context.sh",
"command": "bash \"${CLAUDE_PLUGIN_ROOT}/scripts/load-context.sh\"",
"timeout": 10
}
]
Expand Down Expand Up @@ -613,7 +613,7 @@ Test command hooks directly:

```bash
echo '{"tool_name": "Write", "tool_input": {"file_path": "/test"}}' | \
bash ${CLAUDE_PLUGIN_ROOT}/scripts/validate.sh
bash "${CLAUDE_PLUGIN_ROOT}/scripts/validate.sh"

echo "Exit code: $?"
```
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ Combine command and prompt hooks for layered validation:
"hooks": [
{
"type": "command",
"command": "bash ${CLAUDE_PLUGIN_ROOT}/scripts/quick-check.sh",
"command": "bash \"${CLAUDE_PLUGIN_ROOT}/scripts/quick-check.sh\"",
"timeout": 5
},
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -214,7 +214,7 @@ Combine both for multi-stage validation:
"hooks": [
{
"type": "command",
"command": "bash ${CLAUDE_PLUGIN_ROOT}/scripts/quick-check.sh",
"command": "bash \"${CLAUDE_PLUGIN_ROOT}/scripts/quick-check.sh\"",
"timeout": 5
},
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ Load project-specific context at session start:
"hooks": [
{
"type": "command",
"command": "bash ${CLAUDE_PLUGIN_ROOT}/scripts/load-context.sh"
"command": "bash \"${CLAUDE_PLUGIN_ROOT}/scripts/load-context.sh\""
}
]
}
Expand Down Expand Up @@ -95,7 +95,7 @@ Log all notifications for audit or analysis:
"hooks": [
{
"type": "command",
"command": "bash ${CLAUDE_PLUGIN_ROOT}/scripts/log-notification.sh"
"command": "bash \"${CLAUDE_PLUGIN_ROOT}/scripts/log-notification.sh\""
}
]
}
Expand Down Expand Up @@ -183,7 +183,7 @@ Run linters or formatters on file edits:
"hooks": [
{
"type": "command",
"command": "bash ${CLAUDE_PLUGIN_ROOT}/scripts/check-quality.sh"
"command": "bash \"${CLAUDE_PLUGIN_ROOT}/scripts/check-quality.sh\""
}
]
}
Expand Down Expand Up @@ -248,7 +248,7 @@ Combine multiple patterns for comprehensive protection:
"hooks": [
{
"type": "command",
"command": "bash ${CLAUDE_PLUGIN_ROOT}/scripts/load-context.sh"
"command": "bash \"${CLAUDE_PLUGIN_ROOT}/scripts/load-context.sh\""
}
]
}
Expand Down
6 changes: 3 additions & 3 deletions plugins/plugin-dev/skills/plugin-structure/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -219,7 +219,7 @@ hooks/
"matcher": "Write|Edit",
"hooks": [{
"type": "command",
"command": "bash ${CLAUDE_PLUGIN_ROOT}/hooks/scripts/validate.sh",
"command": "bash \"${CLAUDE_PLUGIN_ROOT}/hooks/scripts/validate.sh\"",
"timeout": 30
}]
}]
Expand Down Expand Up @@ -261,7 +261,7 @@ Use `${CLAUDE_PLUGIN_ROOT}` environment variable for all intra-plugin path refer

```json
{
"command": "bash ${CLAUDE_PLUGIN_ROOT}/scripts/run.sh"
"command": "bash \"${CLAUDE_PLUGIN_ROOT}/scripts/run.sh\""
}
```

Expand All @@ -285,7 +285,7 @@ Use `${CLAUDE_PLUGIN_ROOT}` environment variable for all intra-plugin path refer

**In manifest JSON fields** (hooks, MCP servers):
```json
"command": "${CLAUDE_PLUGIN_ROOT}/scripts/tool.sh"
"command": "bash \"${CLAUDE_PLUGIN_ROOT}/scripts/tool.sh\""
```

**In component files** (commands, agents, skills):
Expand Down
Loading