Claudeclaw install-extension

Install a ClaudeClaw extension (e.g., slack, triage)

install
source · Clone the upstream repo
git clone https://github.com/sbusso/claudeclaw
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/sbusso/claudeclaw "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/install-extension" ~/.claude/skills/sbusso-claudeclaw-install-extension && rm -rf "$T"
manifest: skills/install-extension/SKILL.md
source content

Install Extension

Install a ClaudeClaw extension from GitHub.

Usage

/install slack
/install triage

Flow

1. Validate input

The argument is the extension short name (e.g.,

slack
,
triage
). The full repo name is
claudeclaw-<name>
.

EXTENSION_NAME="${1}"
REPO="https://github.com/sbusso/claudeclaw-${EXTENSION_NAME}.git"
EXT_DIR="extensions/claudeclaw-${EXTENSION_NAME}"

2. Check if already installed

[ -d "$EXT_DIR" ] && echo "Extension claudeclaw-${EXTENSION_NAME} is already installed." && exit 0

If already installed, ask if the user wants to update instead (git pull + rebuild).

3. Clone the extension

mkdir -p extensions
git clone "$REPO" "$EXT_DIR"

4. Read manifest and install dependencies

cat "$EXT_DIR/manifest.json"

If

manifest.json
has a
dependencies
field, install them at the root:

cd "$(git rev-parse --show-toplevel)" && npm install <each dependency with version>

5. Compile the extension

cd "$EXT_DIR" && npx tsc

6. Run post-install hook

If

manifest.json
has
hooks.postInstall
:

chmod +x "$EXT_DIR/hooks/install.sh"
bash "$EXT_DIR/hooks/install.sh" "$(git rev-parse --show-toplevel)"

This copies skills, agents, and agent skills into the ClaudeClaw root.

7. Rebuild core

npm run build

8. Restart service

Detect OS and restart:

macOS:

SERVICE_NAME=$(launchctl list | grep claudeclaw | awk '{print $3}')
[ -n "$SERVICE_NAME" ] && launchctl kickstart -k "gui/$(id -u)/$SERVICE_NAME"

Linux:

systemctl --user restart claudeclaw

9. Verify

Print confirmation:

Extension claudeclaw-<name> installed successfully.
- Skills: <list from manifest>
- Type: <channel|extension>
- Restart: service restarted