/help
Show skill-bus overview, status, and available commands. Quick reference for all skill-bus features.
> /plugin marketplace add composio-community/awesome-claude-pluginsHow it fires
How this command gets triggered: by you, by Claude, or both.
- Fires itselfClaude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/help
Context preview
What this command does when you run it.
Show skill-bus overview, status, and available commands. Quick reference for all skill-bus features.
Command definition
help.mddescription: Show skill-bus overview, status, and available commands. Quick reference for all skill-bus features.
Skill Bus Help
**Announce:** "[skill-bus] Help."
Process
Step 1: Show Status
Run:
SB_CLI=$(ls ~/.claude/plugins/cache/*/skill-bus/*/lib/cli.py ~/.claude/plugins/repos/skill-bus/lib/cli.py 2>/dev/null | tail -1)
python3 "$SB_CLI" status --cwd "$PWD"
Step 2: Check Arguments
If `$ARGUMENTS` contains "advanced" (case-insensitive), skip to **Step 3: Show Advanced Reference**.
Otherwise, show the **Basic Reference** below:
What is Skill Bus?
The skill for connecting skills. Wire context, conditions, and other skills into any skill invocation — declaratively, without modification.
Subscriptions match skill names using glob patterns and inject context from named **inserts** via PreToolUse/PostToolUse hooks. Conditions gate when subscriptions fire, making them context-aware (branch, file existence, env vars).
Commands
| Command | Description | |---------|-------------| | `/skill-bus:help` | This help screen | | `/skill-bus:help advanced` | Full settings, conditions, and config reference | | `/skill-bus:list-subs` | List all subscriptions with merge status and conditions | | `/skill-bus:add-sub` | Subscribe to a skill event | | `/skill-bus:remove-sub` | Remove or disable subscriptions | | `/skill-bus:edit-insert` | Edit insert text or conditions | | `/skill-bus:pause-subs` | Temporarily disable the skill bus | | `/skill-bus:unpause-subs` | Re-enable after pausing | | `/skill-bus:report` | Telemetry report — match counts, condition skips, no-coverage skills | | `/skill-bus:onboard` | Guided setup — discover knowledge, create subscriptions, enable features |
Config Files
- **Global:** `~/.claude/skill-bus.json` (applies to all projects)
- **Project:** `.claude/skill-bus.json` (overrides global for this repo)
Key Concepts
- **Insert**: Reusable text content with optional conditions
- **Subscription**: Routes an insert to a skill pattern (`on`) at a timing (`when`: pre/post/complete)
- **Conditions**: AND-stacked rules that must all pass for a subscription to fire
- **Complete** *(experimental)*: Fires when Claude signals it has finished the skill's scope of work (via `/skill-bus:complete`). Auto-injects a completion trigger instruction during pre-hook. Works for both Claude-initiated skill invocations and user-typed slash commands (via prompt-monitor bridge). Requires `monitorSlashCommands: true` for user-typed commands.
Prompt Monitor
The prompt monitor is an **opt-in** feature that watches for slash commands typed by the user (e.g. `/commit`, `/deploy`) and can inject context before those commands run. Enable it with `"monitorSlashCommands": true` in settings. Built-in commands (help, clear, config, etc.) are excluded.
Quick Tips
- Use `/skill-bus:list-subs` to see active state and simulate matching
- Use **pre** timing when you want to shape how a skill behaves (most common)
- Use **post** timing when you want to add context after a skill returns (e.g. reminders, follow-up guidance)
- Use **complete** timing *(experimental)* to chain follow-up skills after work is done
- Project scope can disable global subscriptions with `"enabled": false`
- Run `/skill-bus:help advanced` for full settings, condition types, and config format
**End of basic reference. Stop here unless advanced was requested.**
---
Step 3: Show Advanced Reference
Display this advanced reference:
Advanced Reference
Settings
All settings go under the `"settings"` key in your config file. Project settings override global.
| Setting | Type | Default | Description | |---------|------|---------|-------------| | `enabled` | boolean | `true` | Master kill switch. If false, no subscriptions are evaluated. | | `maxMatchesPerSkill` | integer | `3` | Maximum subscriptions that can fire per skill invocation. Warns if more match. | | `showConsoleEcho` | boolean | `true` | Show `[skill-bus] N sub(s) matched (...)` message in console. | | `disableGlobal` | boolean | `false` | Ignore global config entirely. Only project config is used. | | `monitorSlashCommands` | boolean | `false` | Enable UserPromptSubmit hook to monitor slash commands. | | `completionHooks` | boolean | `false` | *(Experimental)* Enable synthetic completion hooks (`"when": "complete"` subscriptions). | | `showConditionSkips` | boolean | `false` | Log when subscriptions are skipped due to failed conditions. Also enabled by `SKILL_BUS_DEBUG=1` env var. | | `telemetry` | boolean | `false` | Enable JSONL telemetry logging (subscription matches, condition skips, unmatched skills). | | `observeUnmatched` | boolean | `false` | Log skills that have no matching subscriptions (requires `telemetry: true`). | | `telemetryPath` | string | `""` | Override telemetry log path. Default: `.claude/skill-bus-telemetry.jsonl`. Relative to CWD or absolute. | | `maxLogSizeKB` | integer | `512` | Max telemetry log size in KB before rotation (oldest half truncated). Set to `0` to disable rotation. |
Condition Types
Conditions are AND-stacked — all must pass for a subscription to fire. Short-circuits on first failure.
| Type | Syntax | Description | |------|--------|-------------| | `fileExists` | `{"fileExists": "path/to/check"}` | True if file or directory exists (relative to CWD). Supports `~` expansion. | | `gitBranch` | `{"gitBranch": "feature/*"}` | True if current git branch matches the glob pattern (uses `fnmatch`). | | `envSet` | `{"envSet": "VAR_NAME"}` | True if environment variable is set AND non-empty. | | `envEquals` | `{"envEquals": {"var": "NAME", "value": "expected"}}` | True if env var equals the value (exact, case-sensitive). Value must be a string. | | `fileContains` | `{"fileContains": {"file": "path", "pattern": "text"}}` | True if file contains the literal substring. Add `"regex": true` for regex matching. Skips files > 1MB. | | `not` | `{"not": {"envSet": "SKIP"}}` | Negat
Read more
description: Show skill-bus overview, status, and available commands. Quick reference for all skill-bus features.
Skill Bus Help
**Announce:** "[skill-bus] Help."
Process
Step 1: Show Status
Run:
SB_CLI=$(ls ~/.claude/plugins/cache/*/skill-bus/*/lib/cli.py ~/.claude/plugins/repos/skill-bus/lib/cli.py 2>/dev/null | tail -1) python3 "$SB_CLI" status --cwd "$PWD"
Step 2: Check Arguments
If `$ARGUMENTS` contains "advanced" (case-insensitive), skip to **Step 3: Show Advanced Reference**.
Otherwise, show the **Basic Reference** below:
What is Skill Bus?
The skill for connecting skills. Wire context, conditions, and other skills into any skill invocation — declaratively, without modification.
Subscriptions match skill names using glob patterns and inject context from named **inserts** via PreToolUse/PostToolUse hooks. Conditions gate when subscriptions fire, making them context-aware (branch, file existence, env vars).
Commands
| Command | Description | |---------|-------------| | `/skill-bus:help` | This help screen | | `/skill-bus:help advanced` | Full settings, conditions, and config reference | | `/skill-bus:list-subs` | List all subscriptions with merge status and conditions | | `/skill-bus:add-sub` | Subscribe to a skill event | | `/skill-bus:remove-sub` | Remove or disable subscriptions | | `/skill-bus:edit-insert` | Edit insert text or conditions | | `/skill-bus:pause-subs` | Temporarily disable the skill bus | | `/skill-bus:unpause-subs` | Re-enable after pausing | | `/skill-bus:report` | Telemetry report — match counts, condition skips, no-coverage skills | | `/skill-bus:onboard` | Guided setup — discover knowledge, create subscriptions, enable features |
Config Files
- **Global:** `~/.claude/skill-bus.json` (applies to all projects)
- **Project:** `.claude/skill-bus.json` (overrides global for this repo)
Key Concepts
- **Insert**: Reusable text content with optional conditions
- **Subscription**: Routes an insert to a skill pattern (`on`) at a timing (`when`: pre/post/complete)
- **Conditions**: AND-stacked rules that must all pass for a subscription to fire
- **Complete** *(experimental)*: Fires when Claude signals it has finished the skill's scope of work (via `/skill-bus:complete`). Auto-injects a completion trigger instruction during pre-hook. Works for both Claude-initiated skill invocations and user-typed slash commands (via prompt-monitor bridge). Requires `monitorSlashCommands: true` for user-typed commands.
Prompt Monitor
The prompt monitor is an **opt-in** feature that watches for slash commands typed by the user (e.g. `/commit`, `/deploy`) and can inject context before those commands run. Enable it with `"monitorSlashCommands": true` in settings. Built-in commands (help, clear, config, etc.) are excluded.
Quick Tips
- Use `/skill-bus:list-subs` to see active state and simulate matching
- Use **pre** timing when you want to shape how a skill behaves (most common)
- Use **post** timing when you want to add context after a skill returns (e.g. reminders, follow-up guidance)
- Use **complete** timing *(experimental)* to chain follow-up skills after work is done
- Project scope can disable global subscriptions with `"enabled": false`
- Run `/skill-bus:help advanced` for full settings, condition types, and config format
**End of basic reference. Stop here unless advanced was requested.**
---
Step 3: Show Advanced Reference
Display this advanced reference:
Advanced Reference
Settings
All settings go under the `"settings"` key in your config file. Project settings override global.
| Setting | Type | Default | Description | |---------|------|---------|-------------| | `enabled` | boolean | `true` | Master kill switch. If false, no subscriptions are evaluated. | | `maxMatchesPerSkill` | integer | `3` | Maximum subscriptions that can fire per skill invocation. Warns if more match. | | `showConsoleEcho` | boolean | `true` | Show `[skill-bus] N sub(s) matched (...)` message in console. | | `disableGlobal` | boolean | `false` | Ignore global config entirely. Only project config is used. | | `monitorSlashCommands` | boolean | `false` | Enable UserPromptSubmit hook to monitor slash commands. | | `completionHooks` | boolean | `false` | *(Experimental)* Enable synthetic completion hooks (`"when": "complete"` subscriptions). | | `showConditionSkips` | boolean | `false` | Log when subscriptions are skipped due to failed conditions. Also enabled by `SKILL_BUS_DEBUG=1` env var. | | `telemetry` | boolean | `false` | Enable JSONL telemetry logging (subscription matches, condition skips, unmatched skills). | | `observeUnmatched` | boolean | `false` | Log skills that have no matching subscriptions (requires `telemetry: true`). | | `telemetryPath` | string | `""` | Override telemetry log path. Default: `.claude/skill-bus-telemetry.jsonl`. Relative to CWD or absolute. | | `maxLogSizeKB` | integer | `512` | Max telemetry log size in KB before rotation (oldest half truncated). Set to `0` to disable rotation. |
Condition Types
Conditions are AND-stacked — all must pass for a subscription to fire. Short-circuits on first failure.
| Type | Syntax | Description | |------|--------|-------------| | `fileExists` | `{"fileExists": "path/to/check"}` | True if file or directory exists (relative to CWD). Supports `~` expansion. | | `gitBranch` | `{"gitBranch": "feature/*"}` | True if current git branch matches the glob pattern (uses `fnmatch`). | | `envSet` | `{"envSet": "VAR_NAME"}` | True if environment variable is set AND non-empty. | | `envEquals` | `{"envEquals": {"var": "NAME", "value": "expected"}}` | True if env var equals the value (exact, case-sensitive). Value must be a string. | | `fileContains` | `{"fileContains": {"file": "path", "pattern": "text"}}` | True if file contains the literal substring. Add `"regex": true` for regex matching. Skips files > 1MB. | | `not` | `{"not": {"envSet": "SKIP"}}` | Negat
A curated list of Plugins that let you extend Claude Code with custom commands, agents, hooks, and MCP servers through the plugin system.
Other commands on awesome-claude-plugins.
audit-project-agents
This file contains detailed agent coordination for `/audit-project`.
audit-project-github
This file contains GitHub integration for `/audit-project`.
bug-fix
Streamlines bug fixing by creating a GitHub issue first, then a feature branch for implementing and thoroughly testing the…

