vibebuddy-start
Start the vibebuddy daemon and wire Claude Code hooks so the buddy reacts to your session. Idempotent — safe to re-run.
- License 许可
- MIT
- 最近更新
- 2026-05-04
- Stars
- ★ 0
- Forks
- 0
01 前言 Front Matter
- name
- vibebuddy-start
- triggers
- [ "start vibebuddy", "launch buddy", "turn on buddy" ]
- description
- Start the vibebuddy daemon and wire Claude Code hooks so the buddy reacts to your session. Idempotent — safe to re-run.
03 SKILL.md 正文
/vibebuddy-start
wake the buddy up. three steps:
- spawn the daemon in a tmux pane (or ask the user to).
- inject the hook block into
~/.claude/settings.json(with backup). - tell the user to restart claude code so the hooks take effect.
wait — what flavor?
/vibebuddy-popup— float in your terminal's corner (tmux 3.2+ or zellij needed). multi-line, prettier/vibebuddy-start— regular tmux split (this one). always works/vibebuddy-statusline— one-line buddy at the bottom. no tmux needed
Step 1: Spawn the daemon
if pgrep -f "vibebuddy run" >/dev/null 2>&1; then
echo "im already here (̄ヘ ̄)"
elif [ -n "${TMUX:-}" ]; then
tmux split-window -h -p 25 'vibebuddy run'
echo "*pop* hi! buddy is here (•‿•)"
else
echo "psst — open a tmux pane and run \`vibebuddy run\` so i have somewhere to live"
echo " (then re-run /vibebuddy-start and ill wire the hooks)"
fi
Step 2: Inject hooks (idempotent)
Read ~/.claude/settings.json. If the hooks key already contains
vibebuddy send auto, do nothing. Otherwise back up and inject.
SETTINGS="$HOME/.claude/settings.json"
if grep -q '"vibebuddy send auto"' "$SETTINGS" 2>/dev/null; then
echo "hooks already vibing — nothing to do"
else
cp "$SETTINGS" "$SETTINGS.bak-vibebuddy-$(date +%s)"
python3 - "$SETTINGS" <<'PY'
import json, sys
path = sys.argv[1]
with open(path) as f: cfg = json.load(f)
cfg.setdefault("hooks", {})
for ev in ["UserPromptSubmit","PreToolUse","PostToolUse","Notification","Stop"]:
cfg["hooks"].setdefault(ev, []).append(
{"hooks":[{"type":"command","command":"vibebuddy send auto"}]}
)
with open(path,"w") as f: json.dump(cfg, f, indent=2)
PY
echo "hooks wired into $SETTINGS — old settings backed up just in case"
fi
Step 3: Tell the user
restart claude code now. hooks only load at session start, so quit fully and reopen — then ill react to every tool call (•‿•)
done with me?
/vibebuddy-stop
04 同仓库更多 Skills
vibebuddy-upgrade
Upgrade vibebuddy to the latest version (git pull + rebuild).
vibebuddy-theme
Switch the vibebuddy mascot theme (slime, cat, robot — v0.2).
vibebuddy-stop
Stop the vibebuddy daemon and remove its Claude Code hooks. Clean teardown.
vibebuddy-statusline
Wire vibebuddy into Claude Code's statusline so the buddy lives at the bottom of your terminal. No tmux needed.
vibebuddy-scene
Set, preview, or disable the buddy's environment fx (bubbles, motion, sparkles).
vibebuddy-recap
Show what just happened — local counters from Claude Code hooks. Zero tokens.